JP4175185B2 - ネットワーク情報記録装置 - Google Patents
ネットワーク情報記録装置 Download PDFInfo
- Publication number
- JP4175185B2 JP4175185B2 JP2003162789A JP2003162789A JP4175185B2 JP 4175185 B2 JP4175185 B2 JP 4175185B2 JP 2003162789 A JP2003162789 A JP 2003162789A JP 2003162789 A JP2003162789 A JP 2003162789A JP 4175185 B2 JP4175185 B2 JP 4175185B2
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- host
- priority value
- information recording
- recording apparatus
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の属する技術分野】
本発明はネットワーク情報記録装置に関し、特に、iSCSIで規定されるImmediate Data転送方式に対応した情報記録装置に関する。
【0002】
【従来の技術】
HDDやディスクアレイ装置などの入出力に使用されるSCSIインターフェースをTCP/IP(Transmission Control Protocol / Internet Protocol)で行えるようにしたiSCSIがIETF(Internet Engineering Task Force)により認められている。これはSCSIコマンドやレスポンスをTCPパケットにカプセル化して、SCSIトランスポートをIPネットワークによるトランスポートに置き換えるデータ転送方式である。
【0003】
iSCSIによる転送方式のうち、Immediate Data転送方式と呼ばれるものがある(例えば、非特許文献1)。例えばディスクアレイ装置において、通常のデータ転送ではホストがライトコマンドを発行するとディスクアレイ装置がデータ転送要求をホストに返信し、その後ホストからのデータ転送が開始される。これに対しImmediate Data転送では、ディスクアレイ装置からのデータ要求を待つことなく、ホストがライトコマンドの発行とともにデータ送信を開始する。Immediate Data転送ではコマンドとデータが同時受信されるため、ディスクアレイ装置側のバッファに十分な空き容量が必要とされる。
【0004】
iSCSI方式においてImmediate Data転送の使用/不使用や、Immediate Data転送可能な最大データ長であるFirst Burst Lengthキーなどのパラメータはホストのログイン時に行われるネゴシエーションで決定される。このネゴシエーションにおいて、ホストとディスクアレイ装置の双方が”Immediate Data=Yes”と宣言することによりImmediate Data転送が可能となる。また、Immediate Data転送の最大転送長はホストとディスクアレイ装置が互いに宣言するFirst Burst Lengthキーによって決定され、両者の宣言した値の小さい方が採用される。ホストの要求する転送長よりディスクアレイ装置が宣言する転送長が短かい場合、ホストはキー値を超えたImmediate Data転送を行うことができない。Immediate Data転送はログイン時に決定されるパラメータに従って行われ、途中でパラメータを自由に変更することはできない。
【0005】
一方、マルチタスクオペレーションシステムによるメモリ制御において、メモリ残量が少ない場合に緊急度の低いタスクから優先順位を基にメモリを解放し、新しいタスクに割り当てるメモリ管理システムがある(例えば、特許文献1)。
【0006】
【非特許文献1】
IP Storage Working Group、"draft-itef-ips-iscsi-20.text"、[online]、平成15年1月19日、インターネット<URL: http://www.haifa.il.ibm.com/satran/ips/draft-ietf-ips-iscsi-20.txt>
【特許文献1】
特開2000−293386号公報
【0007】
【発明が解決しようとする課題】
iSCSIはIPベースのSAN(Storage Area Network)の構築を可能とする技術であり、ディスクアレイ装置はネットワーク上に設置され複数のホストがログイン可能となる。しかしながら装置が有するImmediate Dataバッファは有限であるため、装置にログインする総てのホストにImmediate Dataバッファを十分に確保することができないという問題が生ずる。より具体的には、総てのホストに対しImmediate Data転送を十分に利用可能とするためにはディスクアレイ装置にセッション数×最大IO数分のImmediate Dataバッファが必要となるが、装置側のバッファが有限であるためセッション数、ホスト数が増大すると総てのホストに対し必要量を確保することができなくなる。
【0008】
例えば、ディスクアレイ装置が各ホストに10メガバイトのImmediate Dataバッファを割り当てるよう構成されている場合、200台のホストがログインしようとすると装置に必要なメモリ容量は合計2ギガバイトとなる。ディスクアレイ装置に搭載されているメモリが2ギガバイト以下である場合、ディスクアレイ装置は総てのログイン可能なホストにImmediate Dataバッファを割り当てることができない。
【0009】
また、ログイン可能なホスト総てにImmediate Dataバッファを均等に割り当てようとすれば、各ホストに割り当てられるImmediate Dataバッファは、ディスクアレイ装置が有するImmediate Dataバッファの容量を、ログイン可能なホストの最大数で割った数となる。例えば1メガバイトのImmediate Dataバッファを有するディスクアレイ装置に200台のホストがログイン可能な場合、各ホストが使用可能なImmediate Dataバッファは僅か5キロバイトとなる。
【0010】
逆に、ログインしたホストに十分な量のImmediate Dataバッファを割り当てようとすれば、ある一定数のホストにしかImmediate Data転送を許可することができなくなる。例えば、ディスクアレイ装置の有するImmediate Dataバッファが10メガバイトで、各ホストにImmediate Dataバッファが1メガバイト割り当てる場合、最初にログインした10台のホストでImmediate Dataバッファの容量が足りなくなり、以降にログインするホストはImmediate Data転送を行うことができない。
【0011】
本発明はこのような問題に鑑みなされたものであり、Immediate Dataバッファをその時々の状況に応じて適切に割り振ることによりディスクアレイ装置などのiSCSI機器ひいてはシステム全体の性能向上を図ることを目的とする。すなわち、Immediate Data転送方式に対応する情報記録装置において、ホスト毎に優先値を管理して装置のImmediate Dataバッファの有効利用を図ることにより、優先値の高いホストの性能を最大限生かすようにしたネットワーク情報記録装置を提供することを目的とする。
【0012】
【課題を解決するための手段】
この目的を達成するために、本発明にかかるネットワーク情報記録装置は、ネットワークに接続され複数の上位装置からログイン可能な情報記録装置において、前記上位装置からライトコマンドとともに送られるライトデータを一時的に記憶するバッファと、前記情報記録装置にログインする上位装置に前記バッファ容量の一部を割り当てるバッファ割り当て手段とを備え、当該バッファ割り当て手段は、上位装置毎に管理される優先値に基づいて前記情報記録装置にログインする上位装置毎のバッファ割当量を決定することを特徴とする。
【0013】
このように、情報記録装置にログインする上位装置毎に優先値を管理し、当該優先値に基づいてバッファ割当量を決定するようにすれば、優先的にコマンドを処理する必要がある上位装置へのバッファ割当量を多く、そうでない上位装置へのバッファ割当量を少なくすることができる。したがって、優先度の高い上位装置の性能を最大限生かすことが可能となり、バッファの有効活用によりシステム全体の処理性能を向上することができる。
【0014】
この情報記録装置において、前記バッファ割り当て手段は、少なくとも上位装置毎に予め設定された初期優先値の情報と、所定の基準値の情報とが登録された記憶領域を備え、上位装置のログイン時に当該上位装置に係る初期優先値が前記基準値以上である場合にのみ前記バッファ容量の一部を割り当てるようにすることが望ましい。予め上位装置毎に初期優先値を定めておき、基準値以下の場合にはバッファを割り当てないようにすれば、優先度の低い上位装置がバッファを占有して後からログインする上位装置にバッファを割り当てられないという事態を回避することができる。
【0015】
前記バッファ割り当て手段は各上位装置へのバッファ割当量を、当該上位装置の優先値/前記バッファを割り当てる総ての上位装置の優先値合計×前記情報記録装置のバッファ容量として算出することができる。これにより優先値の高い上位装置に多くのバッファを割り当てることができ、バッファの有効活用を達成することができる。
【0016】
この場合、前記情報記録装置がさらに、1の上位装置について算出されたバッファ割当量が所定値に満たない場合に、前記1の上位装置より優先値が低い他の上位装置へのバッファ割当量を所定条件に基づき開放して前記1の上位装置の割当量に充当するバッファ開放手段を備えることが有効である。この構成により、例えば新規上位装置のログイン時にバッファの空き容量が少ない場合、優先値を比較して既にログインしている上位装置に割り当てられているバッファを新規ログイン装置に割り当てることができる。
【0017】
さらに、本発明の情報記録装置は、前記バッファが割り当てられた各上位装置のログイン時からのデータ転送長および/またはコマンド重要度を蓄積する記憶領域と、これら上位装置のデータ転送長および/またはコマンド重要度と前記初期優先値とに基づいて各上位装置の優先値の再計算を行う優先値再計算手段とを備えるとともに、前記バッファ割り当て手段は、前記優先値再計算手段により再計算された優先値に基づいて前記バッファの再割り当てを行うことが望ましい。定期的あるいは任意のトリガをもって優先値の再計算を行い、再計算した優先値に基づいて各ホストのバッファ割当量を動的に変更することにより、その時々の状況に適したバッファ割当状態を実現することができる。
【0018】
この場合、前記優先値再計算手段は各上位装置の優先値を、(当該上位装置の総転送長/前記バッファを割り当てる総ての上位装置の総転送長合計)+(当該上位装置のコマンド重要度合計/前記バッファを割り当てる総ての上位装置のコマンド重要度合計)+当該上位装置の初期優先値として再計算することが有効である。データ転送長が多くコマンド重要度の高い上位装置の優先値を増加させて多くのバッファを割り当てることができる。
【0019】
上述したバッファの開放または再割り当ては、前記上位装置に再ログインを要求し、当該上位装置による再ログイン時のネゴシエーションで前記バッファの割り当ての拒否または割当量の変更を行うことにより達成することができる。
【0020】
【発明の実施の形態】
本発明の実施の形態を、添付の図面を参照しながら以下に詳細に説明する。図1は本発明にかかるネットワーク情報記録装置の一実施例であるディスクアレイ装置の構成の概要を示すブロック図である。ディスクアレイ装置2はIPネットワーク10に直接接続されたiSCSI機器であり、ネットワーク10上のホスト1からの要求によってディスク7に対するデータの読み出しや書き込みを行う。ディスクアレイ装置1は、ホスト1とのやりとりを処理するホストアダプタ3と、ディスク7を制御するディスクアダプタ6を備える。ホストアダプタ3はCPUとメモリを備え、ホスト1とディスクアレイ装置2間で行われるデータ転送やログイン受付などの処理を行う。ディスクアダプタ6はディスク7へのデータ書き込み/読み出しを行う。
【0021】
図2は、ホストアダプタ3におけるImmediate Dataバッファ割当機構の構成を示すブロック図である。ホストアダプタ3は、ホスト1とのログイン/ログアウトやデータ転送等の処理を行うホスト通信手段31と、ホスト1のログイン時にネゴシエーションを行ってImmediate Data転送などiSCSIで規定される各種パラメータを決定するログイン判断手段32と、Immediate Data転送においてライトコマンドと同時に送られる転送データをバッファするImmediate Dataバッファ33と、優先値等の各種テーブルが登録されるデータ格納領域34と、ホスト毎にImmediate Dataバッファ33を割り当てるバッファ割当手段35と、必要に応じてホストごとの優先値を再計算する優先値再計算手段36と、所定の場合に優先値の低いホストの割当バッファを開放して他のホストの割当バッファに充当するバッファ開放手段37とを備えている。
【0022】
図3は、データ格納領域34に登録されるテーブル例を示す図である。図3(a)に示す初期優先値テーブルには、ディスクアレイ装置2へのログインを許可されている総てのホストの識別情報(ホストID)と、各ホストの初期優先値が登録される。ホストIDには、例えばiSCSIで規定されるInitiatorNameパラメータやInitiatorAliasパラメータ、認証キー、TCP/IPのIPアドレス、MACアドレスなど、ネットワーク通信で利用される識別子を用いることができる。初期優先値はティスクアレイ装置2の管理者が予め任意に設定する値であり、優先的にImmediate Dataバッファを割り当てたいホストには高い値を、処理を優先する必要があまりないホストには低い値を設定する。
【0023】
図3(b)に示すログインホスト優先値管理テーブルには、ディスクアレイ装置2にログインしているホストのID、初期優先値、ログイン以降の総転送長、ログイン以降のコマンド重要度合計、現在の優先値、割当バッファ量などが登録される。このログインホスト優先値管理テーブルは、優先値再計算手段32による優先値の再計算や、バッファ割当量の変更時などに参照される。
【0024】
各ホストの総転送長およびコマンド重要度合計はホスト通信手段31により随時更新されるものとする。ここで、転送長はライトデータ転送完了時に転送し終えたデータ長を加算することにより求められる。コマンド重要度は、例えば、予めホストからのコマンドにかかるI/O毎に重み付けした値を設定しておき、I/Oを処理するごとにその値を加算して求めることができる。例えば、ユーザデータのライトコマンドには高い値を設定し、ディスクアレイ装置の状態監視や統計情報の操作などに用いられるコマンドには低い値を設定する。このように設定すると、頻繁にユーザデータを書き込むホストのコマンド重要度は高い値となり、装置2の稼働状況をチェックする管理端末のようなホストのコマンド重要度は低い値となる。なお、データ格納領域34には初期優先値テーブルやログインホスト優先値管理テーブルの他に上述のI/Oごとの加算値テーブルや後述するログイン基準値などが登録されているものとする。
【0025】
このように構成された実施例の動作について4図以降を参照しながら説明する。図4は、ホスト1のログイン時にImmediate Dataバッファを割り当てる工程を説明するフローチャートである。ホスト通信手段31がホスト1からのログイン要求を受信すると(ステップA1)、ログイン判断手段32がデータ格納領域34の初期優先値テーブルを参照し、ログイン要求に含まれるホストIDをもとに当該ホストの初期優先値を抽出する(ステップA2)。
【0026】
その後、iSCSIで規定されるImmediate DataパラメータやFirstBurstLengthパラメータについてホスト1とネゴシエーションが開始される(ステップA3)。このとき、ホスト1がImmediate Data転送の利用を要求するパラメータを送信している場合(ステップA4)、ログイン判断手段32はステップA2で抽出した初期優先値が所定の基準値以上であるか否かを判定する(ステップA5)。この基準値はディスクアレイ装置2の管理者により予め設定された値であり、管理者はホスト毎の初期優先値とともにImmediate Data転送を許可するボーダーとして基準値を定めておく。
【0027】
ログインホストの優先値が基準値以下である場合にログイン判断手段32はImmediate Data=NoすなわちImmediate Data転送を許可しない旨のログインレスポンスを返信する(ステップA10)。この場合Immediate Data転送は無効となり、以降にそのホストとは通常の(Immediate Data転送を用いない)方式でデータ転送が行われる。
【0028】
ステップA5の判断でログインホストの初期優先値が基準値以上である場合、優先値再計算手段36が現在Immediate Data転送を許可しているログイン済みホストの優先値の再計算を行う(ステップA6)。この優先値の再計算処理を図5のフローチャートを用いて説明する。
【0029】
図5に示すように、各ホストの優先値の再計算は、各ホストのライトコマンド割合とコマンド重要度割合を算出して、これらを初期優先値と合計することにより行われる。すなわち、まず「各ホストのライトコマンド割合=当該ホストの総転送長/バッファを割り当てる全ホストの総転送長合計」を計算して各ホストのライトコマンド割合を求める(ステップB1)。次に、「各ホストのコマンド重要度割合=当該ホストのコマンド重要度合計/バッファを割り当てる全ホストのコマンド重要度合計」を計算して各ホストのコマンド重要度割合を求める(ステップB2)。その後、「各ホストの優先値=当該ホストのライトコマンド割合+コマンド重要度割合+初期優先値」を計算して各ホストの優先値を算出する(ステップB3)。優先値再計算手段32は現在ログインしている総てのホストについて優先値の再計算を行い、記憶領域34のログインホスト優先値管理テーブルの値を更新する(ステップB4)。
【0030】
現在ログインしている各ホストの優先値の再計算が終了したら、バッファ割当手段35によりImmediate Dataバッファ33の割当処理が行われる(図4ステップA7)。この処理を図6のフローチャートを用いて説明する。
【0031】
バッファ割当手段35はログインホスト優先値管理テーブルを参照し、優先値に基づいて新規ログインホストの割当バッファ量を算出する(ステップC1)。割当バッファ量は、例えば「Immediate Dataバッファ割当量=当該ホストの優先値/バッファを割り当てる全ホストの優先値合計×バッファ容量(ただし、割当量≦予め定めた最大値)」で算出する。次に、算出した割当量が装置のバッファ割り当て可能な最低値以上であるか確認する(ステップC2)。割り当てるImmediate Dataバッファの容量があまりに少なければ処理性能の向上は達成できないからである。この最低値は予め装置の処理性能やバッファ容量等に基づいて管理者が設定しておくものとする。ここで算出された割当量が基準値以下であれば、そのホストへのバッファへのImmediate Dataバッファの割り当ては行わない(ステップC10へ)。
【0032】
バッファ割当手段35は、算出したバッファ割当量が最低値以上であればそのホストのImmediate Dataバッファ割当量の確保を試みる(ステップC3)。ここで、Immediate Dataバッファに十分な空きがあればバッファが確保され(ステップC4:YES)、Immediate Dataバッファの割当は成功となる(ステップC9へ)。
【0033】
一方、その時点でImmediate Dataバッファが数台のホストに割り当てられており、空きバッファ容量が少なく新規ログインホストのために算出した割当量を確保できない場合がある(ステップC4:NO)。この場合、ディスクアレイ装置2は、新規ログインホストより優先値の低いホストのImmediate Dataバッファを開放して新規ログインホストに充当するという処理に移行する。バッファ割当手段35は、現在ログインしているホストのうち新規ログインホストより優先値が低いホストを優先値の低い順から検索し、新規ログインホストのバッファ割当量が充足するまで割当バッファを振り替えるホストを抽出する(ステップC5)。この検索は、ログインホスト優先値管理テーブルを参照して優先値の低いホスト順に割当バッファ量を加算していくことにより行われる。
【0034】
この検索が成功した場合、すなわち優先値の低い1以上のホストのバッファ割当量を開放することにより新規ログインホストの割当量が確保できることが判明した場合(ステップC6:YES)、バッファ開放手段37が該当するホストに対し再ログイン要求動作を行う(ステップC7)。この再ログイン要求動作は、iSCSIで規定されるAsynchronous MessageやTCP/IPプロトコルのFIN、RSTによるコネクションの切断など、ホストからの再ログインが期待される動作を行うことにより実施する。再ログイン要求動作を受けたホストはディスクアレイ装置から一旦ログアウトして占有していたリソースを開放するため、開放されたImmediate Dataバッファを新規ログインホストに割り当てることができる(ステップC8)。このようにしてバッファが確保され、Immediate Dataバッファの割り当ては成功となる(ステップC9)。なお、ここで抽出され再ログイン要求を出したホストに対しては、再ログイン時のネゴシエーションでImmediate Data=Noを宣言し、Immediate Data転送を不許可とする。
【0035】
一方、ステップC6においてホストの検索が失敗した場合、すなわち新規ログインホストより優先値の低いホストの割当バッファを総て開放しても必要な割当量を確保できない場合、そのホストのバッファ確保は不可能としてImmediate Dataバッファの割り当ては行わない(ステップC10)。図4のフローチャートに説明を戻すと、Immediate Dataバッファの割り当てが成功した場合はホストにImmediate Data=Yes(図4ステップA9)、失敗した場合はImmediate Data=No(ステップA10)のログインレスポンスを送信する。以上のようにディスクアレイ装置を制御すれば、優先度の高いホストに優先的にImmediate Dataバッファを割り当てることができ、Immediate Dataバッファの有効活用ひいてはシステム全体の性能向上を達成することができる。
【0036】
なお、図4に示すフローチャートにおいてステップA6で優先値の再計算を行っているが、新規ログイン時の割り当て処理においてこの行程は必須ではなく、ステップA5からステップA7へ移るようにしてもよい。また、図5に示す優先値の再計算の方法は上述したものに限らず他の算出方法であってもよい。さらに、図6においてステップC5以降で他ホストからのImmediate Dataバッファの転用を行っているが、これも必須ではなく新規ログインホストへのImmediate Dataバッファの空き容量が足りない場合には割り当て失敗と判断するようにしてもよい。
【0037】
次に、図7を用いてディスクアレイ装置2におけるImmediate Dataバッファの動的再割当処理を説明する。本発明にかかるディスクアレイ装置2は、定期的あるいは任意のトリガを以てホストの優先値の再計算を行い、その値に基づきログインしている各ホストへImmediate Dataバッファの再割り当てを行う。この動的再割り当てを行うトリガとしては、管理者の操作・設定、新規ホストのログイン検出、ホストのログアウト検出などを用いることができる。また、Immediate Dataバッファの利用状況を監視し、あるホストの使用頻度が一定以上になったら再割り当てを行うようにしてもよい。
【0038】
図7に示すように、Immediate Dataバッファの再割り当てではまずログインホストの優先値の再計算を行う(ステップD1)。この再計算は優先値再計算手段36により図5ステップB1〜B3の行程と同様に行われる。再計算でいずれのホストの優先値にも変動がない場合、割当量を変更する必要はないとして処理を終了する(ステップD2:NO)。優先値の変動があった場合、Immediate Dataバッファ割当手段35がImmediate Dataバッファの再割当を行う(ステップD3)。これは、図6ステップC1〜4と同様に「Immediate Dataバッファ割当量=当該ホストの優先値/全ホストの優先値合計×バッファ容量(ただし、割当量≦予め定めた最大値)」を計算して各ホストのバッファ割当量を求め(ステップD3)、算出した割当量が最低値以上であるかを判別する(ステップD4)。
【0039】
バッファ割当手段35は、再計算した数値が最低値以上であれば図3(b)に示す優先値管理テーブルの割当バッファ量を更新するとともに、そのホストに対し再ログイン要求動作を行う(ステップD5)。これを受けたホストによる再ログイン時のネゴシエーションで、再計算したバッファ割当量をパラメータ(FirstBurstLengthキー値)として決定する。
【0040】
一方、バッファ割当手段35は、算出した割当量が最低値以下となってしまったホストに対して再ログイン要求動作を行い(ステップD6)、当該ホストの再ログイン時のネゴシエーションでImmediate Dataバッファの利用を不許可とする。このようにImmediate Dataバッファの再割り当てを行うことにより、その時々の状況に最も適したバッファ割り当て状態を実現することができる。
【0041】
なお、図4に示す新規ログインホストへのバッファ割当処理においてステップA6で各ホストの優先値を再計算しているが、ここで再計算された優先値に基づいて各ホストのバッファ割当量を変更するようにしてもよい。
【0042】
本発明の好適な実施例について説明したが、本発明は上記実施例に限られるものではなく、他の様々な実施例として構成することができる。例えば、本発明にかかるネットワーク情報記録装置はディスクアレイ装置に限らず他の装置であってもよい。また、上記実施例ではiSCSI方式のImmediate Data転送について記載しているが、本発明はライトコマンド発行後にコマンド受信側からのデータ転送要求を待たずにデータ転送が行われる転送方法を採用するプロトコルを用いる装置であれば幅広く適用することができる。また、実施例では再ログイン時にImmediate Data転送の許可/不許可やFirstBurstLengthキー値を変更するようにしたが、例えばMaxConnectionsなどログイン時のネゴシエーションでしか設定できない他のiSCSIパラメータを変更する構成としてもよい。
【0043】
【発明の効果】
以上に詳細に説明したように、本発明にかかるネットワーク情報記録装置は、ログインするホスト毎に優先値を管理し、当該優先値に基づいてバッファ割当量を決定する。これにより、優先的にコマンドを処理する必要があるホストへのバッファ割当量を多く、そうでないホストへのバッファ割当量を少なくすることができ、優先度の高いホストの性能を最大限生かしてシステム全体の処理性能を向上することができる。
【0044】
また、定期的あるいは任意のトリガをもって優先値の再計算を行うとともに、ホストに再ログイン要求を出してログインネゴシエーションを再実行することによりパラメータを変更可能に構成しているので、再計算した優先値に基づいてバッファ割当量を動的に変更することができ、その時々の状況に最適なバッファ割当状態を構築することができる。
【図面の簡単な説明】
【図1】 本発明の実施形態に係るディスクアレイ装置の構成を示す概略ブロック図である。
【図2】 図1に示すホストアダプタの構成を示すブロック図である。
【図3】 図2に示す記憶領域に登録されるテーブル例を示す図である。
【図4】 ディスクアレイ装置のログイン判断処理を説明するフローチャートである。
【図5】 ディスクアレイ装置の優先値再計算処理を説明するフローチャートである。
【図6】 ディスクアレイ装置のバッファ割当処理を説明するフローチャートである。
【図7】 Immediate Dataバッファ割当量の動的変更処理を説明するフローチャートである。
【符号の説明】
1 ホスト
2 ディスクアレイ装置
3 ホストアダプタ
31 ホスト通信手段
32 ログイン判断手段
33 Immediate Dataバッファ
34 データ格納領域
35 バッファ割当手段
37 バッファ開放手段
Claims (6)
- ネットワークに接続され複数の上位装置からログイン可能な情報記録装置において、前記上位装置からライトコマンドとともに送られるライトデータを一時的に記憶するバッファと、前記情報記録装置にログインする上位装置に前記バッファ容量の一部を前記上位装置毎に管理される優先値に基づいて割り当てるバッファ割り当て手段とを備え、
当該バッファ割り当て手段が、少なくとも上位装置毎に予め設定された初期優先値の情報と、上位装置からのコマンドについてコマンド種類毎に予め設定されたコマンド重要度の情報と、前記バッファが割り当てられた各上位装置毎にログイン時からのコマンド毎のコマンド重要度を累積した情報とを登録する記憶領域と、
上位装置毎のコマンド重要度と前記初期優先値とに基づいて各上位装置の優先値の再計算を行う優先値再計算手段とを備え、
前記バッファ割り当て手段は、前記優先値再計算手段により再計算された優先値に基づいて前記バッファの再割り当てを行うことを特徴とするネットワーク情報記録装置。 - 請求項1に記載の情報記録装置において、前記バッファ割り当て手段がさらに、所定の基準値の情報が登録された記憶領域を備え、上位装置のログイン時に当該上位装置に係る初期優先値が前記基準値以上である場合にのみ前記バッファ容量の一部を割り当てることを特徴とするネットワーク情報記録装置。
- 請求項1または2に記載の情報記録装置において、前記バッファ割り当て手段は各上位装置へのバッファ割当量を、当該上位装置の優先値/前記バッファを割り当てる総ての上位装置の優先値合計×前記情報記録装置のバッファ容量として算出することを特徴とするネットワーク情報記録装置。
- 請求項3に記載の情報記録装置において、前記情報記録装置が、1の上位装置について算出されたバッファ割当量が所定値に満たない場合に、前記1の上位装置より優先値が低い他の上位装置へのバッファ割当量を所定条件に基づき開放して前記1の上位装置の割当量に充当するバッファ開放手段を備えることを特徴とするネットワーク情報記録装置。
- 請求項1ないし4のいずれかに記載の情報記録装置において、上位装置毎にログイン時からの総転送長が登録される記憶領域を具えるとともに、前記優先値再計算手段は各上位装置の優先値を、(当該上位装置の総転送長/前記バッファを割り当てる総ての上位装置の総転送長合計)+(当該上位装置のコマンド重要度合計/前記バッファを割り当てる総ての上位装置のコマンド重要度合計)+当該上位装置の初期優先値として再計算することを特徴とする情報記録装置。
- 請求項4または5に記載の情報記録装置において、前記バッファの開放または再割り当ては、前記上位装置に再ログインを要求し、当該上位装置による再ログイン時のネゴシエーションで前記バッファの割り当ての拒否または割当量の変更を行うことにより達成することを特徴とする請求項4ないし6のいずれかに記載のネットワーク情報記録装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003162789A JP4175185B2 (ja) | 2003-06-06 | 2003-06-06 | ネットワーク情報記録装置 |
US10/861,460 US7337285B2 (en) | 2003-06-06 | 2004-06-07 | Buffer allocation based upon priority |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003162789A JP4175185B2 (ja) | 2003-06-06 | 2003-06-06 | ネットワーク情報記録装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004362459A JP2004362459A (ja) | 2004-12-24 |
JP4175185B2 true JP4175185B2 (ja) | 2008-11-05 |
Family
ID=33487554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003162789A Expired - Fee Related JP4175185B2 (ja) | 2003-06-06 | 2003-06-06 | ネットワーク情報記録装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7337285B2 (ja) |
JP (1) | JP4175185B2 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7698424B1 (en) * | 2004-09-28 | 2010-04-13 | Emc Corporation | Techniques for presenting multiple data storage arrays to iSCSI clients as a single aggregated network array |
JP4568168B2 (ja) * | 2005-05-17 | 2010-10-27 | 株式会社日立製作所 | 情報処理方法及びシステム |
JP2007233546A (ja) * | 2006-02-28 | 2007-09-13 | Seiko Epson Corp | 多機能複合システム、複合リソース管理方法及びプログラム |
JP4901310B2 (ja) * | 2006-05-31 | 2012-03-21 | 株式会社日立製作所 | 記憶制御装置及び記憶制御装置のコマンド実行数制御方法 |
JP5280617B2 (ja) * | 2006-09-01 | 2013-09-04 | アイシン・エィ・ダブリュ株式会社 | 地図更新システム及び地図更新方法 |
JP5034495B2 (ja) * | 2006-12-27 | 2012-09-26 | 日本電気株式会社 | ストレージシステムとプログラム並びに方法 |
US7818520B2 (en) * | 2007-02-23 | 2010-10-19 | Inventec Corporation | Method of specifying access sequence of a storage device |
US8799538B2 (en) * | 2008-04-17 | 2014-08-05 | 2236008 Ontario Inc. | System for managing a cost-constrained resource |
JP4654273B2 (ja) * | 2008-07-14 | 2011-03-16 | 富士通株式会社 | ストレージ装置および制御装置 |
JP5085463B2 (ja) * | 2008-08-12 | 2012-11-28 | 株式会社リコー | 情報転送回路、情報処理装置、情報転送回路の制御方法、制御プログラム及び記録媒体 |
US9262357B2 (en) * | 2008-09-29 | 2016-02-16 | International Business Machines Corporation | Associating process priority with I/O queuing |
US8438284B2 (en) * | 2009-11-30 | 2013-05-07 | Red Hat, Inc. | Network buffer allocations based on consumption patterns |
US8732701B2 (en) * | 2010-06-30 | 2014-05-20 | Lsi Corporation | Managing protected and unprotected data simultaneously |
US9021198B1 (en) * | 2011-01-20 | 2015-04-28 | Commvault Systems, Inc. | System and method for sharing SAN storage |
EP2702491A4 (en) * | 2011-04-26 | 2015-02-25 | Lsi Corp | VARIABLE OVERSIZING FOR NON-VOLATILE STORAGE |
KR101438716B1 (ko) | 2011-08-09 | 2014-09-11 | 엘에스아이 코포레이션 | I/o 디바이스 및 컴퓨팅 호스팅 상호동작 |
US9195410B2 (en) * | 2012-10-31 | 2015-11-24 | Hitachi, Ltd. | Storage system and access arbitration method |
US9395924B2 (en) | 2013-01-22 | 2016-07-19 | Seagate Technology Llc | Management of and region selection for writes to non-volatile memory |
US9715406B2 (en) * | 2013-06-14 | 2017-07-25 | Microsoft Technology Licensing, Llc | Assigning and scheduling threads for multiple prioritized queues |
JP6149595B2 (ja) * | 2013-08-13 | 2017-06-21 | 富士通株式会社 | キャッシュメモリ制御プログラム,キャッシュメモリを内蔵するプロセッサ及びキャッシュメモリ制御方法 |
JP6269045B2 (ja) * | 2013-12-26 | 2018-01-31 | 日本電気株式会社 | バッファを管理する情報処理装置、バッファ管理方法、及びそのためのプログラム |
WO2020236296A1 (en) | 2019-05-23 | 2020-11-26 | Cray Inc. | System and method for facilitating efficient packet injection into an output buffer in a network interface controller (nic) |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2839530B2 (ja) * | 1989-02-21 | 1998-12-16 | 富士通株式会社 | メモリ割当て優先度の動的変更処理方式 |
JPH0695936A (ja) * | 1992-09-16 | 1994-04-08 | Nippon Telegr & Teleph Corp <Ntt> | バッファ管理方法 |
US5535364A (en) * | 1993-04-12 | 1996-07-09 | Hewlett-Packard Company | Adaptive method for dynamic allocation of random access memory to procedures having differing priorities based on first and second threshold levels of free RAM |
JPH08249142A (ja) * | 1995-03-09 | 1996-09-27 | Ricoh Co Ltd | 印刷装置 |
US5909427A (en) * | 1995-07-19 | 1999-06-01 | Fujitsu Network Communications, Inc. | Redundant switch system and method of operation |
JPH10214247A (ja) * | 1996-11-28 | 1998-08-11 | Hitachi Ltd | 外部記憶装置インタフェース |
JP3175764B2 (ja) * | 1998-11-06 | 2001-06-11 | 日本電気株式会社 | メモリスケジューリング方法及びメモリスケジューリングプログラムを格納する記憶媒体 |
US6601151B1 (en) * | 1999-02-08 | 2003-07-29 | Sun Microsystems, Inc. | Apparatus and method for handling memory access requests in a data processing system |
US6260090B1 (en) * | 1999-03-03 | 2001-07-10 | International Business Machines Corporation | Circuit arrangement and method incorporating data buffer with priority-based data storage |
US6996820B1 (en) * | 1999-04-05 | 2006-02-07 | Cisco Technology, Inc. | Efficient multiple priority list memory system |
JP2000293386A (ja) * | 1999-04-12 | 2000-10-20 | Hitachi Ltd | メモリ管理方式 |
DE19951716A1 (de) * | 1999-10-27 | 2001-05-03 | Heidenhain Gmbh Dr Johannes | Verfahren zur dynamischen Speicherverwaltung |
JP4719957B2 (ja) | 2000-05-24 | 2011-07-06 | 株式会社日立製作所 | 記憶制御装置及び記憶システム並びに記憶システムのセキュリティ設定方法 |
US6889283B2 (en) * | 2001-02-23 | 2005-05-03 | Hewlett-Packard Development Company, L.P. | Method and system to promote arbitration priority in a buffer queue |
JP3997061B2 (ja) * | 2001-05-11 | 2007-10-24 | 株式会社日立製作所 | 記憶サブシステムおよび記憶サブシステムの制御方法 |
US20040107322A1 (en) * | 2002-11-29 | 2004-06-03 | Daniel Mulligan | System and method for dynamically allocating shared memory within a multiple function device |
-
2003
- 2003-06-06 JP JP2003162789A patent/JP4175185B2/ja not_active Expired - Fee Related
-
2004
- 2004-06-07 US US10/861,460 patent/US7337285B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004362459A (ja) | 2004-12-24 |
US7337285B2 (en) | 2008-02-26 |
US20040250026A1 (en) | 2004-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4175185B2 (ja) | ネットワーク情報記録装置 | |
US9021142B2 (en) | Reflecting bandwidth and priority in network attached storage I/O | |
US9813283B2 (en) | Efficient data transfer between servers and remote peripherals | |
WO2018059222A1 (zh) | 一种文件切片上传方法、装置及云存储系统 | |
JP2002288105A (ja) | ストレージエリアネットワークシステム、その運用方法、ストレージ、データ転送量監視装置 | |
US20170285963A1 (en) | Methods for sharing nvm ssd across a cluster group and devices thereof | |
US20100115223A1 (en) | Storage Area Allocation Method and a Management Server | |
JP4285058B2 (ja) | ネットワーク管理プログラム、管理計算機及び管理方法 | |
JP2003345631A (ja) | 計算機システム及び記憶領域の割当方法 | |
US7664917B2 (en) | Device and method for caching control, and computer product | |
JP2004199697A (ja) | 記憶アレイ帯域を動的に割り振る方法および装置 | |
WO2020143434A1 (zh) | 读写请求处理方法、装置、电子设备以及存储介质 | |
US10237233B2 (en) | Allocating identifiers with minimal fragmentation | |
KR20220084844A (ko) | 스토리지 장치 및 스토리지 장치의 동작 방법 | |
US9584446B2 (en) | Memory buffer management method and system having multiple receive ring buffers | |
JP4253224B2 (ja) | アドレス管理方法および装置 | |
US20060153118A1 (en) | System and method for wireless ip address capacity optimization | |
JP5729659B2 (ja) | メディアストリーミング方法およびメディアコントローラ | |
US7774449B2 (en) | Performance profiling for improved data throughput | |
WO2020036162A1 (ja) | 負荷分散システム及び負荷分散方法 | |
CN109167740B (zh) | 一种数据传输的方法和装置 | |
JP7255675B2 (ja) | 仮想マシン監視装置、仮想マシン監視方法およびプログラム | |
JP2006099542A (ja) | データアーカイブシステム、データ検索方法及び管理サーバ | |
JP2003296154A (ja) | ボリューム統合管理方法および統合管理システム | |
JP4409401B2 (ja) | パケット転送装置及びストレージシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061219 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071225 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080225 |
|
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: 20080729 |
|
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: 20080811 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110829 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110829 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120829 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130829 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |