説明

通信制御装置、情報処理装置及びパス選択方法

【課題】パスを効率的に使用すること。
【解決手段】IOP14は、パス状態判定部54とパス選択部55とを有する。パス状態判定部54は、自装置と通信先装置とを接続する複数のパスのうちデータの送信処理中ではなく、かつ、データ送信を終了した後にデータ送信を所定時間禁止する禁止期間内でもないパスが存在するか否かを判定する。パス選択部55は、パス状態判定部54によって、データの送信処理中ではなく、かつ、禁止期間内でもないパスが存在しないと判定された場合、データの送信処理を終了したが禁止期間を経過していないパスをデータ送信用に選択する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信制御装置、情報処理装置及びパス選択方法に関する。
【背景技術】
【0002】
従来、サーバは、IO装置との間で入出力処理を実行する場合、IO(Input Output)装置に対してコマンドを発行する。図16を用いて、IO装置との間で入出力処理を実行するサーバについて説明する。
【0003】
図16は、IO装置との間で入出力処理を実行するサーバの構成を示す図である。図16に示すように、サーバ910は、I/F(Inter/Face)911〜914、CPU(Central processing Unit)915を有し、I/F911〜914及びCPU915は、それぞれ内部バスで接続されている。また、IO装置920は、I/F921〜924、I/O部925を有し、I/F921〜924及びI/O部925はそれぞれ内部バスで接続されている。
【0004】
また、サーバ910が有するI/F911は、IO装置920が有するI/F921と光ケーブル等のパス901によって接続される。同様に、I/F912とI/F922との間はパス902によって接続され、I/F913とI/F923との間はパス903によって接続され、I/F914とI/F924との間はパス904によって接続される。
【0005】
このようなサーバ910が、例えばパス901を介してIO装置920と通信する場合、CPU915は、パス901と接続されるI/F911に対してコマンドを発行する。そして、I/F911は、CPU915により発行されたコマンドをI/F911の規格に適合する信号に変換しパス901へ送信する。IO装置920は、サーバ910から受信した信号をI/F921でコマンドに変換しI/O部925へ出力する。なお、IO装置920からサーバ910に対して通信を行う場合には、サーバ910とIO装置920との関係が入れ替わり同様の処理を実行することになる。
【0006】
また、CPU915は、I/F911〜914のうちのいずれのI/Fに対してコマンドを発行するかを選択する。例えば、CPU915は、I/Fを選択する際、最初に選択したI/Fに接続されるパスを基準パスとし、基準パスをはじめとして各I/Fに接続されるパスが使用可能であるか否かを順次判定する。
【0007】
図17を用いて、基準パスを設定した場合のパスの選択方法について説明する。図17は、基準パスを設定した場合のパスの選択方法を示す図である。ここでは、パス901を基準パスとしCPU915がコマンドC1、コマンドC2、コマンドC3、コマンドC4、コマンドC5を順に発行する場合を説明する。
【0008】
図17に示すように、CPU915は、コマンドC1を発行する際に、まず基準パス901を選択し、使用可能であるか否かを判定する。CPU915は、パス901が使用可能であると判定すると、パス901が接続されるI/F911に対してコマンドC1を発行する。この結果、パス901の状態は、コマンド実行中であることを示すExecuteに変更される。CPU915は、パス901の状態がExecuteである間、このパス901が接続されるI/F911に対して別のコマンドを発行しない。
【0009】
次に、CPU915は、コマンドC2を発行する際に、まず基準パス901を選択し、使用可能であるか否かを判定する。CPU915は、基準パス901の状態がExecuteであるので、使用可能でないと判定する。そして、CPU915は、次にパス902を選択し、使用可能であるか否かを判定する。CPU915は、パス902が使用可能であると判定すると、パス902が接続されるI/F912に対してコマンドC2を発行する。この結果、パス902の状態は、Executeに変更される。なお、CPU915がコマンドC3〜C5を発行する場合も同様である。
【0010】
また、使用するパスをラウンドロビン方式で選択し、コマンドを発行する技術も知られている。図18を用いて、ラウンドロビン方式によるパスの選択方法について説明する。図18は、ラウンドロビン方式によるパスの選択方法を示す図である。ここでは、CPU915がコマンドC1、コマンドC2、コマンドC3、コマンドC4、コマンドC5を順に発行し、使用するパスをパス901、パス902、パス903、パス904の順に選択する場合を説明する。
【0011】
図18に示すように、CPU915は、コマンドC1をパス901が接続されるI/F911に発行し、コマンドC2が接続されるI/F912をパス902に発行する。また、CPU915は、コマンドC3をパス903が接続されるI/F913に発行し、コマンドC4をパス904が接続されるI/F914に発行する。そして、CPU915は、パス901を介したコマンドC1の送信を終了した場合に、コマンドC5をパス901が接続されるI/F911に発行する。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2007−25839号公報
【特許文献2】特開平7−225737号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかしながら、上述した従来の技術では、パスを効率的に使用することができないという課題がある。
【0014】
具体的には、基準パスを設定した場合、基準パスばかりを使用することが起こりうる。例えば、基準パス901がコマンドC1の送信終了後に、新たなコマンドC2を発行する場合、CPU915は、基準パス901が接続されるI/F911にコマンドC2を発行する。同様に、コマンドC2の送信終了後に、新たなコマンドC3を発行する場合、CPU915は、基準パス901が接続されるI/F911にコマンドC3を発行する。この結果、基準パス901が接続されるI/F911及びI/F921の負荷が上がってしまい、発熱量が増大してしまう。I/F911及びI/F921が有する電子部品は熱に弱いため、発熱量が増大すると電子部品の磨耗につながる。
【0015】
また、使用するパスをラウンドロビン方式で選択する場合、順番にパス901〜904をすべて使用することになる。コマンドの発行間隔が長い場合、コマンドの発行数に対するパス数が過剰になる。また、この場合、すべてのパス901〜904に電力を供給することになり、消費電力も多くなる。
【0016】
1つの側面では、パスを効率的に使用することができる通信制御装置、情報処理装置及びパス選択方法を提供することを目的とする。
【課題を解決するための手段】
【0017】
第1の案では、通信制御装置は、自装置と通信先装置とを接続する複数のパスのうちデータの送信処理中ではなく、かつ、データ送信を終了した後にデータ送信を所定時間禁止する禁止期間内でもないパスが存在するか否かを判定する。そして、通信制御装置は、データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在しないと判定した場合、データの送信処理を終了したが禁止期間を経過していないパスをデータ送信用に選択する。
【発明の効果】
【0018】
パスを効率的に使用することができる。
【図面の簡単な説明】
【0019】
【図1】図1は、実施例1に係る情報処理システムの構成を示すブロック図である。
【図2】図2は、情報処理システムにおけるコマンド実行処理を示す図である。
【図3】図3は、低負荷時のパス選択処理を示す図である。
【図4】図4は、中負荷時のパス選択処理を示す図である。
【図5】図5は、高負荷時のパス選択処理を示す図である。
【図6】図6は、CHEの構成を示すブロック図である。
【図7】図7は、禁止期間の設定を示す図である。
【図8】図8は、IOPの構成を示す機能ブロック図である。
【図9】図9は、タイムスタンプ管理テーブルとして記憶される情報の一例を示す図である。
【図10】図10は、基準パス管理テーブルとして記憶される情報の一例を示す図である。
【図11】図11は、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在する場合のパス選択処理の動作を示す図である。
【図12】図12は、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在しない場合のパス選択処理の動作を示す図である。
【図13】図13は、IOPによる基準パス変更処理の動作を示す図である。
【図14】図14は、実施例1に係るIOPによるコマンド発行処理の処理手順を示すフローチャートである。
【図15】図15は、実施例1に係るIOPによるパス選択処理の処理手順を示すフローチャートである。
【図16】図16は、IO装置との間で入出力処理を実行するサーバの構成を示す図である。
【図17】図17は、基準パスを設定した場合のパスの選択方法を示す図である。
【図18】図18は、ラウンドロビン方式によるパスの選択方法を示す図である。
【発明を実施するための形態】
【0020】
以下に、本願の開示する通信制御装置、情報処理装置及びパス選択方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例1】
【0021】
[システム構成]
図1は、実施例1に係る情報処理システムの構成を示すブロック図である。図1に示すように、情報処理システム1は、サーバ10と、IO(Input Output)装置20とを有する。サーバ10とIO装置20とは、パス2〜5によって互いに通信可能に接続される。
【0022】
サーバ10は、例えばメインフレーム型のサーバであり、MS(Main Storage)11、CHE(Channel Element)12a〜12d、CPU(Central processing Unit)13、IOP(I/O Processor)14を有する。MS11は、演算処理に用いる各種情報を記憶する。
【0023】
CHE12a〜12dは、IO装置20と行う通信のインターフェース部である。CHE12aは、パス2を介してIO装置20と接続され、CHE12bは、パス3を介してIO装置20と接続され、CHE12cは、パス4を介してIO装置20と接続され、CHE12dは、パス5を介してIO装置20と接続される。なお、サーバ10と、IO装置20とを接続するパス、サーバ10及びIO装置20が各々備えるCHEの数は、4つに限らず、複数であればいずれであってもよい。
【0024】
IOP14は、CPU13からのデータ入出力要求に応じて、CHE12a〜12dに対してデータ入出力を要求するコマンドを発行する。CHE12a〜12dは、IOP14から受付けたコマンドを実行する。具体的には、CHE12a〜12dは、IOP14から受付けたコマンドをデータ入出力を要求する信号へ変換し、変換した信号をIO装置20へ送信する。そして、CHE12a〜12dは、IOP14から受付けたコマンドの実行が完了した場合、コマンドの実行が完了したことを示す応答(以下、CMD Endと記す)をIOP14に通知する。
【0025】
また、CHE12a〜12dは、コマンドの実行が完了後に、所定の時間パスの使用を禁止することを示す禁止期間を設定する。そして、CHE12a〜12dは、禁止期間の終了後に、パスの使用を許可し、受付けたコマンドを実行する。
【0026】
CPU13は、各種演算処理を実行する。また、CPU13は、IO装置20に対してデータ入出力を要求する信号を送信する場合、IOP14に、対応するコマンドを発行するように通知する。この結果、IOP14は、CHEを選択することにより、データ入出力を要求する信号をIO装置20へ送信するパスを選択する。
【0027】
IOP14は、MS11と、CHE12a〜12dと、CPU13と接続され、例えばCPU13によるMS11へのデータの入出力を制御する。また、IOP14は、IO装置20から受付けたデータをMS11に入力することを制御する。なお、IOP14は、サーバ10において、CPU13の処理負荷を軽減させるために設けられたプロセッサである。
【0028】
IOP14は、CPU13からIO装置20へのデータ入出力の要求を受付けた場合、対応するコマンドを発行するCHEを選択する。例えば、IOP14は、コマンドの実行中でもなく禁止期間内にもないCHEが存在するか否かを判定する。ここで、IOP14は、データの送信処理中でもなく禁止期間内にもないCHEが存在すると判定した場合、当該CHEに対してコマンドを発行する。
【0029】
また、IOP14は、コマンドの実行中でもなく禁止期間内にもないCHEが存在せず、かつ、禁止期間内にあるCHEが存在する場合には、禁止期間内にあるCHEに対して新たなコマンドを発行する。また、IOP14は、すべてのCHEがコマンド実行中であると判定した場合、所定の時間が経過後に再びコマンドの実行中でもなく禁止期間内にもないCHEが存在するか否かを判定する。
【0030】
IO装置20は、IO部21、CHE22a〜22d、IO制御部23を有する。
【0031】
IO部21は、例えば、HDD(Hard Disk Drive)などの記憶装置であり、データやプログラム等を記憶する。なお、ここでは、IO部21をHDDなどの記憶装置として説明するが、HDDなどの記憶装置に限定されず、例えば、各種センサ、プリンタ、ディスプレイ等の各種のデータの入出力装置であってもよい。
【0032】
CHE22a〜22dは、サーバ10とのインターフェースである。CHE22aは、パス2を介してサーバ10と接続され、CHE22bは、パス3を介してサーバ10と接続され、CHE22cは、パス4を介してサーバ10と接続され、CHE22dは、パス5を介してサーバ10と接続される。
【0033】
IO制御部23は、CHE22a〜22dを介して受付けたデータをIO部21に入出力することを制御する。
【0034】
[情報処理システムにおけるコマンド実行処理]
次に、図2を用いて、情報処理システム1におけるコマンド実行処理について説明する。図2は、情報処理システム1におけるコマンド実行処理を示す図である。なお、ここでは、CHE12a〜12dを代表してCHE12aについて説明する。
【0035】
CHE12aは、IOP14からコマンドを受付けた場合(ステップS1)、パス2の状態をIDLEからExecuteに変更してコマンドを実行する(ステップS2)。ここで、パスの状態がIDLEであることは、コマンド実行中ではなく、かつ、禁止期間内でもない状態であり、コマンドの実行が可能であることを示す。また、パスの状態がExecuteであることは、コマンド実行中であることを示す。パス2の状態がExecuteである間、IOP14は、このパス2に対して別のコマンド発行を行わない。
【0036】
CHE12aは、コマンドの実行が完了した場合、CMD EndをIOP14に通知する(ステップS3)。続いて、CHE12aは、パス2の状態をExecuteからLockに変更する(ステップS4)。ここで、パスの状態がLockであることは、コマンド実行中ではないが、禁止期間であることを示す。すなわち、CMD Endを通知されたIOP14は、処理を再開できるが、同一のCHEに対してコマンドを発行する場合、禁止期間を経過するまで待つことになる。
【0037】
そして、CHE12aは、禁止期間が経過後に、パスの状態をLockからIDLEに変更する(ステップS5)。
【0038】
[パス選択処理]
次に図3〜図5を用いてパス選択処理について説明する。図3は、低負荷時のパス選択処理を示す図であり、図4は、中負荷時のパス選択処理を示す図であり、図5は、高負荷時のパス選択処理を示す図である。
【0039】
なお、低負荷時とは、例えば、一つ前に発行されたコマンドがCHEで実行され禁止期間が終了した後に次のコマンドが発行される場合をいう。また、中負荷時とは、例えば、一つ前に発行されたコマンドがCHEで実行され禁止期間が終了する以前に次のコマンドが発行されるが、全てのパスが同時にIDLEでない状態とはならない場合をいう。また、高負荷時とは、例えば、一つ前に発行されたコマンドがCHEで実行され禁止期間が終了する以前に次のコマンドが発行され、かつ、全てのパスが同時にIDLEでない状態が発生することがある場合をいう。なお、IDLEとは、当該のパスが使用可能である状態をいう。
【0040】
(低負荷時のパス選択)
図3に示すように、IOP14は、コマンドC1の発行指示をCPU13から受付けた場合、パス2〜パス5の全ての状態がIDLEであるので、パス2が接続されるCHE12aに対してコマンドを発行する。
【0041】
また、IOP14は、コマンドC2の発行指示をCPU13から受付けた場合、パス2〜パス5の全ての状態がIDLEであるので、パス2と接続するCHE12aにコマンドを発行する。同様に、IOP14は、コマンドC3の発行をCPU13から受付けた場合、パス2〜パス5の全ての状態がIDLEであるので、パス2が接続されるCHE12aに対してコマンドを発行する。
【0042】
(中負荷時のパス選択)
図4に示すように、IOP14は、コマンドC1の発行指示をCPU13から受付けた場合、パス2〜パス5の全ての状態がIDLEであるので、パス2が接続されるCHE12aに対してコマンドを発行する。
【0043】
そして、IOP14は、コマンドC2の発行指示をCPU13から受付けた場合、パス2の状態がExecuteであり、パス3〜パス5の状態がIDLEであるので、パス3が接続されるCHE12bに対してコマンドを発行する。
【0044】
また、IOP14は、コマンドC3の発行指示をCPU13から受付けた場合、パス2の状態がLockであり、パス3の状態がExecuteであり、パス4とパス5の状態がIDLEであるので、パス4が接続されるCHE12cに対してコマンドを発行する。
【0045】
続いて、IOP14は、コマンドC4の発行指示をCPU13から受付けた場合、パス2とパス5の状態がIDLEであり、パス3の状態がLockであり、パス4の状態がExecuteであるので、パス2が接続されるCHE12aに対してコマンドを発行する。
【0046】
また、IOP14は、コマンドC5の発行指示をCPU13から受付けた場合、パス2の状態がExecuteであり、パス3とパス5の状態がIDLEであり、パス4の状態がLockであるので、パス3が接続されるCHE12bに対してコマンドを発行する。
【0047】
そして、IOP14は、コマンドC6の発行指示をCPU13から受付けた場合、パス2の状態がLockであり、パス3の状態がExecuteであり、パス4とパス5の状態がIDLEであるので、パス4が接続されるCHE12cに対してコマンドを発行する。
【0048】
(高負荷時のパス選択)
図5に示すように、IOP14は、コマンドC1の発行指示をCPU13から受付けた場合、パス2〜パス5の全ての状態がIDLEであるので、パス2が接続されるCHE12aに対してコマンドを発行する。
【0049】
そして、IOP14は、コマンドC2の発行指示をCPU13から受付けた場合、パス2の状態がExecuteであり、パス3〜パス5の状態がIDLEであるので、パス3が接続されるCHE12bに対してコマンドを発行する。
【0050】
また、IOP14は、コマンドC3の発行指示をCPU13から受付けた場合、パス2とパス3の状態がExecuteであり、パス4とパス5の状態がIDLEであるので、パス4が接続されるCHE12cに対してコマンドを発行する。
【0051】
続いて、IOP14は、コマンドC4の発行指示をCPU13から受付けた場合、パス2の状態がLockであり、パス3とパス4の状態がExecuteであり、パス5の状態がIDLEであるので、パス5が接続されるCHE12dに対してコマンドを発行する。
【0052】
また、IOP14は、コマンドC5の発行指示をCPU13から受付けた場合、パス2の状態がLockであり、パス3〜パス5の状態がExecuteであり、いずれのパスの状態もIDLEでないと判定する。この場合、IOP14は、パスの状態がLockであるパス2が接続されるCHE12aに対してコマンドを発行する。
【0053】
上述してきたように、情報処理システム1では、パスの利用の偏りを抑える事で基板上の素子の負荷の偏りを抑えることで、素子の発熱分布の偏りを緩和する事ができる。
【0054】
[CHEの構成]
次に、図6を用いてCHEの構成を説明する。図6は、CHEの構成を示すブロック図である。図6に示すように、CHE12aは、通信部31とIC(Integrated Circuit)部32とSD(Serial Desirial)部33とOM(optical module)部34とを有する。通信部31とIC部32との間、IC部32とSD部33との間は、複数のバスを介して接続される。また、SD部33とOM部34との間は、単一のバスを介して接続される。
【0055】
通信部31は、IOP14からパラレルに入力されたコマンドをIC32に出力する。IC部32は、通信部31からパラレルに入力されたコマンドを解釈してSD部33に出力する。SD部33は、IC部32からパラレルに入力されたコマンドをシリアル化し、OM部34に出力する。OM部34は、シリアル化されたコマンドを光信号へ変換してパス2へ送出する。
【0056】
また、OM部34は、パス2を介してシリアルに受信した光信号を電気信号へ変換してSD部33へ出力する。また、SD部33は、OM部34からシリアルに入力された信号をパラレル化してIC部32へ出力する。また、通信部31は、IC部32からパラレルに入力された信号をCPU13へ出力する。
【0057】
このCHE12aにおいて、IC部32は、禁止期間を設定する。この禁止期間は、データ送信によりSD部33やOM部34に生じる熱を放熱するまでに要する期間に応じて設定される。すなわち、禁止期間は、SD部33やOM部34の放熱性に基づいて適切に設定される。図7を用いて、禁止期間の設定について説明する。図7は、禁止期間の設定を示す図である。
【0058】
図7に示すように、CHE12aが、受付けたコマンドを実行すると、SD部33やOM部34の温度はT0からT1まで上昇する。OM部34の温度は、コマンドの実行中、温度T1が継続し、コマンドの実行が終了すると、T0まで再び低下する。
【0059】
禁止期間は、この温度T1から温度T2まで冷却するまでに要する時間に設定される。なお、この禁止期間は、SD部33やOM部34の放熱性に応じて設定され、温度T2の値は、SD部33やOM部34の放熱性に応じて、温度T0及び温度T1の値に基づいて任意に設定可能である。
【0060】
[IOPの構成]
次に、図8を用いてIOP14の構成を説明する。図8は、IOP14の構成を示す機能ブロック図である。図8に示すように、IOP14は、タイムスタンプ管理テーブル51と基準パス管理テーブル52とコマンド処理部53とパス状態判定部54とパス選択部55と応答受信部56と基準パス変更部57と電源制御部58とを有する。
【0061】
タイムスタンプ管理テーブル51は、コマンド実行処理に関する時刻を示す情報を記憶する。図9を用いてタイムスタンプ管理テーブル51として記憶される情報の一例を説明する。図9は、タイムスタンプ管理テーブル51として記憶される情報の一例を示す図である。
【0062】
図9に示すように、タイムスタンプ管理テーブル51は、「パスID」と「CMD発行」と「CME_End時刻」と「Lock_End予定時刻」とを対応付けて記憶する。
【0063】
ここで、「パスID」は、パスの識別子を示す。例えば、「パスID」には、パス2を識別する「xxx2」、パス3を識別する「xxx3」、パス4を識別する「xxx4」、パス5を識別する「xxx5」が格納される。
【0064】
「CMD発行」は、コマンドの発行時刻を示す。例えば、「CMD発行」には、コマンドを発行した時刻を示す「00:05:003」やコマンドを発行していないことを示す「―」などが格納される。なお、以下では、装置の電源を投入してからの経過時間によって時刻を表現する。
【0065】
「CMD_End時刻」は、CHE12a〜12dからCMD_Endを通知された時刻を示す。例えば、「CMD_End時刻」には、CMD_Endを通知された時刻を示す「00:05:175」やCMD_Endを通知されていないことを示す「―」などが格納される。
【0066】
「Lock_End予定時刻」は、禁止期間が終了する予定時刻を示す。ここで、禁止期間は装置によって決定される値なので装置が動作中この値は変化しない。このため、例えばパス状態判定部54は、装置の電源投入時に各CHEから禁止期間の値を取得しておく。そして、パス状態判定部54は、CMD Endを受け取ったらタイムスタンプを取得し、Lock_Endの予定時刻を算出する。例えば、「Lock_End予定時刻」には、Lock_Endの予定時刻を示す「00:05:475」やLock_Endの予定時刻を未算出であることを示す「―」などが格納される。
【0067】
図9に示すタイムスタンプ管理テーブル51は、パス2では、5.003秒にコマンドの実行を開始し、5.175秒にコマンドの実行を終了したことを示す。また、タイムスタンプ管理テーブル51は、パス2が禁止期間中であり、5.475秒に禁止期間を終了することを示す。また、図9に示すタイムスタンプ管理テーブル51は、パス3では、5.137秒に開始したコマンドを実行中であることを示す。また、図9に示すタイムスタンプ管理テーブル51は、パス4及びパス5がパスの状態がコマンドの実行中ではなく、かつ、禁止期間中でもないことを示す。
【0068】
なお、ここで記憶される「CMD発行」は、後述するパス選択部55によって格納される。また、ここで記憶される「CME_End時刻」は、後述する応答受信部56によって格納される。また、ここで記憶される「Lock_End予定時刻」は、後述するパス状態判定部54によって格納される。
【0069】
基準パス管理テーブル52は、複数のパス12a〜12dのうちいずれのパスが基準パスであるかを示す情報を記憶する。図10を用いて基準パス管理テーブル52として記憶される情報の一例を説明する。図10は、基準パス管理テーブル52として記憶される情報の一例を示す図である。
【0070】
図10に示すように、基準パス管理テーブル52は、「パスID」と「基準パスフラグ」と「電源フラグ」とを対応付けて記憶する。ここで、「パスID」は、タイムスタンプ管理テーブル51として記憶される「パスID」と同様である。
【0071】
「基準パスフラグ」は、パスが基準パスであるか否かを示す。例えば、「基準パスフラグ」には、基準パスであることを示す「1」、基準パスでないことを示す「0」が格納される。
【0072】
「電源フラグ」は、パスの電源がオンであるか否かを示す。例えば、「電源フラグ」には、パスの電源がオンであることを示す「ON」、パスの電源がオフであることを示す「OFF」が格納される。
【0073】
図10に示す基準パス管理テーブル52は、パス2が基準パスであり、パス2の電源がオンであることを示す。また、図10に示す基準パス管理テーブル52は、パス3の電源及びパス4の電源がオンであることを示す。また、図10に示す基準パス管理テーブル52は、パス5の電源がオフであることを示す。なお、ここでは、サーバ10の電源投入時に、情報処理システム1が有するパスのうち、1つのパスの電源がオフに設定されるものとして説明するが、これに限定されるものではない。また、例えば、負荷に応じてオフに設定した電源をオンに設定するようにしてもよい。
【0074】
コマンド処理部53は、CPU13からコマンドの発行指示を受付ける。そして、コマンド処理部53は、コマンドの発行指示を受付けたことをパス状態判定部54に通知する。この結果、パス状態判定部54は、パスの状態を判定する。また、コマンド処理部53は、後述するようにパス選択部55により選択されたパスが接続されるCHEに対して発行指示を受けたコマンドを発行する。
【0075】
パス状態判定部54は、コマンド処理部53を介してCPU13からコマンド発行を受付けた場合、タイムスタンプ管理テーブル51として記憶される情報に基づいてパスの状態を基準パスから所定の順に判定する。ここで、基準パスとは、複数のパスのなかでパスの状態を1番目に判定するパスである。この基準パスは予め設定される。また、基準パスはサーバ10の動作中に変更可能であるものとして説明するが、これに限定されるものではなく、サーバ10の動作中に変更不可としてもよい。
【0076】
パス状態判定部54は、基準パス管理テーブル52から基準パスフラグに「1」が格納される「パスID」の値を読み出して、基準パスを特定する。そして、パス状態判定部54は、特定したパスIDに対応する「CMD発行」「CMD_End」「Lock_End」の各値をタイムスタンプ管理テーブル51から読み出す。続いて、パス状態判定部54は、読み出した各値に基づいて、パスの状態を判定する。
【0077】
例えば、パス状態判定部54は、「CMD発行」の値が「−」である場合、パスの状態をコマンドの実行中ではなく、かつ、禁止期間内でもないと判定する。すなわちこの場合、パス状態判定部54は、パスの状態がIDLEであると判定する。
【0078】
一方、パス状態判定部54は、「CMD発行」の値が「−」ではない場合、パスの状態をコマンドの実行中である、または禁止期間内であると判定する。この場合、パス状態判定部54は、「CMD_End時刻」「Lock_End予定時刻」の各値が「−」である場合、パスの状態をコマンドの実行中であると判定する。すなわちこの場合、パス状態判定部54は、パスの状態がExecuteであると判定する。
【0079】
パス状態判定部54は、「CMD_End時刻」「Lock_End予定時刻」の各値が「−」ではない場合、パスの状態を禁止期間内であると判定する。すなわちこの場合、パス状態判定部54は、パスの状態がCMD_Endであると判定する。
【0080】
また、パス状態判定部54は、基準パスの状態がIDLEではないと判定した場合、所定の順序に基づいて次のパスの状態を判定する。ここで、所定の順序とは、パスIDの数が小さいパスからパスIDの数が大きいパスの順序とする。例えば、情報処理システム1においてパス2を基準とした場合、パス状態判定部54は、パス2、パス3、パス4、パス5の順序でパスの状態を判定する。また、パス状態判定部54は、パス5の次に、パス2に戻ってパスの状態を判定するものとする。なお、所定の順序はこれに限定されるものではなく、任意に設定可能である。
【0081】
また、パス状態判定部54は、判定結果をパス選択部55に出力する。例えば、パス状態判定部54は、判定結果として、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在することをパス選択部55に出力する。また、パス状態判定部54は、判定結果として、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在しないが、禁止期間内にあるパスが存在することをパス選択部55に出力する。また、パス状態判定部54は、判定結果として、すべてのパスがコマンドの実行中であることをパス選択部55に出力する。
【0082】
パス選択部55は、パス状態判定部54により判定されたパスの状態に基づいて、複数のパスのうち、いずれのパスにコマンドを発行するかを選択する。例えば、パス選択部55は、パス状態判定部54によって、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在すると判定された場合、当該パスをコマンド実行用に選択する。
【0083】
また、パス選択部55は、パス状態判定部54によって、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在しないと判定された場合、コマンドの実行処理を終了したが禁止期間を経過していないパスをコマンド実行用に選択する。
【0084】
ここで、パス選択部55は、パス状態判定部54によって、コマンドの実行処理を終了したが禁止期間を経過していないパスが複数存在すると判定された場合には、当該パスのうち禁止期間の残り時間が最も短いパスをコマンド実行用に選択する。
【0085】
また、パス選択部55は、パス状態判定部54によって、すべてのパスがコマンドの実行中であると判定された場合、所定の時間が経過後に、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在するか否かを再びパス状態判定部54に判定させる。
【0086】
応答受信部56は、CHE12a〜12dから、コマンドの実行が終了したことを示すCMD_End通知を受信する。応答受信部56は、CMD_Endを受信した場合、タイムスタンプ管理テーブル51の「CMD_End時刻」にCMD_Endを受信した時刻を格納する。
【0087】
基準パス変更部57は、タイムスタンプ管理テーブル51を読み出し、コマンドを実行中の全てのパスが禁止期間を経過した場合、基準パス管理テーブル52として記憶される「基準パスフラグ」を変更する。例えば、基準パス変更部57は、パス2を基準パスとしてコマンドをパス2、パス3、パス4に発行し、パス2、パス3、パス4が禁止期間を経過した場合、以下の処理を実行することで基準パスをパス2からパス3へ変更する。すなわち、基準パス変更部57は、基準パス管理テーブル52の「パスID」が「xxx2」に対応する「基準パスフラグ」を「0」に変更し、「パスID」が「xxx3」に対応する「基準パスフラグ」を「1」に変更する。
【0088】
電源制御部58は、基準パス変更部57によって基準パスが変更された場合、変更前の基準パスの電源をオフにするように制御する。また、電源制御部58は、基準パス変更部57によって基準パスが変更された場合、変更後の基準パスの電源をオンにするように制御する。
【0089】
例えば、電源制御部58は、基準パス変更部57によって基準パス管理テーブル52として記憶される基準パスが「パスID」が「xxx2」であるパスから「パスID」が「xxx3」であるパスに変更された場合、以下の処理を実行する。すなわち、電源制御部58は、「パスID」が「xxx2」に対応する「電源フラグ」を「オフ」に、「パスID」が「xxx3」に対応する「電源フラグ」を「オン」に変更する。また、電源制御部58は、「パスID」が「xxx2」である電源をオフに、「パスID」が「xxx3」である電源をオンに制御するように各CHEに通知する。
【0090】
[実施例1に係るIOPによる処理の動作]
次に図11から図13を用いて、実施例1に係るIOP14による処理の動作を説明する。ここでは、図11を用いてIOPによる、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在する場合のパス選択処理の動作を説明する。また、図12を用いてIOPによる、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在しない場合のパス選択処理の動作を説明する。そして、図13を用いてIOPによる基準パス変更処理の動作を説明する。なお、以下の説明では、パス2を基準パスとして説明する。
【0091】
図11は、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在する場合のパス選択処理の動作を示す図である。図11に示すように、IOP14は、コマンドC1の発行指示をCPU13から受付けた場合、パス2の状態がIDLEであるので、パス2が接続するCHE12aに対してコマンドを発行する。そして、IOP14は、コマンドC2の発行指示をCPU13から受付けた場合、パス2の状態がExecuteであり、パス3の状態がIDLEであるので、パス3が接続されるCHE12bに対してコマンドを発行する。
【0092】
また、IOP14は、コマンドC3の発行指示をCPU13から受付けた場合、パス2の状態がIDLEであるので、パス2が接続するCHE12aに対してコマンドを発行する。続いて、IOP14は、コマンドC4の発行指示をCPU13から受付けた場合、パス2の状態がExecuteであり、パス3の状態がIDLEであるので、パス3が接続するCHE12bに対してコマンドを発行する。
【0093】
また、IOP14は、コマンドC5の発行指示をCPU13から受付けた場合、パス2の状態がIDLEであるので、パス2が接続するCHE12aに対してコマンドを発行する。
【0094】
図12は、コマンドの実行中ではなく、かつ、禁止期間内でもないパスが存在しない場合のパス選択処理の動作を示す図である。図12に示すように、IOP14は、コマンドC1の発行指示をCPU13から受付けた場合、パス2の状態がIDLEであるので、パス2が接続するCHE12aに対してコマンドを発行する。そして、IOP14は、コマンドC2の発行指示をCPU13から受付けた場合、パス2の状態がExecuteであり、パス3の状態がIDLEであるので、パス3が接続するCHE12bに対してコマンドを発行する。
【0095】
また、IOP14は、コマンドC3の発行指示をCPU13から受付けた場合、パス2とパス3の状態がExecuteであり、パス4の状態がIDLEであるので、パス4が接続するCHE12cに対してコマンドを発行する。続いて、IOP14は、コマンドC4の発行指示をCPU13から受付けた場合、パス2、パス3及びパス4の状態がExecuteであり、パス5の状態がIDLEであるので、パス5が接続するCHE12dに対してコマンドを発行する。
【0096】
そして、IOP14は、コマンドC5の発行指示をCPU13から受付けた場合、パス2とパス3の状態がLockであり、パス4とパス5の状態がExecuteである。すなわち、いずれのパスの状態もIDLEではない。したがって、IOP14は、禁止期間内のパス2が接続するCHE12aまたはパス3が接続するCHE12bに対してコマンドを発行する。ここで、IOP14は、パス2及びパス3のうち禁止期間の残り時間が最も短いパスとしてパス3を選択し、パス3が接続するCHE12bに対してコマンドを発行する。
【0097】
図13は、IOP14による基準パス変更処理の動作を示す図である。図13に示すように、IOP14は、コマンドC1の発行指示をCPU13から受付けた場合、パス2の状態がIDLEであるので、パス2が接続するCHE12aに対してコマンドを発行する。そして、IOP14は、コマンドC2の発行指示をCPU13から受付けた場合、パス2の状態がExecuteであり、パス3の状態がIDLEであるので、パス3が接続するCHE12bに対してコマンドを発行する。
【0098】
また、IOP14は、コマンドC3の発行指示をCPU13から受付けた場合、パス2の状態がIDLEであるので、パス2が接続するCHE12aに対してコマンドを発行する。
【0099】
そして、IOP14は、コマンドC4の発行指示をCPU13から受付けた場合、コマンドC1、コマンドC2、コマンドC3はコマンドの実行が終了し、禁止期間を経過している。ここで、IOP14は、基準パスをパス2からパス3に変更する。そして、IOP14は、パス3の状態がIDLEであるので、パス3が接続するCHE12bに対してコマンドを発行する。
【0100】
また、IOP14は、コマンドC5の発行指示をCPU13から受付けた場合、パス3の状態がExecuteであり、パス4の状態がIDLEであるので、パス4が接続するCHE12cに対してコマンドを発行する。そして、IOP14は、コマンドC6の発行指示をCPU13から受付けた場合、パス3とパス4の状態がExecuteであり、パス5の状態がIDLEであるので、パス5が接続するCHE12dに対してコマンドを発行する。
【0101】
また、IOP14は、コマンドC7の発行指示をCPU13から受付けた場合、パス3の状態がIDLEであるので、パス3が接続するCHE12bに対してコマンドを発行する。
【0102】
そして、IOP14は、コマンドC8の発行指示をCPU13から受付けた場合、コマンドC4、コマンドC5、コマンドC6、コマンドC7はコマンドの実行が終了し、禁止期間を経過している。ここで、IOP14は、基準パスをパス3からパス4に変更する。そして、IOP14は、パス4の状態がIDLEであるので、パス4が接続するCHE12cに対してコマンドを発行する。
【0103】
また、IOP14は、コマンドC9の発行指示をCPU13から受付けた場合、パス4の状態がExecuteであり、パス5の状態がIDLEであるので、パス5が接続するCHE12dに対してコマンドを発行する。そして、IOP14は、コマンドC10の発行指示をCPU13から受付けた場合、パス4の状態がLockであり、パス5の状態がExecuteであり、パス2の状態がIDLEであるので、パス2が接続するCHE12aに対してコマンドを発行する。
【0104】
[実施例1に係るIOPによる処理の処理手順]
次に図14及び図15を用いて、実施例1に係るIOP14による処理の処理手順を説明する。ここでは、図14を用いてIOPによるコマンド発行処理を説明し、図15を用いてIOPによるパス選択処理を説明する。
【0105】
(コマンド発行処理)
図14は、実施例1に係るIOP14によるコマンド発行処理の処理手順を示すフローチャートである。例えば、IOP14は、コマンド発行指示を受付けたことを契機に処理を実行する。
【0106】
図14に示すように、IOP14は、コマンド発行指示を受付けたか否かを判定する(ステップS101)。ここで、IOP14は、コマンド発行指示を受付けたと判定した場合(ステップS101、Yes)、パス選択処理を実行する(ステップS102)。一方、IOP14は、コマンド発行指示を受付けていないと判定した場合(ステップS101、No)、引き続きコマンド発行指示を受付けたか否かを判定する。
【0107】
そして、IOP14は、パス選択処理の結果パスを選択できたか否かを判定する(ステップS103)。ここで、IOP14は、パスを選択できなかったと判定した場合(ステップS103、No)、所定の時間経過後にステップS102に移行して再びパス選択処理を実行する。
【0108】
一方、IOP14は、パスを選択できたと判定した場合(ステップS103、Yes)、選択したパスが接続するCHEに対してコマンドを発行する(ステップS104)。そして、IOP14は、発行したコマンドに対して全てのパスが禁止期間を経過したか否かを判定する(ステップS105)。ここで、IOP14は、全てのパスが禁止期間を経過したと判定した場合(ステップS105、Yes)、基準パスを変更し(ステップS106)、ステップS107に移行する。
【0109】
一方、IOP14は、全てのパスのうち禁止期間を経過していないパスが存在すると判定した場合(ステップS105、No)、ステップS107に移行する。
【0110】
ステップS107において、IOP14は、新たなコマンド発行指示を受付けたか否かを判定する。ここで、IOP14は、新たなコマンド発行指示を受付けていないと判定した場合(ステップS107、No)、ステップS105に移行する。一方、IOP14は、新たなコマンド発行指示を受付けたと判定した場合(ステップS107、Yes)、ステップS102に移行する。
【0111】
(パス選択処理)
図15は、実施例1に係るIOP14によるパス選択処理の処理手順を示すフローチャートである。なお、この処理は、図14に示すステップS102に対応する。なお、図15に示すフローチャートは、サーバ10とIO装置20とを接続するパスがパス2〜5の4つである場合を示す。
【0112】
図15に示すように、IOP14は、基準パスを選択する(ステップS201)。そして、IOP14は、選択したパスがIDLE状態であるか否かを判定する(ステップS202)。ここで、IOP14は、選択したパスがIDLE状態であると判定した場合(ステップS202、Yes)、選択したパスが接続されるCHEに対してコマンド発行を要求する応答を行い(ステップS208)、処理を終了する。
【0113】
一方、IOP14は、選択したパスがIDLE状態でないと判定した場合(ステップS202、No)、未選択のパスがあるか否かを判定する(ステップS203)。
【0114】
ここで、IOP14は、未選択のパスがあると判定した場合(ステップS203、Yes)、新たなパスを選択して(ステップS204)、ステップS202に移行し、以降の処理を実行する。一方、IOP14は、未選択のパスがないと判定した場合(ステップS203、No)、禁止期間内のパスがあるか否かを判定する(ステップS205)。
【0115】
ここで、IOP14は、禁止期間内のパスがないと判定した場合(ステップS205、No)、コマンド発行を要求したCPU13にPath Busy Responseを応答し(ステップS209)、処理を終了する。なお、Path Busy Responseは、全てのパスがIDLEでないことを示す応答である。
【0116】
一方、IOP14は、禁止期間内のパスがあると判定した場合(ステップS205、Yes)、禁止期間内のパスが2つ以上あるか否かを判定する(ステップS206)。ここで、IOP14は、禁止期間内のパスが2つ以上あると判定した場合(ステップS206、Yes)、禁止期間の残り時間を比較し、残り時間が最も短いパスを選択する(ステップS207)。そして、IOP14は、選択したパスが接続するCHEに対してコマンド発行を要求する応答を行い(ステップS208)、処理を終了する。
【0117】
一方、IOP14は、禁止期間内のパスが2つ以上でないと判定した場合(ステップS206、No)、禁止期間内のパスが接続するCHEに対してコマンド発行を要求する応答を行い(ステップS208)、処理を終了する。
【0118】
[実施例1の効果]
上述してきたように、本実施例1では、CHE12a〜12dに搭載されている部品の発熱を軽減することができる。
【0119】
また、IOP14は、コマンドの実行処理を終了したが禁止期間を経過していないパスが複数存在すると判定された場合には、当該パスのうち禁止期間の残り時間が最も短いパスをコマンド実行用に選択する。この結果、より効率的にパスを使用することができる。
【0120】
また、IOP14は、基準パスを変更することで、特定のパスが発熱によって摩耗することを防止できる。さらに、基準パスを変更した場合、変更前の基準パスの電源をオフに制御する。この結果、消費電力を削減することができる。
【0121】
また、IOP14は、CMD発行、CMD End時のタイムスタンプを取得する。これを利用すると禁止期間の残り時間を容易に算出でき、禁止期間の比較をより簡単に行う事ができる。また、IOP14は、コマンド発行間隔を管理するようにしてもよい。また、タイムスタンプを利用するとコマンドの実行間隔に合わせて禁止期間を変化させる事も可能である。
【実施例2】
【0122】
ところで、本発明は、上述した実施例以外にも、種々の異なる形態にて実施されてよい。そこで、実施例2では、本発明に含まれる他の実施例について説明する。
【0123】
(システム構成等)
本実施例において説明した各処理のうち自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文章中や図面中で示した処理手順、制御手順、具体的名称については、特記する場合を除いて任意に変更することができる。
【0124】
サーバ10は、メインフレーム型のサーバとして説明したが、これに限定されるものではない。例えば、IOP14と同等の機能を有するチップセットと、各CHEと同様に禁止期間を設定可能なIF(interface)カードとを有していればオープンシステムのサーバとして実現されてもよい。
【0125】
また、図示した記憶部が格納する情報は一例に過ぎず、必ずしも図示のごとく情報が格納される必要はない。例えば、タイムスタンプ管理テーブル51は、禁止期間の残り時間を算出した情報を記憶していてもよい。
【0126】
パス状態判定部54は、禁止期間が完了したことを示す禁止完了応答をいずれかのパスから取得した場合、当該パスが前記禁止期間を経過したと判定するようにしてもよい。
【0127】
また、電源投入時にIOP14に渡す禁止期間の値を時間ではなく係数として渡すようにしてもよい。そして、IOP14は、受け取った係数にコマンドの実行時間を合わせて禁止期間の時間を計算する。これによって長い実行時間のコマンドほど素子温度が高くなり放熱にかかる時間が増加する問題を回避することが出来る。
【0128】
また、各種の負荷や使用状況などに応じて、各実施例において説明した各処理の各ステップでの処理の順番を変更してもよい。例えば、図14に示すステップS104の後にステップS105及びステップS106の処理を実行せず、ステップS107の処理に移行するようにしてもよい。
【0129】
また、図示した各構成部は、機能概念的なものであり、必ずしも物理的に図示のごとく構成されていることを要しない。例えば、IOP14では、コマンド処理部53とパス状態判定部54とが統合されてもよい。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0130】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0131】
(付記1)自装置と通信先装置とを接続する複数のパスのうちデータの送信処理中ではなく、かつ、データ送信を終了した後にデータ送信を所定時間禁止する禁止期間内でもないパスが存在するか否かを判定する判定部と、
前記判定部によって、データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在しないと判定された場合、データの送信処理を終了したが禁止期間を経過していないパスをデータ送信用に選択する選択部と
を有することを特徴とする通信制御装置。
【0132】
(付記2)前記選択部は、前記判定部によって、前記データの送信処理を終了したが禁止期間を経過していないパスが複数存在すると判定された場合には、当該パスのうち禁止期間の残り時間が最も短いパスをデータ送信用に選択することを特徴とする付記1に記載の通信制御装置。
【0133】
(付記3)データの送信処理を終了したパスすべてが禁止期間を経過した場合、複数のパスのうちデータの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在するか否かを1番目に判定するパスである基準パスを所定の順序に基づいて切替る切替部を更に有することを特徴とする付記1または2に記載の通信制御装置。
【0134】
(付記4)前記切替部により基準パスが切替えられた場合、前記切替部により切替えられる前に基準パスであったパスの電源をオフにする電源制御部を更に有することを特徴とする付記3に記載の通信制御装置。
【0135】
(付記5)前記選択部は、前記判定部によって、データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在すると判定された場合、当該パスをデータ送信用に選択することを特徴とする付記1に記載の通信制御装置。
【0136】
(付記6)前記選択部は、前記判定部によって、すべてのパスがデータ送信中であると判定された場合、所定の時間が経過後に、データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在するか否かを再び前記判定部に判定させることを特徴とする付記1に記載の通信制御装置。
【0137】
(付記7)前記判定部は、前記禁止期間が完了したことを示す禁止完了応答をいずれかのパスから取得した場合、当該パスが前記禁止期間を経過したと判定することを特徴とする付記1〜6のいずれか一つに記載の通信制御装置。
【0138】
(付記8)前記判定部は、データの送信処理が終了したことを示す送信終了応答をいずれかのパスから取得し、前記禁止期間を予め記憶する記憶部から読み出した前記禁止時間と前記送信終了応答を取得した時間とに基づいて当該パスが前記禁止期間を経過したか否かを判定することを特徴とする付記1〜6のいずれか一つに記載の通信制御装置。
【0139】
(付記9)前記禁止期間は、データ送信により生じる熱を放熱するまでに要する期間に応じて設定されることを特徴とする付記1〜8のいずれか一つに記載の通信制御装置。
【0140】
(付記10)複数パスごとに設けられ、前記複数パスを介して接続された通信先装置とのデータ送信を行う複数のインターフェース部と、前記通信先装置へのデータの送信処理をいずれかのインターフェース部に割り当てる通信制御部とを有する情報処理装置において、
前記インターフェース部の各々は、
データ送信を終了後のパスに対する新たなデータの送信処理を所定の期間禁止する禁止期間を設定し、
前記通信制御部は、
データの送信処理中でもなく前記禁止期間内にもないインターフェース部が存在せず、かつ、前記禁止期間内にあるインターフェース部が存在する場合には、前記禁止期間内にあるインターフェース部に対して新たなデータの送信処理を割り当てる
ことを特徴とする情報処理装置。
【0141】
(付記11)通信制御装置が、
自装置と通信先装置とを接続する複数のパスのうちデータの送信処理中ではなく、かつ、データ送信を終了した後にデータ送信を所定時間禁止する禁止期間内でもないパスが存在するか否かを判定し、
データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在しないと判定した場合、データの送信処理を終了したが禁止期間を経過していないパスをデータ送信用に選択する
処理を実行することを特徴とするパス選択方法。
【0142】
(付記12)前記データの送信処理を終了したが禁止期間を経過していないパスが複数存在すると判定した場合には、当該パスのうち禁止期間の残り時間が最も短いパスをデータ送信用に選択することを特徴とする付記11に記載のパス選択方法。
【0143】
(付記13)前記通信制御装置が、
データの送信処理を終了したパスすべてが禁止期間を経過した場合、複数のパスのうちデータの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在するか否かを1番目に判定するパスである基準パスを所定の順序に基づいて切替る処理を更に実行することを特徴とする付記11または12に記載のパス選択方法。
【0144】
(付記14)前記通信制御装置が、
基準パスを切替えた場合、切替える前に基準パスであったパスの電源をオフにする処理を更に実行することを特徴とする付記13に記載のパス選択方法。
【0145】
(付記15)データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在すると判定した場合、当該パスをデータ送信用に選択することを特徴とする付記11に記載のパス選択方法。
【0146】
(付記16)すべてのパスがデータ送信中であると判定した場合、所定の時間が経過後に、データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在するか否かを再び判定することを特徴とする付記11に記載のパス選択方法。
【0147】
(付記17)前記禁止期間が完了したことを示す禁止完了応答をいずれかのパスから取得した場合、当該パスが前記禁止期間を経過したと判定することを特徴とする付記11〜16のいずれか一つに記載のパス選択方法。
【0148】
(付記18)データの送信処理が終了したことを示す送信終了応答をいずれかのパスから取得し、前記禁止期間を予め記憶する記憶部から読み出した前記禁止時間と前記送信終了応答を取得した時間とに基づいて当該パスが前記禁止期間を経過したか否かを判定することを特徴とする付記11〜16のいずれか一つに記載のパス選択方法。
【0149】
(付記19)前記禁止期間は、データ送信により生じる熱を放熱するまでに要する期間に応じて設定されることを特徴とする付記11〜18のいずれか一つに記載のパス選択方法。
【符号の説明】
【0150】
1 情報処理システム
2、3、4、5 パス
10 サーバ
11 MS
12a、12b、12c、12d CHE
13 CPU
14 IOP
20 IO装置
21 IO部
22a、22b、22c、22d CHE
23 IO制御部
31 通信部
32 IC部
33 SD部
34 OM部
51 タイムスタンプ管理テーブル
52 基準パス管理テーブル
53 コマンド処理部
54 パス状態判定部
55 パス選択部
56 応答受信部
57 基準パス変更部
58 電源制御部

【特許請求の範囲】
【請求項1】
自装置と通信先装置とを接続する複数のパスのうちデータの送信処理中ではなく、かつ、データ送信を終了した後にデータ送信を所定時間禁止する禁止期間内でもないパスが存在するか否かを判定する判定部と、
前記判定部によって、データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在しないと判定された場合、データの送信処理を終了したが禁止期間を経過していないパスをデータ送信用に選択する選択部と
を有することを特徴とする通信制御装置。
【請求項2】
前記選択部は、前記判定部によって、前記データの送信処理を終了したが禁止期間を経過していないパスが複数存在すると判定された場合には、当該パスのうち禁止期間の残り時間が最も短いパスをデータ送信用に選択することを特徴とする請求項1に記載の通信制御装置。
【請求項3】
データの送信処理を終了したパスすべてが禁止期間を経過した場合、複数のパスのうちデータの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在するか否かを1番目に判定するパスである基準パスを所定の順序に基づいて切替る切替部を更に有することを特徴とする請求項1または2に記載の通信制御装置。
【請求項4】
前記切替部により基準パスが切替えられた場合、前記切替部により切替えられる前に基準パスであったパスの電源をオフにする電源制御部を更に有することを特徴とする請求項3に記載の通信制御装置。
【請求項5】
前記選択部は、前記判定部によって、データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在すると判定された場合、当該パスをデータ送信用に選択することを特徴とする請求項1に記載の通信制御装置。
【請求項6】
前記選択部は、前記判定部によって、すべてのパスがデータ送信中であると判定された場合、所定の時間が経過後に、データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在するか否かを再び前記判定部に判定させることを特徴とする請求項1に記載の通信制御装置。
【請求項7】
前記判定部は、前記禁止期間が完了したことを示す禁止完了応答をいずれかのパスから取得した場合、当該パスが前記禁止期間を経過したと判定することを特徴とする請求項1〜6のいずれか一つに記載の通信制御装置。
【請求項8】
前記判定部は、データの送信処理が終了したことを示す送信終了応答をいずれかのパスから取得し、前記禁止期間を予め記憶する記憶部から読み出した前記禁止時間と前記送信終了応答を取得した時間とに基づいて当該パスが前記禁止期間を経過したか否かを判定することを特徴とする請求項1〜6のいずれか一つに記載の通信制御装置。
【請求項9】
複数パスごとに設けられ、前記複数パスを介して接続された通信先装置とのデータ送信を行う複数のインターフェース部と、前記通信先装置へのデータの送信処理をいずれかのインターフェース部に割り当てる通信制御部とを有する情報処理装置において、
前記インターフェース部の各々は、
データ送信を終了後のパスに対する新たなデータの送信処理を所定の期間禁止する禁止期間を設定し、
前記通信制御部は、
データの送信処理中でもなく前記禁止期間内にもないインターフェース部が存在せず、かつ、前記禁止期間内にあるインターフェース部が存在する場合には、前記禁止期間内にあるインターフェース部に対して新たなデータの送信処理を割り当てる
ことを特徴とする情報処理装置。
【請求項10】
通信制御装置が、
自装置と通信先装置とを接続する複数のパスのうちデータの送信処理中ではなく、かつ、データ送信を終了した後にデータ送信を所定時間禁止する禁止期間内でもないパスが存在するか否かを判定し、
データの送信処理中ではなく、かつ、前記禁止期間内でもないパスが存在しないと判定した場合、データの送信処理を終了したが禁止期間を経過していないパスをデータ送信用に選択する
処理を実行することを特徴とするパス選択方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2013−37486(P2013−37486A)
【公開日】平成25年2月21日(2013.2.21)
【国際特許分類】
【出願番号】特願2011−172177(P2011−172177)
【出願日】平成23年8月5日(2011.8.5)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】