JP2009193382A - ブレードサーバシステムのキャッシュサーバ制御回路およびキャッシュサーバ制御方法 - Google Patents

ブレードサーバシステムのキャッシュサーバ制御回路およびキャッシュサーバ制御方法 Download PDF

Info

Publication number
JP2009193382A
JP2009193382A JP2008033840A JP2008033840A JP2009193382A JP 2009193382 A JP2009193382 A JP 2009193382A JP 2008033840 A JP2008033840 A JP 2008033840A JP 2008033840 A JP2008033840 A JP 2008033840A JP 2009193382 A JP2009193382 A JP 2009193382A
Authority
JP
Japan
Prior art keywords
storage
logical unit
data
cache
server
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.)
Granted
Application number
JP2008033840A
Other languages
English (en)
Other versions
JP5168630B2 (ja
Inventor
Yuji Kikuchi
雄司 菊池
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2008033840A priority Critical patent/JP5168630B2/ja
Publication of JP2009193382A publication Critical patent/JP2009193382A/ja
Application granted granted Critical
Publication of JP5168630B2 publication Critical patent/JP5168630B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】オーナとなるキャッシュサーバ以外の全てのキャッシュサーバに格納されたキャッシングデータを無効化する手段を備え、古くなったキャッシングデータを誤って使用する危険性を排除することで、ネットワーク転送効率を向上させる手段を提供する。
【解決手段】複数のブレードサーバとキャッシュサーバと管理モジュールとを内蔵したブレードサーバシステムと、前記ブレードサーバにネットワーク経由で接続されるストレージを含むシステムを用いて、前記キャッシュサーバ内に格納された前記ストレージの論理ユニットのデータについて、管理モジュールにおいて前記ストレージの論理ユニット番号とデータの有効性を登録した管理テーブルを備え、前記ブレードサーバシステムが前記ストレージからのリード命令を実行する際に、前記ストレージへのリードリクエスト発行を抑止して、前記キャッシュサーバにおけるデータをリードリプライとして送信する。
【選択図】図1

Description

本発明は、ブレードサーバシステムのキャッシュサーバ制御回路および制御方法に関し、特にネットワーク転送効率を向上させるブレードサーバシステムのキャッシュサーバ制御回路および制御方法に関する。
従来、例えば、特許文献1では、ストレージのデータをサーバにキャッシングしてデータ転送の高速化を図る技術が提案されている。また、特許文献2では、削除要求メッセージと称するネットワークパケットをネットワーク上に送信し、古くなったキャッシュサーバのデータを無効化する方法が提案されている。さらに、特許文献3では、CPUブレードサーバに搭載されるものとして、メモリやCPUなどのコンピュータシステムを構成するのに必要な部品およびネットワーク接続インターフェースを基板上に搭載されて、CPUブレードサーバの構成を監視するものとしてCMMについて開示されている。加えて、特許文献4は、各CPU1〜3の有効無効情報を読み込める、管理テーブルが開示されている。
特開2005−149334号公報 特開2007−264744号公報 特開2006−277033号公報 特開平09−319474号公報
しかしながら、特許文献1では、複数のキャッシュサーバが同一のストレージのデータをキャッシングする場合に、キャッシュサーバのデータがストレージのデータより古いデータとなるケースが生じる。この場合、キャッシュサーバの古いデータにヒットして、コンピュータが誤動作を起こす恐れがある。この問題を解決するために、特許文献2が提案されている。しかし、昨今、ネットワークサイトが増大する傾向にあり、キャッシュサーバが多数配置されるようになると、キャッシュサーバのデータを無効化するためのパケットがネットワークに負荷をかけ、ネットワーク転送効率を低減させるという課題を有していた。
そこで、本発明は、ストレージのデータをサーバにキャッシングして通信の高速化を図るシステムにおいて、複数のキャッシュサーバが同一のストレージデータをキャッシングする場合に、ブレードサーバシステムを管理する管理モジュールが、キャッシュサーバのキャッシングデータのキー情報を持ち、ブレードサーバと管理モジュール間、および、管理モジュールと他のブレードサーバシステムの管理モジュール間でキー情報を通信することにより、オーナとなるキャッシュサーバ以外の全てのキャッシュサーバに格納されたキャッシングデータを無効化する手段を備え、古くなったキャッシングデータを誤って使用する危険性を排除することで、ネットワーク転送効率を向上させる手段を提供することを目的とする。
上記の課題を解決すべく本発明に係るキャッシュサーバ制御方法は、複数のブレードサーバとキャッシュサーバと管理モジュールとを内蔵したブレードサーバシステムと、前記ブレードサーバにネットワーク経由で接続されるストレージを含むシステムを用いて
前記キャッシュサーバ内に格納された前記ストレージの論理ユニットのデータについて、管理モジュールにおいて前記ストレージの論理ユニット番号とデータの有効性を登録した管理テーブルを備え、前記ブレードサーバシステムが前記ストレージからのリード命令を実行する際に、前記管理テーブルを検索結果より前記ブレードサーバシステム内の前記キャッシュサーバにデータが格納されていると判明した場合に、前記ストレージへのリードリクエスト発行を抑止して、前記ブレードサーバシステム内のキャッシュサーバにおけるデータをリードリプライとして送信する。
また、本発明に係るキャッシュサーバ制御回路は、複数のブレードサーバとキャッシュサーバと管理モジュールとを内蔵したブレードサーバシステムと、前記ブレードサーバにネットワーク経由で接続されるストレージを含むシステムにおける前記ブレードサーバに内蔵される前記キャッシュサーバの制御回路において、
前記キャッシュサーバ内に格納された前記ストレージの論理ユニットのデータについて、管理モジュールにおいて前記ストレージの論理ユニット番号とデータの有効性を登録した管理テーブルを備え、前記ブレードサーバシステムが前記ストレージからのリード命令を実行する際に、前記管理テーブルを検索結果より前記ブレードサーバシステム内の前記キャッシュサーバにデータが格納されていると判明した場合に、前記ストレージへのリードリクエスト発行を抑止して、前記ブレードサーバシステム内のキャッシュサーバにおけるデータをリードリプライとして送信する。
本発明に係るブレードサーバシステムのキャッシュサーバ制御回路および制御方法を採用することで、ストレージのデータをサーバにキャッシングして通信の高速化を図るシステムにおいて、複数のキャッシュサーバが同一のストレージデータをキャッシングする場合に、ブレードサーバシステムを管理する管理モジュールが、キャッシュサーバのキャッシングデータのキー情報を持ち、ブレードサーバと管理モジュール間、および、管理モジュールと他のブレードサーバシステムの管理モジュール間でキー情報を通信することにより、オーナとなるキャッシュサーバ以外の全てのキャッシュサーバに格納されたキャッシングデータを無効化する手段を備え、古くなったキャッシングデータを誤って使用する危険性を排除することで、ネットワーク転送効率を向上させるという効果を有する。
以下本発明の実施の形態について複数の実施例を用いて以下に説明する。
ブレードサーバ3、ブレードサーバ4、ブレードサーバ5、およびブレードサーバ6が、ローカルエリアネットワーク27(以下、LAN27と称す)を介して、ストレージ9の同一論理ユニットにアクセスし、キャッシュサーバ7は、ブレードサーバ3とブレードサーバ4がストレージ9からリードしたデータをキャッシングし、キャッシュサーバ8は、ブレードサーバ5とブレードサーバ6がストレージ9からリードしたデータをキャッシングする構成において、キャッシュサーバ7にキャッシングされたデータの論理ユニット番号を管理モジュール12内の管理テーブル14に格納し、キャッシュサーバ8にキャッシングされたデータの論理ユニット番号を管理モジュール13内の管理テーブル15に格納し、ブレードサーバ3内の制御装置18と、ブレードサーバ4内の制御装置19と、ブレードサーバ5内の制御装置21と、ブレードサーバ6内の制御装置22と、キャッシュサーバ7内の制御装置20と、キャッシュサーバ8内の制御装置23と、管理モジュール12内の制御装置16と、管理モジュール13内の制御装置17が、キャッシング情報をやりとりし、陳腐化したキャッシングデータを無効化する手段を有する。
なお、本発明は、上記の実施の形態に限定されず、本発明の技術思想の範囲内において、実施の形態が適宜変更され得るものである。
図1を参照すると、本発明のブレードサーバシステム1は、ブレードサーバ3,4と、キャッシュサーバ7と、ネットワークスイッチ10と、管理モジュール12を有し、ネットワークスイッチ10に接続されたネットワークケーブル37から、LAN27とネットワークケーブル39を介して、ストレージ9に接続される。ブレードサーバ3内には、ホスト24と制御装置18を有し、ホスト24は、ブレードサーバシステム1内のバックプレーンに備えられたインタフェース31により、ネットワークスイッチ10に接続される。ホスト24は、ブレードサーバ3内の専用線42により制御装置18に接続される。制御装置18は、ブレードサーバシステム1内のバックプレーンに備えられたバス29により、管理モジュール12内の制御装置16に接続される。ブレードサーバ4内には、ホスト25と制御装置19を有し、ホスト25は、ブレードサーバシステム1内のバックプレーンに備えられたインタフェース32により、ネットワークスイッチ10に接続される。ホスト25は、ブレードサーバ4内の専用線43により制御装置19に接続される。制御装置19は、ブレードサーバシステム1内のバックプレーンに備えられたバス29により、管理モジュール12内の制御装置16に接続される。キャッシュサーバ7内には、キャッシュ26と制御装置20を有し、キャッシュ26は、ブレードサーバシステム1内のバックプレーンに備えられたインタフェース33により、ネットワークスイッチ10に接続される。キャッシュ26は、キャッシュサーバ7内の専用線44により制御装置20に接続される。制御装置20は、ブレードサーバシステム1内のバックプレーンに備えられたバス29により、管理モジュール12内の制御装置16に接続される。管理モジュール12内には、制御装置16と管理テーブル14を有し、制御装置16は、専用線40により管理テーブル14に接続される。
ブレードサーバシステム2は、ブレードサーバ5,6と、キャッシュサーバ8と、ネットワークスイッチ11と、管理モジュール13を有し、ネットワークスイッチ11に接続されたネットワークケーブル38から、LAN27とネットワークケーブル39を介して、ストレージ9に接続される。ブレードサーバ5内には、ホスト48と制御装置21を有し、ホスト48は、ブレードサーバシステム2内のバックプレーンに備えられたインタフェース34により、ネットワークスイッチ11に接続される。ホスト48は、ブレードサーバ5内の専用線45により制御装置21に接続される。制御装置21は、ブレードサーバシステム2内のバックプレーンに備えられたバス30により、管理モジュール13内の制御装置17に接続される。ブレードサーバ6内には、ホスト49と制御装置22を有し、ホスト49は、ブレードサーバシステム2内のバックプレーンに備えられたインタフェース35により、ネットワークスイッチ11に接続される。ホスト49は、ブレードサーバ6内の専用線46により制御装置22に接続される。制御装置22は、ブレードサーバシステム2内のバックプレーンに備えられたバス30により、管理モジュール13内の制御装置17に接続される。キャッシュサーバ8内には、キャッシュ50と制御装置23を有し、キャッシュ50は、ブレードサーバシステム2内のバックプレーンに備えられたインタフェース36により、ネットワークスイッチ11に接続される。キャッシュ50は、キャッシュサーバ8内の専用線47により制御装置23に接続される。制御装置23は、ブレードサーバシステム2内のバックプレーンに備えられたバス30により、管理モジュール13内の制御装置17に接続される。管理モジュール13内には、制御装置17と管理テーブル15を有し、制御装置17は、専用線41により管理テーブル15に接続される。
ホスト24、ホスト25、ホスト48、および、ホスト49は、ストレージ9のデータのリードおよびライトを制御する。ホストは、CPU、メモリ、ハードディスク、チップセットといった当業者にとってよく知られた技術で構成されており、その回路についての詳細な説明は省略するが、オペレーティングシステム上でアプリケーションを実行する。本実施例では、iSCSIプロトコルを用いたリードおよびライトについて特に説明するが、転送プロトコルについて、本プロトコルに特化したものではない。
キャッシュ26は、ホスト24とホスト25がストレージ9からリードしたデータをキャッシングする。キャッシュ50は、ホスト48とホスト49がストレージ9からリードしたデータをキャッシングする。キャッシュは、CPU、メモリ、ハードディスク、チップセットといった当業者にとってよく知られた技術で構成されており、その回路についての詳細な説明は省略する。役割を説明するために名称を区別しているが、ブレードサーバシステム内の一つのブレードサーバがその役割を担うことも可能であるし、キャッシュサーバ専用装置として、メモリやハードディスクなどの記憶装置のみで構成することも可能である。
ネットワークスイッチ10は、ホスト24、ホスト25、キャッシュ26、および、ストレージ9間のデータ通信をスイッチングする。ネットワークスイッチ11は、ホスト48、ホスト49、キャッシュ50、および、ストレージ9間のデータ通信をスイッチングする。ネットワークスイッチは、ネットワーク通信するためのパケットをルーティングするための装置で、当業者にとってよく知られた技術で構成されており、その回路についての詳細な説明は省略する。
制御装置18は、ホスト24がストレージ9と通信を行う場合、アクセスするデータの論理ユニット番号を内包する検索命令を管理モジュール12内の制御装置16に送信する。制御装置19は、ホスト25がストレージ9と通信を行う場合、アクセスするデータの論理ユニット番号を内包する検索命令を管理モジュール12内の制御装置16に送信する。制御装置21は、ホスト48がストレージ9と通信を行う場合、アクセスするデータの論理ユニット番号を内包する検索命令を管理モジュール13内の制御装置17に送信する。制御装置22は、ホスト49がストレージ9と通信を行う場合、アクセスするデータの論理ユニット番号を内包する検索命令を管理モジュール13内の制御装置17に送信する。
制御装置16は、制御装置18や制御装置19から検索命令を受信すると、管理テーブル14内に該当する論理ユニット番号が格納されているかどうか検索を行い、また、マネジメントリンク28へ検索命令を送信し、結果を制御装置18や制御装置19へ送信する。また、制御装置16は、制御装置17から検索命令を受信すると、管理テーブル14内に該当する論理ユニット番号が格納されているかどうか検索を行い、結果を制御装置17へ送信する。制御装置17は、制御装置21や制御装置22から検索命令を受信すると、管理テーブル15内に該当する論理ユニット番号が格納されているかどうか検索を行い、また、マネジメントリンク28へ検索命令を送信し、結果を制御装置21や制御装置22へ送信する。また、制御装置17は、制御装置16から検索命令を受信すると、管理テーブル15内に該当する論理ユニット番号が格納されているかどうか検索を行い、結果を制御装置16へ送信する。制御装置は、BMC(Baseboard Management Controller)と呼ばれ、各ブレードサーバやブレードサーバシステム全体のマネジメント制御を管理するLSIで構成され、その制御用にファームウェアが動作する。これも当業者にとってよく知られた技術で構成されており、その回路についての詳細な説明は省略する。
図2を参照すると、管理テーブル14および管理テーブル15の詳細な構成が示される。管理テーブル14は、エントリ200〜270の8エントリから構成される。エントリ200は、エントリValid201、論理ユニット番号フィールド202、データValid203、ビジーフィールド204、LRUフィールド205から構成される。エントリ210〜270も同じフィールドで構成される。管理テーブル15は、管理テーブル14は、エントリ300〜370の8エントリから構成される。エントリ300は、エントリValid301、論理ユニット番号フィールド302、データValid303、ビジーフィールド304、LRUフィールド305から構成される。エントリ310〜370も同じフィールドで構成される。
エントリValid201は、0bあるいは1bの値を取り、1bのとき、エントリ200に登録されている値が有効であることを示す。0bのとき、エントリ200に登録されている値が無効であることを示す。初期状態は0bで、iSCSIセッションリクエストを契機として、検索命令が制御装置16から送信されると、1bとなる。
論理ユニット番号フィールド202は、ストレージ9の論理ユニット番号を格納するフィールドで、エントリValid201が1bのとき、有効な値が格納されていることを示す。iSCSIセッションリクエストを契機とした検索命令が制御装置16から送信されると、エントリValid201を1bにすると同時に、検索命令の論理ユニット番号が格納される。
データValid203は、0bあるいは1bの値を取り、1bのとき、テーブルValid201が1b且つ論理ユニット番号フィールド202に格納された論理ユニット番号に対応するデータをキャッシュ26が格納していることを示す。iSCSIリードリプライまたはiSCSIライトリクエストを契機として、キャッシュ26内にデータが格納され、登録命令が制御装置16から送信されると、1bとなる。また、他のブレードサーバのiSCSIライトリプライ(他の実施例ではiSCSIライトリクエスト)を契機として、削除命令が制御装置16から送信されると、0bとなる。
ビジーフィールド204は、0bあるいは1bの値を取り、1bのとき、テーブルValid201が1b且つ論理ユニット番号フィールド202に格納された論理ユニット番号に対応するデータへのアクセス(iSCSIセッション)中であることを示す。iSCSIセッションリクエストを契機として、検索命令が制御装置16から送信されると、1bとなる。iSCSIクローズリクエストを契機として、解除命令が制御装置16から送信されると、0bとなる。ビジーフィールド204が1bのとき、テーブルValid201が1b且つ論理ユニット番号フィールド202に格納された論理ユニット番号に対応するデータへのアクセス、例えば、他ブレードサーバからのiSCSIセッションリクエストを契機として、検索命令が制御装置16から送信されると、ビジー状態を送信し、制御装置16は、iSCSIセッションリクエスト発行元のホストへ、iSCSIセッションリクエスト失敗を通知する。
LRUフィールド205は、エントリ200のLRU管理を行う。テーブルValidが0bのエントリ、次いで、データValidが0bのエントリから順に登録されるが、全てのテーブルValidとデータValidが1bのとき、さらに、別の論理ユニット番号のデータをキャッシュする場合に、いずれかのエントリを解放する必要がある。この場合、LRUフィールドを用いてLRU(Least Recently Used)、すなわち、最も使われていないエントリを解放する計算を行う。LRUのアルゴリズムは、様々な方法が提案されているが、いずれも当業者にとってよく知られた技術であり、本発明においての説明は省略する。
エントリ210〜270と、エントリ300〜370の動作については、エントリ200と同等であるため、省略する。
管理テーブルは、フリップフロップ回路からなるレジスタや、CAM(Content Addressable Memory)と呼ばれるバッファや、フラッシュメモリなどで構成されるが、その構造自体は、当業者にとってよく知られた技術であり、本発明においての説明は省略する。
なお、本実施例では、管理テーブルのエントリ数をそれぞれ8エントリとしているが、説明簡略化のためであり、nエントリ(nは自然数)としてよく、キャッシュのエントリ数分のエントリを持つことが出来るならば、LRUフィールドは不要となる。また、本実施例では、自筐体内のキャッシュについてのみ登録しているが、筐体番号のフィールドを設けて、他筐体のキャッシュ登録状態をそれぞれの管理モジュールが管理してもよい。
(動作の説明)
図3から図5を参照すると、本実施例の動作の流れが示される。ストレージ9内の同一論理ユニット(論理ユニット番号#100)に対して、第一に、ホスト24がリードを行い、第二に、ホスト25がリードを行い、第三に、ホスト48がリードおよびライトを行う場合の動作の流れが示される。
図3を参照すると、本実施例の第一の動作の流れが示される。
S1において、ブレードサーバ3内のホスト24は、インタフェース31へストレージ9とのiSCSIセッションリクエストを送信する。このiSCSIセッションリクエストにおいて、デスティネーションのIPアドレスはキャッシュサーバ7のアドレスであり、ソースのIPアドレスはブレードサーバ3のアドレスとなる。同S1において、ホスト24は、iSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を専用線42へ送信する。
S2において、ネットワークスイッチ10は、インタフェース31から受信したiSCSIセッションリクエストをインタフェース33へ送信する。同S2において、制御装置18は、バス29へiSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を送信する。
S3において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へストレージ9とのiSCSIセッションリクエストを送信する。このiSCSIセッションリクエストにおいて、デスティネーションのIPアドレスはストレージ9のアドレスであり、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。同S3において、管理モジュール12内の制御装置16は、自管理モジュール12内の管理テーブル14に論理ユニット番号#100が格納されているか検索する命令を専用線40に送信する。同S3において、制御装置16は、マネジメントリンク28へiSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を送信する。
S4において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIセッションリクエストをインタフェース37へ送信する。同S4において、管理テーブル14は、専用線40へ検索結果を送信するとともに、管理テーブル14のエントリ200のエントリValid201の値を1bにし、同エントリ200の論理ユニット番号フィールド202に論理ユニット番号#100を登録し、同エントリ200のビジーフィールド204を1bにする。本実施例では、最初のアクセスであるため、検索結果はミス(論理ユニット番号#100は管理テーブル14内に登録されていない)となる。同S4において、ブレードサーバシステム2内の管理モジュール13内の制御装置17は、自管理モジュール13内の管理テーブル15に論理ユニット番号#100が格納されているか検索する命令を専用線41に送信する。
S5において、インタフェース37へ送信されたiSCSIセッションリクエストは、LAN27を介して、インタフェース39へ送信される。同S5において、管理テーブル15は、専用線41へ検索結果を返す。本実施例では、最初のアクセスであるため、結果はミス(論理ユニット番号#100は管理テーブル15内に登録されていない)となる。
S6において、前記ストレージ9は、インタフェース39からのiSCSIセッションリクエストに対し、iSCSIセッションリプライをインタフェース39へ送信する。このiSCSIセッションリプライは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはストレージ9のアドレスとなる。同S6において、制御装置17は、マネジメントリンク28へ検索結果(ミス)を送信する。
S7において、インタフェース39へ送信されたiSCSIセッションリプライは、LAN27を介して、インタフェース37へ送信される。同S7において、制御装置16は、管理テーブル14の検索結果(ローカルミス)と、管理テーブル15の検索結果(リモートミス)から、検索結果(ローカルミス、リモートミス)をバス29へ送信し、キャッシュサーバ7内の制御装置20が検索結果(ローカルミス、リモートミス)を記憶する。本実施例では、マネジメントリンク28の接続先のブレードサーバシステムは1つであるが、複数のブレードサーバシステムと接続することが可能で、その場合、全ての検索結果がミスの場合、リモートミスと称し、いずれか一つの検索結果がヒットの場合、リモートヒットと称す。
S8において、ネットワークスイッチ10は、インタフェース37から受信したiSCSIセッションリプライをインタフェース33へ送信する。
S9において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へiSCSIセッションリプライを送信する。このiSCSIセッションリプライは、デスティネーションのIPアドレスはブレードサーバ3のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。
S10において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIセッションリプライをインタフェース31経由でホスト24へ送信する。この時点を、ブレードサーバ3とストレージ9のiSCSIセッションの確立と定義する。
S11において、ホスト24は、iSCSIリードリクエストをインタフェース31へ送信する。このiSCSIリードリクエストは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはブレードサーバ3のアドレスとなる。
S12において、ネットワークスイッチ10は、インタフェース31で受信したiSCSIリードリクエストをインタフェース33へ送信する。
S13において、キャッシュサーバ7内のキャッシュ26は、iSCSIセッションリクエスト時の検索結果を問い合わせる伺い命令を専用線44へ送信する。
S14において、前記制御装置20は、前記伺い命令に対して、検索結果(ローカルミス、リモートミス)を専用線44へ送信する。
S15において、キャッシュサーバ7内のキャッシュ26は、検索結果のローカルミスに呼応して、インタフェース33へストレージ9とのiSCSIリードリクエストを送信する。このiSCSIリードリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。
S16において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIリードリクエストをインタフェース37へ送信する。
S17において、インタフェース37へ送信されたiSCSIリードリクエストは、LAN27を介して、インタフェース39へ送信される。
S18において、ストレージ9は、インタフェース39からのiSCSIリードリクエストに対し、iSCSIリードリプライをインタフェース39へ送信する。iSCSIリードリプライは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはストレージ9のアドレスとなる。
S19において、インタフェース39へ送信されたこのiSCSIリードリプライは、LAN27を介して、インタフェース37へ送信される。
S20において、ネットワークスイッチ10は、インタフェース37から受信したiSCSIリードリプライをインタフェース33へ送信する。
S21において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へiSCSIリードリプライを送信する。iSCSIリードリプライは、デスティネーションのIPアドレスはブレードサーバ3のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。同S21において、キャッシュ26は、iSCSIリードリプライを格納し、データ登録命令を専用線44へ送信する。
S22において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIリードリプライをインタフェース31へ送信する。同S22において、制御装置20は、データ登録命令をバス29へ送信する。
S23において、ホスト24は、iSCSIクローズリクエストをインタフェース31へ送信する。iSCSIクローズリクエストは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはブレードサーバ3のアドレスとなる。同S23において、ホスト24は、このiSCSIクローズリクエストの対象となるストレージ9の論理ユニット番号#100を内包する解除命令を専用線42へ送信する。同S23において、制御装置16は、データ登録命令を専用線40へ送信する。
S24において、ネットワークスイッチ10は、インタフェース31から受信したiSCSIクローズリクエストをインタフェース33へ送信する。同S24において、管理テーブル14は、エントリ200のデータValid203の値を1bにする。同S24において、制御装置18は、バス29へiSCSIクローズの対象となるストレージ9の論理ユニット番号#100を内包する解除命令を送信する。
S25において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へストレージ9とのiSCSIクローズリクエストを送信する。iSCSIクローズリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。同S25において、管理モジュール12内の制御装置16は、管理テーブル14の論理ユニット番号#100が格納されているエントリ200のビジーフィールド204の値をリセットする解除命令を専用線40に送信する。
S26において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIクローズリクエストをインタフェース37へ送信する。同S26において、管理テーブル14は、エントリ200のビジーフィールド204の値を0bにする。
S27において、インタフェース37へ送信されたiSCSIクローズリクエストは、LAN27を介して、インタフェース39へ送信される。
S28において、ストレージ9は、iSCSIセッションをクローズし、iSCSIセッションリクエストの受け付け状態に戻る。この時点をブレードサーバ3とストレージ9のiSCSIセッション解放とする。
図4を参照すると、本発明のキャッシュサーバ制御方法に係る第二の実施例の動作の流れ図が示される。
S30において、ブレードサーバ4内のホスト25は、インタフェース32へストレージ9とのiSCSIセッションリクエストを送信する。iSCSIセッションリクエストは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはブレードサーバ4のアドレスとなる。同S30において、ホスト25は、iSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を専用線43経由で制御装置19へ送信する。
S31において、ネットワークスイッチ10は、インタフェース32から受信したiSCSIセッションリクエストをインタフェース33へ送信する。同S31において、制御装置19は、バス29へiSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を送信する。
S32において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へストレージ9とのiSCSIセッションリクエストを送信する。iSCSIセッションリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。同S32において、管理モジュール12内の制御装置16は、自管理モジュール12内の管理テーブル14に論理ユニット番号#100が格納されているか検索する命令を専用線40に送信する。同S32において、制御装置16は、マネジメントリンク28へiSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を送信する。
S33において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIセッションリクエストをインタフェース37へ送信する。同S33において、管理テーブル14は、専用線40へ検索結果を送信するとともに、管理テーブル14のエントリ200のエントリValid201の値を1bにし(値は元々1bなので変更無し)、同エントリ200の論理ユニット番号フィールド202に論理ユニット番号#100を登録し(値は元々#100なので変更無し)、同エントリ200のビジーフィールド204を1bにする。検索結果はヒット(論理ユニット番号#100は管理テーブル14内に登録されており、データValidも1bである)となる。同S33において、ブレードサーバシステム2内の管理モジュール13内の制御装置17は、自管理モジュール13内の管理テーブル15に論理ユニット番号#100が格納されているか検索する命令を専用線41に送信する。
S34において、インタフェース37へ送信されたiSCSIセッションリクエストは、LAN27を介して、インタフェース39へ送信される。同S34において、管理テーブル15は、専用線41へ検索結果を返す。検索結果はミス(論理ユニット番号#100は管理テーブル15内に登録されていない)となる。
S35において、ストレージ9は、インタフェース39からのiSCSIセッションリクエストに対し、iSCSIセッションリプライをインタフェース39へ送信する。iSCSIセッションリプライは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはストレージ9のアドレスとなる。同S35において、制御装置17は、マネジメントリンク28へ検索結果(ミス)を送信する。
S36において、インタフェース39へ送信されたiSCSIセッションリプライは、LAN27を介して、インタフェース37へ送信される。同S36において、制御装置16は、管理テーブル14の検索結果(ローカルヒット)と、管理テーブル15の検索結果(リモートミス)から、検索結果(ローカルヒット、リモートミス)をバス29へ送信し、キャッシュサーバ7内の制御装置20が検索結果(ローカルヒット、リモートミス)を記憶する。
S37において、ネットワークスイッチ10は、インタフェース37から受信したiSCSIセッションリプライをインタフェース33へ送信する。
S38において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へiSCSIセッションリプライを送信する。iSCSIセッションリプライは、デスティネーションのIPアドレスはブレードサーバ4のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。
S39において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIセッションリプライをインタフェース32へ送信する。この時点を、ブレードサーバ4とストレージ9のiSCSIセッション確立とする。
S40において、ホスト25は、iSCSIリードリクエストをインタフェース32へ送信する。iSCSIリードリクエストは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはブレードサーバ4のアドレスとなる。
S41において、ネットワークスイッチ10は、インタフェース32から受信したiSCSIリードリクエストをインタフェース33へ送信する。
S42において、キャッシュサーバ7内のキャッシュ26は、iSCSIセッションリクエスト時の検索結果を問い合わせる伺い命令を専用線44へ送信する。
S43において、制御装置20は、伺い命令に対して、検索結果(ローカルヒット、リモートミス)を専用線44へ送信する。
S44において、キャッシュサーバ7内のキャッシュ26は、検索結果のローカルヒットに呼応して、キャッシュ26内の登録データをiSCSIリードリプライとしてインタフェース33へ送信する。iSCSIリードリプライは、デスティネーションのIPアドレスはブレードサーバ4のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。
S45において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIリードリプライをインタフェース32へ送信する。
S46において、ホスト25は、iSCSIクローズリクエストをインタフェース32へ送信する。iSCSIクローズリクエストは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはブレードサーバ4のアドレスとなる。同S46において、ホスト25は、iSCSIクローズの対象となるストレージ9の論理ユニット番号#100を内包する解除命令を専用線43へ送信する。
S47において、ネットワークスイッチ10は、インタフェース32から受信したiSCSIクローズリクエストをインタフェース33へ送信する。同S47において、制御装置19は、バス29へiSCSIクローズの対象となるストレージ9の論理ユニット番号#100を内包する解除命令を送信する。
S48において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へストレージ9とのiSCSIクローズリクエストを送信する。iSCSIクローズリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。同S48において、管理モジュール12内の制御装置16は、管理テーブル14の論理ユニット番号#100が格納されているエントリ200のビジーフィールド204をリセットする解除命令を専用線40に送信する。
S49において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIクローズリクエストをインタフェース37へ送信する。同S49において、管理テーブル14は、エントリ200のビジーフィールド204を0bにする。
S50において、インタフェース37へ送信されたiSCSIクローズリクエストは、LAN27を介して、インタフェース39へ送信される。
S51において、ストレージ9は、iSCSIセッションをクローズし、iSCSIセッションリクエストの受け付け状態に戻る。この時点をブレードサーバ4とストレージ9のiSCSIセッション解放とする。
図5を参照すると、本発明のキャッシュサーバ制御方法に係る第三の実施例の動作の流れ図が示される。
S60において、ブレードサーバ5内のホスト48は、インタフェース34へストレージ9とのiSCSIセッションリクエストを送信する。iSCSIセッションリクエストは、デスティネーションのIPアドレスはキャッシュサーバ8のアドレス、ソースのIPアドレスはブレードサーバ5のアドレスとなる。同S60において、ホスト48は、iSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を専用線45へ送信する。
S61において、ネットワークスイッチ11は、インタフェース34から受信したiSCSIセッションリクエストをインタフェース36へ送信する。同S61において、制御装置21は、バス30へiSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を送信する。
S62において、キャッシュサーバ8内のキャッシュ50は、インタフェース36へストレージ9とのiSCSIセッションリクエストを送信する。iSCSIセッションリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ8のアドレスとなる。同S62において、管理モジュール13内の制御装置17は、自管理モジュール13内の管理テーブル15に論理ユニット番号#100が格納されているか検索する命令を専用線41に送信する。同S62において、制御装置17は、マネジメントリンク28へiSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を送信する。
S63において、ネットワークスイッチ11は、インタフェース36から受信したiSCSIセッションリクエストをインタフェース38へ送信する。同S63において、管理テーブル15は、専用線41へ検索結果を送信するとともに、管理テーブル15のエントリ300のエントリValid301の値を1bにし、同エントリ300の論理ユニット番号フィールド302に論理ユニット番号#100を登録し、同エントリ300のビジーフィールド304を1bにする。検索結果はミス(論理ユニット番号#100は管理テーブル15内に登録されていない)となる。同S63において、ブレードサーバシステム1内の管理モジュール12内の制御装置16は、自管理モジュール12内の管理テーブル14に論理ユニット番号#100が格納されているか検索する命令を専用線40に送信する。
S64において、インタフェース38へ送信されたiSCSIセッションリクエストは、LAN27を介して、インタフェース39へ送信される。同S64において、管理テーブル14は、専用線40へ検索結果を返す。検索結果はヒット(論理ユニット番号#100は管理テーブル14内に登録されており、データValidも1bである)となる。
S65において、ストレージ9は、インタフェース39からのiSCSIセッションリクエストに対し、iSCSIセッションリプライをインタフェース39へ送信する。iSCSIセッションリプライは、デスティネーションのIPアドレスはキャッシュサーバ8のアドレス、ソースのIPアドレスはストレージ9のアドレスとなる。同S65において、制御装置16は、マネジメントリンク28へ検索結果(ヒット)を送信する。
S66において、インタフェース39へ送信されたiSCSIセッションリプライは、LAN27を介して、インタフェース38へ送信される。同S66において、制御装置17は、管理テーブル15の検索結果(ローカルミス)と、管理テーブル14の検索結果(リモートヒット)から、検索結果(ローカルミス、リモートヒット)をバス30へ送信し、キャッシュサーバ8内の制御装置23が検索結果(ローカルミス、リモートヒット)を記憶する。
S67において、ネットワークスイッチ11は、インタフェース38から受信したiSCSIセッションリプライをインタフェース36へ送信する。
S68において、キャッシュサーバ8内のキャッシュ50は、インタフェース36へiSCSIセッションリプライを送信する。iSCSIセッションリプライは、デスティネーションのIPアドレスはブレードサーバ5のアドレス、ソースのIPアドレスはキャッシュサーバ8のアドレスとなる。
S69において、ネットワークスイッチ11は、インタフェース36から受信したiSCSIセッションリプライをインタフェース34へ送信する。この時点を、ブレードサーバ5とストレージ9のiSCSIセッション確立とする。
S70において、ホスト48は、iSCSIリードリクエストをインタフェース34へ送信する。iSCSIリードリクエストは、デスティネーションのIPアドレスはキャッシュサーバ8のアドレス、ソースのIPアドレスはブレードサーバ5のアドレスとなる。
S71において、ネットワークスイッチ11は、インタフェース34から受信したiSCSIリードリクエストをインタフェース36へ送信する。
S72において、キャッシュサーバ8内のキャッシュ50は、iSCSIセッションリクエスト時の検索結果を問い合わせる伺い命令を専用線47へ送信する。
S73において、制御装置23は、伺い命令に対して、検索結果(ローカルミス、リモートヒット)を専用線47へ送信する。
S74において、キャッシュサーバ8内のキャッシュ50は、検索結果のローカルミスに呼応して、インタフェース36へストレージ9とのiSCSIリードリクエストを送信する。iSCSIリードリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ8のアドレスとなる。
S75において、ネットワークスイッチ11は、インタフェース36から受信したiSCSIリードリクエストをインタフェース38へ送信する。
S76において、インタフェース38へ送信されたiSCSIリードリクエストは、LAN27を介して、インタフェース39へ送信される。
S77において、ストレージ9は、インタフェース39からのiSCSIリードリクエストに対し、iSCSIリードリプライをインタフェース39へ送信する。iSCSIリードリプライは、デスティネーションのIPアドレスはキャッシュサーバ8のアドレス、ソースのIPアドレスはストレージ9のアドレスとなる。
S78において、インタフェース39へ送信されたiSCSIリードリプライは、LAN27を介して、インタフェース38へ送信される。
S79において、ネットワークスイッチ11は、インタフェース38から受信したiSCSIリードリプライをインタフェース36へ送信する。
S80において、キャッシュサーバ8内のキャッシュ50は、インタフェース36へiSCSIリードリプライを送信する。iSCSIリードリプライは、デスティネーションのIPアドレスはブレードサーバ5のアドレス、ソースのIPアドレスはキャッシュサーバ8のアドレスとなる。同S80において、キャッシュ50は、iSCSIリードリプライを格納し、データ登録命令を専用線47へ送信する。
S81において、ネットワークスイッチ11は、インタフェース36から受信したiSCSIリードリプライをインタフェース34へ送信する。同S81において、制御装置23は、データ登録命令をバス30へ送信する。
S82において、ホスト48は、iSCSIライトリクエストをインタフェース34へ送信する。iSCSIライトリクエストは、デスティネーションのIPアドレスはキャッシュサーバ8のアドレス、ソースのIPアドレスはブレードサーバ5のアドレスとなる。同S82において、制御装置17は、データ登録命令を専用線41へ送信する。
S83において、ネットワークスイッチ11は、インタフェース34から受信したiSCSIライトリクエストをインタフェース36へ送信する。同S83において、管理テーブル15は、エントリ300のデータValid303を1bにする。
S84において、キャッシュサーバ8内のキャッシュ50は、インタフェース36へiSCSIライトリクエストを送信する。iSCSIライトリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ8のアドレスとなる。同S84において、キャッシュ50は、iSCSIライトリクエストを格納し、データ登録命令を専用線47へ送信する(iSCSIリードリプライによる格納時にもデータValidのセットは実行されるが、ライト時も同様にデータValidがセットされる)。同S84において、iSCSIセッションリクエスト時の検索結果を問い合わせる伺い命令を専用線47へ送信する。
S85において、ネットワークスイッチ11は、インタフェース36から受信したiSCSIライトリクエストをインタフェース38へ送信する。同S85において、制御装置23は、データ登録命令をバス30へ送信する。同S85において、制御装置23は、伺い命令に対して、検索結果(ローカルミス、リモートヒット)を専用線47へ送信する。
S86において、インタフェース38へ送信されたiSCSIライトリクエストは、LAN27を介して、インタフェース39へ送信される。同S86において、制御装置17は、データ登録命令を専用線41へ送信する。同S86において、キャッシュ50は、検索結果のリモートヒットに呼応して、削除命令を専用線47へ送信する。
S87において、ストレージ9は、iSCSIライトリクエストのデータを格納するとともに、iSCSIライトリプライをインタフェース39へ送信する。iSCSIライトリプライは、デスティネーションのIPアドレスはキャッシュサーバ8のアドレス、ソースのIPアドレスはストレージ9のアドレスとなる。同S87において、管理テーブル15は、エントリ300のデータValid303を1bにする(本実施例では前のリードリプライ時にすでに1bとなっている)。同S87において、制御装置23は、削除命令をバス30へ送信する。
S88において、インタフェース39へ送信されたiSCSIライトリプライは、LAN27を介して、インタフェース38へ送信される。同S88において、制御装置17は、削除命令をマネジメントリンク28へ送信する。
S89において、ネットワークスイッチ11は、インタフェース38から受信したiSCSIライトリプライをインタフェース36へ送信する。同S88において、制御装置16は、削除命令を専用線40へ送信する。
S90において、キャッシュサーバ8内のキャッシュ50は、インタフェース36へiSCSIライトリプライを送信する。iSCSIライトリプライは、デスティネーションのIPアドレスはブレードサーバ5のアドレス、ソースのIPアドレスはキャッシュサーバ8のアドレスとなる。同S90において、管理テーブル14内のエントリ200のデータValid203は0bにリセットされる。
S91において、ネットワークスイッチ11は、インタフェース36から受信したiSCSIライトリプライをインタフェース34へ送信する。
S92において、ホスト48は、iSCSIクローズリクエストをインタフェース34へ送信する。iSCSIクローズリクエストは、デスティネーションのIPアドレスはキャッシュサーバ8のアドレス、ソースのIPアドレスはブレードサーバ5のアドレスとなる。同S92において、ホスト48は、iSCSIクローズの対象となるストレージ9の論理ユニット番号#100を内包する解除命令を専用線45へ送信する。
S93において、ネットワークスイッチ11は、インタフェース34から受信したiSCSIクローズリクエストをインタフェース36へ送信する。同S93において、制御装置21は、バス30へiSCSIクローズの対象となるストレージ9の論理ユニット番号#100を内包する解除命令を送信する。
S94において、キャッシュサーバ8内のキャッシュ50は、インタフェース36へストレージ9とのiSCSIクローズリクエストを送信する。iSCSIクローズリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ8のアドレスとなる。同S94において、管理モジュール13内の制御装置17は、管理テーブル15の論理ユニット番号#100が格納されているエントリ300のビジーフィールド304をリセットする解除命令を専用線41に送信する。
S95において、ネットワークスイッチ11は、インタフェース36から受信したiSCSIクローズリクエストをインタフェース38へ送信する。同S95において、管理テーブル15は、エントリ300のビジーフィールド304を0bにする。
S96において、インタフェース38へ送信されたiSCSIクローズリクエストは、LAN27を介して、インタフェース39へ送信される。
S97において、ストレージ9は、iSCSIセッションをクローズし、iSCSIセッションリクエストの受け付け状態に戻る。この時点をブレードサーバ5とストレージ9のiSCSIセッション解放とする。
(本発明に係る実施例の効果)
第1の効果は、ストレージ内の同一の論理ユニットのデータを複数のキャッシュサーバが共有する場合に、管理モジュール内の制御装置と、ブレードサーバ内の制御装置と、キャッシュサーバ内の制御装置を設け、ブレードサーバシステム内のバスと、ブレードサーバシステム間のマネジメントリンクを利用して、管理モジュール内の管理テーブルの情報をやりとりすることで、陳腐化したキャッシュデータを無効化する手段を設けたことにより、ストレージのデータを転送するインタフェースに負荷を与えることなく、キャッシュサーバを用いたデータ転送の高速化を図ることが出来る。
第2の効果は、ストレージのデータ転送と並行してキャッシュデータの管理を行うために、システムとしての性能劣化を招くことなく、キャッシュサーバを用いたデータ転送の高速化を図ることが出来る。
図6を参照すると、本発明のキャッシュサーバ制御方法に係る第四の実施例の流れ図が示される。ストレージ9内の同一論理ユニット(論理ユニット番号#100)に対して、ホスト24がライトを行う場合の動作の流れが示される。先の実施例との違いは、iSCSIセッションリクエストの際に、他のブレードサーバシステムに対して検索を行わず、iSCSIライトリクエスト時には、常に他のブレードサーバシステムに対して削除命令を送信することで、iSCSIライトリクエスト自体の高速化を図っていることにある。先の実施例は、iSCSIセッションリクエスト時の検索結果がリモートヒットだった場合にのみ削除命令を発行するため、マネジメントリンク28のトラフィック削減を図っている。
S100において、ブレードサーバ3内のホスト24は、インタフェース31へストレージ9とのiSCSIセッションリクエストを送信する。iSCSIセッションリクエストは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはブレードサーバ3のアドレスとなる。同S100において、ホスト24は、iSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を専用線42へ送信する。
S101において、ネットワークスイッチ10は、インタフェース31から受信したiSCSIセッションリクエストをインタフェース33へ送信する。同S101において、制御装置18は、バス29へiSCSIセッションの対象となるストレージ9の論理ユニット番号#100を内包する検索命令を送信する。
S102において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へストレージ9とのiSCSIセッションリクエストを送信する。iSCSIセッションリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。同S102において、管理モジュール12内の制御装置16は、自管理モジュール12内の管理テーブル14に論理ユニット番号#100が格納されているか検索する命令を専用線40に送信する。先の実施例のS3と異なり、マネジメントリンク28へは検索命令を送信しない。
S103において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIセッションリクエストをインタフェース37へ送信する。同S103において、管理テーブル14は、専用線40へ検索結果を送信するとともに、管理テーブル14のエントリ200のエントリValid201を1bにし、同エントリ200の論理ユニット番号フィールド202に論理ユニット番号#100を登録し、同エントリ200のビジーフィールド204を1bにする。本実施例では、最初のアクセスであるため、検索結果はミス(論理ユニット番号#100は管理テーブル14内に登録されていない)となる。
S104において、インタフェース37へ送信されたiSCSIセッションリクエストは、LAN27を介して、インタフェース39へ送信される。同S104において、制御装置16は、管理テーブル14の検索結果(ローカルミス)をバス29へ送信し、キャッシュサーバ7内の制御装置20が検索結果(ローカルミス)を記憶する。
S105において、ストレージ9は、インタフェース39からのiSCSIセッションリクエストに対し、iSCSIセッションリプライをインタフェース39へ送信する。iSCSIセッションリプライは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはストレージ9のアドレスとなる。
S106において、インタフェース39へ送信されたiSCSIセッションリプライは、LAN27を介して、インタフェース37へ送信される。
S107において、ネットワークスイッチ10は、インタフェース37から受信したiSCSIセッションリプライをインタフェース33へ送信する。
S108において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へiSCSIセッションリプライを送信する。iSCSIセッションリプライは、デスティネーションのIPアドレスはブレードサーバ3のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。
S109において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIセッションリプライをインタフェース31へ送信する。この時点を、ブレードサーバ3とストレージ9のiSCSIセッション確立とする。
S110において、ホスト24は、iSCSIライトリクエストをインタフェース31へ送信する。iSCSIライトリクエストは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはブレードサーバ3のアドレスとなる。
S111において、ネットワークスイッチ10は、インタフェース31から受信したiSCSIライトリクエストをインタフェース33へ送信する。
S112において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へiSCSIライトリクエストを送信する。iSCSIライトリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。同S112において、キャッシュ26は、iSCSIライトリクエストを格納し、データ登録命令を専用線44へ送信する。同S112において、キャッシュ26は、削除命令を専用線44へ送信する。
S113において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIライトリクエストをインタフェース37へ送信する。同S113において、制御装置20は、データ登録命令をバス29へ送信する。同S113において、制御装置20は、データ削除命令をバス29へ送信する。
S114において、インタフェース37へ送信されたiSCSIライトリクエストは、LAN27を介して、インタフェース39へ送信される。同S114において、制御装置16は、データ登録命令を専用線40へ送信する。同S114において、制御装置16は、データ削除命令をマネジメントリンク28へ送信する。
S115において、ストレージ9は、iSCSIライトリクエストのデータを格納するとともに、iSCSIライトリプライをインタフェース39へ送信する。iSCSIライトリプライは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはストレージ9のアドレスとなる。同S115において、管理テーブル14は、エントリ200のデータValid203を1bにする。同S115において、制御装置17は、削除命令を専用線41へ送信する。
S116において、インタフェース39へ送信されたiSCSIライトリプライは、LAN27を介して、インタフェース37へ送信される。同S116において、管理テーブル15内に論理ユニット番号#100のエントリが存在する場合、同エントリのデータValidは0bにリセットされる。管理テーブル15内に論理ユニット番号#100のエントリが存在しない場合、削除命令は無視される。
S117において、ネットワークスイッチ10は、インタフェース37から受信したiSCSIライトリプライをインタフェース33へ送信する。
S118において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へiSCSIライトリプライを送信する。iSCSIライトリプライは、デスティネーションのIPアドレスはブレードサーバ3のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。
S119において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIライトリプライをインタフェース31へ送信する。
S120において、ホスト24は、iSCSIクローズリクエストをインタフェース31へ送信する。iSCSIクローズリクエストは、デスティネーションのIPアドレスはキャッシュサーバ7のアドレス、ソースのIPアドレスはブレードサーバ3のアドレスとなる。同S120において、ホスト24は、iSCSIクローズの対象となるストレージ9の論理ユニット番号#100を内包する解除命令を専用線42へ送信する。
S121において、ネットワークスイッチ10は、インタフェース31から受信したiSCSIクローズリクエストをインタフェース33へ送信する。同S121において、制御装置18は、バス29へiSCSIクローズの対象となるストレージ9の論理ユニット番号#100を内包する解除命令を送信する。
S122において、キャッシュサーバ7内のキャッシュ26は、インタフェース33へストレージ9とのiSCSIクローズリクエストを送信する。iSCSIクローズリクエストは、デスティネーションのIPアドレスはストレージ9のアドレス、ソースのIPアドレスはキャッシュサーバ7のアドレスとなる。同S122において、管理モジュール12内の制御装置16は、管理テーブル14の論理ユニット番号#100が格納されているエントリ200のビジーフィールド204をリセットする解除命令を専用線40に送信する。
S123において、ネットワークスイッチ10は、インタフェース33から受信したiSCSIクローズリクエストをインタフェース37へ送信する。同S123において、管理テーブル14は、エントリ200のビジーフィールド204を0bにする。
S124において、インタフェース37へ送信されたiSCSIクローズリクエストは、LAN27を介して、インタフェース39へ送信される。
S125において、ストレージ9は、iSCSIセッションをクローズし、iSCSIセッションリクエストの受け付け状態に戻る。この時点をブレードサーバ3とストレージ9のiSCSIセッション解放とする。
本発明の実施により、管理モジュールを内蔵し、ブレードサーバと管理モジュールの間にマネジメントパスを持ち、情報のやり取りを行えるブレードサーバシステムで特に本発明の利用が考えられる。また、サーバ装置に限らず、記憶装置から読み出したデータを利用する装置と、そのデータの再読み込み時間を短縮するために、読み出したデータを利用する装置の近傍に読み出したデータを保持する装置を備え、データを利用する装置と、読み出したデータを保持する装置がそれぞれ複数存在することで、いずれかに保持されたデータが陳腐化した場合に、それを用いないようにする必要がある装置には全て適用が可能であるとともに様々な要請に対応することが可能である。
本発明に係るブレードサーバシステムのブロックダイヤグラムを示す。 本発明に係るブレードサーバシステムにおける管理テーブルおよび管理テーブルの詳細な構成図を示す。 本発明に係るブレードサーバシステムを用いたキャッシュサーバ制御方法の第一の実施例の流れ図を示す。 本発明に係るブレードサーバシステムを用いたキャッシュサーバ制御方法の第二の実施例の流れ図を示す。 本発明に係るブレードサーバシステムを用いたキャッシュサーバ制御方法の第三の実施例の流れ図を示す。 本発明に係るブレードサーバシステムを用いたキャッシュサーバ制御方法の第四の実施例の流れ図を示す。
符号の説明
1 ブレードサーバシステム
2 ブレードサーバシステム
3 ブレードサーバ
4 ブレードサーバ
5 ブレードサーバ
6 ブレードサーバ
7 キャッシュサーバ
8 キャッシュサーバ
9 ストレージ
10 ネットワークスイッチ
11 ネットワークスイッチ
12 管理モジュール
13 管理モジュール
14 管理テーブル
15 管理テーブル
16 制御装置
17 制御装置
18 制御装置
19 制御装置
20 制御装置
21 制御装置
22 制御装置
23 制御装置
24 ホスト
25 ホスト
26 キャッシュ
27 ローカルエリアネットワーク(LAN)
28 マネジメントリンク
29 バス
30 バス
31 インタフェース
32 インタフェース
33 インタフェース
34 インタフェース
35 インタフェース
36 インタフェース
37 インタフェース
38 ネットワークケーブル
39 ネットワークケーブル
40 専用線
41 専用線
42 専用線
43 専用線
44 専用線
45 専用線
46 専用線
47 専用線
48 ホスト
49 ホスト
50 キャッシュ
200〜270 エントリ
201 エントリValid
201 テーブルValid
202 論理ユニット番号フィールド
203 データValid
204 ビジーフィールド
205 LRUフィールド
210〜270 エントリ
300〜370 エントリ
301 エントリValid
302 論理ユニット番号フィールド
303 データValid
304 ビジーフィールド
305 LRUフィールド
310〜370エントリ

Claims (10)

  1. 複数のブレードサーバとキャッシュサーバと管理モジュールとを内蔵したブレードサーバシステムと、前記ブレードサーバにネットワーク経由で接続されるストレージを含むシステムを用いて、
    前記キャッシュサーバ内に格納された前記ストレージの論理ユニットのデータについて、管理モジュールにおいて前記ストレージの論理ユニット番号とデータの有効性を登録した管理テーブルを備え、前記ブレードサーバシステムが前記ストレージからのリード命令を実行する際に、前記管理テーブルを検索結果より前記ブレードサーバシステム内の前記キャッシュサーバにデータが格納されていると判明した場合に、前記ストレージへのリードリクエスト発行を抑止して、前記ブレードサーバシステム内のキャッシュサーバにおけるデータをリードリプライとして送信するキャッシュサーバ制御方法。
  2. 複数の第一のブレードサーバと第一のキャッシュサーバと管理モジュールとを内蔵した第一のブレードサーバシステムと、前記ブレードサーバにネットワーク経由で接続されるストレージと、前記ストレージを含むシステムを用いてネットワーク経由で接続される複数の第二ブレードサーバと第二キャッシュサーバと第二管理モジュールとを内蔵した第二のブレードサーバシステムを用いて、
    前記キャッシュサーバ内に格納された前記ストレージの論理ユニットのデータについて、前記管理モジュールにおいて、前記ストレージの論理ユニット番号と、データの有効性を登録した前記管理テーブルを備え、前記ブレードサーバシステムが前記ストレージからのライト命令を実行する場合に、前記第二のブレードサーバシステム内の管理テーブルを検索した結果、前記第二のブレードサーバシステム体内の第二キャッシュサーバにデータが格納されていると判明した場合に、前記第二キャッシュサーバ内のデータを無効化するための命令を送信するキャッシュサーバ制御方法。
  3. 複数のブレードサーバとキャッシュサーバと管理モジュールとを内蔵したブレードサーバシステムと、前記ブレードサーバにネットワーク経由で接続されるストレージを含むシステムにおける前記ブレードサーバに内蔵される前記キャッシュサーバの制御回路において、
    前記キャッシュサーバ内に格納された前記ストレージの論理ユニットのデータについて、管理モジュールにおいて前記ストレージの論理ユニット番号とデータの有効性を登録した管理テーブルを備え、前記ブレードサーバシステムが前記ストレージからのリード命令を実行する際に、前記管理テーブルを検索結果より前記ブレードサーバシステム内の前記キャッシュサーバにデータが格納されていると判明した場合に、前記ストレージへのリードリクエスト発行を抑止して、前記ブレードサーバシステム内のキャッシュサーバにおけるデータをリードリプライとして送信するキャッシュサーバ制御回路。
  4. 前記管理モジュールに内蔵される管理テーブルは複数のエントリから形成され、前記エントリはエントリに登録される値の有効性を示すエントリValid有効値と、ストレージの論理ユニット番号を格納する論理ユニット番号フィールドと、論理ユニット番号フィールドに格納された論理ユニット番号に対応するデータをキャッシュが格納していることを示すデータValid値と、エントリValid有効値が論理ユニット番号フィールドに格納された論理ユニット番号に対応するデータへのアクセス中であることを示すビジーフィールド値と、エントリのLRU管理用のLRUフィールド値とから構成されることを特徴とする請求項3記載のキャッシュサーバ制御回路。
  5. 複数の第一のブレードサーバと第一のキャッシュサーバと管理モジュールとを内蔵した第一のブレードサーバシステムと、前記ブレードサーバにネットワーク経由で接続されるストレージと、前記ストレージを含むシステムを用いてネットワーク経由で接続される複数の第二ブレードサーバと第二キャッシュサーバと第二管理モジュールとを内蔵した第二のブレードサーバシステムにおける前記ブレードサーバに内蔵される前記第一のキャッシュサーバの制御回路において、
    前記キャッシュサーバ内に格納された前記ストレージの論理ユニットのデータについて、前記管理モジュールにおいて、前記ストレージの論理ユニット番号と、データの有効性を登録した前記管理テーブルを備え、前記ブレードサーバシステムが前記ストレージからのライト命令を実行する場合に、前記第二のブレードサーバシステム内の管理テーブルを検索した結果、前記第二のブレードサーバシステム体内の第二キャッシュサーバにデータが格納されていると判明した場合に、前記第二キャッシュサーバ内のデータを無効化するための命令を送信する第一のキャッシュサーバの制御回路。
  6. 前記管理モジュールに内蔵される管理テーブルは複数のエントリから形成され、前記エントリはエントリに登録される値の有効性を示すエントリValid有効値と、ストレージの論理ユニット番号を格納する論理ユニット番号フィールドと、論理ユニット番号フィールドに格納された論理ユニット番号に対応するデータをキャッシュが格納していることを示すデータValid値と、エントリValid有効値が論理ユニット番号フィールドに格納された論理ユニット番号に対応するデータへのアクセス中であることを示すビジーフィールド値と、エントリのLRU管理用のLRUフィールド値とから構成されることを特徴とする請求項5記載のキャッシュサーバ制御回路。
  7. 複数のブレードサーバとキャッシュサーバと管理モジュールとを内蔵したブレードサーバシステムと、前記ブレードサーバにネットワーク経由で接続されるストレージを含むシステムにおいて、
    前記キャッシュサーバ内に格納された前記ストレージの論理ユニットのデータについて、管理モジュールにおいて前記ストレージの論理ユニット番号とデータの有効性を登録した管理テーブルを備え、前記ブレードサーバシステムが前記ストレージからのリード命令を実行する際に、前記管理テーブルを検索結果より前記ブレードサーバシステム内の前記キャッシュサーバにデータが格納されていると判明した場合に、前記ストレージへのリードリクエスト発行を抑止して、前記ブレードサーバシステム内のキャッシュサーバにおけるデータをリードリプライとして送信するシステム。
  8. 前記管理モジュールに内蔵される管理テーブルは複数のエントリから形成され、前記エントリはエントリに登録される値の有効性を示すエントリValid有効値と、ストレージの論理ユニット番号を格納する論理ユニット番号フィールドと、論理ユニット番号フィールドに格納された論理ユニット番号に対応するデータをキャッシュが格納していることを示すデータValid値と、エントリValid有効値が論理ユニット番号フィールドに格納された論理ユニット番号に対応するデータへのアクセス中であることを示すビジーフィールド値と、エントリのLRU管理用のLRUフィールド値とから構成されることを特徴とする請求項7記載のシステム。
  9. 複数の第一のブレードサーバと第一のキャッシュサーバと管理モジュールとを内蔵した第一のブレードサーバシステムと、前記ブレードサーバにネットワーク経由で接続されるストレージと、前記ストレージを含むシステムを用いてネットワーク経由で接続される複数の第二ブレードサーバと第二キャッシュサーバと第二管理モジュールとを内蔵した第二のブレードサーバシステムを含むシステムにおいて、
    前記キャッシュサーバ内に格納された前記ストレージの論理ユニットのデータについて、前記管理モジュールにおいて、前記ストレージの論理ユニット番号と、データの有効性を登録した前記管理テーブルを備え、前記ブレードサーバシステムが前記ストレージからのライト命令を実行する場合に、前記第二のブレードサーバシステム内の管理テーブルを検索した結果、前記第二のブレードサーバシステム体内の第二キャッシュサーバにデータが格納されていると判明した場合に、前記第二キャッシュサーバ内のデータを無効化するための命令を送信するシステム。
  10. 前記管理モジュールに内蔵される管理テーブルは複数のエントリから形成され、前記エントリはエントリに登録される値の有効性を示すエントリValid有効値と、ストレージの論理ユニット番号を格納する論理ユニット番号フィールドと、論理ユニット番号フィールドに格納された論理ユニット番号に対応するデータをキャッシュが格納していることを示すデータValid値と、エントリValid有効値が論理ユニット番号フィールドに格納された論理ユニット番号に対応するデータへのアクセス中であることを示すビジーフィールド値と、エントリのLRU管理用のLRUフィールド値とから構成されることを特徴とする請求項9記載のシステム。
JP2008033840A 2008-02-14 2008-02-14 ブレードサーバシステムのキャッシュサーバ制御回路およびキャッシュサーバ制御方法 Expired - Fee Related JP5168630B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008033840A JP5168630B2 (ja) 2008-02-14 2008-02-14 ブレードサーバシステムのキャッシュサーバ制御回路およびキャッシュサーバ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008033840A JP5168630B2 (ja) 2008-02-14 2008-02-14 ブレードサーバシステムのキャッシュサーバ制御回路およびキャッシュサーバ制御方法

Publications (2)

Publication Number Publication Date
JP2009193382A true JP2009193382A (ja) 2009-08-27
JP5168630B2 JP5168630B2 (ja) 2013-03-21

Family

ID=41075329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008033840A Expired - Fee Related JP5168630B2 (ja) 2008-02-14 2008-02-14 ブレードサーバシステムのキャッシュサーバ制御回路およびキャッシュサーバ制御方法

Country Status (1)

Country Link
JP (1) JP5168630B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011187026A (ja) * 2010-03-11 2011-09-22 Hitachi Ltd 計算機システムおよびキャッシュ制御方法
JP2012058912A (ja) * 2010-09-07 2012-03-22 Nec Corp 論理ユニット番号管理装置及び論理ユニット番号管理方法並びにそのプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007264744A (ja) * 2006-03-27 2007-10-11 Nippon Telegr & Teleph Corp <Ntt> ネットワークキャッシュシステム、キャッシュ装置、中継装置、およびプログラム
JP2008003929A (ja) * 2006-06-23 2008-01-10 Nippon Telegr & Teleph Corp <Ntt> 先読みパターンデータに基づくデータ先読み機能、先読みパターンデータ生成機能を有するネットワークキャッシュ装置およびそのプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007264744A (ja) * 2006-03-27 2007-10-11 Nippon Telegr & Teleph Corp <Ntt> ネットワークキャッシュシステム、キャッシュ装置、中継装置、およびプログラム
JP2008003929A (ja) * 2006-06-23 2008-01-10 Nippon Telegr & Teleph Corp <Ntt> 先読みパターンデータに基づくデータ先読み機能、先読みパターンデータ生成機能を有するネットワークキャッシュ装置およびそのプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNH200500223012; 小沢 年弘: '特集:TRIOLE TRIOLEを支える先進技術' FUJITSU 第56巻,第1号, 20050111, p.70-74, 富士通株式会社 *
JPN6012046234; 小沢 年弘: '特集:TRIOLE TRIOLEを支える先進技術' FUJITSU 第56巻,第1号, 20050111, p.70-74, 富士通株式会社 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011187026A (ja) * 2010-03-11 2011-09-22 Hitachi Ltd 計算機システムおよびキャッシュ制御方法
JP2012058912A (ja) * 2010-09-07 2012-03-22 Nec Corp 論理ユニット番号管理装置及び論理ユニット番号管理方法並びにそのプログラム
US8799996B2 (en) 2010-09-07 2014-08-05 Nec Corporation Logical unit number management device, logical unit number management method, and program therefor

Also Published As

Publication number Publication date
JP5168630B2 (ja) 2013-03-21

Similar Documents

Publication Publication Date Title
US7124169B2 (en) Network system and its switches
US8843706B2 (en) Memory management among levels of cache in a memory hierarchy
JP4737691B2 (ja) 排他的所有権のスヌープフィルタ
US6374331B1 (en) Distributed directory cache coherence multi-processor computer architecture
US8423720B2 (en) Computer system, method, cache controller and computer program for caching I/O requests
KR102092660B1 (ko) Cpu 및 다중 cpu 시스템 관리 방법
US8539164B2 (en) Cache coherency within multiprocessor computer system
US20080270708A1 (en) System and Method for Achieving Cache Coherency Within Multiprocessor Computer System
CN111338561B (zh) 存储器控制器与存储器页面管理方法
JP2007087059A (ja) 記憶制御システム
US9465743B2 (en) Method for accessing cache and pseudo cache agent
CN103294611A (zh) 一种基于有限数据一致性状态的服务器节点数据缓存方法
US8307044B2 (en) Circuits, systems, and methods to integrate storage virtualization in a storage controller
JP2003186742A (ja) ディレクトリ・キャッシュの更新
CN114860154B (zh) 使用缓存状态改变的数据迁移
JP5168630B2 (ja) ブレードサーバシステムのキャッシュサーバ制御回路およびキャッシュサーバ制御方法
US20050120134A1 (en) Methods and structures for a caching to router in iSCSI storage systems
JP2007188428A (ja) 半導体ストレージ装置およびストレージシステム
JP2003044421A (ja) 仮想ストレージシステム及び同システムに使用されるスイッチングノード
JP6269163B2 (ja) 中継装置、ストレージ装置、および中継プログラム
US7353158B2 (en) Inter integrated circuit extension via shadow memory
JP2007072521A (ja) 記憶制御システム及び記憶制御装置
JP7010922B2 (ja) フォワーディングエントリアクセス
CN111209227B (zh) 数据处理系统
KR100900012B1 (ko) 정보 처리 시스템, 정보 처리 기판, 및 캐시 태그 및스누프 태그의 갱신 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120907

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121106

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: 20121130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121213

R150 Certificate of patent or registration of utility model

Ref document number: 5168630

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees