JP2005284497A - 中継装置、管理サーバ、中継方法および認証方法 - Google Patents

中継装置、管理サーバ、中継方法および認証方法 Download PDF

Info

Publication number
JP2005284497A
JP2005284497A JP2004094915A JP2004094915A JP2005284497A JP 2005284497 A JP2005284497 A JP 2005284497A JP 2004094915 A JP2004094915 A JP 2004094915A JP 2004094915 A JP2004094915 A JP 2004094915A JP 2005284497 A JP2005284497 A JP 2005284497A
Authority
JP
Japan
Prior art keywords
user
storage device
write request
data
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004094915A
Other languages
English (en)
Inventor
Ikuko Kobayashi
郁子 小林
Shinji Kimura
信二 木村
Hirofumi Inomata
宏文 猪股
Shin Kobayashi
心 小林
Takeshi Mie
武 三栄
Naoko Shigematsu
直子 重松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Nippon Telegraph and Telephone Corp
Original Assignee
Hitachi Ltd
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd, Nippon Telegraph and Telephone Corp filed Critical Hitachi Ltd
Priority to JP2004094915A priority Critical patent/JP2005284497A/ja
Priority to US10/960,416 priority patent/US20050216668A1/en
Publication of JP2005284497A publication Critical patent/JP2005284497A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】ストレージ装置やストレージ装置側のネットワークに影響されることなく、ディスクレス計算機がライト要求を終了できるようにする。
【解決手段】ライトキャッシュ機能付ルータ104は、ディスクレス計算機101とストレージ装置102との間の情報送受を中継する。ディスクレス計算機101から送信された情報がストレージ装置102に対するライト要求である場合に、当該ライト要求の対象データをキャッシュすると共に、当該ライト要求に対する応答を、当該ライト要求の送信元のディスクレス計算機に送信する。また、キャッシュされたデータのライト要求を、当該データをライトするストレージ装置に送信し、当該ストレージ装置から当該ライト要求に対する応答を受信する。
【選択図】図1

Description

本発明は、中継装置に関し、特に、ディスクレス計算機からストレージ装置へ送信されたライト要求を中継する技術に関する。
IP-SAN(Internet Protocol-Storage Area Network)とは、iSCSI(Small Computer Systems Interface protocol over the Internet)等のプロトコルを用いて、ブロックレベルのデータ転送をIPネットワークで実現する技術である。また、ディスクレス計算機とは、ディスク装置が接続されていない計算機、あるいは、ローカル接続されたディスク装置を使用しない計算機である。IP-SANを用いたディスクレス計算機システムとして、シスコシステムズ社の"Cisco Network Boot"(非特許文献1)がある。
"Cisco Network Boot"は、ディスクレス計算機がOS(オペレーティングシステム)をブートできるようにする製品である。この製品に必要なディスクレス計算機システムの構成要素は、ディスクレス計算機、DHCP(Dynamic Host Configuration Protocol)/TFTP(Trivial File Transfer Protocol)サーバ、ストレージルータ、ストレージルータにファイバチャネルで接続されたストレージ装置、および、ディスクレス計算機とDHCP/TFTPサーバとストレージルータとを相互接続するIPネットワークである。
"Cisco Network Boot"では、ディスクレス計算機のブートイメージをストレージルータに接続されたストレージ装置が提供するボリュームに格納する作業、このボリュームにLUN(Logical Unit Number)を割り当てると共に、このボリュームを提供するストレージ装置にiSCSIターゲット名(iSCSIネーム)を割り当て、ストレージルータに登録する作業、および、ディスクレス計算機のブート情報(ディスクレス計算機のブートイメージを格納したボリュームのLUN、iSCSIターゲット名、ストレージルータのIPアドレスを含む)をDHCP/TFTPサーバに登録する作業を事前に行う。
これらの作業の終了後、ディスクレス計算機の電源をONにすると、ディスクレス計算機はBIOSを起動し、このBIOSに従いPXE(Preboot eXecution Environment)プログラムを起動する。このPXEプログラムにより、ディスクレス計算機は、先ず、DHCPサーバからディスクレス計算機が使用すべきIPアドレス、TFTPサーバのIPアドレス、ブートローダプログラム名、ストレージルータのIPアドレス、ディスクレス計算機のブートイメージを格納したボリュームのLUN、そして、このボリュームを提供するストレージ装置のiSCSIターゲット名を取得する。次に、TFTPサーバからブートローダをダウンロードし起動する。このブートローダにより、ディスクレス計算機は、iSCSIターゲットのブートイメージを格納したボリュームからOSをロードし起動する。また、iSCSIドライバを起動してアプリケーションを実行できる状態にする。
ディスクレス計算機は、OSおよびiSCSIドライバにより、アプリケーションの起動、データの読み込み、データの書き込み等に伴うディスクアクセス要求を、ストレージルータに接続されたストレージ装置に送信する。
"Cisco Network Bootインストレーションコンフィギュレーションガイド"、[online] 、Cisco Systems、[平成15年12月1日検索]、インタネット<URL:http://www.cisco.com/japanese/warp/public/3/jp/service/manual_j/rt/5000/cnbicg/>
ディスクレス計算機システムにおいて、ディスクレス計算機がルータを介してWANに接続され、そして、ストレージ装置がストレージルータを介してWANに接続されている場合を考える。この場合、ディスクレス計算機が発行したデータブロックのライト要求は、ルータおよびWANを介してストレージルータに送られる。そして、このライト要求がストレージルータからストレージ装置に送られ、ストレージ装置により実行される。
さて、上記構成のディスクレス計算機システムにおいて、ディスクレス計算機およびルータ間の接続には、一般に高速で且つネットワーク障害率の低いLANを利用できる。しかし、ルータおよびストレージルータ間を接続するWANは、一般に、LANに比べてトラヒックが高く低速である。また、ネットワーク障害も起こり易い。このため、上記構成のディスクレス計算機システムでは、ディスクレス計算機から発行されたライト要求の処理時間がWANの性能に左右され、ディスクレス計算機におけるデータ処理に影響を与える。また、WANに障害が発生した場合は、ライト要求を終了できずに、データ処理が異常終了してしまう可能性もある。
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、ストレージ装置やストレージ装置側のネットワークに影響されることなく、ディスクレス計算機がライト要求を終了できるようにすることにある。
上記課題を解決するために、本発明の一態様は、ディスクレス計算機およびストレージ装置間の情報送受を中継する中継装置を設け、ディスクレス計算機から送信されたライト要求をキャッシュすると共に、ストレージ装置の当該要求に従ったライト処理を待たずに、当該要求の送信元にライト終了を送信する。また、キャッシュしたライト要求をストレージ装置へ送信し、当該要求の宛先からライト終了を受信することで、キャッシュしたライト要求の処理を終了する。
例えば、本発明の中継装置は、少なくとも1つのディスクレス計算機と少なくとも1つのストレージ装置との間の情報送受を中継する中継装置であって、
ディスクレス計算機から送信された情報がストレージ装置に対するライト要求である場合に、当該ライト要求の対象データをキャッシュすると共に、当該ライト要求に対する応答を、当該ライト要求の送信元のディスクレス計算機に送信するキャッシュ手段と、
前記キャッシュ手段にキャッシュされたデータのライト要求を、当該データをライトするストレージ装置に送信し、当該ストレージ装置から当該ライト要求に対する応答を受信するフラッシュ手段と、を有する。
ここで、中継装置は、ストレージ装置のボリューム毎に、本中継装置とストレージ装置との間のネットワークおよび当該ストレージ装置の負荷状態、ストレージ装置と接続可能か否か(接続可否状態)、および、キャッシュされているデータ量を管理してもよい。そして、接続不可能なストレージ装置のボリュームに対しては接続可能になるまでライト要求の送信を停止してもよい。また、負荷が規定値を超えるストレージ装置のボリュームに対してはライト要求の送信を抑止してもよい。さらに、キャッシュされているデータ量が既定値を超えた場合には、ディスクレス計算機に対するライト終了応答の返送を遅らせて、ライト要求の発行を抑止してもよい。
また、中継装置は、一連のライト要求およびファイルシステムのデータ更新記録を記憶媒体にログする手段と、ストレージ装置のボリューム毎にログを管理する手段と、ログからストレージ装置のボリュームに対するライト要求を作成する手段とを有するものでもよい。そして、中継装置が異常終了した場合においても、再起動後にログ情報を読み出して、ストレージ装置のボリュームに対するライト要求送信を再開できるようにしてもよい。
また、本発明の他の態様は、上記の中継装置を経由して、ディスクレス計算機のユーザがストレージ装置を利用することの可否を判断する管理サーバを設け、前記可否を判断する際に、ディスクレス計算機のユーザが上記の中継装置経由でストレージ装置を利用したことがある場合、当該中継装置にキャッシュされているデータのうち当該ストレージ装置にライトするデータのライト要求を、生成・送信させる。
例えば、本発明の管理サーバは、上記の中継装置を経由して、ディスクレス計算機のユーザがストレージ装置を利用することの可否を判断する管理サーバであって、
ユーザ毎に、当該ユーザの認証情報、当該ユーザが利用可能なストレージ装置の識別情報、および、ディスクレス計算機のユーザがストレージ装置を利用した際に用いた中継装置の識別情報を含むユーザ管理情報を記憶する管理情報記憶手段と、
前記中継装置を介してディスクレス計算機より受信したユーザ認証要求に含まれているユーザ認証情報を含むユーザ管理情報を前記管理情報記憶手段から検索することで、当該ディスクレス計算機のユーザのユーザ認証を行うユーザ認証手段と、を有し、
前記ユーザ認証手段は、前記ユーザ認証要求に含まれているユーザ認証情報を含むユーザ管理情報が前記管理情報記憶手段に記憶されている場合、当該ユーザ管理情報に中継装置識別情報が含まれているならば、当該中継装置識別情報により特定される中継装置に、当該中継装置にキャッシュされている、当該ユーザ管理情報のストレージ装置識別情報により特定されるストレージ装置にライトするデータについて、当該データのライト要求を当該ストレージ装置に送信させると共に、当該ユーザ管理情報の中継装置識別情報を、前記ユーザ認証要求を中継した中継装置の識別情報に更新する。
本発明の中継装置によれば、ディスクレス計算機からのライト要求をキャッシュし、当該パケットの送信元にライト終了のパケットを送信するので、ストレージ装置やストレージ装置側のネットワークに影響されることなく、ディスクレス計算機がライト要求を終了できる。また、本発明の管理サーバによれば、ユーザ認証の際に、ユーザが利用可能なストレージ装置にライトするデータが中継装置にキャッシュされているならば、中継装置に当該データのライト要求を送信させて、当該ストレージ装置にキャッシュされているデータをライトするので、例えばコネクション断によりストレージ装置にライトされないまま中継装置にキャッシュされているデータを、ストレージ装置にライトすることができる。
以下、本発明の実施の形態について、ディスクレス計算機およびストレージルータ間のネットワーク通信プロトコルとしてIPが用いられ、ネットワーク通信プロトコルの上位プロトコルとしてiSCSIが用いられている場合を例にとり説明する。
<<第1実施形態>>
本発明の第1実施形態が適用されたディスクレス計算機システムについて、図面を参照して説明する。
(1)システム構成
図1は、本発明の第1実施形態が適用されたディスクレス計算機システムの概略図である。図示するように、本実施形態のディスクレス計算機システムは、少なくとも1つのディスクレス計算機101と、少なくとも1つのストレージ装置102と、DHCP/TFTPサーバ103と、ライトキャッシュ機能付ルータ104と、ユーザ管理サーバ106と、ストレージルータ107と、を有する。ここで、ディスクレス計算機101は、LANなどのIPネットワーク105aに接続されている。また、ストレージ装置102は、ストレージルータ107を介してWANなどのIPネットワーク105bに接続されている。そして、IPネットワーク105aは、ライトキャッシュ機能付ルータ104を介してIPネットワーク105bに接続されている。
なお、IPネットワークは、IPが使用される通信網であれば、その物理的な構成(銅線、光ファイバ等)は限定されない。また、図1では、DHCP/TFTPサーバ103をIPネットワーク105aに接続し、ユーザ管理サーバ106をIPネットワーク105bに接続しているが、これらは、ディスクレス計算機101と通信可能な位置に配置されてあればよい。
ディスクレス計算機101は、上記の背景技術で説明したディスクレス計算機と同じ機能を有する。つまり、ディスクレス計算機101は、CPU1011と、CPUのワークエリアとして機能するRAM1012と、BIOSおよびPXEプログラムを記憶したROM1013と、IPネットワーク105aに接続するためのインターフェース(例えばNIC:Network Interface Card)1014と、入出力装置を接続するためのI/O1015と、を有する。CPU1011は、PXEプログラムを起動して、DHCP/TFTPサーバ103からブートローダプログラムを入手する。そして、このブートローダプログラムを起動することにより、ストレージ装置102からOSをロードし起動する。ここで、ディスクレス計算機101で起動されるOSには、iSCSIプロトコル(特にiSCSIイニシエータプロトコル)を処理することができるドライバ(以下、iSCSIドライバと呼ぶ)が組み込まれている。iSCSIドライバは、プログラム、専用のハードウエア、あるいは、これらの組み合わせで実現される。
ストレージ装置102は、ディスクレス計算機101にボリュームを提供する。ここで、ボリュームは、少なくとも1つのディスク装置1022により構成される論理的な記憶領域である。ストレージ装置102の具体例としては、ディスク装置101を複数有するRAID装置等がある。図示するように、ストレージ装置102は、ストレージ制御装置1021と、少なくとも1つのディスク装置1022と、を有する。ストレージ制御装置1021は、例えばファイバチャネルでストレージルータ107と接続される。そして、ストレージルータ107から送られてきたコマンド(ファイバチャネルプロトコル等のコマンド)に従って、ボリュームへのデータ転送を制御する。
ストレージルータ107は、iSCSIプロトコルおよびストレージ装置102が採用するプロトコル(例えばファイバチャネルプロトコル)間の変換処理を行う。これにより、ディスクレス計算機101が発行したiSCSIプロトコルのコマンドは、ストレージ装置102が採用するプロトコルのコマンドに変換されてストレージ装置102に送信される。また、ストレージ装置102から送信されたコマンドの応答データは、iSCSIプロトコルの応答データに変換されて、ディスクレス計算機101に送信される。
なお、ストレージ装置102が、iSCSIプロトコルのインターフェースを有している場合、つまり、ディスクレス計算機101が発行したiSCSIプロトコルのコマンドを直接実行できるiSCSI対応ストレージ装置である場合、ストレージルータ107は不要である。この場合、ストレージ装置102をIPネットワーク105bに接続する。
ライトキャッシュ機能付ルータ104は、ライト要求のキャッシュ機能を有するルータ装置である。ライトキャッシュ機能付ルータ104は、ディスクレス計算機101から受信したパケットに格納されているiSCSIコマンドを解析し、このiSCSIコマンドがライト要求ならばこれをキャッシュすると共に、該パケットの送信元にライト終了の応答データを格納したパケットを送信する。また、キャッシュしたiSCSIコマンドを格納したパケットをIPネットワーク105bへ送信し、このパケットの宛先(iSCSIターゲット)からライト終了の応答データを格納したパケットを受信することで、キャッシュしたiSCSIコマンドの処理を終了する。なお、ディスクレス計算機101から受信したパケットに格納されているデータがライト要求のiSCSIコマンド以外である場合は、通常のルータ装置と同様に、このパケットの宛先に従って当該パケットをルーティングする。
DHCP/TFTPサーバ103は、上記の背景技術で説明したDHCP/TFTPサーバと同じ機能を有する。つまり、問合せをしたディスクレス計算機101に対し、当該ディスクレス計算機が使用すべきIPアドレスの他に、ブートローダプログラム等を配布する機能を有する。なお、図1ではDHCP/TFTPサーバ103を1つの装置で表している。しかし、DHCPサーバおよびTFTPサーバは、実際には異なるIPアドレスを持つ。そこで、以下では、DHCP/TFTPサーバ103を、必要に応じて、DHCPサーバ103aおよびTFTPサーバ103bに分けて説明する。
ユーザ管理サーバ106は、ユーザと当該ユーザが使用可能なストレージ装置102のボリュームとの対応関係を管理して、ユーザにディスクレス計算機システムの使用許可を与える機能をもつ計算機である。本実施形態のディスクレス計算機システムでは、ユーザにユーザIDおよびパスワードが割当てられる。また、ユーザにボリュームが割当てられ、このボリュームにブートイメージが格納される。
(2)システム動作概要
図1に示すディスクレス計算機システムの動作概要を説明する。図2は本発明の第1実施形態が適用されたディスクレス計算機システムの動作概要を説明するための図である。
まず、ユーザが任意のディスクレス計算機101の電源をONにすると(S101)、このディスクレス計算機101において、CPU1011はROM1013に格納されたBIOSおよびPXEプログラムをロードしてBIOSを起動し、このBIOSに従いPXEプログラムを起動する(S102)。このPXEプログラムにより、CPU1011は、インターフェース1014を介して、このPXEプログラムでIPアドレスが指定されているDHCPサーバ103aにアクセスし、このディスクレス計算機101が使用すべきIPアドレス、TFTPサーバ103bのIPアドレス、ブートローダプログラム名、ライトキャッシュ機能付ルータ104のIPアドレス、および、ユーザ管理サーバ106のIPアドレスを取得する(S103)。次に、CPU1011は、インターフェース1014を介して、DHCPサーバ103aから取得したIPアドレスを持つTFTPサーバ103bにアクセスし、DHCPサーバ103aから取得したブートローダプログラム名を持つブートローダプログラムをダウンロードする(S104)。そして、このブートローダプログラムを起動する(S105)。
このブートローダプログラムにより、CPU1011は、ディスクレス計算機101に接続された表示装置にメッセージ等を出力して、ユーザIDおよびパスワードの入力を要求する。そして、CPU1011は、ディスクレス計算機101に接続された入力装置を介してユーザからユーザIDおよびパスワードの入力を受け付けると(S106)、受け付けたユーザIDおよびパスワードを含む、DHCPサーバ103aから受け付けたユーザ管理サーバ106のIPアドレスを宛先とするユーザ認証要求を生成し、これをインターフェース1014を介してIPネットワーク105aに送信する(S107)。このユーザ認証要求は、ライトキャッシュ機能付ルータ104を介して(S401)、ユーザ管理サーバ106へ送られる。
ユーザ管理サーバ106は、ユーザ認証要求を受信すると、当該要求に含まれているユーザIDおよびパスワードを用いてユーザ認証を行い(S201)、ユーザ認証成立の場合は、ユーザが使用すべきストレージ装置102のボリュームを特定するための特定情報(ストレージルータのIPアドレス、iSCSIターゲット名、ボリュームのポート番号、LUN)を、ユーザ認証要求の送信元に送信する(S202)。この特定情報は、ライトキャッシュ機能付ルータ104を介して(S402)、ディスクレス計算機101(ブートローダプログラム)に通知される。なお、ユーザ認証不成立の場合は、ディスクレス計算機101にエラーメッセージを送信するなどのエラー処理を行う。
次に、ディスクレス計算機101において、CPU1011は、インターフェース1014を介してユーザ管理サーバ106から特定情報を入手すると、ブートローダプログラムに従い、当該特定情報で指定されているiSCSIターゲット名を持つストレージ装置102に接続されたストレージルータ107との間に、ライトキャッシュ機能付ルータ104経由で(S403)、iSCSIセッションを確立する(S108)。それから、ライトキャッシュ機能付ルータ104およびストレージルータ107を介して(S404、S301)、当該特定情報で指定されているLUNを持つボリュームからOSをロードする(S109)。それから、CPU1011は、ロードしたOSの初期化プログラムを起動する(S110)。この初期化プログラムにより、CPU1011は、OSに組み込まれているiSCSIドライバを起動し、これをディスクレス計算機101が有するデバイスファイルにSCSIデバイスとして登録する(S111)。次に、iSCSIドライバにより、CPU1011は、OSによってiSCSIドライバに割当てられたデバイス番号およびユーザ管理サーバ106から入手した特定情報(ストレージルータのIPアドレス、iSCSIターゲット名、ボリュームのポート番号、LUN)を、OSの管理領域に登録する(S112)。次に、初期化プログラムにより、CPU1011は、ファイルシステムのルートをSCSIデバイス(すなわち、ストレージ装置102が提供するボリュームの1つ)にマウントし、ファイルシステムに登録されているプログラムを順次読み出して起動し、初期化を実行する(S113)。
さて、ディスクレス計算機101において、CPU1011は、iSCSIドライバがアプリケーション等よりデータブロックのリード要求を受け取ると、iSCSIプロトコルのリード要求コマンドを生成し、確立されているiSCSIセッションのiSCSIターゲットへ送信する(S114)。このリード要求コマンドは、パケットに格納されてインターフェース1014から出力され、ライトキャッシュ機能付ルータ104を経由して(S405)、ストレージルータ107へ送られる。そして、ストレージルータ107で、ストレージ装置102が採用するプロトコルのコマンドに変換された後(S302)、ストレージ装置102に送信される。
ストレージ装置102において、ストレージ制御装置1021は、リード要求を受信すると、当該リード要求で指定されているLUNを持つボリュームからデータブロックをリードし、これを含む応答データをリード要求の送信元のディスクレス計算機101(iSCSIドライバ)に送信する(S501)。この応答データは、ストレージルータ107でiSCSIプログラムの応答データ形式に変換された後(S303)、ライトキャッシュ機能付ルータ104を経由して(S406)、ディスクレス計算機101へ送られる。ディスクレス計算機101において、CPU1011は、iSCSIターゲットからリード要求の応答データを受信すると、iSCSIドライバに従い、この応答データに含まれているデータブロックをリード要求の送信元であるアプリケーション等に渡す。
また、ディスクレス計算機101において、CPU1011は、iSCSIドライバがアプリケーション等よりデータブロックのライト要求を受け取ると、iSCSIプロトコルのライト要求コマンドを生成し、確立されているiSCSIセッションのiSCSIターゲットへ送信する(S115)。このライト要求コマンドはパケットに格納されてインターフェース1014から出力され、ライトキャッシュ機能付ルータ104へ送られる。
さて、ライトキャッシュ機能付ルータ104は、IPネットワーク105aから送られてくるパケットに格納されているデータを解析する。そして、該データがライト要求のiSCSIコマンド以外である場合は、通常のルータ装置と同様に、このパケットの宛先に従ってルーティングする(S401〜S406)。一方、該データがライト要求のiSCSIコマンドである場合は、これをキャッシュする(S407)。また、このパケットの送信元にライト終了の応答データを格納したパケットを送信する(S408)。ディスクレス計算機101において、CPU1011は、iSCSIターゲットからライト要求の応答データを受信すると、iSCSIドライバに従い、この応答データに含まれている処理結果をライト要求の送信元であるアプリケーション等に渡す。
また、ライトキャッシュ機能付ルータ104は、キャッシュしたライト要求のiSCSIコマンドを格納したパケットを、IPネットワーク105bへ送信する(S409)。このライト要求コマンドは、ストレージルータ107により、ストレージ装置102が採用するプロトコルのコマンドに変換された後(S304)、ストレージ装置102に送信される。
ストレージ装置102において、ストレージ制御装置1021は、ライト要求を受信すると、当該ライト要求で指定されているLUNを持つボリュームに、当該ライト要求に含まれているデータブロックをライトし、その応答データをライト要求の送信元に送信する(S502)。この応答データは、ストレージルータ107でiSCSIプログラムの応答データ形式に変換された後(S305)、ライトキャッシュ機能付ルータ104へ送られる。
(3)ライトキャッシュ機能付ルータ
次に、ライトキャッシュ機能付ルータ104の詳細を説明する。
図3は、ライトキャッシュ機能付ルータ104の概略図である。図示するように、ライトキャッシュ機能付ルータ104は、CPU111と、CPU111のワークエリアとして機能するメインメモリ112と、記憶装置(記憶媒体)113と、IPネットワーク105aに接続するための通信装置114aと、IPネットワーク105bに接続するための通信装置114bと、入力装置115と、を有する。
記憶装置113には、ライトキャッシュプログラム(PG)120と、ルーティングプログラム130と、ルーティングテーブル(TL)131と、を有する。
CPU111は、ルーティングプログラム130を実行することにより、ルーティングテーブル131を用いてパケットのルーティングを行う。これにより、通信装置114aあるいは通信装置114bで受信したパケットは、その宛先に従い通信装置114aおよび通信装置114bのいずれか一方から出力する。但し、当該パケットの宛先がライトキャッシュ機能付ルータ104である場合は、パケットのポート番号により、後述するライトキャッシュプログラム120のiSCSIターゲットモジュール121、iSCSIイニシエータモジュール122、データ管理モジュール124およびユーザ管理エージェントモジュール125のいずれかに渡される。そして、iSCSIターゲットモジュール121、iSCSIイニシエータモジュール122、データ管理モジュール124およびユーザ管理エージェントモジュール125から受け取ったパケットをルーティングして、通信装置114aおよび通信装置114bのいずれか一方から出力する。
また、CPU111は、ライトキャッシュプログラム120を実行することにより、iSCSIプロトコル処理およびiSCSIのライト要求のキャッシュ処理を行う。
図4は、ライトキャッシュプログラム120のモジュール構成を説明するための図である。図示するように、iSCSIターゲットモジュール121と、iSCSIイニシエータモジュール122と、iSCSIセッション管理モジュール123と、データ管理モジュール124と、ユーザ管理エージェントモジュール125と、を有する。
iSCSIターゲットモジュール121は、CPU111に、iSCSIコマンドのパケットを受信し、iSCSI応答データのパケットをiSCSIイニシエータ(ディスクレス計算機101)に送信する、iSCSIターゲットのプロトコル処理を行わせる。
iSCSIイニシエータモジュール122は、CPU111に、iSCSIコマンドのパケットをiSCSIターゲット(ストレージ装置102)に送信して、iSCSIターゲットからiSCSI応答データのパケットを受信する、iSCSIイニシエータのプロトコル処理を行わせる。
iSCSIセッション管理モジュール123は、CPU111に、iSCSIターゲットモジュール121のiSCSIイニシエータ(ディスクレス計算機101)とiSCSIイニシエータモジュール122のiSCSIターゲット(ストレージ装置102)との間の接続情報(iSCSIセッション)、ストレージ装置102の負荷状態、接続状態、および、キャッシュされたデータ量を管理する処理を行わせる。
データ管理モジュール124は、CPU111に、データブロックをキャッシュする処理と、データブロックのストレージ装置102へのライトを要求する処理とを行わせる。
そして、ユーザ管理エージェントモジュール125は、CPU111に、ライトキャッシュ機能付ルータ104の場所(IPアドレス)をユーザ管理サーバ106に通信する処理と、ユーザ管理サーバ106からストレージ装置102の情報を取得する処理と、ユーザ管理サーバ106から送られてくるデータフラッシュ要求を実行する処理と、を行わせる。
図5は、CPU111がライトキャッシュプログラム120に従い処理を行う際に使用する管理情報の構成例を示す図であり、図5(A)はセッション管理情報210の構成例を、そして、図5(B)はターゲット管理情報220の構成例を示している。これらの管理情報210、220は、メインメモリ112に格納されるデータである。
セッション管理情報210は、ディスクレス計算機101とストレージ装置102との間のiSCSIセッションを管理するための情報であり、図5(A)に示すように、ストレージ装置識別情報211、ボリューム識別情報212、ディスクレス計算機識別情報213、対計算機セッション識別情報214、対ストレージセッション識別情報215、接続状態情報216、および、ログ管理情報217を有する。なお、ログ管理情報217は、後述する本実施形態の変形例で使用する情報である。
ストレージ装置識別情報211は、ストレージ装置102のiSCSIターゲット名と、iSCSIターゲットが使用するIPアドレスおよびポート番号とを含む。ボリューム識別情報212は、ストレージ装置識別情報211により特定されるボリュームのLUNを含む。ディスクレス計算機識別情報213は、ディスクレス計算機101のiSCSIドライバのiSCSIイニシエータ名(iSCSIネーム)と、iSCSIイニシエータが使用するIPアドレスとを含む。対計算機セッション識別情報214は、ディスクレス計算機101のiSCSIイニシエータとライトキャッシュ機能付ルータ104との間のiSCSIセッションを識別する情報であり、セッションIDおよびTCPコネクション情報を含む。対ストレージセッション識別情報215は、ライトキャッシュ機能付ルータ装置104とストレージ装置102のiSCSIターゲットとの間のiSCSIセッションを識別する情報であり、セッションIDおよびTCPコネクション情報を含む。そして、接続状態情報216は、ディスクレス計算機101のiSCSIイニシエータとライトキャッシュ機能付ルータ104との間のiSCSIセッションの接続状態を表わす情報であり、接続又は切断のいずれかが登録される。
ターゲット管理情報220は、ストレージ装置102の負荷および接続状態を管理するための情報であり、図5(B)に示すように、ストレージ装置識別情報221、ボリューム識別情報222、接続状態情報223、負荷状態情報224、および、レコード量225を有する。
ストレージ装置識別情報221およびボリューム識別情報222は、セッション管理情報210のそれと同じ情報である。接続状態情報216は、ライトキャッシュ機能付ルータ104とストレージ装置102のiSCSIターゲットとの間のiSCSIセッションの接続状態を表わす情報であり、接続又は切断のいずれかが登録される。負荷状態情報224は、iSCSIの応答時間などの、ライトキャッシュ機能付ルータ104とストレージ装置102のiSCSIターゲットとの間のiSCSIセッションの負荷状態を表わす情報である。そして、レコード量225は、キャッシュされたレコードの数などの、ストレージ装置102(ボリューム)に送信されていないデータブロックの容量を表わす情報である。
図6は、CPU111がライトキャッシュプログラム120に従い、メインメモリ112にキャッシュされるデータブロックのキャッシュレコード230の構成例を示す図である。ここで、キャッシュレコード230はデーダブロックの記録単位である。図示するように、ストレージ装置識別情報231、ボリューム識別情報232、ブロック識別情報233、および、ブロックデータ234を有する。
ストレージ装置識別情報231およびボリューム識別情報232は、データブロックの伝送に用いるセッション管理情報210を識別するための情報であり、セッション管理情報210のそれと同じ情報である。ブロック情報233は、ボリューム内のデータブロックの位置を表す情報であり、例えばLBA(Logical Block Address)番号である。そして、ブロックデータ234が、ボリュームにライトするデータである。
(4)ユーザ管理サーバ
次に、ユーザ管理サーバ106の詳細を説明する。
図7は、ユーザ管理サーバ106の概略図である。図示するように、ユーザ管理サーバ106は、CPU511と、CPU511のワークエリアとして機能するメインメモリ512と、記憶装置513と、IPネットワーク105bに接続するための通信装置514と、入力装置515と、を有する。
記憶装置513には、ユーザ管理プログラム530と、ユーザ情報管理テーブル531と、を有する。
CPU531は、ユーザ管理プログラム130を実行することにより、ディスクレス計算機101のブート時に、ユーザ情報管理テーブル531を用いて、ディスクレス計算機101のユーザのユーザ認証を行い、ディスクレス計算機システムの使用許可を与える処理を行う。
ユーザ情報管理テーブル531には、ユーザ毎に、ユーザ認証およびユーザに割当てられたボリュームを特定するために必要なユーザ管理情報240が登録される。図8は、ユーザ管理情報240の構成例を示す図である。図示するように、ユーザ管理情報240は、ユーザID241、パスワード242、ストレージ装置識別情報243、ボリューム識別情報244、および、キャッシュ装置識別情報245を有する。
ユーザID241およびパスワード242は、ユーザにディスクレス計算機システムの使用を許可するか否かを判断するための情報である。ストレージ装置識別情報243およびボリューム識別情報244は、ユーザに割当てられたボリュームを特定するための情報であり、セッション管理情報210のそれと同じ情報である。そして、キャッシュ装置識別情報244は、ディスクレス計算機101のiSCSIドライバがストレージ装置102との接続に使用する、ライトキャッシュ機能付ルータ装置104の識別情報であり、例えばIPアドレスである。ディスクレス計算機101のiSCSIドライバとストレージ装置102とが接続されていない場合は、これを表わすNULL情報などが設定される。
(5)システム設定作業
システム管理者が本実施形態のディスク計算機システムを利用できるようにするために行うシステム設定作業(事前作業)を、ストレージ装置/ストレージルータの設定作業、ユーザ管理サーバの設定作業、DHCP/TFTPサーバの設定作業、および、ライトキャッシュ機能付ルータの設定作業に分けて説明する。
(5-1)ストレージ装置/ストレージルータの設定作業
先ず、ストレージ装置102に接続された入力装置等を用いて、ストレージ装置102にボリュームを少なくとも1つ作成し、作成したボリューム各々にLUN(図1に示す例では、LU-0、LU-1等)を付与する。また、作成したボリュームに、OS、iSCSIドライバを含む各種ドライバ、および、アプリケーションを含むブートイメージをインストールする。
次に、ストレージ装置102に、iSCSIターゲット名、ポート番号を割当てる。そして、このストレージ装置102が利用するストレージルータ107に、当該ストレージルータ107に接続された入力装置等を用いて、ストレージ装置102に割当てたiSCSIターゲット名、ポート番号およびボリュームのLUNを、当該ストレージルータ107のIPアドレスと共に、装置仕様に沿って登録する。
(5-2)ユーザ管理サーバの設定作業
先ず、ディスクレス計算機システムの各ユーザにユーザIDおよびパスワードを付与する。また、各ユーザに割当てるストレージ装置102のボリュームを決める。
次に、ユーザ管理サーバ106の入力装置515を用いて、ユーザ情報管理テーブル531に、各ユーザのユーザ管理情報240を登録する。つまり、ユーザに付与したユーザIDおよびパスワード(ユーザID241、パスワード242)、ユーザに割当てたボリュームのLUN(ボリューム識別情報244)、当該ボリュームを提供するストレージ装置102のiSCSIターゲット名、ポート番号および当該ストレージ装置102が利用するストレージルータ107のIPアドレス(ストレージ装置識別情報243)を登録する。なお、ライトキャッシュ機能付ルータ104のキャッシュ装置識別情報245はNULLとする。
それから、ユーザ管理プログラム530を起動する。
(5-3)DHCP/TFTPサーバの設定作業
先ず、各ディスクレス計算機101にIPアドレスを割当てる。
次に、DHCPサーバ103aに接続された入力装置を用いて、各ディスクレス計算機101に割当てたIPアドレス、TFTPサーバ103bのIPアドレス、ブートローダプログラム名、ライトキャッシュ機能付ルータ104のIPアドレス、ユーザ管理サーバ106のIPアドレスを、DHCPサーバ103aに登録する。また、TFTPサーバ103bに接続された入力装置を用いて、ブートローダプログラムをTFTPサーバ103bに登録する。
それから、DHCPサーバ103aのDHCPサーバプログラムを起動すると共に、TFTPサーバ103bのTFTPサーバプログラムを起動する。
なお、本実施形態のディスクレス計算機システムで用いるブートローダプログラムには、ユーザ認証を行いストレージ装置102のボリューム情報を取得する機能、および、ストレージ装置102のボリュームからOSをロードするためのiSCSIイニシエータプロトコル処理機能が実装されている。
(5-4)ライトキャッシュ機能付ルータの設定作業
ライトキャッシュ機能付ルータ104の入力装置115を用いて、ライトキャッシュプログラム120およびルーティングプログラム130を起動する。
(6)システム動作詳細
上記(5)システム設定作業の完了後、ディスクレス計算機101の電源をONにすると、上記(2)システム動作概要で説明した動作が開始される。ここでは、上記(2)で説明した動作のうち、ユーザ認証処理(図2のS107、S401、S201、S202に相当)、iSCSIセッション接続処理(図2のS108、S402に相当)、および、データブロックライト処理(図2のS115、S406、S407、S408、S304、S502、S305に相当)の詳細を説明する。また、上記(2)では説明していないが、ディスクレス計算機101のOS停止によるiSCSIセッション切断処理も説明する。
(6-1)ユーザ認証処理
図9は、ユーザ認証処理を説明するためのフロー図であり、図9(A)はディスクレス計算機101のユーザ認証処理に係る動作フローを、図9(B)はライトキャッシュ機能付ルータ104のユーザ認証処理に係る動作フローを、そして、図9(C)はユーザ管理サーバ106のユーザ認証処理に係る動作フローを示している。
図9(A)に示すように、ディスクレス計算機101において、CPU1011は、ブートローダプログラムに従い、ユーザから取得したユーザID、パスワード、および、ユーザ管理サーバ106のIPアドレスを含むユーザ認証要求パケットを生成し、これをライトキャッシュ機能付ルータ104に送信する(S310)。
その後、CPU1011は、ライトキャッシュ機能付ルータ104からユーザ認証応答パケットが送られてくるのを待つ(S311)。そして、受信したユーザ認証応答パケットに、ストレージ装置識別情報243、ボリューム識別情報244が格納されているならば(S312でYES)、ストレージ装置102とのiSCSIセッションの接続処理を行う(S313)。一方、格納されていないならば(S312でNo)、I/O1015に接続された出力装置にエラー情報を出力し、処理を終了する(S314)。
また、図9(B)に示すように、ライトキャッシュ機能付ルータ104において、CPU111は、ルーティングプログラム130に従い、通信装置114aを介してディスクレス計算機101からユーザ認証要求パケットを受信すると(S320)、このユーザ認証要求パケットを、ユーザ管理エージェント125に従って処理する。すなわち、CPU111は、ユーザ認証要求パケットからユーザ管理サーバ106のIPアドレスを取得する(S321)。そして、送信元をライトキャッシュ機能ルータ104のIPアドレスとし、宛先をユーザ管理サーバ106のIPアドレスとする、前記受信したユーザ認証要求に含まれているユーザIDおよびパスワードを含んだユーザ認証要求パケットを新たに生成する。次に、CPU111は、ルーティングプログラム130に従い、この新たに生成されたユーザ認証要求パケットを、通信装置114bを介してユーザ管理サーバ106へ送信する(S322)。
その後、CPU111は、ルーティングプログラム130に従い、通信装置114bを介してユーザ管理サーバ106からデータフラッシュ要求パケットを受信すると(S323)、データ管理モジュール124に従ってデータフラッシュ処理を行い、その成否を示す報告パケットを生成する。ここで、データフラッシュ処理とは、ライトキャッシュ機能付ルータ104にキャッシュされている、データフラッシュ要求パケットで指定されたストレージ装置識別情報231およびボリューム識別232を持つ全てのキャッシュレコード230に格納されているデータブロックを、このストレージ装置識別情報231およびボリューム識別232により特定されるストレージ装置102のボリュームへライトする処理である。データフラッシュ処理の詳細については後述する。次に、CPU111は、ルーティングプログラム130に従い、報告パケットを、通信装置114bを介してユーザ管理サーバ106へ送信する(S324)。
また、CPU111は、ルーティングプログラム130に従い、通信装置114bを介してユーザ管理サーバ106からユーザ認証応答パケットを受信すると(S325)、このユーザ認証応答パケットを、ユーザ管理エージェント125に従って処理する。すなわち、CPU111は、ユーザ認証応答パケットに、ストレージ装置識別情報243およびボリューム識別情報244が格納されているか否かを調べる(S326)。
S326において格納されていると判断した場合は、セッション管理情報210を新たに作成し、このセッション管理情報210のストレージ装置識別情報211、ボリューム識別情報212に、当該ユーザ認証パケットに格納されているストレージ装置識別情報243、ボリューム識別244を登録する(S327)。なお、ディスクレス計算機識別情報213、対計算機セッション識別情報214、対ストレージセッション識別情報215および接続状態情報216は、この段階では「NULL」としておく。それから、ストレージ装置識別情報243およびボリューム識別情報244を含み、送信元をライトキャッシュ機能付ルータ104とし、宛先をユーザ認証要求パケットの送信元であるディスクレス計算機101とするユーザ認証応答パケットを新たに生成する(S328)。一方、S326において格納されていないと判断した場合は、送信元をライトキャッシュ機能付ルータ104とし、宛先をユーザ認証要求パケットの送信元であるディスクレス計算機101とする、接続不許可を示すユーザ認証応答パケットを新たに生成する(S329)。
次に、CPU111は、ルーティングプログラム130に従い、この新たに生成されたユーザ認証応答パケットを、通信装置114aを介してディスクレス計算機101へ送信する(S330)。
また、図9(C)に示すように、ユーザ管理サーバ106において、CPU511は、通信装置514を介してライトキャッシュ機能付ルータ104からユーザ認証要求パケットを受信すると(S340)、ユーザ管理プログラム530に従いユーザ認証を行う(S341)。具体的には、ユーザ認証要求パケットに含まれているユーザIDおよびパスワードを持つユーザ管理情報240がユーザ情報管理テーブル531に登録されているか否かを調べる。そのようなユーザ管理情報240が登録されていない場合(S342でNo)は、ユーザ認証不成立と判断し、その旨を示すメッセージを格納したユーザ認証応答パケットを生成し、ライトキャッシュ機能付ルータ104に送信する(S343)。一方、そのようなユーザ管理情報240が登録されている場合(S342でYES)は、ユーザ認証成立と判断する。この場合、CPU511は、このユーザ管理情報240のキャッシュ装置識別情報245にIPアドレスが設定されているか否かを調べることにより、データフラッシュ処理の必要性を判断する(S344)。
S344においてIPアドレスが設定されていない場合は、ディスクレス計算機101のユーザが本実施形態のディスクレス計算機システムを初めて使用するユーザであるので、ライトキャッシュ機能付ルータ104に当該ユーザのデータブロックがキャッシュされていることはない。したがって、CPU511は、ライトキャッシュ機能付ルータ104に、データフラッシュ処理を要求しない。この場合、CPU511は、ユーザ情報管理テーブル531に登録されている、このユーザ管理情報240のキャッシュ装置識別情報245に、ユーザ認証要求パケットの送信元であるライトキャッシュ機能付ルータ104のIPアドレスを登録する(S345)。それから、CPU511は、このユーザ管理情報240のストレージ装置識別情報243およびボリューム識別情報244を含むユーザ認証応答パケットを生成し、通信装置514を介して、ユーザ認証要求の送信元であるライトキャッシュ機能付ルータ104へ送信する(S346)。
一方、S344においてIPアドレスが設定されている場合は、ディスクレス計算機101のユーザが本実施形態のディスクレス計算機システムを既に使用したことのあるユーザであるので、ライトキャッシュ機能付ルータ104に当該ユーザのデータブロックがキャッシュされている可能性がある。したがって、CPU511は、このユーザ管理情報240のキャッシュ装置識別情報245に登録されているIPアドレスを持つライトキャッシュ機能付ルータ104に、データフラッシュ処理要求パケットを送信する(S347)。そして、このライトキャッシュ機能付ルータ104から報告パケットが届くのを待つ(S348)。次に、CPU511は、受信した報告パケットがデータフラッシュ処理の失敗を示している場合(S349でNo)は、接続不許可を示すユーザ認証応答パケットを生成し、通信装置514を介して、ユーザ認証要求の送信元であるライトキャッシュ機能付ルータ104へ送信する(S350)。一方、受信した報告パケットがデータフラッシュ処理の成功を示している場合(S349でYes)は、ユーザ情報管理テーブル531に登録されている、このユーザ管理情報240のキャッシュ装置識別情報245のIPアドレスを、ユーザ認証要求パケットの送信元であるライトキャッシュ機能付ルータ104のIPアドレスに更新する(S351)。それから、CPU511は、このユーザ管理情報240のストレージ装置識別情報243およびボリューム識別情報244を含むユーザ認証応答パケットを生成し、通信装置514を介して、ユーザ認証要求の送信元であるライトキャッシュ機能付ルータ104へ送信する(S352)。
(6-2)iSCSIセッション接続処理
図10は、iSCSIセッション接続処理を説明するためのフロー図であり、図10(A)はディスクレス計算機101のiSCSIセッション接続処理に係る動作フローを、そして、図10(B)はライトキャッシュ機能付ルータ104のiSCSIセッション接続処理に係る動作フローを示している。なお、ストレージルータ107およびストレージ装置102におけるiSCSIセッション接続処理に係る動作フローは、既存のストレージルータおよびストレージ装置のそれと同じであるので、その詳細な説明を省略する。
図10(A)に示すように、ディスクレス計算機101において、CPU1011は、iSCSIドライバに従い、iSCSIイニシエータ名および上記(6-1)ユーザ認証処理でユーザ管理サーバ106から取得したストレージ装置識別情報243のiSCSIターゲット名を含むiSCSIログイン要求パケットを生成し、これをライトキャッシュ機能付ルータ104に送信する(S410)。
その後、CPU1011は、ライトキャッシュ機能付ルータ104からiSCSIログイン応答パケットが送られてくるのを待つ(S411)。そして、受信したiSCSIログイン応答パケットが、接続成功を示しているばらば(S412でYES)、その後、このiSCSIセッションを用いてデータ転送を開始する(S413)。一方、接続失敗を示しているならば(S412でNo)、I/O1015に接続された出力装置にエラー情報を出力し、処理を終了する(S414)。
また、図10(B)に示すように、ライトキャッシュ機能付ルータ104において、CPU111は、ルーティングプログラム130に従い、通信装置114aを介してディスクレス計算機101からiSCSIログイン要求パケットを受信すると(S420)、このiSCSIログイン要求パケットを、iSCSIターゲットモジュール121およびiSCSIセッション管理モジュール123に従って処理する。すなわち、先ず、CPU111は、iSCSIターゲットモジュール121に従い、セッションIDを生成すると共に、このiSCSIログイン要求パケットの伝送に用いたTCPコネクション情報を取得する(S421)。次に、CPU111は、iSCSIセッション管理モジュール123に従い、iSCSIログイン要求パケットに含まれているiSCSIターゲット名を持つセッション管理情報210がメインメモリ112に登録されているか否かを調べる(S422)。また、登録されている場合は、このセッション管理情報210のディスクレス計算機識別情報213がNULLであるか否かをさらに調べる(S423)。
S422において、iSCSIログイン要求パケットに含まれているiSCSIターゲット名を持つセッション管理情報210がメインメモリ112に登録されていないと判断された場合、または、S423において、このセッション管理情報210のディスクレス計算機識別情報213がNULLでないと判断された場合(iSCSIイニシエータ名およびIPアドレスが登録済みの場合)、CPU111は、ログイン要求を不許可(ライトキャッシュ不可)と判断する。そして、iSCSIターゲットモジュール121に従い、ログイン失敗を示すiSCSIログイン応答パケットを生成する。次に、CPU111は、ルーティングプログラム130に従い、このiSCSIログイン応答パケットを、通信装置114aを介して、S420で受信したiSCSIログイン要求パケットで指定されているiSCSIイニシエータ(iSCSIドライバ)を搭載するディスクレス計算機101へ送信する(S424)。
一方、S422において、iSCSIログイン要求パケットに含まれているiSCSIターゲット名を持つセッション管理情報210がメインメモリ112に登録されていないと判断され、且つ、S423において、このセッション管理情報210のディスクレス計算機識別情報213がNULLであると判断された場合、CPU111は、ログイン要求を許可(ライトキャッシュ可能)と判断する。そして、iSCSIイニシエータモジュール122に従い、このセッション管理情報210のストレージ装置識別情報211のiSCSIターゲット名を含むiSCSIログイン要求パケットを新たに生成する。また、iSCSIログイン要求パケットに対する応答時間の計測を開始する。次に、CPU111は、ルーティングプログラム130に従い、このiSCSIログイン要求パケットを、通信装置114bを介して、iSCSIターゲット(ストレージ装置102)に接続されているストレージルータ107へ送信する(S425)。
その後、CPU111は、ルーティングプログラム130に従い、通信装置114bを介してストレージルータ107からiSCSIログイン応答パケットを受信すると(S426)、このiSCSIログイン応答パケットを、iSCSIイニシエータモジュール122およびiSCSIセッション管理モジュール123に従って処理する。すなわち、先ず、CPU111は、iSCSIイニシエータモジュール121に従い、セッションIDを生成すると共に、このiSCSIログイン応答パケットの伝送に用いたTCPコネクション情報を取得する。また、iSCSIログイン要求パケットに対する応答時間を取得する(S427)。次に、CPU111は、iSCSIセッション管理モジュール123に従い、iSCSIログイン応答パケットが示すログイン成否を確認する(S428)。
S428においてログイン失敗を示しているならば、CPU111は、iSCSIターゲットモジュール121に従い、ログイン失敗を示すiSCSIログイン応答パケットを生成する。次に、CPU111は、ルーティングプログラム130に従い、このiSCSIログイン応答パケットを、通信装置114aを介して、S420で受信したiSCSIログイン要求パケットで指定されているiSCSIイニシエータ(iSCSIドライバ)を搭載するディスクレス計算機101へ送信する(S429)。
一方、S428においてログイン成功を示しているならば、CPU111は、iSCSIセッション管理モジュール123に従い、S420で受信したiSCSIログイン要求パケットに含まれているiSCSIターゲット名を持つセッション管理情報210を更新する(S430)。具体的には、ディスクレス計算機識別情報213にS420で受信したiSCSログイン要求パケットで指定されているiSCSIイニシエータ名を、対計算機セッション識別情報214にS421で生成・取得したセッションID、TCPコネクション情報を、対ストレージセッション識別情報215にS427で生成・取得したセッションID、TCPコネクション情報を、そして、接続状態情報216に「接続」を設定する。また、CPU111は、iSCSIセッション管理モジュール123に従い、ターゲット管理情報220を新たに作成し、このストレージ装置識別情報221に更新したセッション管理情報210のストレージ装置識別情報211を、ボリューム識別情報222に更新したセッション管理情報210のボリューム識別情報212を、接続状態情報223に「接続」を、そして、負荷状態情報224にS427で測定した応答時間を登録する(S431)。次に、CPU111は、iSCSIターゲットモジュール121に従い、ログイン成功を示すiSCSIログイン応答パケットを生成する。それから、CPU111は、ルーティングプログラム130に従い、このiSCSIログイン応答パケットを、通信装置114aを介して、S420で受信したiSCSIログイン要求パケットで指定されているiSCSIイニシエータ(iSCSIドライバ)を搭載するディスクレス計算機101へ送信する(S432)。
その後、CPU111は、iSCSIイニシエータモジュール122に従い、iSCSIターゲット(ストレージ装置102)に接続されているストレージルータ107との間に確立されたiSCSIセッションの監視を開始する(S433)。そして、ネットワーク断等によりストレージ装置102とのiSCSIセッション断を検知した場合、CPU111は、iSCSIセッション管理モジュール123に従い、当該iSCSIターゲットのターゲット管理情報220の接続状態情報223を「切断」に変更する(S434)。そして、セッション再開を行うためのiSCSIログイン要求パケットを再度送信するべく、S425に戻る。
(6-3)データブロックライト処理
データブロックライト処理は、ライト要求の対象データブロックをライトキャッシュ機能付ルータ104にキャッシュするデータキャッシュ処理(図2のS115、S407、S408に相当)と、ライトキャッシュ機能付ルータ104にキャッシュされたデータブロックをストレージ装置102にライトするデータフラッシュ処理(図2のS409、S304、S502、S305に相当)とに分けることができる。以下、それぞれの処理について説明する。
(6-3-1)データキャッシュ処理
図11は、データキャッシュ処理を説明するためのフロー図であり、図11(A)はディスクレス計算機101のデータキャッシュ処理に係る動作フローを、そして、図11(B)はライトキャッシュ機能付ルータ104のデータキャッシュ処理に係る動作フローを示している。
図11(A)に示すように、ディスクレス計算機101において、CPU1011は、iSCSIドライバに従い、自身のiSCSIイニシエータ名およびストレージ装置102のiSCSIターゲット名を含むiSCSIライト要求パケットを生成し、これをライトキャッシュ機能付ルータ104に送信する(S510)。なお、iSCSIライト要求パケットには、ボリュームのLUN、開始LBA番号、データブロックのブロック数、および、ライト要求の対象データブロックが含まれる。
その後、CPU1011は、ライトキャッシュ機能付ルータ104からiSCSIライト応答パケットが送られてくるのを待つ(S511)。そして、受信したiSCSIライト応答パケットが、ライト完了を示しているならば(S512でYES)、ライト処理を終了する。一方、ライト失敗を示しているならば(S512でNo)、I/O1015に接続された出力装置にエラー情報を出力し(S513)、それから処理を終了する。
また、図11(B)に示すように、ライトキャッシュ機能付ルータ104において、CPU111は、ルーティングプログラム130に従い、通信装置114aを介してディスクレス計算機101からiSCSIライト要求パケットを受信すると(S520)、このiSCSIライト要求パケットを、iSCSIターゲットモジュール121、iSCSIセッション管理モジュール123およびデータ管理モジュール124に従って処理する。すなわち、先ず、CPU111は、iSCSIターゲットモジュール121に従い、このiSCSIライト要求パケットの伝送に用いたTCPコネクション情報を取得する。次に、CPU111は、iSCSIセッション管理モジュール123に従い、取得したTCPコネクション情報が対計算機セッション識別情報に登録されているセッション管理情報210を選択する(S521)。次に、CPU111は、データ管理モジュール124に従い、SCSIライト要求パケットで指定されているブロック数とメインメモリ112の残容量とを比較することにより、SCSIライト要求パケットに格納されているライト要求の対象データブロックをキャッシュ可能か否かを判断する(S522)。
S522において、例えばメインメモリ112の残容量が対象データブロックのブロック数に所定のマージンを加算した容量より少ない場合、キャッシュ不可能と判断する。そして、CPU111は、iSCSIターゲットモジュール121に従い、ライト失敗を示すiSCSIライト応答パケットを生成する。次に、CPU111は、ルーティングプログラム130に従い、このiSCSIライト応答パケットを、通信装置114aを介して、iSCSIイニシエータ(iSCSIドライバ)を搭載するディスクレス計算機101へ送信する(S523)。
一方、S522において、例えばメインメモリ112の残容量が対象データブロックのブロック数に所定のマージンを加算した容量以上の場合、キャッシュ可能と判断する。そして、CPU111は、メインメモリ112にキャッシュレコード領域を確保する。それから、対象データブロックを記録単位つまり512バイトのブロックサイズに分割して、複数のブロックデータを得る。そして、ブロックデータ毎にキャッシュレコード230を作成し、各キャッシュレコード230のストレージ装置識別情報231、ボリューム識別情報232に、S521で選択したセッション管理情報210のストレージ装置識別情報211、ボリューム識別情報212を登録する。また、各キャッシュレコード230のブロックデータ234に、当該レコード230に対応するブロックデータを、そして、ブロック情報233に、開始LBA番号からの連続番号(=開始LBA番号+先頭ブロックから対象ブロックまでのブロック数)を登録する(S524)。次に、CPU111は、S521で選択したセッション管理情報210のストレージ装置識別情報211、ボリューム識別情報212を持つターゲット管理情報220を選択し、このターゲット管理情報220のレコード量225に、作成したキャッシュレコード230の総レコード数を加算する(S525)。その後、CPU111は、iSCSIターゲットモジュール121に従い、ライト成功を示すiSCSIライト応答パケットを生成する。次に、CPU111は、ルーティングプログラム130に従い、このiSCSIライト応答パケットを、通信装置114aを介して、iSCSIイニシエータ(iSCSIドライバ)を搭載するディスクレス計算機101へ送信する(S526)。
なお、CPU111が、iSCSIセッション管理モジュール123に従い、ターゲット管理情報220のレコード量225を監視し、当該量が閾値を超えている場合には、iSCSIターゲットモジュール121によるiSCSIライト応答パケットの送信を一定時間保留させるようにしてもよい。ディスクレス計算機101は、ライト応答パケットを受信しなければ、次のライト要求を送信できないので、ディスクレス計算機101のライト要求の発行を抑止することができる。
(6-3-2)データフラッシュ処理
図12は、ライトキャッシュ機能付ルータ104のデータフラッシュ処理に係る動作フローを示している。なお、ストレージルータ107およびストレージ装置102におけるデータフラッシュ処理に係る動作フローは、既存のストレージルータおよびストレージ装置におけるライト要求処理に係る動作フローと同じである。そこで、その詳細な説明を省略する。
先ず、ライトキャッシュ機能付ルータ104において、CPU111は、データ管理モジュール124に従い、接続状態情報223が「接続」であり且つレコード量225が規定量を超えているターゲット管理情報220、あるいは、接続状態情報223が「接続」であり且つデータフラッシュ実行周期時間を過ぎているターゲット管理情報220が存在するか否かを調べる(S610)。ここで、データフラッシュ実行周期時間を過ぎているか否かの判断は、次のようにして行う。すなわち、ターゲット管理情報220に、当該ターゲット管理情報220により特定されるストレージ装置102のボリュームに対する最新のデータフラッシュ実行時刻を対応付けておく。なお、データフラッシュ処理が未だ実行されていない場合は、ターゲット管理情報220の作成時刻を最新のデータフラッシュ実行時刻として対応付ける。そして、最新のデータフラッシュ実行時刻から現在時刻までの経過時間をデータフラッシュ実行周期時間と比較することで、データフラッシュ実行周期時間を過ぎているターゲット管理情報220が存在するか否かを判断する。
次に、CPU111は、レコード量225が規定量を超えているターゲット管理情報220、あるいは、データフラッシュ実行周期時間を過ぎているターゲット管理情報220が存在する場合、データ管理モジュール124に従い、このターゲット管理情報220により特定されるストレージ装置102のボリュームを、データフラッシュ処理の対象ボリュームに決定する(S611)。また、このターゲット管理情報220に登録されているストレージ装置識別情報221、ボリューム識別情報222を持つキャッシュレコード230に格納されているブロックデータ234をデータフラッシュ対象のブロックデータに決定する(S612)。
次に、CPU111は、データ管理モジュール124に従い、データフラッシュ対象のブロックデータ234をブロック情報233が示すLBA番号の順に繋いでデータブロックを復元する(S613)。次に、CPU111は、iSCSIイニシエータモジュール122に従い、対象ボリュームのストレージ装置識別情報およびボリューム識別情報を持つセッション管理情報210を特定し、このセッション管理情報210の対ストレージセッション識別情報215より特定されるiSCSIセッションを選択する。そして、復元したデータブロックを対象ボリュームにライトするための、選択したiSCSIセッションを用いたiSCSIライト要求パケットを作成する。また、iSCSIライト要求パケットに対する応答時間の計測を開始する(S614)。次に、CPU111は、ルーティングプログラム130に従い、このiSCSIライト要求パケットを、通信装置114bを介して、iSCSIターゲット(ストレージ装置102)に接続されているストレージルータ107へ送信する(S615)。
その後、CPU111は、ルーティングプログラム130に従い、通信装置114bを介してストレージルータ107からiSCSIライト応答パケットを受信すると(S616)、このiSCSIライト応答パケットを、iSCSIイニシエータモジュール122およびデータ管理モジュール124に従って処理する。すなわち、先ず、CPU111は、iSCSIイニシエータモジュール121に従い、iSCSIライト要求パケットに対する応答時間を取得する。次に、データ管理モジュール124に従い、応答時間を対象ボリュームのターゲット管理情報220の負荷状態情報224に登録する(S617)。
次に、CPU111は、データ管理モジュール124に従い、iSCSIライト応答パケットが示すライト処理の成否を確認する(S618)。
S618で成功を示している場合は、対象ブロックデータのキャッシュレコード230を削除する(S619)。また、対象ボリュームのターゲット管理情報220に登録されているレコード量から、削除した対象ブロックデータの総ブロック数を減算する(S620)。さらに、対象ボリュームのターゲット管理情報220がレコード量「0」であり、且つ、対象ボリュームのストレージ装置識別情報およびボリューム識別情報を持つセッション管理情報210の接続状態情報216が「切断」であるならば(S621)、このターゲット管理情報220を削除する(S622)。それから、S610に戻る。一方、S618で失敗を示している場合は、対象ブロックデータのキャッシュレコード230の削除等の処理を行うことなくS610に戻る。
なお、S610において、CPU111は、データ管理モジュール124に従い、キャッシュしたキャッシュレコードが一定量に達した場合、あるいは、ターゲット管理情報220の負荷状態情報224が既定値を超えた場合、データフラッシュ処理を終了し、ライト可能な他のストレージ装置102のボリュームを選択する。
また、CPU111は、ルーティングプログラム130に従い、通信装置114bを介してユーザ管理サーバ106からデータフラッシュ要求パケットを受信すると(S630)、ユーザ管理エージェントモジュール125に従い、このデータフラッシュ要求パケットで指定されているストレージ装置識別情報およびボリューム識別情報を持つターゲット管理情報220を特定する(S631)。次に、CPU111は、特定したターゲット管理情報220に対して、上述S611〜S621を行い、キャッシュレコードを全てフラッシュする(S632)。それから、CPU111は、ユーザ管理エージェントモジュール125に従い、S617で確認したライト処理の成否を示す報告パケットを生成する。CPU111は、ルーティングプログラム130に従い、この報告パケットを、通信装置114bを介して、ユーザ管理サーバ106へ送信する(S633)。
(6-4)iSCSIセッション切断処理
図13は、ライトキャッシュ機能付ルータ104のiSCSIセッション切断処理に係る動作フローを示している。なお、ディスクレス計算機101におけるiSCSIセッション切断処理に係る動作フローは、既存のディスクレス計算機におけるiSCSI切断処理に係る動作フローと同じである。そこで、その詳細な説明を省略する。
先ず、ライトキャッシュ機能付ルータ104において、CPU111は、ルーティングプログラム130に従い、通信装置114aを介してディスクレス計算機101(iSCSIドライバ)からiSCSIログアウト要求パケットを受信すると(S730)、このiSCSIログアウト要求パケットを、iSCSIターゲットモジュール121およびiSCSIセッション管理モジュール123に従って処理する。すなわち、CPU111は、iSCSIターゲットモジュール121に従い、このiSCSIログアウト要求パケットの伝送に用いたTCPコネクション情報を取得する(S731)。次に、CPU111は、iSCSIセッション管理モジュール123に従い、このTCPコネクション情報を有する対計算機セッション識別情報を持つセッション管理情報210を選択し(S732)、この接続状態情報216を「切断」に変更する(S733)。それから、CPU111は、iSCSIターゲットモジュール121に従い、iSCSIログアウト応答パケットを生成する。次に、CPU111は、ルーティングプログラム130に従い、この応答パケットを、通信装置114aを介して、ディスクレス計算機101(iSCSIドライバ)に送信する(S734)。
また、CPU111は、iSCSIターゲットモジュール121に従い、切断状態が所定時間以上継続しているTCPコネクションを検出すると(S740)、iSCSIセッション管理モジュール123に従い、このTCPコネクション情報を有する対計算機セッション識別情報を持つセッション管理情報210を選択し(S741)、この接続状態情報216を「切断」に変更する(S742)。
以上、本発明の第1実施形態について説明した。
なお、本実施形態では、ライトキャッシュ機能付ルータ104において、セッション管理情報210、ターゲット管理情報220、キャッシュレコード230をメモリ112に格納する場合を例にとり説明した。しかし、これらの情報を記憶装置113に格納することも可能である。記憶装置113に格納した場合、ライトキャッシュプログラム120が異常終了した場合でライト処理を再開できる。
つまり、記憶装置113にセッション管理情報210、ターゲット管理情報220、キャッシュレコード230を格納する場合、上記(5-4)ライトキャッシュ機能付ルータの設定作業で、ライトキャッシュプログラム120の起動時に、CPU111が、iSCSIセッション管理モジュール123に従い、セッション管理情報210およびターゲット管理情報220の初期化を行う。ここで、セッション管理情報210、ターゲット管理情報220が存在する場合、ライトキャッシュプログラム120が異常終了したと判断し、セッション管理情報210、ターゲット管理情報220の接続状態情報216、223を「切断」に変更し、ストレージ装置102のボリュームと再接続を行うためのiSCSIログイン要求パケットを、当該ストレージ装置102に送信する。そして、ログイン成功を示すiSCSIログイン応答パケットを受信したならば、TCPコネクション情報、応答時間をターゲット管理情報220に設定し、また、接続状態情報223に「接続」に変更する。これにより、CPU111は、データ管理モジュール124に従い、ライトしていないデータブロックを記憶装置113から読み出してデータフラッシュ処理を再開することができる。
なお、ライトキャッシュプログラム120が異常終了した場合、ディスクレス計算機101のiSCSIドライバから、再接続を行うためのiSCSIログイン要求パケットが送られてくるが、CPU111がiSCSIセッション管理モジュール123に従いストレージ装置識別情報211、ボリューム識別情報212、ディスクレス計算機識別情報213、対計算機セッション情報214が一致するセッション管理情報210を選択し、この接続状態情報217を「接続」に変更し、iSCSIログイン応答パケットを返信することで、iSCSIセッションを再開できる。
また、上記の実施形態では、512バイトのブロックサイズのブロックデータを記録単位としてキャッシュレコード230を作成している。しかし、ライト要求で送られてくる複数のブロックデータを1つの記録単位として、メモリ112および/または記憶装置113にキャッシュすることもできる。複数のブロックデータを1つの記録単位とする場合のレコード(ログレコードと呼ぶ)250の構成例を図14に示す。図示するように、ログレコード250は、ブロック情報251、ブロック数252、および、ブロックデータ253を有する。ブロック情報251は、ボリューム内のデータブロックの位置を表わす情報でありLBA番号等である。ブロック数252は、ログレコード250に記録されているデータブロックのブロック数を表す。そして、ブロックデータ233は、前記ブロック数分でのブロックデータからなるデータブロックである。
ログレコード250を用いる場合、上記(6-2)iSCSIセッション接続処理のセッション管理情報210を更新するステップ(図10(B)のS430)において、メモリ112および/または記憶装置113上にデータブロック格納場所(ファイル等)を確保し、これをセッション管理情報210にログ管理情報217(図5参照)として登録する処理を追加する。また、上記(6-3-1)データキャッシュ処理のレコードを作成するステップ(図11(B)のS524)において、対応するセッション管理情報210のログ管理情報217で指定されたデータブロック格納場所に、iSCSIライト要求の受信順にログレコード250を登録してゆく。さらに、上記(6-3-2)データフラッシュ処理のiSCSIライト要求を作成するステップ(図12のS615)において、登録されたログレコード250の順番に従ってiSCSIライト要求を作成し、ストレージ装置102のボリュームへ送信する。
<<第2実施形態>>
本発明の第2実施形態が適用されたディスクレス計算機システムについて、図面を参照して説明する。本実施形態では、ライトキャッシュ機能付ルータ104において、CPU111が、ライトキャッシュプログラム120に従い、ファイルシステムのデータ更新記録を単位としてレコードを作成し、ログレコードからデータブロックをストレージ装置102のボリュームにライトできるようにしたものである。
本実施形態では、ディスクレス計算機101で起動されるOSがジャーナリングファイルシステムをサポートしていることが前提となる。ジャーナリングファイルシステムとは、ファイルのメタ情報、データの更新内容をログに記録しておき、このログに基づいて、定期的に、実際のデータ領域に書き込むものである。ジャーナリングファイルシステムは、ファイルシステムに、ログ開始を指示する手段(ログ開始手段)と、メタデータおよびデータブロックの変更をログファイルに記録する手段(ログ登録手段)とを、ファイルシステムに提供する。このジャーナリングファイルシステムにより、ファイルシステムは、初期化時に、ログ開始手段を用いログ作成の準備を行い、ライト要求が発生するとログ登録手段を用いてこの更新内容を示すログを作成する。このログを作成した段階で、ファイルシステムのライト要求が終了する。一方、ジャーナリングファイルシステムは、ログに記録されたメタデータ、データブロックの更新を実際のデータ領域に書き込む手段(ログフラッシュ手段)を用いて、定期的にデータ領域への書き込みを実行する。
本実施形態では、ライトキャッシュ機能付ルータ104上にジャーナリングファイルシステムを配置している。そして、ディスクレス計算機101には、ディスクレス計算機101上で稼動するOSのファイルシステムに対して、ライトキャッシュ機能付ルータ104上で稼動するジャーナリングファイルシステムのエージェントを配置する。
(1)ディスクレス計算機
本実施形態のディスクレス計算機101では、OSおよびiSCSIドライバなどと共に、ジャーナリングファイルシステムのエージェントプログラムが、ストレージ装置102のブートイメージを格納するボリュームからディスクレス計算機101へロードされ、CPU1011により実行される。
図15は、本発明の第2実施形態のディスクレス計算機101で起動するプログラム構成例を示す図である。図示するように、ファイルシステムであるファイルモジュール143と、iSCSIドライバであるiSCSIイニシエータモジュール141と、ログ開始要求、ログ登録要求をジャーナリングファイルシステムに通知するジャーナリングエージェントモジュール142と、を有する。また、図示していないが、その他のプログラムとして、ファイルシステムに対してデータ処理を要求するアプリケーションモジュールや、IPネットワーク105aと通信を行なうための通信モジュールなどが含まれる。
ディスクレス計算機101において、CPU1011は、ファイルモジュール143に従いリード要求を生成した場合、このリード要求をiSCSIイニシエータモジュール141に従って処理する。すなわち、ファイルモジュール143からのリード要求に応じたiSCSIリード要求パケットを生成し、ライトキャッシュ機能付ルータ104に送信する。そして、そのiSCSIリード応答パケットを受信することで、ストレージ装置102のボリュームからデータブロックをリードする。一方、CPU1011は、ファイルモジュール143に従いライト要求を生成した場合、このライト要求をジャーナリングファイルシステムがファイルシステムに提供するログ登録手段およびジャーナリングエージェントモジュール142に従って処理する。すなわち、ログ登録手段に従い、このライト要求の更新内容のログが作成される。そして、ジャーナリングエージェントモジュール142に従い、このログの登録要求をライトキャッシュ機能付ルータ104のジャーナリングファイルシステムに送信し、その結果を受信する。
(2)ライトキャッシュ機能付ルータ
本実施形態のライトキャッシュ機能付ルータ104は、セッション管理情報210の構成およびライトキャッシュプログラム120のモジュール構成が第1実施形態と異なる。
図16は、本発明の第2実施形態で用いるセッション管理情報210の構成例を示す図である。図示するように、本実施形態では、セッション管理情報210に、エージェント識別情報218を追加している。エージェント識別情報218は、ジャーナリングエージェントモジュール142を識別する情報であり、コネクションID等である。
図17は、本発明の第2実施形態のライトキャッシュ機能付ルータ104で起動するライトキャッシュプログラム120のモジュール構成を説明するための図である。図示するように、本実施形態のライトキャッシュプログラム120では、データ管理モジュール124に代えて、ジャーナリングファイルシステムであるジャーナリングファイルモジュール126を設けている。
ライトキャッシュ機能付ルータ104において、CPU111は、ジャーナリングファイルモジュール126に従い、ディスクレス計算機101のジャーナリングエージェントモジュール142から受け付けたログ開始要求、ログ登録要求に基づいて、メタデータ、データブロックの変更内容を示すログを登録する。また、定期的に、ログフラッシュを実行する。つまり、ライト対象のログに記録されているメタデータ、データブロックの変更内容を特定する。CPU111は、iSCSIイニシエータモジュール122に従い、特定された更新情報に基づいてiSCSIライト要求パケットを作成してiSCSIターゲットへ送信し、そのiSCSIライト応答パケットを受信する。また、CPU111は、ジャーナリングファイルモジュール126に従い、iSCSIライト応答パケットに示されている結果を含んだパケットを、ディスクレス計算機101のジャーナリングエージェントモジュール142に送信する。
図18は、CPU111がジャーナリングファイルモジュール126に従い作成するログレコード260の構成例を示す図である。図示するように、ログレコード260間の相関関係を表わすトランザクション識別情報261と、ファイルシステムのメタ情報、データ情報である更新情報262とを含む。
(3)システム動作詳細
ディスクレス計算機101の電源をONにすると、上記の第1実施形態と基本的に同様の動作(図2参照)が行われる。したがって、本実施形態においても、上記の第1実施形態で説明した(6-1)ユーザ認証処理、(6-2)iSCSIセッション接続処理、および、(6-3)データブロックライト処理と同様の処理が行われる。また、ディスクレス計算機101のOS停止時には、上記の第1実施形態で説明した(6-4)iSCSIセッション切断処理と同様の処理が行われる。以下、これらの処理の第1実施形態との相違点について説明する。
(3-1)ユーザ認証処理
第1実施形態で説明した(6-1)ユーザ認証処理と同様である。
(3-2)iSCSIセッション接続処理
第1実施形態で説明した(6-2)iSCSIセッション接続処理と基本的に同様である。但し、セッション管理情報210を更新するステップ(図10(B)のS430)において、メモリ112および/または記憶装置113上にログレコード格納場所(ファイル等)を確保し、これをセッション管理情報210にログ管理情報217として登録する処理を追加する。
(3-2')ログ開始処理
本実施形態では、iSCSIセッション接続処理が終了した後に、ディスクレス計算機101において、CPU1011がファイルモジュール143に従いログ開始要求を発行する。このため、本実施形態では、以下に示すログ開始処理が追加される。
ディスクレス計算機101において、CPU1011は、ファイルモジュール143に従ってログ開始要求を発行し、ジャーナリングエージェントモジュール142に従ってこのログ開始要求に応じたログ開始要求パケットを作成して、ライトキャッシュ機能付ルータ104に送信する。ログ開始要求パケットには、iSCSIドライバに従いOS管理領域に登録した、ストレージ装置102およびボリュームの情報(iSCSIターゲット名、ストレージルータのIPアドレス、ポート番号、LUN)を追加登録する。
ライトキャッシュ機能付ルータ104において、CPU111は、通信装置114aを介してディスクレス計算機101からログ開始要求パケットを受信すると、ジャーナリングファイルモジュール126に従い、ログ開始手段を実行して、ログレコード260の登録を開始する。また、ログ開始要求パケットに登録されているiSCSIターゲット名、IPアドレス、ポート番号、LUNから該当するセッション情報210を選択し、このエージェント識別情報218に、ジャーナリングエージェントモジュール142との接続を識別する情報(コネクション情報等)を追加登録する。また、CPU111は、ジャーナリングファイルモジュール126に従い、ログ開始応答パケットを作成し、ディスクレス計算機101のジャーナリングエージェントモジュール142に返信する。
(3-3)データブロックライト処理
(3-3-1)データキャッシュ処理
本実施形態のデータキャッシュ処理は、ディスクレス計算機101において、CPU1011がファイルモジュール143に従いログ登録要求を発行することで開始される。つまり、本実施形態では、図11(A)のS510において、CPU1011がジャーナリングエージェントモジュール142に従い、iSCSIライト要求パケットに代わりにログ登録要求パケットをライトキャッシュ機能付ルータ104へ送信する。なお、ログ登録要求パケットには、ログレコード260間の相関関係を表わすトランザクション識別情報261と、ファイルシステムのメタ情報、データ情報である更新情報262とを含む。また、S511、S512において、CPU1011が、ジャーナリングエージェントモジュール142に従い、ライト応答パケットを受信する代わりにログ登録応答パケットを受信し、そのパケットが示す登録の成否を判断する。
また、図11(B)に示すライトキャッシュ機能付ルータ104の動作フローは次のように修正される。すなわち、S520において、CPU111がジャーナリングファイルモジュール126に従い、iSCSIライト要求パケットに代えてログ登録要求パケットを受信する。また、S521において、CPU111がジャーナリングファイルモジュールに従って、第1実施形態と同様の要領によりセッション管理情報210を選択する。また、S522において、CPU111がジャーナリングファイルモジュールに従って、第1実施形態と同様の要領により、ログ登録要求に格納されているログ(トランザクション識別情報261、更新情報26)をキャッシュ可能か否かを判断する。また、S524、S525において、CPU111がジャーナリングファイルモジュールに従って、キャッシュレコード230の代わりにログレコード260を作成し、このログレコード260に格納されているデータブロックのブロック数に基づいてターゲット管理情報220を更新する。また、S523、S526において、CPU111がジャーナリングファイルモジュール126に従い、iSCSIライト応答パケットに代わりにログ登録応答パケットを作成し、ディスクレス計算機101のジャーナリングエージェントモジュール142に返信する。
(3-3-2)データフラッシュ処理
本実施形態のデータフラッシュ処理では、CPU111がジャーナリングファイルモジュール126に従い、上記の第1実施形態におけるデータ管理モジュール124と同様の処理を行う。すなわち、本実施形態では、図12のS613〜S615において、CPU111がジャーナリングファイルモジュール126のログフラッシュ手段に従い、ログレコード260からiSCSIライト要求パケットを作成し、これをストレージ装置102のボリュームへ送信する。また、S619では、トランザクション識別情報261が一致するログレコード260の全てを正常にライトできた場合にのみ、これらを削除する。
(3-4)iSCSIセッション切断処理
第1実施形態で説明した(6-4)iSCSIセッション切断処理と同様である。
以上、本発明の第2実施形態について説明した。
本実施形態では、ディスク計算機101が異常終了した場合でも、ライトキャッシュ機能付ルータ104に残っているログレコード260をストレージ装置102にライトすることにより、ファイルシステムの回復を行うことができる。また、ライトキャッシュ機能付ルータ104が異常終了した場合でも、上記の第1実施形態と同様に、セッション管理情報210、ログレコード260を回復して、データフラッシュ処理を再開できる。
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
例えば、上気の各実施形態では、データフラッシュ処理において、レコード量225が規定量を超えているターゲット管理情報220、あるいは、データフラッシュ実行周期時間を過ぎているターゲット管理情報220を検出し、当該検出したターゲット管理情報220により特定されるストレージ装置102のボリュームを、データフラッシュの対象ボリュームに決定している(図12のS610、S611参照)。しかし、前記検出したターゲット管理情報220に含まれている負荷状態情報224が示すiSCSI応答時間が所定の閾値より長い場合は、前記検出したターゲット管理情報220を対象ボリュームの決定に採用しないようにしてもよい。このようにすることで、負荷状態が高いストレージ装置102および/またはTCPコネクション等の負荷がさらに高くなって通信品質が悪化が劣化するを抑止することができる。なお、このようにした場合、負荷状態情報224が示すiSCSI応答時間が所定の閾値より長いターゲット管理情報220により特定されるストレージ装置102のボリュームへのデータフラッシュ処理は、ユーザ管理サーバ106からのデータフラッシュ要求パケットに従って実行されることとなる。
また、上記の各実施形態では、ディスクレス計算機101が接続されたIPネットワーク105aと、ストレージルータ107(ストレージ装置102)が接続されたIPネットワーク105bと間に設置されるルータ装置に本発明を適用した場合を例にとり説明した。しかし、本発明はこれに限定されない。例えば、本発明のライトキャッシュ装置(ライトキャッシュプログラムを実行する装置)を、ルータとは別の装置として、IPネットワーク105a上に配置してもよい。そして、起動時に、ディスクレス計算機101が、DHCPサーバ103aからライトキャッシュ装置のIPアドレスを入手し、このライトキャッシュ装置を例えばプロキシ装置に設定して、ディスクレス計算機101およびストレージルータ107(ストレージ装置102)間のiSCSIパケットの送受が、ライトキャッシュ装置を経由して行われるようにしてもよい。
また、上記の各実施形態では、ディスクレス計算機およびストレージルータ間のネットワーク通信プロトコルとしてIPが用いられ、ネットワーク通信プロトコルの上位プロトコルとしてiSCSIが用いられている場合を例にとり説明したが、本発明はこれに限定されない。
図1は本発明の第1実施形態が適用されたディスクレス計算機システムの概略図である。 図2は本発明の第1実施形態が適用されたディスクレス計算機システムの動作概要を説明するための図である。 図3はライトキャッシュ機能付ルータ104の概略図である。 図4はライトキャッシュプログラム120のモジュール構成を説明するための図である。 図5はCPU111がライトキャッシュプログラム120に従い処理を行う際に使用する管理情報の構成例を示す図であり、図5(A)はセッション管理情報210の構成例を、そして、図5(B)はターゲット管理情報220の構成例を示している。 図6はCPU111がライトキャッシュプログラム120に従い、メインメモリ112にキャッシュされるデータブロックのキャッシュレコード230の構成例を示す図である。 図7はユーザ管理サーバ106の概略図である。 図8はユーザ管理情報240の構成例を示す図である。 図9はユーザ認証処理を説明するためのフロー図であり、図9(A)はディスクレス計算機101のユーザ認証処理に係る動作フローを、図9(B)はライトキャッシュ機能付ルータ104のユーザ認証処理に係る動作フローを、そして、図9(C)はユーザ管理サーバ106のユーザ認証処理に係る動作フローを示している。 図10はiSCSIセッション接続処理を説明するためのフロー図であり、図10(A)はディスクレス計算機101のiSCSIセッション接続処理に係る動作フローを、そして、図10(B)はライトキャッシュ機能付ルータ104のiSCSIセッション接続処理に係る動作フローを示している。 図11はデータキャッシュ処理を説明するためのフロー図であり、図11(A)はディスクレス計算機101のデータキャッシュ処理に係る動作フローを、そして、図11(B)はライトキャッシュ機能付ルータ104のデータキャッシュ処理に係る動作フローを示している。 図12はライトキャッシュ機能付ルータ104のデータフラッシュ処理に係る動作フローを示す図である。 図13はライトキャッシュ機能付ルータ104のiSCSIセッション切断処理に係る動作フローを示す図である。 図14は本発明の第1実施形態の変形例で使用するログレコード250の構成例を示す図である。 図15は本発明の第2実施形態のディスクレス計算機101で起動するプログラム構成例を示す図である。 図16は本発明の第2実施形態で用いるセッション管理情報210の構成例を示す図である。 図17は本発明の第2実施形態のライトキャッシュ機能付ルータ104で起動するライトキャッシュプログラム120のモジュール構成を説明するための図である。 図18は本発明の第2実施形態において、CPU111がジャーナリングファイルモジュール126に従い作成するログレコード260の構成例を示す図である。
符号の説明
101…ディスクレス計算機、102…ストレージ装置、103…DHCP/TFTPサーバ、104…ライトキャッシュ機能付ルータ、105…IPネットワーク、106…ユーザ管理サーバ、107…ストレージルータ

Claims (14)

  1. 少なくとも1つのディスクレス計算機と少なくとも1つのストレージ装置との間の情報送受を中継する中継装置であって、
    ディスクレス計算機から送信された情報がストレージ装置に対するライト要求である場合に、当該ライト要求の対象データをキャッシュすると共に、当該ライト要求に対する応答を、当該ライト要求の送信元のディスクレス計算機に送信するキャッシュ手段と、
    前記キャッシュ手段にキャッシュされたデータのライト要求を、当該データをライトするストレージ装置に送信し、当該ストレージ装置から当該ライト要求に対する応答を受信するフラッシュ手段と、を有すること
    を特徴とする中継装置。
  2. 請求項1に記載の中継装置であって、
    各ディスクレス計算機と各ストレージ装置との間のセッションを管理する管理手段をさらに有し、
    前記フラッシュ手段は、前記キャッシュ手段によりキャッシュされたデータのライト要求を、当該データの送信元とのセッションを持つストレージ装置に送信すること
    を特徴とする中継装置。
  3. 請求項2に記載の中継装置であって、
    前記管理手段は、ストレージ装置毎に、当該ストレージ装置にライトするデータのキャッシュ量を管理し、
    前記フラッシュ手段は、キャッシュ量が所定値を超えたストレージ装置に対して、前記キャッシュ手段によりキャッシュされた、当該ストレージ装置にライトするデータのライト要求を送信すること
    を特徴とする中継装置。
  4. 請求項3記載の中継装置であって、
    前記キャッシュ手段は、ディスクレス計算機から受信したライト要求の宛先ストレージ装置に対するデータのキャッシュ量が所定値を超えている場合、当該ライト要求に対する応答を一定時間保留すること
    を特徴とする中継装置。
  5. 請求項2乃至4のいずれか一項に記載の中継装置であって、
    前記管理手段は、ストレージ装置毎に、当該ストレージ装置に対するライト要求の最新の送信時刻を管理し、
    前記フラッシュ手段は、最新の送信時刻から所定時間を経過しているストレージ装置に対して、前記キャッシュ手段によりキャッシュされた、当該ストレージ装置にライトするデータのライト要求を送信すること
    を特徴とする中継装置。
  6. 請求項2乃至5のいずれか一項に記載の中継装置であって、
    前記管理手段は、セッション毎に、当該セッションの接続状態を管理し、
    前記フラッシュ手段は、接続状態が「切断」であるセッションを持つストレージ装置に対するライト要求の送信を抑止すること
    を特徴とする中継装置。
  7. 請求項2乃至6のいずれか一項に記載の中継装置であって、
    前記管理手段は、セッション毎に、当該セッションを持つストレージ装置と本中継装置との間のネットワーク、および、当該ストレージ装置の負荷状態を管理し、
    前記フラッシュ手段は、負荷状態が所定値を超えたストレージ装置に対するライト要求の送信を抑止すること
    を特徴とする中継装置。
  8. 請求項1乃至7のいずれか一項に記載の中継装置であって、
    前記キャッシュ手段は、ディスクレス計算機から送信されたライト要求を、当該ライト要求の宛先ストレージ装置に対応付けて記憶媒体にログレコードとして記録し、
    前記フラッシュ手段は、ストレージ装置に対するライト要求を、当該ストレージ装置に対応付けられて前記記憶媒体に記憶されているログレコードに基づいて作成すること
    を特徴とする中継装置。
  9. 請求項1乃至7のいずれか一項に記載の中継装置であって、
    前記キャッシュ手段は、ディスクレス計算機上で稼動しているファイルシステムのデータ更新内容を、データが更新されるべきストレージ装置に対応付けて記憶媒体に記録し、
    前記フラッシュ手段は、ストレージ装置に対するライト要求を、当該ストレージ装置に対応付けられて前記記憶媒体に記憶されているデータ更新内容に基づいて作成すること
    を特徴とする中継装置。
  10. 請求項1乃至9のいずれか一項に記載の中継装置を経由して、ディスクレス計算機のユーザがストレージ装置を利用することの可否を判断する管理サーバであって、
    ユーザ毎に、当該ユーザの認証情報、当該ユーザが利用可能なストレージ装置の識別情報、および、ディスクレス計算機のユーザがストレージ装置を利用した際に用いた中継装置の識別情報を含むユーザ管理情報を記憶する管理情報記憶手段と、
    前記中継装置を介してディスクレス計算機より受信したユーザ認証要求に含まれているユーザ認証情報を含むユーザ管理情報を前記管理情報記憶手段から検索することで、当該ディスクレス計算機のユーザのユーザ認証を行うユーザ認証手段と、を有し、
    前記ユーザ認証手段は、前記ユーザ認証要求に含まれているユーザ認証情報を含むユーザ管理情報が前記管理情報記憶手段に記憶されている場合、当該ユーザ管理情報に中継装置識別情報が含まれているならば、当該中継装置識別情報により特定される中継装置に、当該中継装置にキャッシュされている、当該ユーザ管理情報のストレージ装置識別情報により特定されるストレージ装置にライトするデータについて、当該データのライト要求を当該ストレージ装置に送信させると共に、当該ユーザ管理情報の中継装置識別情報を、前記ユーザ認証要求を中継した中継装置の識別情報に更新すること
    を特徴とするユーザ管理装置。
  11. 少なくとも1つのディスクレス計算機と少なくとも1つのストレージ装置との間の情報送受を中継するためのコンピュータ読取り可能なプログラムであって、
    前記プログラムは、コンピュータを、
    ディスクレス計算機から送信された情報がストレージ装置に対するライト要求である場合に、当該ライト要求の対象データをキャッシュすると共に、当該ライト要求に対する応答を当該ライト要求の送信元のディスクレス計算機に送信するキャッシュ手段、および、
    前記キャッシュ手段にキャッシュされたデータのライト要求を、当該データをライトするストレージ装置に送信し、当該ストレージ装置から当該ライト要求に対する応答を受信するフラッシュ手段として、機能させること
    を特徴とするコンピュータ読取り可能なプログラム。
  12. ディスクレス計算機から送信された情報がストレージ装置に対するライト要求である場合に、当該ライト要求の対象データをキャッシュすると共に、当該ライト要求に対する応答を当該ライト要求の送信元のディスクレス計算機に送信するキャッシュ手段と、前記キャッシュ手段にキャッシュされたデータのライト要求を、当該データをライトするストレージ装置に送信し、当該ストレージ装置から当該ライト要求に対する応答を受信するフラッシュ手段と、を有する中継装置を経由して、前記ディスクレス計算機のユーザが前記ストレージ装置を利用することの可否を判断するためのコンピュータ読取り可能なプログラムであって、
    前記プログラムは、コンピュータを、
    ユーザ毎に、当該ユーザの認証情報、当該ユーザが利用可能なストレージ装置の識別情報、および、ディスクレス計算機のユーザがストレージ装置を利用した際に用いた中継装置の識別情報を含むユーザ管理情報を記憶する管理情報記憶手段、および、
    前記中継装置を介してディスクレス計算機より受信したユーザ認証要求に含まれているユーザ認証情報を含むユーザ管理情報を前記管理情報記憶手段から検索することで、当該ディスクレス計算機のユーザのユーザ認証を行うユーザ認証手段として機能させ、
    前記ユーザ認証手段は、前記ユーザ認証要求に含まれているユーザ認証情報を含むユーザ管理情報が前記管理情報記憶手段に記憶されている場合、当該ユーザ管理情報に中継装置識別情報が含まれているならば、当該中継装置識別情報により特定される中継装置に、当該中継装置にキャッシュされている、当該ユーザ管理情報のストレージ装置識別情報により特定されるストレージ装置にライトするデータについて、当該データのライト要求を当該ストレージ装置に送信させると共に、当該ユーザ管理情報の中継装置識別情報を、前記ユーザ認証要求を中継した中継装置の識別情報に更新すること
    を特徴とするコンピュータ読取り可能なプログラム。
  13. 少なくとも1つのディスクレス計算機と少なくとも1つのストレージ装置との間の情報送受を中継する中継方法であって、
    ディスクレス計算機から送信された情報がストレージ装置に対するライト要求である場合に、当該ライト要求の対象データをキャッシュすると共に、当該ライト要求に対する応答を、当該ライト要求の送信元のディスクレス計算機に送信するステップと、
    キャッシュされたデータのライト要求を、当該データをライトするストレージ装置に送信し、当該ストレージ装置から当該ライト要求に対する応答を受信するステップと、を有すること
    を特徴とする中継方法。
  14. ディスクレス計算機から送信された情報がストレージ装置に対するライト要求である場合に、当該ライト要求の対象データをキャッシュすると共に、当該ライト要求に対する応答を当該ライト要求の送信元のディスクレス計算機に送信するキャッシュ手段と、前記キャッシュ手段にキャッシュされたデータのライト要求を、当該データをライトするストレージ装置に送信し、当該ストレージ装置から当該ライト要求に対する応答を受信するフラッシュ手段と、を有する中継装置を経由して、前記ディスクレス計算機のユーザが前記ストレージ装置を利用することの可否を判断するための認証方法であって、
    ユーザ毎に、当該ユーザの認証情報、当該ユーザが利用可能なストレージ装置の識別情報、および、ディスクレス計算機のユーザがストレージ装置を利用した際に用いた中継装置の識別情報を含むユーザ管理情報を記憶する管理情報記憶手段から、前記中継装置を介してディスクレス計算機より受信したユーザ認証要求に含まれているユーザ認証情報を含むユーザ管理情報を検索することで、当該ディスクレス計算機のユーザのユーザ認証を行うステップと、
    前記ユーザ認証要求に含まれているユーザ認証情報を含むユーザ管理情報が前記管理情報記憶手段に記憶されている場合、当該ユーザ管理情報に中継装置識別情報が含まれているならば、当該中継装置識別情報により特定される中継装置に、当該中継装置にキャッシュされている、当該ユーザ管理情報のストレージ装置識別情報により特定されるストレージ装置にライトするデータについて、当該データのライト要求を当該ストレージ装置に送信させると共に、当該ユーザ管理情報の中継装置識別情報を、前記ユーザ認証要求を中継した中継装置の識別情報に更新するステップと、を有すること
    を特徴とする認証方法。
JP2004094915A 2004-03-29 2004-03-29 中継装置、管理サーバ、中継方法および認証方法 Pending JP2005284497A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004094915A JP2005284497A (ja) 2004-03-29 2004-03-29 中継装置、管理サーバ、中継方法および認証方法
US10/960,416 US20050216668A1 (en) 2004-03-29 2004-10-06 Mode device, administrative server, routing method and authentication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004094915A JP2005284497A (ja) 2004-03-29 2004-03-29 中継装置、管理サーバ、中継方法および認証方法

Publications (1)

Publication Number Publication Date
JP2005284497A true JP2005284497A (ja) 2005-10-13

Family

ID=34991513

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004094915A Pending JP2005284497A (ja) 2004-03-29 2004-03-29 中継装置、管理サーバ、中継方法および認証方法

Country Status (2)

Country Link
US (1) US20050216668A1 (ja)
JP (1) JP2005284497A (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008112433A (ja) * 2006-07-25 2008-05-15 Nvidia Corp ディスクレス・コンピューティングプラットフォームにオペレーションシステムをインストールするシステム及び方法
WO2008136097A1 (ja) * 2007-04-24 2008-11-13 Fujitsu Limited アクセス制御プログラム、アクセス制御方法、及びアクセス制御装置
WO2008139521A1 (ja) * 2007-04-27 2008-11-20 Fujitsu Limited リモートファイルシステム、端末装置およびサーバ装置
JP2009515278A (ja) * 2005-11-04 2009-04-09 トムソン ライセンシング メディア記憶デバイスを管理する方法および装置
JP2009176096A (ja) * 2008-01-25 2009-08-06 Jade Quantum Technologies Inc 固定ディスク装置有しないコンピュータよりオペレーティングシステムを遠隔端のデータ保存サーバーに導入するシステムとその方法
JP2011109261A (ja) * 2009-11-13 2011-06-02 Ricoh Co Ltd ルータ装置、通信方法、及び通信プログラム
JP2011523752A (ja) * 2008-06-20 2011-08-18 レノボ・シンガポール・プライベート・リミテッド ハイパーバイザーを使用したディスクレスクライアント
JP2011210059A (ja) * 2010-03-30 2011-10-20 Intec Systems Institute Inc ネットワーク・ストレージ・システム、方法、クライアント装置、キャッシュ装置、管理サーバ、及びプログラム
US8898355B2 (en) 2007-03-29 2014-11-25 Lenovo (Singapore) Pte. Ltd. Diskless client using a hypervisor
US8909746B2 (en) 2006-07-25 2014-12-09 Nvidia Corporation System and method for operating system installation on a diskless computing platform

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005327233A (ja) * 2004-04-12 2005-11-24 Hitachi Ltd コンピュータシステム
US8396981B1 (en) * 2005-06-07 2013-03-12 Oracle America, Inc. Gateway for connecting storage clients and storage servers
JP2007140699A (ja) * 2005-11-15 2007-06-07 Hitachi Ltd 計算機システム及びストレージ装置と管理サーバ並びに通信制御方法
US7882562B2 (en) * 2005-12-15 2011-02-01 International Business Machines Corporation Apparatus, system, and method for deploying iSCSI parameters to a diskless computing device
US8166166B2 (en) * 2005-12-15 2012-04-24 International Business Machines Corporation Apparatus system and method for distributing configuration parameter
US8001267B2 (en) * 2005-12-15 2011-08-16 International Business Machines Corporation Apparatus, system, and method for automatically verifying access to a multipathed target at boot time
US20070240201A1 (en) * 2006-03-31 2007-10-11 Inventec Corporation User end management system and method
US20080028034A1 (en) * 2006-07-25 2008-01-31 Andrew Currid Method for mapping an iscsi target name to a storage resource based on an initiator hardware class identifier
US8683022B2 (en) * 2007-02-02 2014-03-25 International Business Machines Corporation Methods and apparatus for assigning a physical adapter to a virtual adapter
US8627418B2 (en) * 2007-03-23 2014-01-07 Pmc-Sierra, Inc. Controlled discovery of san-attached SCSI devices and access control via login authentication
US7899882B2 (en) * 2007-03-29 2011-03-01 Agile Risk Management Llc System and method for providing remote forensics capability
US8775587B2 (en) * 2007-05-18 2014-07-08 International Business Machines Corporation Physical network interface selection to minimize contention with operating system critical storage operations
US8260891B2 (en) * 2007-10-30 2012-09-04 Dell Products L.P. System and method for the provision of secure network boot services
US20090248784A1 (en) * 2008-03-28 2009-10-01 Lenovo (Singapore) Pte. Ltd. Diskless image boot outside of lan
US20090327525A1 (en) * 2008-06-27 2009-12-31 Jade Quantum Technologies, Inc. Method for improving data writing speed of a diskless computer
US20090327453A1 (en) * 2008-06-30 2009-12-31 Yu Neng-Chien Method for improving data reading speed of a diskless computer
US8225035B2 (en) * 2009-04-21 2012-07-17 Apple Inc. Systems and methods for operating a disk drive
US8176150B2 (en) * 2009-08-12 2012-05-08 Dell Products L.P. Automated services procurement through multi-stage process
US8527749B2 (en) * 2009-11-11 2013-09-03 International Business Machines Corporation User device, computer program product and computer system for system for secure network storage
US9037630B2 (en) 2012-02-21 2015-05-19 Matthew Martin Shannon Systems and methods for provisioning digital forensics services remotely over public and private networks
US9148418B2 (en) 2013-05-10 2015-09-29 Matthew Martin Shannon Systems and methods for remote access to computer data over public and private networks via a software switch
JP6291802B2 (ja) * 2013-11-18 2018-03-14 株式会社リコー 制御システム、通信システム、プログラム、及び制御方法
KR102251995B1 (ko) * 2017-03-30 2021-05-17 한국전자통신연구원 물리 서버의 에너지 효율 평가를 위한 방법 및 장치
US10341361B2 (en) * 2017-06-05 2019-07-02 Hewlett Packard Enterprise Development Lp Transmitting secure information
CN111432033A (zh) * 2020-04-22 2020-07-17 深信服科技股份有限公司 应用程序下载方法、装置、系统、ios设备及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04119441A (ja) * 1990-09-11 1992-04-20 Hitachi Ltd ディスク・キャッシュ制御方式
JPH04264940A (ja) * 1991-02-20 1992-09-21 Hitachi Ltd 制御装置及び制御装置の制御方法
JPH04313126A (ja) * 1991-04-11 1992-11-05 Nec Corp 分散ファイルシステムのファイル入出力方式
JPH09223091A (ja) * 1995-07-07 1997-08-26 Sun Microsyst Inc バースト高速ネットワーク・トラフィックを受信するための割込み調整器
JP2002323959A (ja) * 2001-02-05 2002-11-08 Internatl Business Mach Corp <Ibm> 磁気ディスク制御装置のログ主体不揮発性書き込みキャッシュ・システム及び方法
JP2003345709A (ja) * 2002-05-24 2003-12-05 Hitachi Ltd キャッシュ装置およびこれを用いたネットワーク・システム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2826857B2 (ja) * 1989-12-13 1998-11-18 株式会社日立製作所 キャッシュ制御方法および制御装置
MX9200970A (es) * 1991-03-05 1993-08-01 Zitel Corp Memoria de deposito.
JPH07130080A (ja) * 1993-11-02 1995-05-19 Olympus Optical Co Ltd 情報記録装置
US6081883A (en) * 1997-12-05 2000-06-27 Auspex Systems, Incorporated Processing system with dynamically allocatable buffer memory
US7165152B2 (en) * 1998-06-30 2007-01-16 Emc Corporation Method and apparatus for managing access to storage devices in a storage system with access control
JP4257785B2 (ja) * 2003-04-22 2009-04-22 株式会社日立製作所 キャッシュストレージ装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04119441A (ja) * 1990-09-11 1992-04-20 Hitachi Ltd ディスク・キャッシュ制御方式
JPH04264940A (ja) * 1991-02-20 1992-09-21 Hitachi Ltd 制御装置及び制御装置の制御方法
JPH04313126A (ja) * 1991-04-11 1992-11-05 Nec Corp 分散ファイルシステムのファイル入出力方式
JPH09223091A (ja) * 1995-07-07 1997-08-26 Sun Microsyst Inc バースト高速ネットワーク・トラフィックを受信するための割込み調整器
JP2002323959A (ja) * 2001-02-05 2002-11-08 Internatl Business Mach Corp <Ibm> 磁気ディスク制御装置のログ主体不揮発性書き込みキャッシュ・システム及び方法
JP2003345709A (ja) * 2002-05-24 2003-12-05 Hitachi Ltd キャッシュ装置およびこれを用いたネットワーク・システム

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009515278A (ja) * 2005-11-04 2009-04-09 トムソン ライセンシング メディア記憶デバイスを管理する方法および装置
JP2008112433A (ja) * 2006-07-25 2008-05-15 Nvidia Corp ディスクレス・コンピューティングプラットフォームにオペレーションシステムをインストールするシステム及び方法
US8909746B2 (en) 2006-07-25 2014-12-09 Nvidia Corporation System and method for operating system installation on a diskless computing platform
US9003000B2 (en) 2006-07-25 2015-04-07 Nvidia Corporation System and method for operating system installation on a diskless computing platform
US8898355B2 (en) 2007-03-29 2014-11-25 Lenovo (Singapore) Pte. Ltd. Diskless client using a hypervisor
WO2008136097A1 (ja) * 2007-04-24 2008-11-13 Fujitsu Limited アクセス制御プログラム、アクセス制御方法、及びアクセス制御装置
WO2008139521A1 (ja) * 2007-04-27 2008-11-20 Fujitsu Limited リモートファイルシステム、端末装置およびサーバ装置
JPWO2008139521A1 (ja) * 2007-04-27 2010-07-29 富士通株式会社 リモートファイルシステム、端末装置およびサーバ装置
JP2009176096A (ja) * 2008-01-25 2009-08-06 Jade Quantum Technologies Inc 固定ディスク装置有しないコンピュータよりオペレーティングシステムを遠隔端のデータ保存サーバーに導入するシステムとその方法
JP2011523752A (ja) * 2008-06-20 2011-08-18 レノボ・シンガポール・プライベート・リミテッド ハイパーバイザーを使用したディスクレスクライアント
JP2011109261A (ja) * 2009-11-13 2011-06-02 Ricoh Co Ltd ルータ装置、通信方法、及び通信プログラム
JP2011210059A (ja) * 2010-03-30 2011-10-20 Intec Systems Institute Inc ネットワーク・ストレージ・システム、方法、クライアント装置、キャッシュ装置、管理サーバ、及びプログラム

Also Published As

Publication number Publication date
US20050216668A1 (en) 2005-09-29

Similar Documents

Publication Publication Date Title
JP2005284497A (ja) 中継装置、管理サーバ、中継方法および認証方法
US9787780B1 (en) Method and apparatus for web based storage on-demand
JP4311636B2 (ja) 記憶装置を複数の計算機で共用する計算機システム
US8285824B2 (en) Storage system and data replication method that refuses one or more requests for changing the first logical configuration information until the first storage apparatus and second storage apparatus are synchronized
US20170010874A1 (en) Provisioning storage devices in a data center
US7406577B2 (en) Data migration method
JP2018045689A (ja) セルフ構成するbmc及びその動作方法
JP4786255B2 (ja) ストレージシステム及び記憶制御方法
US20090248870A1 (en) Server system and control method for same
JP2010152704A (ja) 計算機システムの運用管理システム及び管理方法
US20060136704A1 (en) System and method for selectively installing an operating system to be remotely booted within a storage area network
JP4233900B2 (ja) 大容量記憶装置におけるデータの格納・読み出し制御
JP2009199584A (ja) 階層型ストレージシステムにおけるhddのスピンダウンとスピンアップを管理する方法及び装置
JP2007233815A (ja) 情報処理システムおよび情報処理装置の割当管理方法
CN101535979B (zh) 存储资源装置的管理
JP4681337B2 (ja) ファイバチャネルスイッチ装置、情報処理システム及びログイン処理方法
JP2002358167A5 (ja)
JP2017134772A (ja) ライセンス管理システム、クライアント装置、アプリケーションプログラム
JP2009251786A (ja) データ処理方法、ストレージ装置およびストレージシステム
JP2001184248A (ja) 分散処理システムにおけるデータアクセス管理装置
JP4509089B2 (ja) 仮想化制御装置及びデータ移行制御方法
JP2007323354A (ja) マシン管理システム
JP2005251188A (ja) 冗長パス制御装置及び冗長パス制御方法
JP4433372B2 (ja) データアクセスシステム及び方法
US20090089432A1 (en) Information processing system and control method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100309

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100430

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100810