JP4440608B2 - ネットワークブートシステム,ネットワークブート方法およびネットワークブート用キャッシュ装置 - Google Patents

ネットワークブートシステム,ネットワークブート方法およびネットワークブート用キャッシュ装置 Download PDF

Info

Publication number
JP4440608B2
JP4440608B2 JP2003388670A JP2003388670A JP4440608B2 JP 4440608 B2 JP4440608 B2 JP 4440608B2 JP 2003388670 A JP2003388670 A JP 2003388670A JP 2003388670 A JP2003388670 A JP 2003388670A JP 4440608 B2 JP4440608 B2 JP 4440608B2
Authority
JP
Japan
Prior art keywords
storage device
computer
data
cache
operating system
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.)
Expired - Fee Related
Application number
JP2003388670A
Other languages
English (en)
Other versions
JP2005149334A (ja
Inventor
心 小林
武 三栄
真一 吉田
宏文 猪股
郁子 小林
信二 木村
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 JP2003388670A priority Critical patent/JP4440608B2/ja
Publication of JP2005149334A publication Critical patent/JP2005149334A/ja
Application granted granted Critical
Publication of JP4440608B2 publication Critical patent/JP4440608B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は,ネットワークを介してオペレーティングシステムなどを取得してパーソナルコンピュータを起動させるネットワークブートシステム,ネットワークブート方法およびネットワークブート用キャッシュ装置に関するものである。
従来,ネットワークを介してブートストラップやオペレーティングシステム(OS)イメージを取得してストレージを持たないパーソナルコンピュータを起動させるネットワークブートシステムが知られている(例えば特許文献1参照)。下記の特許文献1に記載されている方法では,ブートストラップがクライアントのコンピュータ上にロードされると,リモート・ファイル・サーバから,ネットワークのサブネットおよびそれらの対応するローカル・ファイル・サーバのマップを含む構成ファイルを獲得し,その構成ファイルを用いて,クライアントのコンピュータが存在するサブネットをサービスするローカル・ファイル・サーバを決定し,そのローカル・ファイル・サーバからOSイメージを獲得することにより,効率的なファイル転送を可能にしている。
特開2002−123400号公報
しかしながら,従来のネットワークブートシステムにおいては,ネットワークが広域ネットワークになった場合,ブートストラップやOSイメージを取得するのに時間がかかり,パーソナルコンピュータが起動するまでに時間がかかるという問題があった。
本発明は,従来の問題を解決するためになされたもので,OSイメージを取得する時間を短縮して,ストレージを持たないパーソナルコンピュータを起動する時間を短縮することのできるネットワークブートシステムを提供することを目的とする。
本発明に関連する技術の第1の特徴は,ストレージ装置を持たないディスクレスパーソナルコンピュータにネットワークを介してブートストラップおよびオペレーティングシステムを取得させて該ディスクレスパーソナルコンピュータ(以下,ディスクレスPCという)を起動させるネットワークブートシステムにおいて,前記ネットワークを介してアクセス可能なストレージ装置と,ユーザの認証を行うとともにユーザに対応した前記ストレージ装置の情報を管理し,認証正常のユーザに対応する前記ストレージ装置の情報を通知する認証サーバと,前記ディスクレスPCと前記ストレージ装置との間の通信を仲介し,前記ストレージ装置から取得したデータを一時的に記憶し,前記ディスクレスPCから読み出し要求されたデータが一時的に記憶しているデータ内にあれば前記ストレージ装置にアクセスせずに該データを前記ディスクレスPCに転送するキャッシュ装置とを備えることである。
これにより,読み出し要求されたデータがキャッシュ装置に記憶されていれば,記憶されているデータが転送される。したがって,ストレージ装置へのアクセス回数が削減される。
本発明に関連する技術の第2の特徴は,上記第1の特徴の構成に加え,前記ディスクレスPCは,前記ストレージ装置からオペレーティングシステム,またはオペレーティングシステムとそれに付随するアプリケーションプログラムとを取得することである。
これにより,ユーザに対応したストレージ装置からオペレーティングシステムが取得される。したがって,ユーザに対応したオペレーティングシステム(必要に応じてアプリケーションプログラムを含む)が取得される。
本発明に関連する技術の第3の特徴は,上記第1または第2の特徴の構成に加え,前記キャッシュ装置は,前記ストレージ装置への規定の論理番地(例えば,論理0番地)に対する読み出し要求を受信すると,該ディスクレスPCの起動に必要なオペレーティングシステムの全部または一部(アプリケーションプログラムを含んでもよい。以下同様)を取得し記憶することである。
これにより,ストレージ装置への規定の論理番地に対する読み出し要求により,該ディスクレスPCの起動に必要なオペレーティングシステムがキャッシュ装置に取得され記憶される。したがって,ディスクレスPCのオペレーティングシステムがキャッシュ装置から取得される。
上記課題を解決する第1の本発明は,上記第1または第2の特徴の構成に加え,前記認証サーバは,ユーザの認証が正常となり,該ユーザに対応するストレージ装置が判明したとき,前記キャッシュ装置に該ディスクレスPCの起動に必要なオペレーティングシステムの全部または一部を取得することを指示し,前記キャッシュ装置は,前記認証サーバの指示により該ディスクレスPCの起動に必要なオペレーティングシステムの全部または一部を取得し記憶することを特徴とするものである。
特に本発明は,この特徴により,ユーザの認証正常時に該ディスクレスPCの起動に必要なオペレーティングシステムがキャッシュ装置に取得され記憶される。したがって,ディスクレスPCのオペレーティングシステムがキャッシュ装置から取得される。
本発明に関連する技術の第4の特徴は,ストレージ装置を持たないディスクレスPCにネットワークを介してブートストラップおよびオペレーティングシステムを取得させて該ディスクレスPCを起動させるネットワークブート方法において,前記ディスクレスPCが,ユーザの認証機能を持つ認証サーバへ認証要求を送信する過程と,前記認証サーバが,ユーザの認証要求に対しユーザの認証を行うとともに,認証正常のユーザに対応するオペレーティングシステムを格納したストレージ装置の情報を前記ディスクレスPCに通知する過程と,前記ディスクレスPCが,前記ディスクレスPCと前記ストレージ装置との間の通信を仲介するキャッシュ装置に対して前記ストレージ装置への規定の論理番地に対する読み出し要求を送信する過程と,前記キャッシュ装置が,前記ストレージ装置への規定の論理番地に対する読み出し要求を受信すると,前記ディスクレスPCの起動に必要なオペレーティングシステムの全部または一部を,ネットワークを介して前記ストレージ装置から取得して記憶する過程と,前記キャッシュ装置が,前記ストレージ装置から取得して記憶しているデータの中から,前記コンピュータから読み出し要求されたデータを前記コンピュータに転送する過程とを有することである。
これにより,ストレージ装置への規定の論理番地に対する読み出し要求により,該ディスクレスPCの起動に必要なオペレーティングシステムがキャッシュ装置に取得され記憶される。したがって,ディスクレスPCのオペレーティングシステムがキャッシュ装置から取得される。
上記課題を解決する第2の本発明は,ストレージ装置を持たないディスクレスPCにネットワークを介してブートストラップおよびオペレーティングシステムを取得させて該ディスクレスPCを起動させるネットワークブート方法において,前記ディスクレスPCが,ユーザの認証機能を持つ認証サーバへ認証要求を送信する過程と,前記認証サーバが,ユーザの認証要求に対しユーザの認証を行うとともに,ユーザの認証が正常となり,該ユーザに対応するオペレーティングシステムを格納したストレージ装置が判明したとき,前記ディスクレスPCと前記ストレージ装置との間の通信を仲介するキャッシュ装置に,該ディスクレスPCの起動に必要なオペレーティングシステムの全部または一部を取得することを指示する過程と,前記キャッシュ装置が,前記認証サーバの指示により前記コンピュータの起動に必要なオペレーティングシステムの全部または一部を,ネットワークを介して前記ストレージ装置から取得して記憶する過程と,前記キャッシュ装置が,前記ストレージ装置から取得して記憶しているデータの中から,読み出し要求されたデータを前記ディスクレスPCに転送する過程とを有することを特徴とするものである。
この発明では,ユーザの認証正常時に起動に該ディスクレスPCの必要なオペレーティングシステムがキャッシュ装置に取得され記憶される。したがって,ディスクレスPCのオペレーティングシステムがキャッシュ装置から取得される。
本発明によれば,ストレージ装置から取得したデータを一時的に記憶しておくキャッシュ装置を設け,キャッシュ装置が,ディスクレスPCのオペレーティングシステム,またはオペレーティングシステムとそれに付随するアプリケーションプログラムとを,少ない回数の読み出し要求によってストレージ装置からまとめて取得することにより,ディスクレスPCの起動時間を短縮することができる。
1台のキャッシュ装置に1台のディスクレスPCだけが接続されるシステムでも,ストレージ装置からキャッシュ装置へのデータの先読みによって,ディスクレスPCの起動時間を短縮することができる効果があるが,1台のキャッシュ装置に複数のディスクレスPCが接続され,複数のディスクレスPCが共通のオペレーティングシステムを使用するようなシステムでは,特にキャッシュ装置とストレージ装置との間のデータ転送量を少なくすることができるので,さらに大きな効果が得られる。
また,特にディスクレスPCとストレージ装置とが,非常に遠距離の場所に設置されているような場合に,キャッシュ装置をディスクレスPCの近くに設置することにより,全体のデータ転送時間の短縮が可能になり効果が大きい。
ディスクレスPCは,認証サーバのユーザ認証を受けるだけで,オペレーティングシステムや付随するアプリケーションプログラムを取得することができ,ストレージ装置の存在場所などを意識する必要はなく,また認証サーバの管理情報を変更するだけで,ユーザ毎にオペレーティングシステムやアプリケーションプログラムを容易に変えることができるので,柔軟性のあるネットワークブートシステムの構築が可能である。
以下,本発明の実施の形態のネットワークブートシステムについて,図面を用いて説明する。図1は本発明の一実施の形態のネットワークブートシステムを示す図である。
図1において,本実施の形態のネットワークブートシステムは,ハードディスクなどのストレージ装置を持たないパーソナルコンピュータ(PC:Personal Computer)であるディスクレスPC1a,1b,1c,…(以下,単にディスクレスPC1と記す)と,ディスクレスPC1からの要求によりネットワーク8を介してネットワーク8上に接続された装置との通信を行うとともにネットワーク8を介して受信したデータを一時的に記憶しておくキャッシュ装置2と,アドレス取得要求に応答して付与するIPアドレスなどを返信するDHCP(Dynamic Host Configuration Protocol )サーバ3と,TFTP(Trivial File Transfer Protocol)によりファイルを転送するTFTPサーバ4と,認証要求に応答して認証を行い結果を返信する認証サーバ5と,ディスクレスPC1で動作するオペレーティングシステム(OS)のイメージや収容する各ユーザのディスクイメージなどを格納するハードディスクなどのストレージ装置6と,ストレージ装置6とファイバチャネル(Fibre Channel )などを介して接続され,iSCSI(Internet Small Computer System Interface)などによりネットワーク8を介して送信されてくるストレージ装置6への要求をファイバチャネルを介してストレージ装置6に送信するとともにストレージ装置6からの応答をネットワーク8を介して要求元へ返信するストレージルータ7と,IP(Internet Protocol )などによるネットワーク8とを備えている。
上述のように,ストレージルータ7は,iSCSIなどによる要求や応答を,ファイバチャネルなどによる要求や応答に変換し,あるいはその逆の変換を行う機能を持つ。一方でストレージ装置の中には,iSCSIなどによる要求や応答を直接送受信する機能を持ったものがあり,当該ストレージ装置を図1のストレージ装置6とすれば,ストレージ装置6とネットワーク8は直接接続することができ,ストレージルータ7を使用することなく,本発明に係るネットワークブートシステムを構成することができる。ただし,以下の記述では,ストレージルータ7を使用する場合を例にとって,発明の実施の形態を説明する。
図1に示すようなネットワークブートシステムにおいて,ストレージ装置6は,複数の論理ユニット(Logical Unit)を持っており,各論理ユニットの規定の論理ブロックの番地からOSイメージが格納されている。なお,以下では論理ブロック0番地からOSイメージが格納されているものとして説明するが,必ずしも0番地でなくてもよい。キャッシュ装置2は,ディスクレスPC1からのストレージ装置6の論理ブロック0番地に対する読み出し要求があると,OSイメージを読み出そうとしていると判断し,起動に必要なOSイメージの全部または一部をストレージ装置6からコピーするようになっている。
以下,図2に示すシーケンス図に従って,図1に示すネットワークブートシステムの動作を説明する。図2のシーケンス図に示すように,ディスクレスPC1は,電源を投入されるなどして起動されると,キャッシュ装置2を介してDHCPサーバ3にDHCP要求を送信してIPアドレスの取得を行う。DHCPサーバ3は,DHCP要求を受信すると,予め設定されたアドレス範囲から使用されていないIPアドレスを選択し,選択したIPアドレスと,予め設定されたブートストラップ名,TFTPサーバ4のIPアドレスなどを含んだDHCP応答を,要求元のディスクレスPC1へ返送する。
ディスクレスPC1は,DHCP応答を受信すると,DHCP応答に設定されているTFTPサーバ4にDHCP応答に設定されているブートストラップ名のファイルの転送を要求するTFTP要求をキャッシュ装置2を介して送信する。TFTPサーバ4は,TFTP要求を受信すると,設定されているファイル名(この場合,ブートストラップ名)のファイルの転送を行う。
ディスクレスPC1は,TFTP要求に対する応答として転送されてきたデータを,内蔵のRAM(Random Access Memory)内に蓄積し,転送が終了すると,RAM内に蓄積したブートストラップを起動する。ブートストラップが起動されると,ディスクレスPC1は,付属のディスプレイによりユーザに認証情報の入力を要求する。付属のキーボードやマウスなどによりユーザ名およびパスワードが入力されると,その入力されたユーザ名およびパスワードを設定した認証要求を,認証サーバ5へキャッシュ装置2を介して送信する。
認証サーバ5は,認証要求を受信すると,受信した認証要求に設定されているユーザ名およびパスワードが登録されている情報と一致するかを判定し,一致するものがあれば,そのユーザ用に設定されているストレージルータ7のIPアドレスと,ポート番号と,ストレージ装置6のターゲットIDと,ストレージ装置6の論理ユニット番号(LUN)情報を含んだ認証応答を返信する。
ディスクレスPC1は,認証応答を受信すると,認証応答に設定されたストレージルータ7に対し,認証応答に設定されているストレージルータ7のIPアドレス,ポート番号,ストレージ装置6のターゲットID,ストレージ装置6のLUN情報をもとに,OSイメージの読み込みを開始する。
まず,ディスクレスPC1は,認証応答に設定されているLUN情報におけるLUNの論理ブロック0番地の読み出し要求を(例えば,iSCSIにより)キャッシュ装置2を介してストレージルータ7に送信する。キャッシュ装置2は,ディスクレスPC1からの送信要求を示すデータの内容をチェックしており,送信要求されたデータが論理ブロック0番地の読み出し要求であると,ストレージルータ7に論理ブロック0番地の読み出し要求を送信するとともに,予め設定されたOSイメージ分のデータの読み出し要求をストレージルータ7に送信する。
ストレージルータ7は,ネットワーク8側から論理ブロック0番地の読み出し要求を受信すると,ファイバチャネルを介してストレージ装置6に論理ブロック0番地の読み出し要求を送信する。その後,ストレージ装置6からファイバチャネルを介して論理ブロック0番地の読み出し応答を受信すると,ネットワーク8を介して要求元に論理ブロック0番地の読み出し応答を転送する。同様に,ネットワーク8側からOSイメージ分のデータの読み出し要求を受信すると,ファイバチャネルを介してストレージ装置6にOSイメージ分のデータの読み出し要求を送信し,ストレージ装置6からファイバチャネルを介してOSイメージ分のデータの読み出し応答を受信する。その受信したOSイメージ分のデータの読み出し応答をネットワーク8を介して要求元のキャッシュ装置2に転送する。
キャッシュ装置2は,ストレージルータ7から論理ブロック0番地の読み出し応答を受信すると,要求元のディスクレスPC1に転送する。また,自身が要求したOSイメージ分のデータの読み出し応答を受信すると,受信したOSイメージを内蔵の記憶媒体(後述するキャッシュテーブル270)に記憶する。
その後,キャッシュ装置2は,ディスクレスPC1からの論理ブロック1番地以降の読み出し要求に対しては,ストレージ装置6に要求を行わず,自装置内に記憶しているOSイメージから該当するデータを読み出してディスクレスPC1に転送する。
このように本実施の形態においては,キャッシュ装置2がディスクレスPC1からの送信データを監視し,送信データが論理ブロック0番地の読み出し要求であると,OSイメージをストレージ装置6から一括して読み出して記憶しておき,ディスクレスPC1からのOSイメージの読み込み要求に対して,記憶しているOSイメージからデータを転送しているので,論理ブロック毎にストレージ装置6から読み出す必要がなくなり,OSイメージの転送時間を短縮することができる。
また,認証サーバ5により,ユーザ毎に対応するストレージ装置6およびLUN情報を管理し,この情報に基づいてディスクレスPC1がOSイメージを取得し起動するので,ユーザ毎に起動するOSを変えることができる。
キャッシュ装置2の構成および処理内容について,さらに詳しく説明する。図3は,キャッシュ装置2の構成例を示すブロック図である。
キャッシュ装置2は,ディスクレスPC1と通信を行う送受信部20,ネットワーク8との通信インタフェースを持つ送受信部21,受信したTCP/IPパケットを解析するTCP/IPパケット解析部22,送信するTCP/IPパケットを生成するTCP/IPパケット生成部23,TCP/IPパケット中のiSCSIデータを解析するiSCSIデータ解析部24,送信するiSCSIデータを生成するiSCSIデータ生成部25,受信したデータの一時的な記憶およびそのデータの読み出しを処理するキャッシュ処理実行制御部26,キャッシュテーブル(図4により後述)を内蔵の記憶媒体に格納するキャッシュデータ管理部27,ストレージ装置6からの先読み対象を決定するデータを管理する先読み対象管理部28を備える。
iSCSIデータ解析部24は,受信した「読み出し要求」から,ストレージルータ7のIPアドレス,ターゲットID,論理ユニット番号(LUN)情報,読み出し番地の範囲,データを抽出し,キャッシュ処理実行制御部26に送信する。また,iSCSIデータ生成部25は,ストレージルータ7のIPアドレス,ターゲットID,LUN情報,読み出し番地の範囲,データから「読み出し応答」パケットを再生成し,TCP/IPパケット生成部23へ送信する。
先読み対象管理部28は,ストレージルータ7のIPアドレス,ターゲットID,LUN情報ごとに,OS(アプリケーションプログラムを含む場合もある)の起動に必要なデータを格納している論理番地一覧を管理している。
キャッシュデータ管理部27には,図4に示すキャッシュテーブル270が格納されている。キャッシュテーブル270は,エントリ番号(No.),ストレージルータ7のIPアドレス(固定長),ポート番号(固定長),ターゲットID(固定長),LUN情報(固定長),論理番地(固定長),当該論理番地に格納されたデータ(固定長)からなるキャッシュデータを記憶するテーブルである。ターゲットIDは,「読み出し要求」を出したディスクレスPC1のオペレーティングシステム等を格納しているストレージ装置6を識別する情報である。各論理番地に格納されたデータは,通常は512バイトの大きさである。
例えば,IPアドレスが「192.168.1.1」のストレージルータ7,ターゲットID=0,LUN=1,論理番地0のデータ(1ブロック分)がストレージ装置6から読み出されると,キャッシュ処理実行制御部26によって,エントリNo.=1のようなキャッシュデータがキャッシュテーブル270に格納される。次に,これを契機として,同じLUNの論理番地=100〜102のデータ(3ブロック分)がストレージ装置6から先読みされると,エントリNo.=2〜4のように,キャッシュデータがキャッシュテーブル270に格納される。
この状態で,ディスクレスPC1から同LUNの論理番地=100〜101のデータ(2ブロック分)の「読み出し要求」があると,キャッシュ装置2は,キャッシュテーブル270から「00 00 1F … 5C」のデータを読み出して,ディスクレスPC1に対し「読み出し応答」として返送する。
次に,キャッシュテーブル270中のエントリNo.=999までエントリが存在する場合において,IPアドレス「192.168.128.1」のストレージルータ7,ターゲットID=0,LUN=2,論理番地=0のデータ(1ブロック分)が,ストレージ装置6から読み出されると,エントリNo.=1000のようにキャッシュテーブル270にキャッシュデータが格納される。以下,同様にキャッシュデータの書き込み,読み出しが行われる。
キャッシュテーブル270中のIPアドレスは,この例ではストレージルータ7のIPアドレスであるが,前述のようにネットワーク8に直接接続することができるストレージ装置6の場合には,ストレージルータ7を使用する必要はなく,キャッシュテーブル270中のIPアドレスは,ストレージ装置6のIPアドレスである。
ディスクレスPC1から発せられた「読み出し要求」が,ネットワークを介してストレージルータ7に到達するには,IPアドレスとポート番号が必要である。そのため,キャッシュテーブル270には,IPアドレス,ポート番号が格納されるが,一旦,ストレージルータ7の内部に到達した場合には,IPアドレス,ポート番号,ターゲットIDの組み合わせを,「ターゲット名」(テキスト文字列)のみで識別することができる。そのため,IPアドレス,ポート番号,ターゲットIDの組み合わせの代わりに,「ターゲット名」でキャッシュデータを管理することもできる。
図5に,本実施の形態のキャッシュ装置2の内部処理フローを示す。キャッシュ装置2は,ディスクレスPC1から「読み出し要求」を受信する毎に,図5に示す処理を実行する。
キャッシュ装置2の送受信部20が,ディスクレスPC1から「読み出し要求」のTCP/IPパケットを受信すると(ステップS10),TCP/IPパケット解析部22はそのTCP/IPパケットを解析し,解析したデータをiSCSIデータ解析部24へ送る。iSCSIデータ解析部11は,「読み出し要求」のデータの中から「読み出し要求」の論理番地の範囲(開始番地から終了番地)を読み取る(ステップS11)。なお,実際の「読み出し要求」のデータには,開始論理番地と読み出しブロック数とが記載されている。よって,終了番地は,以下の式によって算出する。
終了番地=開始番地+読み出しブロック数−1
iSCSIデータ解析部24は,解析結果をキャッシュ処理実行制御部26に通知する。キャッシュ処理実行制御部26は,キャッシュテーブル270に「読み出し要求」のあった論理番地の範囲のエントリがあるか否かを調べる(ステップS12)。「読み出し要求」のあった論理番地の範囲の中に,エントリがない論理番地が一つでもあった場合には,ここでは「エントリなし」と判断する。例えば,論理番地=5,6,7,10がエントリにあり,論理番地=8,9がエントリにないときに,論理番地=5〜10の範囲の「読み出し要求」があった場合には,「エントリなし」と判断する。
「エントリあり」の場合,キャッシュ装置2がディスクレスPC1からの「読み出し要求」を中継することなく,キャッシュテーブル270の該当エントリ(以下,単にキャッシュという)からデータを取り出し,iSCSIデータ生成部25,TCP/IPパケット生成部23,送受信部20を介して,ディスクレスPC1に「読み出し応答」を返送する(ステップS13)。
一方,「エントリなし」の場合,ディスクレスPC1からの「読み出し要求」を,送受信部21およびネットワーク8を介して,そのままストレージルータ7に中継する(ステップS14)。ストレージルータ7から「読み出し応答」を受信すると(ステップS15),キャッシュ処理実行制御部26は,その「読み出し応答」に含まれる読み出しデータをキャッシュに記録(キャッシュテーブル270にエントリを追加)するとともに,送受信部20を介して「読み出し応答」をディスクレスPC1に中継する(ステップS16)。なお,このとき既にキャッシュテーブル270にエントリが存在している場合には,「読み出し応答」を上書きして追加する。
次に,ディスクレスPC1からの「読み出し要求」の論理番地の範囲の先頭(開始番地)は,0番地かを判定する(ステップS17)。0番地でない場合には,読み出し要求に対する処理を終了する。
先頭が0番地の場合,先読み対象の論理番地一覧のデータを先読み対象管理部28から取得する(ステップS18)。先読み対象管理部28には,予めディスクレスPC1の起動に必要なオペレーティングシステムやアプリケーションプログラムのサイズに応じて,ディスクレスPC1から続いて要求される可能性のある論理番地の一覧情報が格納されている。
次に取得した論理番地の全部について,キャッシュテーブル270にエントリがあるかどうかを調べる(ステップS19)。全部についてエントリがあれば,処理を終了する。エントリが存在しない論理番地が一つでもあれば,既にキャッシュテーブル270にエントリが存在しているデータについては先読み対象から除外し,エントリが存在しない論理番地のみを対象とする「読み出し要求」をiSCSIデータ生成部25により生成し,TCP/IPパケット生成部23および送受信部21を介してストレージルータ7に送信する(ステップS20)。ストレージルータ7から,その「読み出し要求」に対する「読み出し応答」を受信したならば(ステップS21),受信した「読み出し応答」に含まれる読み出しデータをキャッシュに記録(キャッシュテーブル270にエントリを追加)し(ステップS22),処理を終了する。
次に,本発明の他の実施の形態について,図6に示すシーケンス図に従って説明する。この第2の実施の形態では,図2で説明した第1の実施の形態と,OSイメージの「読み出し要求」をストレージルータ7へ送る契機が異なる。第2の実施の形態の場合,ディスクレスPC1から認証サーバ5へ認証要求が送られたときに,認証正常であれば,認証サーバ5からキャッシュ装置2へOSイメージの読み出し指示が出され,キャッシュ装置2は,ディスクレスPC1からの最初の「読み出し要求」を受信する前に,ストレージルータ7に対してOSイメージの「読み出し要求」を送信する。
図6に示すように,ディスクレスPC1は,電源を投入されるなどして起動されると,キャッシュ装置2を介してDHCPサーバ3にDHCP要求を送信してIPアドレスの取得を行う。DHCPサーバ3は,DHCP要求を受信すると,予め設定されたアドレス範囲から使用されていないIPアドレスを選択し,選択したIPアドレスと,予め設定されたブートストラップ名,TFTPサーバ4のIPアドレスなどを含んだDHCP応答を,要求元のディスクレスPC1へ返送する。
ディスクレスPC1は,DHCP応答を受信すると,DHCP応答に設定されているTFTPサーバ4にDHCP応答に設定されているブートストラップ名のファイルの転送を要求するTFTP要求をキャッシュ装置2を介して送信する。TFTPサーバ4は,TFTP要求を受信すると,設定されているファイル名(この場合,ブートストラップ名)のファイルの転送を行う。
ディスクレスPC1は,TFTP要求に対する応答として転送されてきたデータを,内蔵のRAM(Random Access Memory)内に蓄積し,転送が終了すると,RAM内に蓄積したブートストラップを起動する。ブートストラップが起動されると,ディスクレスPC1は,付属のディスプレイによりユーザに認証情報の入力を要求する。付属のキーボードやマウスなどによりユーザ名およびパスワードが入力されると,その入力されたユーザ名およびパスワードを設定した認証要求を,認証サーバ5へキャッシュ装置2を介して送信する。以上の処理は,図2で説明した第1の実施の形態と同様である。
認証サーバ5は,認証要求を受信して,受信した認証要求に設定されているユーザ名およびパスワードが登録されている情報と一致したとき,そのユーザ用に設定されているストレージルータ7のIPアドレスとストレージ装置6のLUN情報を含んだ認証応答を返信するとともに,キャッシュ装置2にそのユーザ用に設定されているストレージルータ7のIPアドレスとストレージ装置6のLUN情報を含んだOSイメージ分のデータの「読み出し指示」を送信する。
キャッシュ装置2は,OSイメージ分のデータの「読み出し指示」を受信すると,OSイメージ分のデータの「読み出し指示」に設定されたストレージルータ7に対し,OSイメージ分のデータの「読み出し指示」に設定されているLUN情報をもとに,OSイメージ分のデータの「読み出し要求」を送信する。
ストレージルータ7は,ネットワーク8側からOSイメージ分のデータの「読み出し要求」を受信すると,ファイバチャネルを介してストレージ装置6にOSイメージ分のデータの「読み出し要求」を送信する。その後,ストレージ装置6からファイバチャネルを介してOSイメージ分のデータの「読み出し応答」を受信すると,ネットワーク8を介して要求元にOSイメージ分のデータの「読み出し応答」を転送する。
キャッシュ装置2は,ストレージルータ7からOSイメージ分のデータの「読み出し応答」を受信すると,受信したOSイメージを内蔵の記憶媒体に記憶する。その後,ディスクレスPC1からの論理ブロック0番地からの「読み出し要求」に対して,ストレージ装置6に要求を行わず,自装置内に記憶しているOSイメージから該当するデータをディスクレスPC1に転送する。
このように構成することによって,認証正常時に認証サーバ5によりキャッシュ装置2にOSイメージをストレージ装置6から一括して読み出して記憶させ,キャッシュ装置2は,ディスクレスPC1からのOSイメージの読み込み要求に対して,記憶しているOSイメージからデータを転送しているので,論理ブロック毎にストレージ装置6から読み出す必要がなくなり,OSイメージの転送時間を短縮することができるようになる。
第2の実施の形態におけるキャッシュ装置2の構成例を,図7に示す。第2の実施の形態のキャッシュ装置2が,図3で説明した第1の実施の形態と異なるのは,認証サーバ5からの「読み出し指示」を解析する読み出し指示解析部29を持つことである。他の部分は,前述した第1の実施の形態とほぼ同様である。
読み出し指示解析部29は,認証サーバ5から受信したOSイメージ分のデータの「読み出し指示」を解析すると,その解析結果をキャッシュ処理実行制御部26に通知し,キャッシュ処理実行制御部26は,「読み出し指示」に設定されたストレージルータ7に対し,その「読み出し指示」に設定されているLUN情報をもとに,OSイメージ分のデータの「読み出し要求」を生成することをiSCSIデータ生成部25に指示し,iSCSIデータ生成部23が生成した「読み出し要求」を,TCP/IPパケット生成部25,送受信部21を介してストレージルータ7に送信する。
図8および図9に,第2の実施の形態におけるキャッシュ装置2の処理フローを示す。キャッシュ装置2は,ディスクレスPC1からの「読み出し要求」の受信とは関係なく,認証サーバ5から「読み出し指示」を受信する毎に,図8に示す処理を実行する。
キャッシュ装置2の送受信部20が,認証サーバ5からOSイメージデータの「読み出し指示」を受信すると(ステップS30),TCP/IPパケット解析部22および読み出し指示解析部29はその指示内容を解析し,「読み出し指示」の内容をキャッシュ処理実行制御部26に通知する。
キャッシュ処理実行制御部26は,キャッシュテーブル270に,ディスクレスPC1の起動に必要なオペレーティングシステムの全部または一部のエントリがあるか否かを調べる(ステップS31)。該当するすべてのエントリがある場合には,処理を終了する。「読み出し指示」があった範囲の中に,キャッシュテーブル270にエントリがない論理番地が一つでもあった場合には,「エントリなし」と判断し,ステップS32へ進む。
ステップS32では,ストレージルータ7へのOSイメージデータの「読み出し要求」を生成して,ストレージルータ7に送信し,ディスクレスPC1の起動に必要なオペレーティングシステムの全部または一部を先読みして取得する。キャッシュ処理実行制御部26は,その先読みしたデータをキャッシュに記録(キャッシュテーブル270にエントリを追加)し,処理を終了する(ステップS33)。なお,このとき既にキャッシュテーブル270にエントリが存在している場合には,先読みデータをそのエントリに上書きして追加する。
キャッシュ装置2は,ディスクレスPC1から「読み出し要求」を受信した場合には,図9に示すキャッシュ処理を実行する。
キャッシュ装置2の送受信部20が,ディスクレスPC1から「読み出し要求」のTCP/IPパケットを受信すると(ステップS40),TCP/IPパケット解析部22およびiSCSIデータ解析部24は,受信したデータの解析を行い,「読み出し要求」のデータの中から「読み出し要求」の論理番地の範囲(開始番地から終了番地)を読み取る(ステップS41)。その解析結果をキャッシュ処理実行制御部26に通知する。
キャッシュ処理実行制御部26は,キャッシュテーブル270に「読み出し要求」のあった論理番地の範囲のエントリがあるか否かを調べる(ステップS42)。「読み出し要求」のあった論理番地の範囲の中に,エントリがない論理番地が一つでもあった場合には,ここでは「エントリなし」と判断し,ステップS44へ進む。「エントリあり」の場合,キャッシュ装置2は,ディスクレスPC1からの「読み出し要求」をストレージルータ7に中継することなく,キャッシュからデータを取り出し,iSCSIデータ生成部25,TCP/IPパケット生成部23,送受信部20を介して,ディスクレスPC1に「読み出し応答」を返送する(ステップS43)。
一方,「エントリなし」の場合,ディスクレスPC1からの「読み出し要求」を,送受信部21およびネットワーク8を介して,そのままストレージルータ7に中継する(ステップS44)。ストレージルータ7から「読み出し応答」を受信すると(ステップS45),キャッシュ処理実行制御部26は,その「読み出し応答」に含まれる読み出しデータをキャッシュに記録(キャッシュテーブル270にエントリを追加)するとともに,送受信部20を介して「読み出し応答」をディスクレスPC1に中継し,処理を終了する(ステップS46)。
以上の実施の形態において,ストレージ装置6から最終的にディスクレスPC1へ送るデータは,オペレーティングシステムだけでもよく,またそのオペレーティングシステムの下で動作するアプリケーションプログラムを含んでいてもよい。このとき,オペレーティングシステムとアプリケーションプログラムのファイルが,1つのファイルとして構成されてもよく,また複数のファイルで構成されてもよく,どちらの形態でも本発明を実施することが可能である。
また,以上の実施の形態において,ストレージ装置6として,複数の読み出し要求を並列に処理するための機能(コマンドキューイング)を有するストレージ装置を利用することもでき,そのような機能を持つストレージ装置を利用すると,あらかじめ設定されたOSイメージ分またはそれに付随するアプリケーションプログラムの読み出し要求の処理時間を,全体としてさらに短縮することができる。
ネットワークブートシステムの構成例を示すブロック図である。 ネットワークブートシステムの動作説明のためのシーケンス図である。 キャッシュ装置の構成例を示すブロック図である。 キャッシュテーブルの構成例を示す図である。 キャッシュ装置の内部処理フローを示す図である。 他の実施の形態のネットワークブートシステムの動作説明のためのシーケンス図である。 他の実施の形態のキャッシュ装置の構成例を示すブロック図である。 他の実施の形態のキャッシュ装置の内部処理フローを示す図である。 他の実施の形態のキャッシュ装置の内部処理フローを示す図である。
符号の説明
1 ディスクレスPC
2 キャッシュ装置
3 DHCPサーバ
4 TFTPサーバ
5 認証サーバ
6 ストレージ装置
7 ストレージルータ
8 ネットワーク
20,21 送受信部
22 TCP/IPパケット解析部
23 TCP/IPパケット生成部
24 iSCSIデータ解析部
25 iSCSIデータ生成部
26 キャッシュ処理実行制御部
27 キャッシュデータ管理部
28 先読み対象管理部
29 読み出し指示解析部
270 キャッシュテーブル

Claims (3)

  1. オペレーティングシステムを予め格納したストレージ装置を持たないコンピュータに,ネットワークを介してオペレーティングシステムを取得させて該コンピュータを起動させるネットワークブートシステムにおいて,
    前記ネットワークを介して他の装置からアクセス可能な,少なくとも前記コンピュータの起動に必要なオペレーティングシステムを格納したストレージ装置と,
    前記コンピュータを使用するユーザの認証を行うとともにユーザに対応した前記ストレージ装置の情報を管理し,認証正常のユーザに対応する前記ストレージ装置の情報を,前記コンピュータまたは他の装置に通知する認証サーバと,
    前記コンピュータと前記ストレージ装置との間の通信を仲介し,前記ストレージ装置から取得したデータを一時的に記憶し,前記コンピュータから読み出し要求されたデータが一時的に記憶しているデータ内にあれば前記ストレージ装置にアクセスせずに該データを前記コンピュータに転送するキャッシュ装置とを備え,
    前記認証サーバは,ユーザの認証が正常となり,該ユーザに対応するストレージ装置が判明したとき,前記キャッシュ装置に前記コンピュータの起動に必要なオペレーティングシステムの全部もしくは一部,またはさらにそれに付随するアプリケーションプログラムの全部もしくは一部を取得することを指示し,
    前記キャッシュ装置は,前記認証サーバの指示により前記コンピュータの起動に必要なオペレーティングシステムの全部もしくは一部,またはさらにそれに付随するアプリケーションプログラムの全部もしくは一部を前記ストレージ装置から取得し記憶する
    ことを特徴とするネットワークブートシステム。
  2. オペレーティングシステムを予め格納したストレージ装置を持たないコンピュータと,ネットワークを介して他の装置からアクセス可能な,少なくとも前記コンピュータの起動に必要なオペレーティングシステムを格納したストレージ装置と,前記コンピュータを使用するユーザの認証機能を持ちユーザに対応した前記ストレージ装置の情報を管理する認証サーバと,前記コンピュータと前記ストレージ装置との間の通信を仲介し,前記ストレージ装置から取得したデータを一時的に記憶するキャッシュ装置とを備えたネットワークブートシステムにおいて前記コンピュータを起動させるネットワークブート方法であって,
    前記コンピュータが,該コンピュータを使用するユーザの認証要求を前記認証サーバへ送信する過程と,
    前記認証サーバが,前記コンピュータからのユーザの認証要求に対しユーザの認証を行うとともに,ユーザの認証が正常となり,該ユーザに対応するストレージ装置が判明したとき,前記キャッシュ装置に前記コンピュータの起動に必要なオペレーティングシステムの全部もしくは一部,またはさらにそれに付随するアプリケーションプログラムの全部もしくは一部を取得することを指示する過程と,
    前記キャッシュ装置が,前記認証サーバの指示により前記コンピュータの起動に必要なオペレーティングシステムの全部もしくは一部,またはさらにそれに付随するアプリケーションプログラムの全部もしくは一部を,ネットワークを介して前記ストレージ装置から取得して記憶する過程と,
    前記キャッシュ装置が,前記ストレージ装置から取得して記憶しているデータの中から,前記コンピュータから読み出し要求されたデータを取り出し,前記コンピュータに転送する過程とを有する
    ことを特徴とするネットワークブート方法。
  3. オペレーティングシステムを予め格納したストレージ装置を持たないコンピュータと,ネットワークを介して他の装置からアクセス可能な,少なくとも前記コンピュータの起動に必要なオペレーティングシステムを格納したストレージ装置と,ユーザの認証機能を持ちユーザに対応した前記ストレージ装置の情報を管理する認証サーバとを備えたネットワークブートシステムにおける,前記コンピュータと前記ストレージ装置との間の通信を仲介するキャッシュ装置であって,
    前記ストレージ装置から取得したデータを,そのストレージ装置における当該データが格納されていた論理番地の情報に対応させて一時的に記憶するキャッシュテーブルと,
    前記認証サーバから,前記コンピュータの起動に必要なオペレーティングシステムの全部もしくは一部,またはさらにそれに付随するアプリケーションプログラムの全部もしくは一部に関するデータの,前記ストレージ装置に対する読み出し指示を受信する手段と,
    前記受信した読み出し指示を解析し,前記コンピュータの起動に必要なオペレーティングシステムの全部もしくは一部,またはさらにそれに付随するアプリケーションプログラムの全部もしくは一部に関するデータの読み出し要求を生成し,ネットワークを介して前記ストレージ装置へ送信する手段と,
    前記読み出し要求によって前記ストレージ装置から取得したデータを前記キャッシュテーブルに格納する手段と,
    前記コンピュータから,要求するデータが格納された論理番地の範囲の情報を含む前記ストレージ装置の情報を指定した読み出し要求を受信する手段と,
    前記ストレージ装置から取得して前記キャッシュテーブルに記憶しているデータの中から,前記コンピュータから読み出し要求されたデータを取り出し,前記コンピュータに転送する手段とを備える
    ことを特徴とするネットワークブート用キャッシュ装置。
JP2003388670A 2003-11-19 2003-11-19 ネットワークブートシステム,ネットワークブート方法およびネットワークブート用キャッシュ装置 Expired - Fee Related JP4440608B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003388670A JP4440608B2 (ja) 2003-11-19 2003-11-19 ネットワークブートシステム,ネットワークブート方法およびネットワークブート用キャッシュ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003388670A JP4440608B2 (ja) 2003-11-19 2003-11-19 ネットワークブートシステム,ネットワークブート方法およびネットワークブート用キャッシュ装置

Publications (2)

Publication Number Publication Date
JP2005149334A JP2005149334A (ja) 2005-06-09
JP4440608B2 true JP4440608B2 (ja) 2010-03-24

Family

ID=34695631

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003388670A Expired - Fee Related JP4440608B2 (ja) 2003-11-19 2003-11-19 ネットワークブートシステム,ネットワークブート方法およびネットワークブート用キャッシュ装置

Country Status (1)

Country Link
JP (1) JP4440608B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5195748B2 (ja) * 2007-03-29 2013-05-15 富士通株式会社 サーバ管理プログラム、方法、及び装置
JP4607937B2 (ja) * 2007-10-31 2011-01-05 株式会社東芝 キャッシュ方法及びキャッシュ装置
WO2009069326A1 (ja) 2007-11-26 2009-06-04 Co-Conv, Corp. ネットワークブートシステム
JP2009176213A (ja) * 2008-01-28 2009-08-06 Hitachi Software Eng Co Ltd ネットワークブート方式
EP2416244A4 (en) * 2009-03-30 2012-08-29 Fujitsu Ltd CONTROL SERVER, BOOT SERVER, NETWORK BOOT SYSTEM, NETWORK BOOT PROCESS, BOOT IMAGE SELECTION PROGRAM, AND BOOT IMAGE PROGRAM
JP6040767B2 (ja) * 2012-12-28 2016-12-07 富士通株式会社 配信システム、配信方法、及びプログラム

Also Published As

Publication number Publication date
JP2005149334A (ja) 2005-06-09

Similar Documents

Publication Publication Date Title
JP5646650B2 (ja) ウェブアプリケーションのリアルタイム検証
US6735619B1 (en) Home network gateway apparatus and home network device
JP4829697B2 (ja) 情報処理装置、情報処理方法、コンピュータプログラム及び記録媒体
JP4311636B2 (ja) 記憶装置を複数の計算機で共用する計算機システム
JP4233900B2 (ja) 大容量記憶装置におけるデータの格納・読み出し制御
JP2007310508A (ja) シンクライアントシステムおよびシンクライアント端末用プログラム
JP2009026159A (ja) 端末設定システム、その端末、サーバ、プログラム
JP4440608B2 (ja) ネットワークブートシステム,ネットワークブート方法およびネットワークブート用キャッシュ装置
JP4722519B2 (ja) 計算機システム及びストレージサーバ、検索サーバ、端末装置並びに検索方法
JP4810358B2 (ja) ネットワーク機器、ネットワーク機器の制御方法、プログラム及び記憶媒体
JP2004227033A (ja) ネットワークストレージ装置
JP5219770B2 (ja) 情報処理装置、セッション管理方法、プログラム、及び、記録媒体
JP4503413B2 (ja) ネットワークシステムにおける外部端末からの記憶装置の利用
US20090094346A1 (en) Method and System for Retrieval and Usage of Remote Entry Points
JP4255451B2 (ja) 代理サーバ割り当てシステム、代理サーバ割り当て方法、ネットワークシステム、およびプログラム
US7203832B2 (en) Network system
JP2003316743A (ja) ネットワークアクセス方法およびクライアント
JP4625271B2 (ja) ネットワークブート用キャッシュ装置
JP2012137871A (ja) 情報処理装置、情報処理方法、情報処理システム、コンピュータプログラム、記録媒体
JP2002351733A (ja) ネットワークアクセスシステムおよびサーバ
KR100458919B1 (ko) 인터넷 접속 장치 관리 시스템과 그 방법 및 인터넷 접속장치로의 데이터 전송 방법
JP5225435B2 (ja) ネットワーク機器、ネットワーク機器の制御方法、及びプログラム
JP2005157858A (ja) ネットワークシステムおよびネットワークデバイスおよび電子証明処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
TW201445324A (zh) 遠端硬碟的連線使用方法及電腦可讀取記錄媒體
JP2021196837A (ja) 情報処理装置、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060522

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090723

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090723

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100105

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100107

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130115

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees