(57)【要約】【課題】複数の転送制御部と複数の共有メモリとの間のデータ転送効率を高いものにする。【解決手段】転送制御部１ａ〜１ｄと共有メモリ３ａ，３ｂとの間には、複数の転送経路スイッチ２ａ，２ｂが設けられている。従って、或る転送制御部と或る共有メモリとの間のデータ転送経路は、転送経路スイッチ２ａ，２ｂ毎に存在する。転送制御部１ａ〜１ｄは、例えば、過去に行ったデータ転送時の単位時間当りのデータ転送量などに基づいて、各経路の負荷状態を判定し、データ転送を行う際には、低負荷の経路を優先的に利用してデータ転送を行う。【選択図】      図１
2004152062.tif 000002
【特許請求の範囲】
【請求項１】
複数の転送制御部と複数の共有メモリとが複数の転送経路スイッチを介してクロス接続されたデータ転送システムであって、
前記各転送制御部が、自転送制御部とアクセス先の共有メモリとの間に存在する、前記複数の転送経路スイッチ毎の経路の内の低負荷の経路を優先的に利用して共有メモリをアクセスする構成を有することを特徴とするデータ転送システム。
【請求項２】
複数の転送制御部と、複数の共有メモリと、それぞれが前記複数の転送制御部の内の任意の転送制御部と前記複数の共有メモリの内の任意の共有メモリとの間に経路を形成する構成を有する複数の転送経路スイッチとを備えたデータ転送システムであって、
前記各転送制御部が、
データ転送に使用した経路を示す経路情報と、該経路の負荷を示す負荷情報とを含む経路負荷情報が登録される経路負荷情報記憶手段と、
データ転送が行われる毎に、データ転送に使用した経路を示す経路情報と、該経路の負荷を示す負荷情報とを含む経路負荷情報を前記経路負荷情報記憶手段に追加登録する転送応答監視手段と、
前記経路負荷情報記憶部に登録されている経路負荷情報に基づいて、自転送制御部とアクセス先の共有メモリとの間に存在する、前記複数の転送経路スイッチ毎の経路の中から低負荷の経路を１つ選択する経路負荷解析手段と、
データ転送時、前記経路負荷解析手段で選択された経路を介してデータ転送を行う転送経路選択手段とを備えたことを特徴とするデータ転送システム。
【請求項３】
請求項２記載のデータ転送システムにおいて、
前記負荷情報が、単位時間当りのデータ転送量であることを特徴とするデータ転送システム。
【請求項４】
請求項３記載のデータ転送システムにおいて、
前記経路負荷解析手段が、単位時間当りのデータ転送量と予め定められている閾値とに基づいて低負荷の経路を認識する構成を有することを特徴とするデータ転送システム。
【請求項５】
請求項４記載のデータ転送システムにおいて、
前記経路負荷解析手段が、低負荷の経路が存在しない場合は、最も負荷が低い経路を選択する構成を有することを特徴とするデータ転送システム。
【請求項６】
請求項５記載のデータ転送システムにおいて、
前記閾値が、経路毎に異なることを特徴とするデータ転送システム。
【請求項７】
請求項５記載のデータ転送システムにおいて、
前記経路負荷解析手段が使用する閾値を、経路毎に設定する閾値設定手段を備えたことを特徴とするデータ転送システム。
【請求項８】
複数の転送制御部と複数の共有メモリとが複数の転送経路スイッチを介してクロス接続されたデータ転送システムの構成要素である転送制御部であって、
自転送制御部とアクセス先の共有メモリとの間に存在する、前記複数の転送経路スイッチ毎の経路の内の低負荷の経路を優先的に利用して共有メモリをアクセスする構成を有することを特徴とする転送制御部。
【請求項９】
複数の転送制御部と、複数の共有メモリと、それぞれが前記複数の転送制御部の内の任意の転送制御部と前記複数の共有メモリの内の任意の共有メモリとの間に経路を形成する構成を有する複数の転送経路スイッチとを備えたデータ転送システムの構成要素である転送制御部であって、
データ転送に使用した経路を示す経路情報と、該経路の負荷を示す負荷情報とを含む経路負荷情報が登録される経路負荷情報記憶手段と、
データ転送が行われる毎に、データ転送に使用した経路を示す経路情報と、該経路の負荷を示す負荷情報とを含む経路負荷情報を前記経路負荷情報記憶手段に追加登録する転送応答監視手段と、
前記経路負荷情報記憶部に登録されている経路負荷情報に基づいて、自転送制御部とアクセス先の共有メモリとの間に存在する、前記複数の転送経路スイッチ毎の経路の中から低負荷の経路を１つ選択する経路負荷解析手段と、
データ転送時、前記経路負荷解析手段で選択された経路を介してデータ転送を行う転送経路選択手段とを備えたことを特徴とする転送制御部。
【請求項１０】
コンピュータを、複数の転送制御部と複数の共有メモリとが複数の転送経路スイッチを介してクロス接続されたデータ転送システムの構成要素である転送制御部として機能させるためのプログラムであって、
前記コンピュータを、自コンピュータとアクセス先の共有メモリとの間に存在する、前記複数の転送経路スイッチ毎の経路の内の低負荷の経路を優先的に利用して共有メモリをアクセスする手段として機能させるためのプログラム。
【請求項１１】
コンピュータを、複数の転送制御部と、複数の共有メモリと、それぞれが前記複数の転送制御部の内の任意の転送制御部と前記複数の共有メモリの内の任意の共有メモリとの間に経路を形成する構成を有する複数の転送経路スイッチとを備えたデータ転送システムの構成要素である転送制御部として機能させるためのプログラムであって、
前記コンピュータを、
データ転送が行われる毎に、データ転送に使用した経路を示す経路情報と、該経路の負荷を示す負荷情報とを含む経路負荷情報を経路負荷情報記憶手段に追加登録する転送応答監視手段、
前記経路負荷情報記憶部に登録されている経路負荷情報に基づいて、自転送制御部とアクセス先の共有メモリとの間に存在する、前記複数の転送経路スイッチ毎の経路の中から低負荷の経路を１つ選択する経路負荷解析手段、
データ転送時、前記経路負荷解析手段で選択された経路を介してデータ転送を行う転送経路選択手段として機能させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の転送経路スイッチを介してクロス接続された複数の転送制御部と複数の共有メモリとの間でデータ転送を行うデータ転送技術に関し、特に、データ転送経路の負荷を考慮することにより効率的にデータ転送を行えるようにしたデータ転送技術に関する。
【０００２】
【従来の技術】
従来から、複数の転送制御部（例えば、ＣＰＵなど）と複数の共有メモリとを転送経路スイッチを介してクロス接続することにより、任意の転送制御部から任意の共有メモリをアクセスできるようにした技術が知られている（例えば、特許文献１、特許文献２参照）。
【０００３】
特許文献１に記載されている従来の技術では、転送経路スイッチを介して共有メモリをアクセスする際のアクセス方式を、共有メモリへの平均アクセス時間に基づいて、アクセス方式をコネクション型アクセス方式あるいはコネクション・レス型アクセス方式に切り換えることにより、高いＩ／Ｏスループットを損なうことなく、低負荷時の共有メモリアクセス時間の短縮できるようにしている。ここで、コネクション型アクセス方式とは、データ転送前に共有メモリまでのパス全体を確立し、共有メモリアクセスが終了するまで占有する方式であり、コネクション・レス型アクセス方式とは、データ転送の前に共有メモリまでのパス全体は確立せず、次の経由スイッチまでパスを確立し、この経由スイッチまでの転送が終了した時点でそのパスを解放する方式である。
【０００４】
また、特許文献２に記載されている従来の技術では、大規模構成のコンピュータで使用する転送経路スイッチを小規模構成のコンピュータで使用すると、転送経路スイッチ内のクロスバにおいて、出力ポートで選択される入力ポートが固定されるクロスバが生じるという性質を利用し、選択される入力ポートが装置構成により固定される出力ポートを持つクロスバについてはバイパスする機能を付加することで、大規模構成のコンピュータで使用する転送経路スイッチを小規模構成のコンピュータで使用した場合のデータ転送時間を短縮するようにしている。
【０００５】
【特許文献１】
特開平１１−１７５２６０号公報
【特許文献２】
特開平１１−２１２８６６号公報
【０００６】
【発明が解決しようとする課題】
しかし、上述した特許文献１、特許文献２に記載されている従来の技術は、或る転送制御部から或る共有メモリへの経路が１つしか存在しないため、データ転送効率を十分に高くすることは困難であるという問題点があった。
【０００７】
そこで、本発明の目的は、データの転送効率を十分高くすることにある。
【０００８】
【課題を解決するための手段】
本発明にかかる第１のデータ転送システムは、上記目的を達成するため、
複数の転送制御部と複数の共有メモリとが複数の転送経路スイッチを介してクロス接続されたデータ転送システムであって、
前記各転送制御部が、自転送制御部とアクセス先の共有メモリとの間に存在する、前記複数の転送経路スイッチ毎の経路の内の低負荷の経路を優先的に利用して共有メモリをアクセスする構成を有することを特徴とする。
【０００９】
より具体的には、本発明にかかる第２のデータ転送システムは、
複数の転送制御部と、複数の共有メモリと、それぞれが前記複数の転送制御部の内の任意の転送制御部と前記複数の共有メモリの内の任意の共有メモリとの間に経路を形成する構成を有する複数の転送経路スイッチとを備えたデータ転送システムであって、
前記各転送制御部が、
データ転送に使用した経路を示す経路情報と、該経路の負荷を示す負荷情報とを含む経路負荷情報が登録される経路負荷情報記憶手段と、
データ転送が行われる毎に、データ転送に使用した経路を示す経路情報と、該経路の負荷を示す負荷情報とを含む経路負荷情報を前記経路負荷情報記憶手段に追加登録する転送応答監視手段と、
前記経路負荷情報記憶部に登録されている経路負荷情報に基づいて、自転送制御部とアクセス先の共有メモリとの間に存在する、前記複数の転送経路スイッチ毎の経路の中から低負荷の経路を１つ選択する経路負荷解析手段と、
データ転送時、前記経路負荷解析手段で選択された経路を介してデータ転送を行う転送経路選択手段とを備えたことを特徴とする。
【００１０】
また、本発明にかかる第３のデータ転送システムは、
第２のデータ転送システムにおいて、
前記負荷情報が、単位時間当りのデータ転送量であることを特徴とする。
【００１１】
また、本発明にかかる第４のデータ転送システムは、
第３のデータ転送システムにおいて、
前記経路負荷解析手段が、単位時間当りのデータ転送量と予め定められている閾値とに基づいて低負荷の経路を認識する構成を有することを特徴とする。
【００１２】
また、本発明にかかる第５のデータ転送システムは、
第４のデータ転送システムにおいて、
前記経路負荷解析手段が、低負荷の経路が存在しない場合は、最も負荷が低い経路を選択する構成を有することを特徴とする。
【００１３】
また、本発明にかかる第６のデータ転送システムは、各経路のデータの転送割合を異なるものにできるようにするため、
第５のデータ転送システムにおいて、
前記閾値が、経路毎に異なることを特徴とする。。
【００１４】
また、本発明にかかる第７のデータ転送システムは、各経路のデータの転送割合を自由に変更できるようにするため、
第５のデータ転送システムにおいて、
前記経路負荷解析手段が使用する閾値を、経路毎に設定する閾値設定手段を備えたことを特徴とする。
【００１５】
【作用】
転送制御部（図１の１ａ）内の転送応答監視手段（図２の１４）は、共有メモリ（図１の３ａ或いは３ｂ）との間でデータ転送が行われる毎に、データ転送に使用した経路（図１の転送経路スイッチ２ａを介する経路あるいは経路スイッチ２ｂを介する経路）を示す経路情報と、上記経路の負荷を示す負荷情報（例えば、単位時間当りのデータ転送量）とを含む経路負荷情報を経路負荷情報記憶手段（図２の１５）に追加登録する。経路負荷解析手段（図２の１６）は、経路負荷情報記憶手段（図２の１５）に格納されている経路負荷情報に基づいて、転送経路スイッチ（図１の２ａ、２ｂ）毎に存在するアクセス先の共有メモリへの経路の内の、低負荷の経路を１つ選択する。ここで、低負荷の経路であるか否かは、例えば、単位時間当りのデータ転送量が予め定められている閾値以上であるか否かに基づいて判定する。転送経路選択手段（図２の１２）は、データ転送を行う際、経路負荷解析手段（図２の１６）が選択した経路を使用してデータ転送を行う。従って、低負荷の経路によりデータ転送が行われることになるので、データ転送効率を高いものにすることが可能になる。
【００１６】
【発明の実施の形態】
本発明の上記および他の目的、特徴及び利点を明確にすべく、以下添付した図面を参照しながら、本発明の実施の形態につき、詳細に説明する。
【００１７】
【構成の説明】
図１を参照すると、本発明にかかるデータ転送システムの一実施の形態は、複数の転送制御部１ａ〜１ｄと、複数の転送経路スイッチ２ａ，２ｂと、複数の共有メモリ３ａ，３ｂと、複数の伝送路４ａａ〜４ｄｂからなる伝送路群４と、複数の伝送路５ａａ〜５ｂｂからなる伝送路群５とから構成されている。
【００１８】
転送制御部１ａ〜１ｄは、データ転送の起動や完了を司る機能などを有する。転送制御部１ａ〜１ｄと転送経路スイッチ２ａ，２ｂとの間には、伝送路群４が存在し、各転送制御部１ａ〜１ｄは、それぞれ伝送路４ａａ，４ｂａ，４ｃａ，４ｄａを介して転送路スイッチ２ａに接続され、伝送路４ａｂ，４ｂｂ，４ｃｂ，４ｄｂを介して転送路スイッチ２ｂに接続されている。
【００１９】
転送経路スイッチ２ａは、転送制御部側の伝送路４ａａ，４ｂａ，４ｃａ，４ｄａの内の、任意の１つの伝送路と、共有メモリ側の伝送路５ａａ，５ａｂの内の、任意の１つの伝送路とを接続する機能を有する。また、転送経路スイッチ２ｂは、転送制御部側の伝送路４ａｂ，４ｂｂ，４ｃｂ，４ｄｂの内の、任意の１つの伝送路と、共有メモリ側の伝送路５ｂａ，５ｂｂの内の、任意の１つの伝送路とを接続する機能を有する。
【００２０】
転送経路スイッチ２ａ，２ｂと共有メモリ３ａ，３ｂとの間には、伝送路群５が存在しており、各転送経路スイッチ２ａ，２ｂは、それぞれ伝送路５ａａ，５ｂａを介して共有メモリ３ａに接続され、伝送路５ａｂ，５ｂｂを介して共有メモリ３ｂに接続されている。
【００２１】
共有メモリ３ａ，３ｂは、転送制御部１ａ〜１ｄからの転送データをメモリライトする機能や、転送制御部１ａ〜１ｄの要求に応じてメモリリードする機能を持つ。
【００２２】
図２は、図１の転送制御部１ａの内部構成例を示したブロック図であり、転送要求生成手段１１と、転送ノード選択手段１２と、ノード制御手段１３ａ，１３ｂと、転送応答監視手段１４と、経路負荷情報記憶手段１５と、経路負荷解析手段１６と、記録媒体Ｋ１とを備えている。なお、他の転送制御部１ｂ〜１ｄも転送制御部１ａと同様の構成を有している。
【００２３】
転送要求生成手段１１は、アプリケーションプログラム（図示せず）等からの転送指示に従って、共有メモリ３ａ，３ｂとの間でデータ転送を行うために必要になる転送要求３１を生成する機能を有する。
【００２４】
転送ノード選択手段１２は、転送要求生成手段１１から出力される転送要求３１を、経路負荷解析手段１６から加えられるノード選択指示３２に従ってノード制御手段１３ａ，１３ｂの何れか一方に出力する機能や、転送要求３１の出力先のノード制御手段を示すノード情報と、リードライト種別とを含んだ転送起動報告３３を転送応答監視手段１４に出力する機能などを有する。
【００２５】
ノード制御手段１３ａ，１３ｂは、それぞれ伝送路４ａａ，４ａｂを介して転送経路スイッチ２ａ，２ｂに接続されている。また、ノード制御手段１３ａ，１３ｂは、それぞれ転送要求３１が入力されたとき、転送経路スイッチ２ａ，２ｂに対して利用要求を出力する機能や、この利用要求に応答して転送経路スイッチ２ａ，２ｂから利用許可が送られてくることにより、転送要求３１に従ってデータ転送を行う機能や、共有メモリ３ａ，３ｂからライト，リード完了を示す転送応答報告３４が戻ってきたとき、それを転送応答監視手段１４に渡す機能を有する。
【００２６】
転送応答監視手段１４は、データ転送が行われる毎に、データ転送に使用した経路を示す経路情報（ノード制御手段１３ａを介する経路か、ノード制御手段１３ｂを介する経路かを示す経路情報）と、上記経路の負荷を示す負荷情報とを含む経路負荷情報を作成し、経路負荷情報記憶手段１５に追加登録する機能や、経路負荷解析手段１６に対して、新たな経路負荷情報の登録を行ったことを示す登録報告３５を通知する機能を有する。
【００２７】
経路負荷解析手段１６は、転送応答監視手段１４から登録報告３５が通知されると、経路負荷情報記憶手段１５に登録されている経路負荷情報に基づいて、自転送制御部１ａとアクセス先の共有メモリとの間に存在する複数の経路の中から低負荷の経路を１つ選択する機能や、選択した経路を示すノード選択指示３２を転送ノード選択手段１２に渡す機能などを有する。
【００２８】
記録媒体Ｋ１は、ディスク，半導体メモリ，その他の記録媒体であり、コンピュータを転送制御部１ａとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、その動作を制御することで、コンピュータ上に、転送要求生成手段１１、転送ノード選択手段１２、ノード制御手段１３ａ，１３ｂ、転送応答監視手段１４、経路負荷情報記憶手段１５、経路負荷解析手段１６を実現する。
【００２９】
【動作の説明】
以下、本実施の形態の動作について、詳細に説明する。
【００３０】
今、例えば、転送制御部１ａ内の転送要求生成手段１１に図示を省略したアプリケーションプログラムから転送指示が通知されたとする。転送要求生成手段１１は、上記転送指示に基づいて転送要求３１を生成し、転送ノード選択手段１２に出力する（図３、ステップＳ３１）。
【００３１】
このステップＳ３１の処理を詳しく説明すると、次のようになる。上記アプリケーションプログラムは、データを共有メモリ３ａ或いは共有メモリ３ｂにライトする場合には、例えば、ライト先の共有メモリ，ライトアドレス，データサイズ，ライトデータの保存場所，リードライト種別（ライト）等を含む転送指示を転送要求生成手段１１に渡す。また、共有メモリ３ａ或いは共有メモリ３ｂからデータをリードする場合には、例えば、リード先の共有メモリ，リードアドレス，データサイズ，リードライト種別（リード）等を含む転送指示を転送要求生成手段１１に渡す。転送要求生成手段１１は、アプリケーションプログラムからの転送指示が、共有メモリ３ａ或いは共有メモリ３ｂへのデータライトを指示するものである場合には、上記転送指示に基づいて、ライト先の共有メモリ，ライトアドレス，データサイズ，ライトデータの保存場所，リードライト種別（ライト）を含む転送要求３１を生成し、転送ノード選択手段１２に出力する。これに対して、アプリケーションプログラムからの転送指示が、共有メモリ３ａ或いは共有メモリ３ｂからのデータリードを指示するものである場合には、上記転送指示に基づいて、リード先の共有メモリ，リードアドレス，データサイズ，リードライト種別（リード）を含む転送要求３１を生成し、転送ノード選択手段１２に出力する。以上がステップＳ３１で行う処理の詳細である。
【００３２】
転送ノード選択手段１２は、転送要求生成手段１１から転送要求３１が渡されると、経路負荷解析手段１６から出力されているノード選択指示３２に従って、上記転送要求３１をノード制御手段１３ａ，１３ｂの内の一方（例えば、ノード制御手段１３ａとする）に出力する（ステップＳ３２）。その後、転送ノード選択手段１２は、転送要求３１の出力先としたノード制御手段（この例の場合は、ノード制御手段１３ａ）を示すノード情報、データサイズ及びリードライト種別を含んだ転送起動報告３３を転送応答監視手段１４に渡す（ステップＳ３３）。
【００３３】
ノード制御手段１３ａは、転送ノード選択手段１２から転送要求３１が渡されると、転送経路スイッチ２ａに対して利用要求を送る（ステップＳ３４）。この利用要求には、アクセス先の共有メモリ（例えば、共有メモリ３ｂ）が含まれている。
【００３４】
転送経路スイッチ２ａは、ノード制御手段１３ａから利用要求が送られてくると、アクセス先の共有メモリ３ｂへ伝送路５ａｂが未使用であれば、伝送路４ａａと伝送路５ａｂとを接続することにより、転送制御部１ａと共有メモリ３ｂとの間にデータの転送経路を形成し、その後、要求元の転送制御部１ａに対して利用許可を与える。これに対して、アクセス先の共有メモリ３ｂへの伝送路５ａｂが使用中である場合は、ノード制御手段１３ａからの利用要求を待ち行列（図示せず）につなぐ。そして、伝送路５ａｂが未使用になると、待ち行列から上記利用要求を読み出し、この利用要求に従って伝送路４ａａと伝送路５ａｂとを接続し、その後、要求元の転送制御部１ａに対して利用許可を与える。
【００３５】
転送制御部１ａ内のノード制御手段１３ａは、転送経路スイッチ２ａから転送許可が与えられると、データ転送要求３１に従って、データ転送を行う（ステップＳ３５）。
【００３６】
例えば、データ転送要求３１が、ライト先の共有メモリ，ライトアドレス，データサイズ，ライトデータの保存場所，リードライト種別（ライト）を含むものである場合は、リードライト種別（ライト），ライトアドレス，データサイズ及び上記ライトデータの保存場所から読み出したデータを伝送路４ａａ→転送経路スイッチ２ａ→伝送路５ａｂを介して共有メモリ３ｂへ転送し、データを共有メモリ３ｂにライトする。また、例えば、データ転送要求が、リード先の共有メモリ，リードアドレス，データサイズ，リードライト種別（リード）を含むものである場合は、リードライト種別（リード），リードアドレス，データサイズを伝送路４ａａ→転送経路スイッチ２ａ→伝送路５ａｂを介して共有メモリ３ｂに送り、共有メモリ３ｂからデータをリードする。
【００３７】
共有メモリ３ｂは、データのライト或いはリードが完了すると、そのことを示す転送応答報告３４を、伝送路５ａｂ→転送経路スイッチ２ａ→伝送路４ａａを介して転送制御部１ａに送信する（ステップＳ３６）。
【００３８】
上述したようにして、転送制御部１ａと共有メモリ３ｂとの間でデータ転送が行われている間、転送制御部１ａ内の転送応答監視手段１４は、図４の流れ図に示す処理を行っている。
【００３９】
転送応答監視手段１４は、転送ノード選択手段１２から転送起動報告３３が渡されると、その時の時刻（現在時刻）Ｔ１を取得し、取得した現在時刻Ｔ１と転送起動報告３３とを内部に保持する（図４、ステップＳ４１，Ｓ４２）。
【００４０】
その後、転送応答監視手段１４は、ノード制御手段１３ａ或いはノード制御手段１３ｂから転送応答報告３４が送られてくるのを待つ（ステップＳ４３）。
【００４１】
そして、ノード制御手段１３ａから転送応答報告３４が送られてくると、転送応答監視手段１４は、現在時刻Ｔ２を取得する（ステップＳ４４）。その後、転送応答監視手段１４は、次式（１）に示す演算を行うことにより、負荷情報を求める（ステップＳ４５）。
【００４２】
負荷情報＝（データサイズ）／（Ｔ２−Ｔ１）  …  （１）
【００４３】
なお、式（１）において、データサイズは、転送起動報告３３に含まれているデータサイズである。
【００４４】
次いで、転送応答監視手段１４は、ステップＳ４５で求めた負荷情報と、転送起動報告３３によって報告されたデータ転送に使用したノード制御手段（この例ではノード制御手段１３ａ）を示す情報と、転送起動報告３３によって報告されたリードライト種別とを含む経路負荷情報を作成し、それを経路負荷情報記憶手段１５に追加登録する（ステップＳ４６）。その後、転送応答監視手段１４は、新たな経路負荷情報を登録したことを示す登録報告３５を経路負荷解析手段１６に通知する（ステップＳ４７）。
【００４５】
経路負荷解析手段１６は、転送応答監視手段１４から登録報告３５が送られてくると、経路負荷情報記憶手段１５に登録されている経路負荷情報を全て読み出す（図５、ステップＳ５１）。
【００４６】
その後、経路負荷解析手段１６は、ノード制御手段１３ａを介する経路が高負荷であるか否かを判定する（ステップＳ５２）。このステップＳ５２の処理を詳しく説明すると、次のようになる。
【００４７】
先ず、ステップＳ５１で読み込んだ経路負荷情報を最新のものから古いものに向かって順番に検索し、使用したノード制御手段を示すノード情報が「ノード制御手段１３ａ」となっているものを所定数（Ｎ個）、選択する。次いで、選択したＮ個の経路負荷情報中の負荷情報の平均値を求める。その平均値と予め定められている閾値とを比較することにより、ノード制御手段１３ａを介する経路が高負荷であるか否かを判定する。即ち、平均値が閾値以下であれば、高負荷と判定し、そうでなければ低負荷と判定する。以上が、ステップＳ５２で行う処理の詳細である。
【００４８】
そして、ステップＳ５２で、ノード制御手段１３ａを介する経路が低負荷状態であると判定した場合（ステップＳ５２がＮｏ）は、ノード制御手段１３ａを示すノード選択指示３２を転送ノード選択手段１２に対して出力し、次回のデータ転送時には、転送ノード選択手段１２にノード制御手段１３ａを使用させる（ステップＳ５５）。
【００４９】
これに対して、ステップＳ５２で、ノード制御手段１３ａを介する経路が高負荷であると判定した場合（ステップＳ５２がＹｅｓ）は、もう一方のノード制御手段１３ｂを介する経路が高負荷状態であるか否かを、ステップＳ５２と同様にして判定する（ステップＳ５３）。この時、使用する閾値は、ステップＳ５２で使用した閾値と同一値である。
【００５０】
そして、ノード制御手段１３ｂを介する経路が低負荷状態であると判定した場合（ステップＳ５３がＮｏ）は、ノード制御手段１３ｂを示すノード選択指示３２を転送ノード選択手段１２に対して出力し、次回のデータ転送時には、転送ノード選択手段１２にノード制御手段１３ｂを使用させる（ステップＳ５６）。
【００５１】
これに対して、ノード制御手段１３ａ，１３ｂを介する経路が両方とも高負荷状態であると判定した場合（ステップＳ５３がＹｅｓ）は、どちらの経路の方が低負荷であるかを調べる（ステップＳ５４）。そして、ノード制御手段１３ａを介する経路の方が低負荷である場合（ステップＳ５４がＮｏ）は、ノード制御手段１３ａを示すノード選択指示３２を転送ノード選択手段１２に対して出力し（ステップＳ５５）、ノード制御手段１３ｂを介する経路の方が低負荷である場合（ステップＳ５４がＹｅｓ）は、ノード制御手段１３ｂを示すノード選択指示３２を転送ノード選択手段１２に対して出力する（ステップＳ５６）。
【００５２】
以上説明したように、本実施の形態によれば、複数存在する経路の内の、負荷の低い経路を利用してデータ転送を行うことが可能になるので、データ転送を効率的に行うことが可能になる。
【００５３】
【発明の他の実施の形態】
上述した実施の形態では、図１に示した転送制御部１ａ〜１ｄとして図２に示す構成の転送制御部１ａを使用するようにしたが、本実施の形態では、図６に示す構成の転送制御部１ａ’を使用する。図６の転送制御部１ａ’は、経路の負荷状態を判定する際に使用する閾値を、経路毎に設定できるようにした点を特徴としている。
【００５４】
図６に示した転送制御部１ａ’は、図２に示した転送制御部１ａと、閾値設定手段１７が追加されている点、経路負荷解析手段１６の代わりに経路負荷解析手段１６’を備えている点、及び記録媒体Ｋ１の代わりに記録媒体Ｋ２を備えている点が相違している。
【００５５】
閾値設定手段１７には、ユーザによって各経路毎の閾値が設定される。本実施の形態の場合、閾値設定手段１７には、ノード制御手段１３ａを介する経路のＴｈａ閾値と、ノード制御手段１３ｂを介する経路の閾値Ｔｈｂが、それぞれ設定される。ノード制御手段１３ａ，１３ｂを介する経路に対して設定する閾値Ｔｈａ，Ｔｈｂは、同一値であっても、異なる値であっても構わない。
【００５６】
経路負荷解析手段１６’は、経路の負荷状態を判定する際に使用する閾値として、閾値設定手段１７に設定されている閾値Ｔｈａ，Ｔｈｂを利用する点以外は、経路負荷解析手段１６と同様の機能を有している。
【００５７】
記録媒体Ｋ２は、ディスク，半導体メモリ，その他の記録媒体であり、コンピュータを転送制御部１ａ’として機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、その動作を制御することで、コンピュータ上に、転送要求生成手段１１、転送ノード選択手段１２、ノード制御手段１３ａ，１３ｂ、転送応答監視手段１４、経路負荷情報記憶手段１５、経路負荷解析手段１６’、閾値設定手段１７を実現する。
【００５８】
【他の実施の形態の動作】
本実施の形態の動作は、経路負荷解析手段１６’の動作だけが前述した実施の形態と異なるので、ここでは、経路負荷解析手段１６’の動作についてのみ説明する。
【００５９】
経路負荷解析手段１６’は、転送応答監視手段１４から登録報告３５が通知されると、図７の流れ図に示すように、閾値設定手段１７に設定されている閾値Ｔｈａ、Ｔｈｂを読み込む（ステップＳ７１）。
【００６０】
次に、経路負荷解析手段１６’は、経路負荷情報記憶手段１５から経路負荷情報を読み込む（ステップＳ５１）。その後、ステップＳ５２’において、ステップＳ７１で読み込んだ閾値Ｔｈａを使用してノード制御手段１３ａを介する経路が高負荷状態であるか否かを判定する。
【００６１】
そして、高負荷状態でなければ、前述したステップＳ５５と同様の処理を行う。これに対して、高負荷状態であった場合は、ステップＳ７１で読み込んだ閾値Ｔｈｂを使用してノード制御手段１３ｂを介する経路が高負荷であるか否かを判定する（ステップＳ５３’）。その後、判断結果に従って、前述したステップＳ５４或いはステップＳ５６と同様の処理を行う。
【００６２】
このように、本実施の形態によれば、各経路毎に負荷状態を判定する際に使用する閾値を設定することができるので、複数ある経路の転送割合を異なるものにすることができる。例えば、閾値Ｔｈａを閾値Ｔｈｂに比較して大きな値としておくことにより、ノード制御手段１３ａを介する経路によって転送されるデータ量を、ノード制御手段１３ｂを介する経路によって転送されるデータ量よりも少なくすることができる。
【００６３】
【発明のその他の実施の形態】
上述した各実施の形態では、４個の転送制御部１ａ〜１ｄと、２個の転送経路スイッチ２ａ，２ｂと、２個の共有メモリ３ａ，３ｂとを備えたデータ転送システムを例に挙げて説明を行ったが、各構成要素の個数は、これに限定されるものではない。
【００６４】
図８に４個の転送制御部２０１ａ〜２０１ｄと、４個の転送経路スイッチ２０２ａ〜２０２ｄと、４個の共有メモリ２０３ａ〜２０３ｄとを備えたデータ転送システムの構成例を示す。この構成においては、各転送制御部２０１ａ〜２０１ｄは、１つの共有メモリに対して、４つのデータ転送経路を有していることになる。例えば、転送制御部２０１ｃは、共有メモリ２０３ａに対して、転送経路スイッチ２０２ａ，２０２ｂ，２０２ｃ，２０２ｄを介する４つのデータ転送経路を有していることになる。
【００６５】
図９は、図８に示した転送制御部２０１ａの構成例を示すブロック図である。同図に示すように、転送制御部２０１ａは、転送要求生成手段２１１と、転送ノード選択手段２１２と、ノード制御手段２１３ａ〜２１３ｄと、転送応答監視手段２１４と、経路負荷情報記憶手段２１５と、経路負荷解析手段２１６と、記録媒体Ｋ３とを備えている。なお、他の転送制御部２０１ｂ〜２０１ｄも、転送制御部２０１ａと同様の構成を有している。
【００６６】
転送要求生成手段２１１は、図２の転送要求生成手段１１と同様の機能を有し、アプリケーションプログラム等からの転送指示に従って転送要求２３１を出力する。
【００６７】
転送ノード選択手段２１２は、図２の転送ノード制御手段１２とほぼ同様の機能を有し、経路負荷解析手段２１６からのノード選択指示２３２に従って、ノード制御手段２１３ａ〜２１３ｄの内の何れか１つに転送要求２３１を送出する。また、これと同時に、転送応答監視手段２１４に対して転送起動報告２３３を出力する。
【００６８】
ノード制御手段２１３ａ〜２１３ｄは、図２のノード制御手段１３ａ，１３ｂと同様の機能を有し、転送要求２３１に従って共有メモリ２０３ａ〜２０３ｄとの間でデータ転送を行ったり、共有メモリ２０３ａ〜２０３ｄからの転送応答報告２３４を転送応答監視手段２１４に通知する。
【００６９】
転送応答監視手段２１４は、図２の転送応答監視手段１４とほぼ同様の機能を有し、転送ノード選択手段２１２からの転送起動報告２３３とノード制御手段２１３ａ〜２１３ｄからの転送応答報告２３４とに基づいて経路負荷情報を作成し、経路負荷情報記憶手段２１５に追加登録する。また、経路負荷情報を登録すると、経路負荷解析手段２１６に対して登録報告２３５を通知する。
【００７０】
経路負荷解析手段２１６は、図２の経路負荷解析手段１６とほぼ同様の機能を有し、転送応答監視手段２１４から登録報告２３５が通知されると、経路負荷情報記憶手段２１５に登録されている経路負荷情報に基づいて、ノード制御手段２１３ａ〜２１３ｄの内の１つを選択させるためのノード選択指示２３２作成し、転送ノード選択手段２１２に対して出力する。
【００７１】
記録媒体Ｋ３は、ディスク，半導体メモリ，その他の記録媒体であり、コンピュータを転送制御部２０１ａとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、その動作を制御することで、コンピュータ上に、転送要求生成手段２１１と、転送ノード選択手段２１２と、ノード制御手段２１３ａ〜２１３ｄ，転送応答監視手段２１４，経路負荷情報記憶手段２１５，経路負荷解析手段２１６を実現する。
【００７２】
【発明の効果】
第１の効果は、複数の転送制御部と複数の共有メモリとの間のデータ転送効率を高いものにすることができるということである。その理由は、転送経路スイッチ毎に存在する複数の経路の内の低負荷の経路を使用してデータ転送を行うようにしたからである。
【００７３】
第２の効果は、各経路のデータの転送割合を異なるものにできるという点である。その理由は、経路の負荷状態を判定する際に使用する閾値の値を経路毎に異なるものにしたからである。
【００７４】
第３の効果は、各経路のデータの転送割合を自由に変更できるということである。その理由は、経路の負荷状態を判定する際に使用する閾値を設定する閾値設定手段を備えているからである。
【図面の簡単な説明】
【図１】本発明の一実施の形態を示すブロック図である。
【図２】転送制御部１ａの構成例を示すブロック図である。
【図３】転送制御部１ａの処理例を示す流れ図である。
【図４】転送応答監視手段１４の処理例を示す流れ図である。
【図５】経路負荷解析手段１６の処理例を示す流れ図である。
【図６】本発明の他の実施の形態を示すブロック図である。
【図７】経路負荷解析手段１６’の処理例を示す流れ図である。
【図８】本発明のその他の実施の形態を示すブロック図である。
【図９】転送制御部２０１ａの構成例を示すブロック図である。
【符号の説明】
１ａ〜１ｄ，１ａ’，２０１ａ〜２０１ｄ…転送制御部
１１，２１１…転送要求生成手段
１２，２１２…転送ノード選択手段
１３ａ，１３ｂ，２１３ａ〜２１３ｄ…ノード制御手段
１４，２１４…転送応答監視手段
１５，２１５…経路負荷情報記憶手段
１６，１６’，２１６…経路負荷解析手段
１７…閾値設定手段
Ｋ１，Ｋ２，Ｋ３…記録媒体
２ａ，２ｂ，２０２ａ〜２０２ｄ…転送経路スイッチ
３ａ，３ｂ，２０３ａ〜２０３ｄ…共有メモリ
４，５…伝送路群
【図１】
2004152062.tif 000003
【図２】
2004152062.tif 000004
【図３】
2004152062.tif 000005
【図４】
2004152062.tif 000006
【図５】
2004152062.tif 000007
【図６】
2004152062.tif 000008
【図７】
2004152062.tif 000009
【図８】
2004152062.tif 000010
【図９】
2004152062.tif 000011