JP2003085117A - 記憶制御装置およびその運用方法 - Google Patents
記憶制御装置およびその運用方法Info
- Publication number
- JP2003085117A JP2003085117A JP2001273932A JP2001273932A JP2003085117A JP 2003085117 A JP2003085117 A JP 2003085117A JP 2001273932 A JP2001273932 A JP 2001273932A JP 2001273932 A JP2001273932 A JP 2001273932A JP 2003085117 A JP2003085117 A JP 2003085117A
- Authority
- JP
- Japan
- Prior art keywords
- data
- frame
- control device
- command
- communication path
- 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
Links
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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- 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/0658—Controller construction 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/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/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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
Abstract
ができる記憶制御装置を提供する。 【解決手段】 全二重方式の通信路により上位処理装置
と接続し、通信路を通じて受信したデータをデータ記憶
手段に記憶管理する記憶制御装置において、上位処理装
置から送られてくるデータ(フレーム)に含まれるコマ
ンドに対応してデータ記憶手段に対するデータ入出力処
理を行う複数のチャネルプロセサを備え、前記データ
(フレーム)に含まれるコマンドの種類に応じてそのデ
ータ(フレーム)に関する前記データ入出力処理を実行
するチャネルプロセサを割り当てるようにする。
Description
信路により上位処理装置と接続し、前記通信路を通じて
受信したデータをデータ記憶手段に記憶管理する記憶制
御装置に関し、とくに、前記通信路を効率よく利用する
ための技術に関する。
ディスクアレイ装置などの記憶制御装置との間を結ぶ通
信プロトコルとして、ファイバチャネルプロトコル(以
下、「ファイバチャネル」と称する)が知られている
(詳細はANSI(American National Standard for In
formation Technology)のFC−PH(Fibre Channel P
hysical and Signaling Protocol)を参照)。
続が基本であり、一対のファイバチャネルポートは、物
理的には送受信2本(全二重方式)の通信路で相互に接
続されている。この通信路を通じて行われるファイバチ
ャネルにおける記憶制御装置と上位処理装置との間の通
信は、フレームと呼ばれるデータ単位を基本として行わ
れる。また、複数のフレームの束はシーケンスと呼び、
さらに、シーケンスの束はエクスチェンジと呼ぶ。例え
ば、上位処理装置から記憶制御装置に対してデータ読み
出し命令(Read命令)に対応する一連の処理はエクスチ
ェンジを単位として行われる。また、ファイバチャネル
における上位処理装置と記憶制御装置との間の通信で
は、インターロックを取らずにコマンドやフレームを送
受信することが可能である。
接続された記憶制御装置10と、これを利用する上位処
理装置20とを備えて構成されるデータ処理システムの
一例を示す。記憶制御装置10は、例えば、ディスクア
レイ装置などであり、キャッシュメモリ11、ディスク
ユニットなどのデータ記憶手段12、CPUやメモリな
どを主体として構成される。そして、記憶制御装置10
は、上位処理装置20との間のデータ通信や処理対象と
なるデータのチャネルプロセサ13への割り当ておよび
各種データやテーブルの管理や、チャネルプロセサ13
への各種命令のキューの管理などを行うチャネル制御部
14、チャネル制御部14から受信したフレームを切り
分けて各フレームに対応する処理やキャッシュメモリ1
1を通じたデータ記憶手段12へのデータ転送制御を実
行するチャネルプロセサ13などを備えている。一方、
上位処理装置20は、例えば、メインフレームやオフコ
ン、パーソナルコンピュータなどである。
間の通信において、記憶制御装置10は、受信したフレ
ームの順に各フレームを処理するチャネルプロセサ13
を割り当てる。また、この際にチャネルプロセサ13が
使用中の場合には、使用されていないチャネルプロセサ
13がそのフレームの処理用に割り当てられることにな
る。
置20から記憶制御装置10に送られてくるフレームに
含まれるコマンドは、主としてデータ記憶手段12への
データの書き込みを指示するWRITEコマンドと読み出し
を指示するREADコマンドに大別され、これらコマンドに
対応する処理に際しては、WRITEコマンドもしくはREAD
コマンドの一方の種類のコマンドのみを含んだフレーム
が連続して上位処理装置20から送られてきた場合や、
書き込みや読み出しの対象となるデータ量が大きいなど
の理由により、複数のチャネルプロセサ13の双方が同
時にWRITEコマンドもしくはREADコマンドのどちらか一
方の処理のみを行っている期間が生じることがあり、こ
の期間中は全二重通信が有効に機能しないことになる。
が2つのみで構成されている場合には、前述した全二重
方式の通信路のうち上位処理装置20から記憶制御装置
10方向の通信路51(以下、「受信路」と称する)の
みの通信負荷が高くなっているにもかかわらず、記憶制
御装置10から上位処理装置20方向の通信路52(以
下、「送信路」と称する)は殆ど利用されていないた
め、この期間中は全二重方式の通信路50が有効に機能
しないことになる。
もので、全二重方式の通信路を効率よく利用することが
できる記憶制御装置を提供することを目的とする。
の、本発明の主たる発明は、全二重方式の通信路により
上位処理装置と接続し、前記通信路を通じて受信したデ
ータをデータ記憶手段に記憶管理する記憶制御装置であ
って、前記通信路を通じて上位処理装置から送られてく
るデータ(フレーム)に含まれるコマンドに対応して前
記データ記憶手段に対するデータ入出力処理を行う複数
のチャネルプロセサを備え、前記データ(フレーム)に
含まれるコマンドの種類に応じてそのデータ(フレー
ム)に関する前記データ入出力処理を実行するチャネル
プロセサを割り当てる手段を備えることとする。
より接続された上位処理装置と記憶制御装置との通信の
場合であれば、前述のインターロックが不要であるとい
うファイバチャネルの特徴を利用して、フレームに含ま
れているコマンドが前記データ記憶手段に対する書き込
み命令であるのか、読み出し命令であるのかに応じてそ
のフレームが所属するエクスチェンジを処理するチャネ
ルプロセサをエクスチェンジごとに割り当てる。これに
より、全てのチャネルプロセサが同時に書き込みもしく
は読み出しの一方の処理のみを実行する期間が減り、こ
れにより全二重方式の通信路の送信路と受信路の負荷バ
ランスの均一化が図られ、通信路を効率よく利用するこ
とが可能になる。
ータ処理システムについて説明する。データ処理システ
ムの構成は図1と同様であるので詳細な説明は省略し、
以下では本発明の特徴的な部分を中心に説明する。ま
た、説明の便宜のため、この実施例で説明する記憶制御
装置10は、2つのチャネルプロセサ(以下、「CH
P」と称する)13のみを備えるものとし、これらチャ
ネルプロセサをCHP0、CHP1と称することとす
る。また、以下の説明では「WRITE」を「WR」と、「REA
D」を「RD」と、それぞれ略記する。
メモリ上には、上位処理装置20との間のデータ通信
や、データ記憶手段12に対するデータの読み書き処理
などの、上位処理装置20から送られてくるコマンドに
応じて行われる処理に利用される各種テーブルが記憶管
理されている。図2はこのうちのエクスチェンジ管理テ
ーブル200である。このテーブル200には、上位処
理装置20との間の通信において生成されたエクスチェ
ンジが管理されている。
には、該当のエクスチェンジが現在処理中であるかどう
かを示すビットがセットされ、処理中のエクスチェンジ
については「1」が、処理中でないエクスチェンジにつ
いては「0」がセットされる。デバイス番号203に
は、そのエクスチェンジの処理対象となるデータ記憶手
段の記憶媒体(例えば、ディスクユニット)の識別番号
がセットされる。CHP番号205には当該エクスチェ
ンジの処理を行うCHPの番号がセットされる。また、
通信領域ポインタ204には受信路51を通じて受信し
たフレームが格納されているメモリ上の物理アドレス
が、OX−ID(Originator Exchange_ID)207には
上位処理装置20側で割り当てられたエクスチェンジ番
号がセットされ、S−ID(Source_ID)208には送
信元のファイバチャネルのポートアドレスが、D−ID
(Destination_ID)209には該当エクスチェンジの送
信先となるファイバチャネルのポートアドレスが、それ
ぞれセットされる。
グ以外の項目には、エクスチェンジが処理中である場
合、すなわち、テーブル有効フラグが「1」の場合に値
がセットされる。また、OX−ID207、S−ID2
08、D−ID209の値は、各エクスチェンジに一意
に対応づけられ、例えば、上位処理装置20から連続し
てフレームが送られてきた場合に各フレームがどのエク
スチェンジに所属しているか、フレームが先頭フレーム
であるか(エクスチェンジ管理テーブルにフレームが登
録されていない場合)といったことは、各フレームにセ
ットされているOX−ID207、S−ID208、D
−ID209に一致するエクスチェンジをエクスチェン
ジ管理テーブル200から調べることで把握できる。
に記憶管理されているCHP割当処理管理テーブル30
0である。このテーブルのCHP割当処理実行フラグ3
01は、CHPの割当処理の実行制御に用いられる。こ
のフラグの用途については後述する。
よび受信RDコマンドデータ量カウンタ303には、チャ
ネル制御部14が上位処理装置20からコマンドを受信
した場合に、WRコマンドもしくは、RDコマンドにより処
理されたデータ量が加算される。また、送信RDコマンド
データ量カウンタ304には、上位処理装置20から記
憶制御装置10に送信されたRDコマンドに応答して記憶
制御装置10から上位処理装置20に送信されるデータ
量がセットされ、CHP13から処理完了通知があり、
あるエクスチェンジがエクスチェンジ管理テーブル20
0において無効化された際に値が加算される。
CHP1データ量カウンタ306には、各CHP0,1
が処理したデータのデータ量が加算される。RD/WRデー
タ比率閾値等の各種閾値307〜311は、後述するC
HPの割り当て処理の実行制御のために利用されるもの
である。モニタリング実行間隔タイマ312、モニタリ
ング実行間隔I/O数313は、記憶制御装置10が実
行する各種ポーリング処理に際して参照されるパラメー
タである。また、モニタリング開始時刻314とモニタ
リング終了時刻315は、記憶制御装置10により処理
されたデータのスループットを算出する場合に用いられ
る。I/O数カウンタ315は、I/O数でモニタリング
するのに必要な情報であり、これには上位処理装置20
から送られてきたI/O要求数が加算される。ワークエ
リア316は、各種計算やデータの一時的な保存などに
利用される。
記憶管理されているRD/WRコマンドキュー管理テーブル
401,410である。このテーブル401,410に
は、記憶制御装置20の処理対象となるRDコマンドもし
くはWRコマンドのキューイング状態が、FIFO(Firs
t In First Out)方式で管理され、キューイング数を示
すカウンタ402、先頭キューの格納アドレスを示すI
Nポインタ403、末尾キューの格納アドレスを示すO
UTポインタ404、キュー全体のデータサイズを管理
するデータ転送量405、コマンドごとに対応するキュ
ー管理情報406などが管理される。キュー管理情報4
06には、記憶制御装置20が割り当てたエクスチェン
ジ番号407とデータ転送量408、このエクスチェン
ジを実行するCHPの番号409などが記述されてい
る。
に、記憶制御装置10と上位処理装置20との間の全二
重方式の通信において記憶制御装置10が行う、CHP
の割当処理について詳述する。
じて上位処理装置20からフレームを受信した場合、記
憶制御装置10は、まず、そのフレームが新たなエクス
チェンジの起動先頭フレームであるかどうかを調べる
(501,502)。ここでフレームが起動先頭フレー
ムであった場合には、未使用のエクスチェンジ番号を利
用してそのフレームに対応するフィールドをエクスチェ
ンジ管理テーブルに新たに登録する(503)。なお、
フレームが起動先頭フレームでない場合の処理について
は後述する。
のフレーム制御フィールド(F_ControlField)を参照
し、当該フレームの後続フレームの存在有無を調べる
(507)。その結果、当該フレームが後続フレームを
有する場合には、さらにこのフレームがRD/WRいずれか
のコマンドを含むフレームであるかどうかを調べる(5
08)。なお、この調査は、例えば、記憶制御装置10
内にあらかじめ登録しておいたコマンド一覧と、フレー
ムのコマンド記述欄の内容を比較することで行う。
も含んでいない場合(もしくは、コマンドを含んでいる
かどうかを判断できない場合)には、記憶制御装置10
は、当該フレームを通常のCHP割当方式、すなわち、
受信したフレームの順に各フレームを処理するチャネル
プロセサ13を割り当て、また、あるフレームの割り当
てに際してチャネルプロセサ13が使用中である場合に
は、使用されていないチャネルプロセサ13にそのフレ
ームの処理させるというCHP割当方式により当該フレ
ームの処理を行う(510)。
マンドを含むフレームである場合には、つぎのように処
理が行われる。まず、フレームにWRコマンドが含まれて
いた場合、記憶制御装置10は、WRデータキュー管理テ
ーブル401に当該フレームのエクスチェンジ番号とそ
のWRコマンドにより処理されるデータ量を登録する(5
11)。一方、当該フレームにRDコマンドが含まれてい
た場合には、記憶制御装置はRDデータキュー管理テーブ
ルに当該フレームのエクスチェンジ番号と、そのREADコ
マンドにより処理されるデータ量を登録する(51
2)。なお、これら各キュー管理テーブルへの登録が行
った場合には、各テーブルのカウンタ402およびOU
Tポインタ404に1を加算する。
ブルのCHP割当処理実行フラグ301の状態を調査す
る。ここでCHP割当処理実行フラグ301に「1」が
セットされていた場合には、CHPの割当処理を行うか
どうかの判断する処理に進み(513,514)、当該
フレームにWRコマンドが含まれていた場合は、エクスチ
ェンジ管理テーブル200の当該フレームが所属するエ
クスチェンジのCHP番号205の欄に、そのエクスチ
ェンジにCHP0を割り当てたことを示す「0」をセッ
トし(515)、また、CHP割当処理管理テーブル3
00のCHP0データ量カウンタ305に当該フレーム
のデータ量を加算し(516)、当該フレームの処理を
行うため当該フレームについての処理に必要なデータを
CHP1に転送する(519)。なお、フレームにRDコ
マンドが含まれていた場合も、以上のWRコマンドの場合
と同じようにして処理が行われる(512,514,5
17,518)。
て、CHP割当処理実行フラグ301に「0」がセット
されていた場合には、記憶制御装置10はコマンドの種
類(WRコマンドであるかRDコマンドであるか)に応じた
CHPの割当処理を行わず、その代わりにCHP割当処
理管理テーブル300のCHP0データ量カウンタ30
5もしくはCHP1データ量カウンタ306の比率に基
づいてCHPの割り当てを行う(521)。すなわち、
この場合、記憶制御装置10は、CHP0データ量カウ
ンタ305およびCHP1データ量カウンタ306の値
を比較して、値の小さい方、すなわち、その時点で処理
負荷の小さいCHPを当該フレームの処理用に割り当
て、当該フレームの処理に必要なデータをそのCHPに
転送する。
ームが起動先頭コマンドでなかった場合には、まず、フ
レーム情報(OX−ID,S−ID、LPN番号、デバ
イス番号)をキーとした場合に該当するエクスチェンジ
をエクスチェンジ管理テーブル200から検索する。そ
して、検索したエクスチェンジのCHP番号205に既
に値がセットされていれば、当該フレームの処理に必要
なデータをその値に対応するCHPに送信する(51
6)。
ていなかった場合、すなわち、そのフレームが所属する
エクスチェンジに既にCHPが割り当てられていない場
合には、(507)からの処理に進む。以上のようにし
て記憶制御装置10は受信したフレームをつぎつぎに処
理していくことになる。
べく、上位処理装置20から記憶制御装置10に対し、
DX/LOC/WRCKDからなる1CCW(Channel Command Wor
d)チェーン(例えば、「IBM 3990/9390 Storage Cont
rol Reference」を参照)のフレームが送られてきた場
合の処理について、再度、図5のフローチャートに従っ
て説明する。
フレームを受信すると、まず、このフレームが起動先頭
コマンドフレームかどうかを判定する(508)。ここ
でDXコマンドはCCWチェーンの起動先頭コマンドであ
り、新たなエクスチェンジの起動先頭フレームであるの
で、記憶制御装置10はこのフレームに対応するエクス
チェンジを、エクスチェンジ管理テーブル200に新規
に登録する。
のフレーム制御フィールド(F_ControlField)を参照
し、当該フレームの後続フレームの存在有無を調べる
(507)。その結果、後続フレームを有する場合に
は、さらにこのフレームがRD/WRいずれかのコマンドを
含むフレームであるかどうかを調べる(508)。ここ
でDXコマンドは、READ/WRITEいずれのコマンドでも無
いため、記憶制御装置10は、当該フレームを通常のC
HP割当方式により割り当てたCHPにより処理するこ
とになる(510)。
に引き続きCCWチェーンを構成するLOCコマンドを含むフ
レームを受信すると、このフレームが起動先頭コマンド
であるかどうかを調べる(502)。ここでLOCコマン
ドが記載されたフレームは起動先頭コマンドで無いた
め、記憶制御装置10はこのフレームのフレーム情報
(OX−ID,S−ID、LPN番号、デバイス番号)
を用いてこのフレームに対応するエクスチェンジをエク
スチェンジ管理テーブル200より検索する。そして、
この場合には、前述のDXコマンドが記載されたフレーム
により前記フレーム情報に対応するエクスチェンジが既
にエクスチェンジ管理テーブル200に登録されている
ため、検索の結果、このエクスチェンジが検索されるこ
とになる。
エクスチェンジについて、当該エクスチェンジの処理用
に既にCHPが割り当てられているかどうかを当該エク
スチェンジのCHP番号205を参照して調べる(50
6)。ここでこのエクスチェンジには、まだCHPの割
り当てがされていないので、(507)の処理において
当該フレームの後続チェーンが存在するかどうかを調べ
る。ここでこのフレームには後続チェーン(WRCKDコマ
ンドのフレーム)が存在するため、(508)の処理が
実行される。そして、LOCコマンドは、そのオペレーシ
ョンコードからWRITEコマンドであることを判定できる
コマンドであるため、(510)の処理へと移行して、
当該LOCコマンドをWRデータキュー管理テーブル410
に登録し、また、エクスチェンジ管理テーブル200の
当該フレームに対応するエクスチェンジのCHP番号2
05に「0」をセットする(511,513)。また、
CHP0データ量カウンタ305に当該LOCコマンドの
処理されるデータ量、例えば、当該コマンドによりディ
スクユニットに書き込まれるデータのデータ量を加算す
る。
ンドが記載されたフレームが送られてきた場合には、記
憶制御装置10はこのフレームは起動先頭フレームでな
いため(502)、前述したLOCコマンドの場合と同様
に当該フレームが所属するエクスチェンジ番号を検索す
る(505)。そして、この場合には、CHP番号20
5に既に値がセットされており、当該フレームが所属す
るエクスチェンジに既にCHPが割り当てられているた
め(506)、記憶制御装置10は当該コマンドの処理
に必要なデータをそのCHP番号に対応するCHPに送
信する。
はフレームに含まれるコマンドがRDコマンドであるかWR
コマンドであるかに応じてそのフレームが所属するエク
スチェンジの処理を行うCHPを割り当てる。従って、
CHP0,1の双方が同時にWRもしくはRDの一方の処理
を行う期間が減って、全二重方式の通信路の受信路51
と送信路52の負荷のバランスが不均一になる期間を減
らすことができる。
を適用した場合でも、例えば、上位処理装置20からWR
コマンドもしくはRDコマンドのいずれか一方のみを含む
フレームが連続して送信されて長期間一方のCHPがそ
の処理に占有されていたり、一のコマンドの処理対象と
なるデータのデータ量が大きい場合に前記の割当処理を
実行してしまうと、かえって一方の通信路に負荷が片寄
る結果となり、通信路の負荷のバランスが崩れてしまう
可能性がある。そこで負荷分散をより徹底して行うよう
にするため、本発明の記憶制御装置10はさらに以下に
示すような各種の機能を備えている。
を行うかどうかを、上位処理装置20から送られてくる
RDコマンドとWRコマンドのそれぞれにより処理されるデ
ータ量の比率に応じて制御するようにしたものである。
具体的には、図6に示すように、ポーリング処理などに
より適宜なタイミングである一定期間におけるCHP割
当処理管理テーブル300の受信WRコマンドデータ量カ
ウンタ302と、受信RDコマンドデータ量カウンタ30
3の増分からRDコマンドとWRコマンドのそれぞれにより
処理されたデータ量の比率を算出(602)し、この比
率がCHP割当処理管理テーブル300のRD/WRデータ
量比率閾値を超えた場合にはCHP割当処理管理テーブ
ル300のCHP割当処理実行フラグ301に「0」を
セットし(605)、RD/WRデータ量比率閾値以下の場合
にはCHP割当処理実行フラグ301に「1」をセット
する(604)。なお、図6の例では、ポーリング機能
などにより以上の処理を実行するたびに、受信WRデータ
カウンタと、受信RDデータカウンタの内容を初期化して
いる(607)。
応じてCHP割当処理実行フラグを制御するようにした
ものである。具体的には、ポーリング処理などにより一
定期間ごともしくは処理データが一定数に達する度ごと
などの適宜なタイミングで、RD/WRデータキュー管理テ
ーブルから各CHP0,1にキューイングされているコ
マンドの数およびこれらコマンドの処理対象となるデー
タの全データ量を算出する。キューイングされているコ
マンド数はRD/WRキュー管理テーブルのカウンタの値に
より把握される。また、全データ量は、データ転送量に
より把握される。RDコマンドおよびWRコマンドそれぞれ
のキューイング数の比率、RDコマンドおよびWRコマンド
それぞれのデータ転送量の比率を、それぞれCHP割当
処理管理テーブル300のCHPキューデータ数比率閾
値309、CHPキューデータ量比率閾値310と比較
し、閾値を超えているかどうかに応じてCHP割当処理
実行フラグ301を制御する。図7は以上の処理の一例
を示すフローチャートである。
ル300のCHP0,1データ量カウンタ305,30
6の比率に応じてCHP割当処理実行フラグ301を制
御するようにしたものである。具体的には、一定時間毎
にCHP0,1データ量カウンタ305,306の比率
と、CHP割当処理管理テーブル300のCHPデータ
比率閾値307とを比較し、閾値を超えているかどうか
に応じてCHP割当処理実行フラグ301を制御する。
図8にこの場合の処理の一例を示す。
それぞれについて、記憶制御装置10が単位時間当たり
に処理したデータ量(スループット)の比に応じてCH
P割当処理実行フラグ301を制御するようにしたもの
である。ここでWRコマンドとRDコマンドそれぞれについ
てのスループットは、CHP割当処理管理テーブル30
0における受信WRコマンドデータ量カウンタ302およ
び送信RDコマンドデータ量カウンタ304の変化率によ
り算出する(901)。すなわち、図9に示すように、
ある時刻におけるこれらカウンタ値とこれから単位時間
経過後のこれらカウンタ値の差から単位時間当たりの処
理データ量であるスループットを算出し(901〜90
3,907,908)、このようにして求めたスループ
ットの比がCHP割当処理管理テーブル300のRD/
WRスループット比率閾値311を超えているかどうか
に応じてCHP割当処理実行フラグ304を制御する
(904)。
ば、上位処理装置20からWRコマンドもしくはRDコマン
ドのいずれか一方のみが記載されたフレームが連続して
送られてきたり、一のコマンドの処理対象となるデータ
のデータ量が大きい場合における一方の通信路に負荷の
片寄りを防ぐことが可能となり、フレームに含まれるコ
マンドの種類(RDコマンドもしくはWRコマンド)に応じ
てそのフレームを処理するCHPを割り当てることで、
全二重通信における受信路と送信路の負荷分散を図る前
述した仕組みをより一層効果的に機能させることが可能
となる。なお、以上に説明した第1〜第4の機能は、全
てを一度に適用しなければならない訳ではなく、このう
ちの1の機能のみを適用したり、いくつかの機能を選択
して適用するようにしてもよい。
おいて、ポーリング処理の間隔を指定する数値、例え
ば、時間や処理データ数などの数値を、上位処理装置2
0や、記憶制御装置10に接続された運用管理端末など
の外部装置から指定できるようにしてもよい。
ルがファイバチャネルプロトコルである場合について説
明したが、上位処理装置20と2以上のチャネルプロセ
サを備えた記憶制御装置10が全二重方式で結ばれる構
成を備えるデータ処理システムであれば、通信プロトコ
ルの種類に限定されることなく適用することができる。
のチャネル制御部14に対し2つのCHP13を備えて
いる場合について説明したが、一つのチャネル制御部1
4に対して3つ以上のCHP13を備えている場合にも
適用できることはもちろんである。
御装置によれば、全二重方式の通信路を効率よく利用す
ることができる。
概略構成を示す図である。
ーブルを示す図である。
ーブルを示す図である。
管理テーブルを示す図である。
するフローチャートである。
うかどうかを、RDコマンドとWRコマンドのそれぞれによ
り処理されるデータ量の比率に応じて制御する処理を説
明するフローチャートである。
うかどうかを、各CHPのキューの状態に応じてCHP
割当処理実行フラグを制御する処理を説明するフローチ
ャートである。
うかどうかを、CHP0,1データ量カウンタの比率に
応じて制御する処理を説明するフローチャートである。
うかどうかを、WRコマンドとRDコマンドのそれぞれにつ
いて、記憶制御装置が単位時間当たりに処理したデータ
量(スループット)の比に応じて制御する処理を説明す
るフローチャートである。
Claims (14)
- 【請求項1】 全二重方式の通信路により上位処理装置
と接続し、前記通信路を通じて受信したデータをデータ
記憶手段に記憶管理する記憶制御装置であって、 前記通信路を通じて上位処理装置から送られてくるデー
タ(フレーム)に含まれるコマンドに対応して前記デー
タ記憶手段に対するデータ入出力処理を行う複数のチャ
ネルプロセサを備え、前記データ(フレーム)に含まれ
るコマンドの種類に応じてそのデータ(フレーム)に関
する前記データ入出力処理を実行するチャネルプロセサ
を割り当てる手段を備えることを特徴とする記憶制御装
置。 - 【請求項2】 請求項1に記載の記憶制御装置であっ
て、前記データ(フレーム)に含まれるコマンドの種類
に応じてそのデータ(フレーム)に関するデータ入出力
処理を実行する前記チャネルプロセサを割り当てる前記
手段が、前記データ(フレーム)に含まれる前記コマン
ドが前記データ記憶手段にデータの書き込みコマンドで
あるかデータの読み出しコマンドであるかに応じて前記
データ(フレーム)についての処理を行うチャネルプロ
セサを割り当てる手段であることを特徴とする記憶制御
装置。 - 【請求項3】 請求項1に記載の記憶制御装置であっ
て、前記通信路の送信路と受信路を流れるデータ量に応
じて前記データ(フレーム)についての処理を行うチャ
ネルプロセサを割り当てる手段を備えることを特徴とす
る記憶制御装置。 - 【請求項4】 請求項1に記載の記憶制御装置であっ
て、前記データ(フレーム)に含まれるコマンドの種類
に応じてそのデータフレームに関するデータ入出力処理
を実行する前記チャネルプロセサを割り当てる前記手段
を実行するかどうかを、前記データ記憶手段に対するデ
ータの書き込みコマンドとデータの読み出しコマンドに
より単位時間内に処理されたデータ量に応じて制御する
手段を備えることを特徴とする記憶制御装置。 - 【請求項5】 請求項1に記載の記憶制御装置であっ
て、前記データ(フレーム)に含まれるコマンドの種類
に応じてそのデータ(フレーム)に関するデータ入出力
処理を実行する前記チャネルプロセサを割り当てる前記
手段を実行するかどうかを、前記各チャネルプロセサの
処理待ちキューにキューイングされているデータ書き込
みコマンドの数とデータ読み出しコマンドの数に応じて
制御する手段を備えることを特徴とする記憶制御装置。 - 【請求項6】 請求項1に記載の記憶制御装置であっ
て、前記データ(フレーム)に含まれるコマンドの種類
に応じてそのデータ(フレーム)に関するデータ入出力
処理を実行する前記チャネルプロセサを割り当てる前記
手段を実行するかどうかを、前記各チャネルプロセサが
前記データ入出力処理において単位時間内に処理したデ
ータ量に応じて制御する手段を備えることを特徴とする
記憶制御装置。 - 【請求項7】 請求項1に記載の記憶制御装置であっ
て、前記データ(フレーム)に含まれるコマンドの種類
に応じてそのデータ(フレーム)に関するデータ入出力
処理を実行する前記チャネルプロセサを割り当てる前記
手段を実行するかどうかを、当該記憶制御装置におけ
る、前記データ記憶手段に対するデータ書き込みコマン
ドの処理についてのスループットと、前記データ記憶手
段に対するデータ読み出しコマンドの処理についてのス
ループットに応じて制御する手段を備えることを特徴と
する記憶制御装置。 - 【請求項8】 請求項4または6に記載の記憶制御装置
であって、前記単位時間を当該記憶制御装置に接続され
た外部装置から指定させる手段を備えることを特徴とす
る請求項4または6に記載の記憶制御装置。 - 【請求項9】 全二重方式の通信路により上位処理装置
に接続され、前記通信路を通じて受信したデータをデー
タ記憶手段に記憶管理し、前記通信路を通じて上位処理
装置から送られてくるデータ(フレーム)に含まれるコ
マンドに対応して前記データ記憶手段に対するデータ入
出力処理を行う複数のチャネルプロセサを備えて構成さ
れる記憶制御装置の運用方法であって、 前記データ(フレーム)に含まれる前記コマンドが前記
データ記憶手段にデータの書き込みコマンドであるかデ
ータの読み出しコマンドであるかに応じて前記データ
(フレーム)についての処理を行うチャネルプロセサを
割り当てるようにしたことを特徴とする記憶制御装置の
運用方法。 - 【請求項10】 全二重方式の通信路により上位処理装
置に接続され、前記通信路を通じて受信したデータをデ
ータ記憶手段に記憶管理し、前記通信路を通じて上位処
理装置から送られてくるデータ(フレーム)に含まれる
コマンドに対応して前記データ記憶手段に対するデータ
入出力処理を行う複数のチャネルプロセサを備えて構成
される記憶制御装置の運用方法であって、 前記通信路の送信路と受信路を流れるデータ量に応じて
前記データ(フレーム)についての処理を行うチャネル
プロセサを割り当てるようにしたことを特徴とする記憶
制御装置の運用方法。 - 【請求項11】 全二重方式の通信路により上位処理装
置に接続され、前記通信路を通じて受信したデータをデ
ータ記憶手段に記憶管理し、前記通信路を通じて上位処
理装置から送られてくるデータ(フレーム)に含まれる
コマンドに対応して前記データ記憶手段に対するデータ
入出力処理を行う複数のチャネルプロセサを備えて構成
される記憶制御装置の運用方法であって、 前記データ(フレーム)に含まれるコマンドの種類と、
前記データ記憶手段に対するデータの書き込みコマンド
とデータの読み出しコマンドにより単位時間内に処理さ
れたデータ量とに応じてそのデータ(フレーム)に関す
る前記データ入出力処理を実行するチャネルプロセサを
割り当てるようにしたことを特徴とする記憶制御装置の
運用方法。 - 【請求項12】 全二重方式の通信路により上位処理装
置に接続され、前記通信路を通じて受信したデータをデ
ータ記憶手段に記憶管理し、前記通信路を通じて上位処
理装置から送られてくるデータ(フレーム)に含まれる
コマンドに対応して前記データ記憶手段に対するデータ
入出力処理を行う複数のチャネルプロセサを備えて構成
される記憶制御装置の運用方法であって、 前記データ(フレーム)に含まれるコマンドの種類と、
前記各チャネルプロセサの処理待ちキューにキューイン
グされているデータ書き込みコマンドの数とデータ読み
出しコマンドの数とに応じてそのデータ(フレーム)に
関する前記データ入出力処理を実行するチャネルプロセ
サを割り当てるようにしたことを特徴とする記憶制御装
置の運用方法。 - 【請求項13】 全二重方式の通信路により上位処理装
置に接続され、前記通信路を通じて受信したデータをデ
ータ記憶手段に記憶管理し、前記通信路を通じて上位処
理装置から送られてくるデータ(フレーム)に含まれる
コマンドに対応して前記データ記憶手段に対するデータ
入出力処理を行う複数のチャネルプロセサを備えて構成
される記憶制御装置の運用方法であって、 前記データ(フレーム)に含まれるコマンドの種類と、
前記各チャネルプロセサが前記データ入出力処理におい
て単位時間内に処理したデータ量とに応じてそのデータ
(フレーム)に関する前記データ入出力処理を実行する
チャネルプロセサを割り当てるようにしたことを特徴と
する記憶制御装置の運用方法。 - 【請求項14】 全二重方式の通信路により上位処理装
置に接続され、前記通信路を通じて受信したデータをデ
ータ記憶手段に記憶管理し、前記通信路を通じて上位処
理装置から送られてくるデータ(フレーム)に含まれる
コマンドに対応して前記データ記憶手段に対するデータ
入出力処理を行う複数のチャネルプロセサを備えて構成
される記憶制御装置の運用方法であって、 前記データ(フレーム)に含まれるコマンドの種類と、
当該記憶制御装置における、前記データ記憶手段に対す
るデータ書き込みコマンドの処理についてのスループッ
トと、前記データ記憶手段に対するデータ読み出しコマ
ンドの処理についてのスループットとに応じてそのデー
タ(フレーム)に関する前記データ入出力処理を実行す
るチャネルプロセサを割り当てるようにしたことを特徴
とする記憶制御装置の運用方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001273932A JP3992952B2 (ja) | 2001-09-10 | 2001-09-10 | 記憶制御装置およびその運用方法 |
US10/241,206 US6922737B2 (en) | 2001-09-10 | 2002-09-10 | Storage control device and method for management of storage control device |
US11/067,245 US7373436B2 (en) | 2001-09-10 | 2005-02-24 | Storage control device and method for management of storage control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001273932A JP3992952B2 (ja) | 2001-09-10 | 2001-09-10 | 記憶制御装置およびその運用方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2003085117A true JP2003085117A (ja) | 2003-03-20 |
JP2003085117A5 JP2003085117A5 (ja) | 2005-05-26 |
JP3992952B2 JP3992952B2 (ja) | 2007-10-17 |
Family
ID=19099073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001273932A Expired - Fee Related JP3992952B2 (ja) | 2001-09-10 | 2001-09-10 | 記憶制御装置およびその運用方法 |
Country Status (2)
Country | Link |
---|---|
US (2) | US6922737B2 (ja) |
JP (1) | JP3992952B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014192144A1 (ja) * | 2013-05-31 | 2014-12-04 | 株式会社日立製作所 | 制御装置および制御方法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060080467A1 (en) * | 2004-08-26 | 2006-04-13 | Sensory Networks, Inc. | Apparatus and method for high performance data content processing |
US7877703B1 (en) * | 2005-03-14 | 2011-01-25 | Seven Networks, Inc. | Intelligent rendering of information in a limited display environment |
US7444478B2 (en) * | 2005-11-18 | 2008-10-28 | International Business Machines Corporation | Priority scheme for transmitting blocks of data |
US8677014B2 (en) * | 2006-11-27 | 2014-03-18 | Cisco Technology, Inc. | Fine granularity exchange level load balancing in a multiprocessor storage area network |
JP5593184B2 (ja) | 2010-09-30 | 2014-09-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | マルチパスを使用するシステム及び方法 |
US20130019053A1 (en) * | 2011-07-14 | 2013-01-17 | Vinay Ashok Somanache | Flash controller hardware architecture for flash devices |
KR101519743B1 (ko) * | 2013-11-29 | 2015-05-12 | 엘에스산전 주식회사 | 직렬 통신용 양방향 패킷 전송 장애 극복 스위치 |
KR102370733B1 (ko) * | 2015-04-13 | 2022-03-08 | 에스케이하이닉스 주식회사 | 출력 커맨드들을 전송하는 컨트롤러 및 그것의 동작 방법 |
US10740155B1 (en) * | 2018-09-28 | 2020-08-11 | Cavium, Llc | Methods and systems for load balancing in network devices |
JP2022021026A (ja) * | 2020-07-21 | 2022-02-02 | キオクシア株式会社 | メモリシステムおよびコマンドをフェッチする方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4313162A (en) * | 1979-12-14 | 1982-01-26 | Burroughs Corporation | I/O Subsystem using data link processors |
EP0524945A1 (en) | 1991-02-19 | 1993-02-03 | International Business Machines Corporation | Data storage subsystem |
US5414851A (en) * | 1992-06-15 | 1995-05-09 | International Business Machines Corporation | Method and means for sharing I/O resources by a plurality of operating systems |
US5390215A (en) * | 1992-10-13 | 1995-02-14 | Hughes Aircraft Company | Multi-processor demodulator for digital cellular base station employing partitioned demodulation procedure with pipelined execution |
US5611056A (en) * | 1994-08-31 | 1997-03-11 | Unisys Corporation | Method for controlling the expansion of connections to a SCSI bus |
JPH0927794A (ja) * | 1995-07-11 | 1997-01-28 | Sony Corp | データ多重化伝送装置 |
US5754484A (en) * | 1996-05-13 | 1998-05-19 | Motorola Inc. | Apparatus and method for utilization of limited write memory |
JP3603524B2 (ja) * | 1997-02-05 | 2004-12-22 | 株式会社日立製作所 | ネットワーキング方法 |
US6038613A (en) * | 1997-11-14 | 2000-03-14 | International Business Machines Corporation | Prefetching and storing device work information from multiple data storage devices |
JP2000049754A (ja) * | 1998-07-29 | 2000-02-18 | Matsushita Electric Ind Co Ltd | 無線装置 |
JP2000090237A (ja) * | 1998-09-10 | 2000-03-31 | Fuji Xerox Co Ltd | 描画処理装置 |
JP2000172624A (ja) * | 1998-12-07 | 2000-06-23 | Hitachi Ltd | 入出力処理システム |
JP3853098B2 (ja) * | 1999-01-18 | 2006-12-06 | シャープ株式会社 | データ駆動型情報処理システム |
US6463070B1 (en) * | 1999-08-27 | 2002-10-08 | Tachyon, Inc. | System and method for clock correlated data flow in a multi-processor communication system |
-
2001
- 2001-09-10 JP JP2001273932A patent/JP3992952B2/ja not_active Expired - Fee Related
-
2002
- 2002-09-10 US US10/241,206 patent/US6922737B2/en not_active Expired - Fee Related
-
2005
- 2005-02-24 US US11/067,245 patent/US7373436B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014192144A1 (ja) * | 2013-05-31 | 2014-12-04 | 株式会社日立製作所 | 制御装置および制御方法 |
JP5969122B2 (ja) * | 2013-05-31 | 2016-08-17 | 株式会社日立製作所 | ホストバスアダプタおよびシステム |
US9740404B2 (en) | 2013-05-31 | 2017-08-22 | Hitachi, Ltd. | Control apparatus and control method |
GB2529071B (en) * | 2013-05-31 | 2020-09-16 | Hitachi Ltd | Control Apparatus and Control Method |
Also Published As
Publication number | Publication date |
---|---|
US6922737B2 (en) | 2005-07-26 |
US20030051081A1 (en) | 2003-03-13 |
JP3992952B2 (ja) | 2007-10-17 |
US7373436B2 (en) | 2008-05-13 |
US20050149638A1 (en) | 2005-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7373436B2 (en) | Storage control device and method for management of storage control device | |
JP4402997B2 (ja) | ストレージ装置 | |
US7496699B2 (en) | DMA descriptor queue read and cache write pointer arrangement | |
US7739418B2 (en) | Resource management system | |
US7752349B2 (en) | Apparatus and method for performing DMA data transfer | |
JP2000010901A (ja) | ディスクアレイ制御装置 | |
JP2002222110A (ja) | ストレージシステム及び仮想プライベートボリューム制御方法 | |
JP2009087175A (ja) | ストレージ装置、処理制御装置、及び記憶システム | |
JP6262360B2 (ja) | 計算機システム | |
JP2003131908A (ja) | 記憶制御装置 | |
JPH10143461A (ja) | 周辺装置システム | |
JP5969122B2 (ja) | ホストバスアダプタおよびシステム | |
US7350050B2 (en) | Disk controller with logically partitioning function | |
US7089378B2 (en) | Shared receive queues | |
US20030014599A1 (en) | Method for providing a configurable primary mirror | |
JP2003085117A5 (ja) | ||
US6810469B2 (en) | Storage system and method for data transfer between storage systems | |
JPH08212178A (ja) | 並列計算機 | |
US20050141516A1 (en) | Method and apparatus for using dual free link lists to manage packet memory | |
JPH08278953A (ja) | 計算機システムにおける排他制御方式 | |
JPH0661074B2 (ja) | アクセス制御装置、バスの遊休時間を最小化する方法、dma制御装置、及びdmaデータ転送方法 | |
JP3206580B2 (ja) | Dmaデータ転送制御方法及び入出力処理装置 | |
JP2002169699A (ja) | 複数の仮想計算機を用いた通信システム | |
KR20220132333A (ko) | PCIe 인터페이스 장치 및 그 동작 방법 | |
JP2004272349A (ja) | データ処理システムおよびデータ処理システムの制御方法ならびに外部記憶装置および外部記憶装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040722 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040722 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20040722 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040928 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060831 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060926 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061124 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20061127 |
|
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: 20070724 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070725 |
|
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: 20100803 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110803 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120803 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |