JP4207657B2 - Logical path control method, relay server, and program - Google Patents
Logical path control method, relay server, and program Download PDFInfo
- Publication number
- JP4207657B2 JP4207657B2 JP2003136840A JP2003136840A JP4207657B2 JP 4207657 B2 JP4207657 B2 JP 4207657B2 JP 2003136840 A JP2003136840 A JP 2003136840A JP 2003136840 A JP2003136840 A JP 2003136840A JP 4207657 B2 JP4207657 B2 JP 4207657B2
- Authority
- JP
- Japan
- Prior art keywords
- terminal
- path
- host computer
- logical path
- relay server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 42
- 238000004891 communication Methods 0.000 claims description 25
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 description 51
- 230000008569 process Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 22
- 206010048669 Terminal state Diseases 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 239000000284 extract Substances 0.000 description 9
- 230000008859 change Effects 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 238000012546 transfer Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ホストコンピュータと端末とが中継サーバを介して通信を行うオンラインシステムに関し、特に、通信経路の効率的な利用および信頼性の向上を可能にする技術に関する。
【0002】
【従来の技術】
ネットワークを介して接続された業務端末とホストコンピュータとからなるオンラインシステムにおいては、クライアントサーバモデルあるいは3層モデルの普及に伴い、業務端末数および通信量は増大の一途を辿り、通信経路の枯渇が問題となることが多い。
【0003】
通信経路の効率的な利用を可能にする従来の技術としては、通信経路を物理パス層と論理パス層との2層に分割し、物理パスを複数の論理パスにより共有利用する技術が知られている(例えば、特許文献1参照)。
【0004】
この特許文献1に記載されているオンラインシステムは、ホストコンピュータと複数の端末とを中継サーバを介して接続し、更に、ホストコンピュータと中継サーバとを接続する物理パスを複数の論理パスで共有することにより、通信経路を有効利用できるようにしている。即ち、ホストコンピュータが複数の端末と通信を行う場合であっても、ホストコンピュータと中継サーバとの間の物理パスは1本で済むので、通信経路を有効利用することが可能になる。また、特許文献1に記載されているオンラインシステムにおいては、信頼性を向上させるため、中継サーバとホストコンピュータとの間に複数の物理パスを設定しておき、メッセージを送受信する際には、上記複数の物理パスの内の正常な物理パスを使用してメッセージを送受信するようにしている。
【0005】
【特許文献1】
特開2002−300187号公報
【0006】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1に記載されている従来の技術は、物理パスの障害には耐え得る構成を持つものの、業務プログラムを処理するホストコンピュータの障害には耐え得る構成を持たないという問題がある。例えば、物理的な障害による計算機システム全体停止や、論理的な障害による業務プログラム実行手段の停止などが発生した場合に、業務端末は通信障害となり、端末から要求される業務を継続処理することができなくなってしまう。
【0008】
そこで、本発明の目的は、中継サーバを経由して端末とホストコンピュータとが通信を行う形態のオンラインシステムにおいて、ホストコンピュータに障害が発生した場合であっても、物理パスに障害が発生した場合であっても通信の継続を可能にすることにある。
【0009】
【課題を解決するための手段】
本発明にかかる論理パス制御方法は、上記目的を達成するため、
端末と複数のホストコンピュータとが中継サーバを介して接続されたオンラインシステムにおける論理パス制御方法であって、
前記中継サーバと前記各ホストコンピュータとの間それぞれを、通信プロトコルに応じたパスである複数の物理パスによって接続する物理パス接続ステップと、
前記端末からの接続要求に応答して、前記中継サーバと前記各ホストコンピュータとの間それぞれに物理パスを論理的に分割することにより得られるパスである論理パスを設定し、該設定した各ホストコンピュータ毎の論理パスを介して前記端末と前記各ホストコンピュータとを接続する接続ステップと、
前記中継サーバが、前記端末からメッセージが送られてきたとき、前記接続ステップで設定した前記各ホストコンピュータ毎の論理パスの中から障害が発生していないホストコンピュータに対応する論理パスを選択すると共に該選択した論理パスに対応するホストコンピュータと自中継サーバとを接続する複数の物理パスの中から1つの物理パスを選択し、該選択した物理パスと前記選択した論理パスとを用いて前記メッセージをホストコンピュータに送信するメッセージ送信ステップとを含む。
【0010】
より具体的には、本発明にかかる論理パス制御方法は、
前記中継サーバが、前記各ホストコンピュータの状態が稼働中、待機中、障害中の何れであるのかを収集する収集ステップを含み、且つ、
前記メッセージ送信ステップにおいて論理パスを選択する際、前記収集ステップで収集した状態が稼働中になっているホストコンピュータに対応する論理パスを選択することを特徴とする。
【0011】
また、論理パスの選択方法として、上記した方法以外にも、
前記中継サーバが、前記各ホストコンピュータのビジー率を収集する収集ステップを含み、且つ、
前記メッセージ送信ステップにおいて論理パスを選択する際、前記収集ステップで収集したビジー率が最も小さいホストコンピュータに対応する論理パスを選択する方法を採用することもできる。
【0012】
また、本発明にかかる論理パス制御方法は、中継サーバの障害にも対処できるようにするため、
端末と、複数のホストコンピュータと、それぞれが前記端末と前記複数のホストコンピュータとを接続する複数の中継サーバとを備えたオンラインシステムにおける論理パス制御方法であって、
前記各中継サーバと前記各ホストコンピュータとの間それぞれを、通信プロトコルに応じた通信パスである複数の物理パスによって接続する物理パス接続ステップと、
前記各中継サーバの内の、前記端末からの接続要求を受信した中継サーバが、自中継サーバと前記各ホストコンピュータとの間それぞれに物理パスを論理的に分割することにより得られるパスである論理パスを設定し、該設定した各ホストコンピュータ毎の論理パスを介して前記端末と前記各ホストコンピュータとを接続する接続ステップと、
前記各中継サーバの内の、前記端末からのメッセージを受信した中継サーバが、前記接続ステップで設定した前記各ホストコンピュータ毎の論理パスの中から障害が発生していないホストコンピュータに対応する論理パスを選択すると共に該選択した論理パスに対応するホストコンピュータと自中継サーバとを接続する複数の物理パスの中から1つの物理パスを選択し、該選択した物理パスと前記選択した論理パスとを用いて前記メッセージをホストコンピュータに送信するメッセージ送信ステップと、
前記各中継サーバが、前記各ホストコンピュータから、そのホストコンピュータと論理パスを介して接続されている端末に関する端末情報を収集する収集ステップと、
前記各中継サーバが、自中継サーバの前記収集ステップで収集した端末情報によって示される端末の中に、自中継サーバを介した論理パスによってはホストコンピュータと接続されていない端末が存在する場合は、該端末と前記各ホストコンピュータとを自中継サーバを介した論理パスにより接続する障害対策用論理パス接続ステップとを含むことを特徴とする。
【0013】
【作用】
本発明においては、中継サーバと各ホストコンピュータとの間に設定されている論理パスの内の、障害が発生していないホストコンピュータに対応する論理パスと、上記ホストコンピュータとの間に複数設定されている物理パスの内の1つを使用してメッセージを送信するようにしているので、ホストコンピュータに障害が発生した場合であっても、物理パスに障害が発生した場合であっても、通信を継続することができる。
【0014】
また、本発明においては、各中継サーバが、各ホストコンピュータからそのホストコンピュータと論理パスを介して接続されている端末に関する端末情報を収集し、収集した端末情報によって示される端末の中に、自中継サーバを介した論理パスによってはホストコンピュータと接続されていない端末が存在する場合は、その端末と各ホストコンピュータとを自中継サーバを介した論理パスにより接続するようにしているので、中継サーバの障害にも容易に対応することができる。
【0015】
【発明の実施の形態】
次に本発明の実施の形態について図面を参照して詳細に説明する。
【0016】
【実施例の構成】
先ず、本発明の第1の実施例について説明する。本実施例は、ホットスタンバイシステムなど、稼働系ホストコンピュータと待機系ホストコンピュータとが存在するシステムに本発明を適用したものである。図1を参照すると、本発明の第1の実施例は、複数のホストコンピュータ(ホスト)1a、1bと、中継サーバ2と、複数の業務端末3a、3bと、各ホストコンピュータ1a、1bによって共用されるデータベース(DB)4とから構成されている。
【0017】
ホストコンピュータ1a、1bと端末3a、3bとは中継サーバ2を介して、論理的な通信経路を確立し相互に通信を行う。
【0018】
ホストコンピュータ1a、1bは、それぞれパス管理手段11、11'と、物理パス状態表12、12'と、論理パス状態表13、13'と、業務プログラム実行手段14、14'と、操作卓15、15'と、記録媒体K1a、K1bとを備えている。
【0019】
物理パス状態表12は、ホストコンピュータ1aと中継サーバ2とを接続する各物理パスの状態を管理する。また、物理パス状態表12'は、ホストコンピュータ1bと中継サーバ2とを接続する各物理パスの状態を管理する。図2(a)、(b)に物理パス状態表12、12'の内容例を示す。
【0020】
図2(a)、(b)に示すように、物理パス状態表12、12'は、項目「物理パス定義名」、「グループ」、「物理パス状態」、「自側物理アドレス」、「相手側物理アドレス」を有している。この内の「物理パス定義名」、「グループ」、「自側物理アドレス」、「相手側物理アドレス」が、物理パスを定義(特定)するために予め登録されている定義情報であり、残りの「物理パス状態」が物理パスの状態に応じて変化する状態情報である。尚、「物理パス定義名」は物理パスに付与されている定義名を表し、「グループ」は物理パスが属しているグループを表し、「物理パス状態」はその物理パスが現在「接続」状態なのか「未接続」状態なのかを表し、「自側物理アドレス」、「相手側物理アドレス」は物理パスによって接続されるホストコンピュータのアドレス、中継サーバのアドレスを表す。
【0021】
また、図2(a)、(b)に示した物理パス状態表12、12'は、それぞれエントリNo.「1」〜「4」の4個のエントリを有しており、各エントリにおいて、「物理パス定義名」、「グループ」、「自側物理アドレス」、「相手側物理アドレス」によって定義(特定)される物理パスの状態を管理している。例えば、図2(a)の例において、エントリNo.「1」のエントリは、物理パス定義名「P1-SERVER」、グループ名「SERVER」、自側物理アドレス「10.1.1.1(10000)」,相手側物理アドレス「10.1.1.3(30011)」によって定義される物理パスが、現在「接続」状態になっていること示している。また、図2(b)の例において、エントリNo.「4」のエントリは、物理パス定義名「P4-SERVER」、グループ名「SERVER」、自側物理アドレス「10.1.1.2(10000)」、相手側物理アドレス「10.1.1.3(30024)」とによって定義される物理パスが、現在「未接続」状態になっていることを示している。
【0022】
論理パス状態表13は、ホストコンピュータ1aと端末とを接続する論理パスの状態を管理する。また、論理パス状態表13'は、ホストコンピュータ1bと端末とを接続する論理パスの状態を管理する。図3(a)、(b)に論理パス状態表13、13'の内容例を示す。
【0023】
図3(a)、(b)に示すように、論理パス状態表13、13'は、項目「論理パス定義名」、「端末定義名」、「グループ」、「論理パス状態」、「論理パス識別子」を有している。この内の「論理パス定義名」、「端末定義名」、「グループ」が論理パスを定義するために予め登録されている定義情報であり、残りの「論理パス状態」、「論理パス識別子」が論理パスの状態に応じて変化する状態情報である。尚、「論理パス定義名」は論理パスに付与されている定義名を示し、「端末定義名」は論理パスを使用する端末に付与されている端末定義名を示し、「グループ」は論理パスが通信を行うために使用することができる物理パスが属しているグループのグループ名を示し、「論理パス状態」は論理パスが現在「接続」状態にあるのか、「未接続」状態にあるのかを示し、「論理パス識別子」は論理パスに付与された識別子を示す。
【0024】
また、図3(a)、(b)に示す論理パス状態表13、13'は、それぞれエントリNo.「1」〜「3」の3個のエントリを有し、各エントリにおいて「論理パス定義名」、「端末定義名」、「グループ」によって定義される論理パスの状態を管理している。例えば、図3(a)の例において、エントリNo.「1」のエントリは、論理パス定義名「L1」、端末定義名「TERM-A」、グループ名「SERVER」によって定義される論理パスが、現在「接続」状態にあり、論理パス識別子として「LID-H1-00001」が付与されていることを示している。また、図3(b)の例において、エントリNo.「2」のエントリは、論理パス定義名「L2」、端末定義名「TERM-B」、グループ「SERVER」によって定義されている論理パスが、現在「未接続」状態であることを示している。なお、論理パス状態が「未接続」になっているエントリには、論理パス識別子は設定されない。
【0025】
パス管理手段11は、物理パス制御手段111a〜111cと、パス選択手段112と、論理パス制御手段113a〜113cとから構成される。尚、パス管理手段11'も同様の構成を有する。
【0026】
物理パス制御手段111a〜111cは、中継サーバ2との間の物理パスを制御する。物理パス制御手段111a〜111cは、物理パスの接続・切断に伴い、動的に生成・消滅する。物理パス制御手段111a〜111cは、その生成時には、物理パス状態表12の該当エントリ中の物理パス状態を「接続」に変更し、消滅時には「未接続」に変更する。
【0027】
論理パス制御手段113a〜113cは、中継サーバ2との間の論理パスを制御する。論理パス制御手段113a〜113cは、論理パスの接続・切断に伴い、動的に生成・消滅する。論理パス制御手段113a〜113cは、その生成時には、論理パスを識別するための論理パス識別子を生成し、論理パス状態表13の該当エントリに格納すると共に、中継サーバ2上の対応する論理パス制御手段213a〜213cへ論理パス識別子を配布する。
【0028】
パス選択手段112は、論理パス制御手段113a〜113cからの依頼に従って、その論理パス制御手段113a〜113cが管理・制御している論理パスが所属している「グループ」中の物理パスの中から、「接続」状態にある物理パスを1つ選択する機能を有する。より具体的には、論理パス制御手段113a〜113cから「グループ」を指定した依頼が渡されることにより、上記「グループ」をキーにして物理パス状態表12を検索し、上記「グループ」に属し、且つ物理パス状態が「接続」になっている物理パスを1つ選択する機能を有する。
【0029】
業務プログラム実行手段14は、複数の業務プログラム141a、141bおよび制御用業務プログラム142を格納し、業務端末から送信されたメッセージに応じた業務プログラムを選択し、実行する機能を有する。業務プログラム141a、141bからは複数のホストコンピュータ1a、1bに接続されたデータベース4を参照・更新することができる。制御用業務プログラム142は、業務プログラムを制御用にカスタマイズしたものであり、制御端末制御手段242からの実行要求のみにより実行され、制御用データを返却する機能を有する。
【0030】
操作卓15は、操作員の操作に従って各種コマンドをホストコンピュータ1aに投入する機能を有する。
【0031】
記録媒体K1aは、ディスク、半導体メモリ、その他の記録媒体であり、ホストコンピュータ1aをオンラインシステムの一部として機能させるためのプログラムが記録されている。このプログラムは、ホストコンピュータ1aによって読み取られ、その動作を制御することで、ホストコンピュータ1a上にパス管理手段11、物理パス状態表12、論理パス状態表13、業務プログラム実行手段14を実現する。
【0032】
中継サーバ2は、パス管理手段21と、物理パス状態表22と、論理パス状態表23と、端末管理手段24と、ホスト情報収集手段25と、端末状態表26と、論理パス選択手段27と、操作卓28と、記録媒体K2とを備えている。
【0033】
物理パス状態表22は、中継サーバ2とホストコンピュータ1a、1bとを接続する各物理パスの状態を管理する。構造はホストコンピュータ1a、1b上の物理パス状態表12、12'と同等である。図4に物理パス状態表22の内容例を示す。尚、図4の例において、グループ「H1」に属する物理パスは、中継サーバ2とホストコンピュータ1aとを接続する物理パスであり、グループ「H2」に属する物理パスは中継サーバ2とホストコンピュータ1bとを接続する物理パスである。
【0034】
論理パス状態表23は、端末とホストコンピュータ1a、1bとを接続する論理パスの状態を管理する。構造はホストコンピュータ1a、1b上の論理パス状態表13、13'と同等である。図5に論理パス状態表23の内容例を示す。尚、図5の例において、グループ「H1」に属する論理パスは、端末とホストコンピュータ1aとを接続する論理パスであり、グループ「H2」に属する論理パスは端末とホストコンピュータ1bとを接続する論理パスである。
【0035】
端末状態表26は、業務端末および制御端末の定義情報と、状態情報を管理する。図6に端末状態表26の内容例を示す。図6を参照すると、「端末定義名」、「端末種別」、「グループ」が定義情報であり、「端末状態」、「端末識別子」、「論理パス識別子」、「グループ状態」が状態情報である。
【0036】
「端末種別」は、その端末の種別が「業務端末」であるのか「制御端末」であるのかを示す。「グループ」は、その端末が利用可能な論理パスの所属するグループを示す。「端末状態」は、その端末が現在「接続」状態にあるのか「未接続」状態にあるのかを示す。「接続」状態の端末に関しては、「端末識別子」が格納される。「グループ」毎に用意される「論理パス識別子」は、接続状態にある論理パスに付与された論理パス識別子を示す。「グループ状態」はそのグループに属する論理パスによって接続されるホストコンピュータの状態を示す。本実施例では、ホストコンピュータの稼動・待機・不明の別を「稼動中」、「待機中」、「不明(障害中)」で示す。
【0037】
図6の例において、エントリNo.「1」のエントリは、端末定義名「TERM-A」を持つ業務端末は、グループ「H1」、「H2」に所属した2つの論理パスを利用してホストコンピュータ1a、1bと通信を行えることを示している。また、このエントリは、グループ「H1」に属する論理パスの論理パス識別子が「LID-H1-00001」で、グループ「H2」に属する論理パスの論理パス識別子が「LID-H2-00001」であることを示している。尚、論理パス識別子は、論理パスの接続時にホストコンピュータ1a、1bにより生成配布されるものであり、ホストコンピュータ1a、1b上の論理パス状態表13、13'および中継サーバ2上の論理パス状態表23に格納されている論理パス識別子と一致する。
【0038】
パス管理手段21は、物理パス制御手段211a〜211fと、パス選択手段212と、論理パス制御手段213a〜213fとから構成される。
【0039】
物理パス制御手段211a〜211cは、ホストコンピュータ1aとの間の物理パスを制御し、物理パス制御手段211d〜211fは、ホストコンピュータ1bとの間の物理パスを制御する。これらは、物理パスの接続・切断に伴い、動的に生成・消滅する。物理パス制御手段211a〜211fは、その生成時に、物理パス状態表22上の該当する「物理パス状態」を「接続」状態に変更する。
【0040】
論理パス制御手段213a〜213cは、ホストコンピュータ1aとの間の論理パスを制御し、論理パス制御手段213d〜213fは、ホストコンピュータ1bとの間の論理パスを制御する。これらは、論理パスの接続・切断に伴い、動的に生成・消滅する。論理パス制御手段213a〜213fは、ホストコンピュータ1a、1b上の論理パス制御手段113a〜113c、113a'〜113c'から配布された論理パス識別子を論理パス状態表23に格納する。
【0041】
パス選択手段212は、論理パス制御手段213a〜213fからの依頼に従って、その論理パス制御手段213a〜213fによって管理・制御されている論理パスが所属している「グループ」中の物理パスの中から、「接続」状態にある物理パスを1つ選択する機能を有する。より具体的には、論理パス制御手段213a〜213fから「グループ」を指定した依頼が渡されることにより、上記「グループ」をキーにして物理パス状態表22を検索し、上記「グループ」に属し、且つ物理パス状態が「接続」になっている物理パスを1つ選択する機能を有する。
【0042】
端末管理手段24は、業務端末制御手段241a、241bと、制御末制御手段242とから構成される。
【0043】
業務端末制御手段241a、241bは、業務端末3a、3bの接続状態を管理・制御する。これらは、業務端末3a、3bの接続・切断に伴い、動的に生成・消滅する。
【0044】
業務端末制御手段241a、241bは、その生成時に、業務端末を識別するための端末識別子を生成し、端末状態表26へ格納すると共に、業務端末3a、3bへ端末識別子を配布する。
【0045】
制御端末制御手段242は、制御端末接続状態を管理・制御する。制御端末とは論理的で実在しない端末であり、ホスト情報収集手段25により利用される。制御端末制御手段242は、制御端末の接続・切断に伴い、動的に生成・消滅する。
【0046】
制御端末制御手段242は、その生成時に、制御端末を識別するための端末識別子を生成し、端末状態表26へ格納すると共に、ホスト情報収集手段25へ端末識別子を配布する。
【0047】
論理パス選択手段27は、論理パスを選択する機能を有する。より具体的には、論理パス選択手段27は、業務端末制御手段241a、241b或いは制御端末制御手段242から端末識別子の付加されたメッセージが渡されたとき、端末状態表26を参照し、メッセージを転送するのに適した論理パスを選択する。
【0048】
ホスト情報収集手段25は論理的な制御端末を通じて、制御用業務プログラム142、142'を定期的に起動することによりホスト情報を収集する。本実施例では、ホスト情報として「稼働中」、「待機中」「不明」を収集する。
【0049】
操作卓28は、操作員の操作に従って各種コマンドを中継サーバ2に投入する。
【0050】
記録媒体K2は、ディスク、半導体メモリ、その他の記録媒体であり、中継サーバ2をオンラインシステムの一部として機能させるためのプログラムが記録されている。このプログラムは、中継サーバ2によって読み取られ、その動作を制御することで、中継サーバ2上に、パス管理手段21、物理パス状態表22、論理パス状態表23、端末管理手段24、ホスト情報収集手段25、端末状態表26、論理パス選択手段27を実現する。
【0051】
【実施例の動作の説明】
次に、各図を参照して本実施例の動作について詳細に説明する。
【0052】
ホストコンピュータ1a、1bは中継サーバ2を介して業務端末3a,3bと接続される。ホストコンピュータ1a、1bと中継サーバ2との間には物理的な通信路(物理パス)を接続し通信を行う。
【0053】
先ず、物理パスの接続時の動作について説明する。物理パスの接続処理は、中継サーバ2の操作卓28からの物理パス接続コマンド投入、あるいは、ホストコンピュータ1a、1bの操作卓15、15'からの物理パス接続コマンド投入によって開始される。尚、物理パス接続コマンドには、接続を要求する物理パスを特定するために、その物理パスの物理パス定義名が含まれている。
【0054】
今、例えば、ホストコンピュータ1aの操作卓15から物理パス接続コマンドが投入されたとすると、パス管理手段11が上記コマンドに含まれている物理パス定義名をキーにして物理パス状態表12を検索し、上記物理パス定義名に対応して登録されている「自側物理アドレス」、「相手側物理アドレス」を取得する。その後、上記アドレスに従って物理パスを接続する。
【0055】
物理パスが接続されると、ホストコンピュータ1a上のパス管理手段11及び中継サーバ2上のパス管理手段21は、新たな物理パスを管理・制御する物理パス制御手段(例えば、111a、211a)を生成する。
【0056】
物理パス制御手段111a、211aは、接続された物理パスの物理アドレスを確認し、物理パス状態表12、22の該当エントリ(物理アドレスの合致するエントリ)の「物理パス状態」を「接続」状態に変更する。これにより物理パスの接続が完了となる。尚、他の操作卓15'、28から物理パス接続コマンドが投入された場合も同様の処理が行われる。
【0057】
次に業務端末3a、3bが中継サーバ2に対して接続要求を送信した場合の動作を説明する。
【0058】
今、例えば、業務端末3bが中継サーバ2に対して接続要求を送信したとすると、この接続要求は、中継サーバ2内の端末管理手段24で受信される。端末管理手段24の処理例を図7のフローチャートに示す。
【0059】
端末管理手段24は、業務端末3bからの接続要求を受信すると、端末状態表26を参照し、端末種別が「業務端末」となっているエントリの中から端末状態が「未接続」状態のエントリを検索する(S701、S702)。例えば端末状態表26の内容が図6に示すものであるとすると、エントリNo.「2」エントリのエントリが、該当するエントリとして検索されることになる。尚、該当するエントリを探し出すことができなかった場合は、要求元の業務端末3bに接続失敗を通知した後、(S702がNO、S708)処理を終了する。
【0060】
今、例えば、ステップS702において、該当するエントリとしてエントリNo.「2」のエントリを検索したとすると、端末管理手段24は、そのエントリを参照し、論理パスを設定していない未処理のグループが存在するか否かを判断する(S703)。この例の場合、エントリNo.「2」のエントリには、2つのグループ「H1」、「H2」が設定されており、グループ「H1」、「H2」に属する2つの論理パスを設定することが定められているが、現時点では、論理パスは全く設定されていない(論理パス識別子が設定されていない)。従って、ステップS703の判断結果がYESとなるので、端末管理手段24は、未処理のグループの内の1つを選択し、選択したグループ(例えば、グループ「H1」)と、エントリNo.「2」のエントリに格納されている端末定義名「TERM-B」とを含む論理パス接続要求をパス管理手段21に渡す(S704)。
【0061】
パス管理手段21は、グループ「H1」と端末定義名「TERM-B」とを含む論理パス接続要求が端末管理手段24から渡されると、上記グループ「H1」と端末定義名「TERM-B」とをキーにして論理パス状態表23を検索し、論理パス状態が「未接続」になっているエントリを探し出す(図8のS81)。例えば、論理パス状態表23の内容が図5に示すものである場合は、エントリNo.「2」のエントリが探し出される。その後、パス管理手段21は、今回接続する論理パスを管理・制御する新たな論理パス制御手段(例えば、論理パス制御手段213b)を生成する(S82)。
【0062】
論理パス制御手段213bは、生成されると、論理パス状態表23の該当するエントリ中の論理パス状態を「接続」に変更すると共に、パス選択手段212に対して使用する物理パスの選択を依頼する。この時、論理パス制御手段213bは、グループ「H1」(論理パス接続要求に含まれていたグループ)を指定して物理パスの選択を依頼する。これにより、パス選択手段212は、物理パス状態表22を検索し、グループ「H1」が設定され、且つ物理パス状態が「接続」になっているエントリを探し出す。この探し出したエントリによって定義されている物理パスが、論理パスの接続に利用する物理パスとなる(S83)。今、例えば、物理パス状態表22の内容が図4に示すものであるとすると、エントリNo.「1」〜「3」のエントリの内の何れか1つ(エントリNo.「1」のエントリとする)が選択される。ここで、ホストコンピュータ1a、1b毎に別のグループに属する定義を行うことにより、論理パスの接続で「グループ」を指定することは、暗にホストコンピュータ指定を行っているに等しい。
【0063】
その後、論理パス制御手段213bは、グループ「H1」、端末定義名「TERM-B」を含んだ論理パス接続要求をパス選択手段212に渡す。これにより、パス選択手段212は、ステップS83で選択した物理パス管理する物理パス制御手段211bを通じて、上記論理パス接続要求をホストコンピュータ1aへ送信する(S84)。
【0064】
中継サーバ2内の物理パス制御手段211bを介してホストコンピュータ1aに送られた論理パス接続要求は、物理パス制御手段211bに対応する物理パス制御手段111bで受信される。パス管理手段11は、物理パス制御手段111bが論理パス接続要求を受信すると、物理パス状態表12を参照し、上記物理パス制御手段111bが所属しているグループを取得する(図9、S91)。尚、物理パス制御手段111a、111b、…は、物理パス状態表12のエントリ番号「1」、「2」、…のエントリに対応している。従って、物理パス状態表12の内容が図2に示すものであるとすると、パス管理手段11は、グループ「SERVER」を取得することになる。
【0065】
その後、パス管理手段11は、ステップS91で取得したグループ「SERVER」と論理パス接続要求に含まれていた端末定義名「TERM-B」とをキーにして論理パス状態表13を検索し、論理パス状態が「未接続」になっているエントリを探し出す(S92)。論理パス状態表13の内容が、図3に示すものである場合、エントリNo.「2」のエントリが探し出される。
【0066】
次に、パス管理手段11は、今回接続する論理パスを管理・制御する新たな論理パス制御手段(例えば、論理パス制御手段113b)を生成する。
【0067】
新たに生成された論理パス制御手段113bは、新たな論理パスを一意に識別可能で、且つ、繰り返し利用することのない論理パス識別子(例えば、LID-H1-00003)を生成し、この生成した論理パス識別子を論理パス状態表13の該当エントリ(S92で探し出されたエントリ)に格納すると共に、論理パス状態を「接続」に変更する(S93、S94)。これにより、論理パス状態表13のエントリNo.「2」のエントリには、図10(a)に示すように、論理パス識別子「LID-H1-00003」が格納されると共に、論理パス状態「接続」が格納される。更に、論理パス制御手段113bは、物理パス制御手段111b、211bを通じて該当する論理パス制御手段213bへと論理パス識別子を配布する(S95)。
【0068】
論理パス制御手段213bは、ホストコンピュータ1aから配布された論理パス識別子を論理パス状態表23の該当エントリに格納する(図8、S85)。これにより、論理パス状態表23のエントリNo.「2」のエントリには、図11に示すように、論理パス識別子「LID-H1-00003」が格納される。
【0069】
その後、論理パス制御手段213bは、端末管理手段24に論理パス識別子「LID-H1-00003」を返却する(ステップS86)。以上により、論理パスの接続処理が完了する。
【0070】
端末管理手段24は、論理パス制御手段213bから新たに接続した論理パスの論理パス識別子「LID-H1-00003」が返却されると、それを端末状態表26の該当するエントリに格納する(図7、S705、S706)。この例の場合、図12に示すように、エントリNo.「2」のエントリ中の、グループ「H1」に属する論理パスの論理パス識別子として上記論理パス識別子「LID-H1-00003」が格納されることになる。
【0071】
その後、端末管理手段24は、端末状態表26のエントリNo.「2」のエントリを検索し、論理パスを設定していない未処理のグループが存在するか否かを判断する(S703)。この例の場合、グループ「H2」については論理パスを設定していないので、グループ「H2」と端末定義名「TERM-B」とを含む論理パス接続要求をパス管理手段21に渡す(S704)。
【0072】
これにより、パス管理手段21は、前述したステップS81〜S84(図8参照)と同様の処理を行い、グループ「H2」と端末定義名「TERM-B」とを含む論理パス接続要求を、グループ「H2」に対応するホストコンピュータ1bへ送信する。
【0073】
ホストコンピュータ1b内のパス管理手段11'は、中継サーバ2からグループ「H2」と端末定義名「TERM-B」とを含む論理パス接続要求が送られてくると、前述したステップS91〜S95(図9参照)と同様の処理を行い、今回接続する論理パスの論理パス識別子(例えば、「LID-H2-00003」とする)を、論理パス状態表13'に格納すると共に中継サーバ2に返却する。これにより、論理パス状態表13'の内容は、図10(b)に示すものとなる。
【0074】
中継サーバ2内のパス管理手段21は、ホストコンピュータ1bから論理パス識別子「LID-H2-00003」が返却されると、前述したステップS85、S86(図8参照)と同様の処理を行い、論理パス識別子「LID-H2-00003」を論理パス状態表23の該当するエントリに格納すると共に、上記論理パス識別子「LID-H2-00003」を端末管理手段24に返却する。この結果、論理パス状態表23の内容は、図11に示すものとなる。
【0075】
端末管理手段24は、パス管理手段21から論理パス識別子「LID-H2-00003」が返却されると、それを端末状態表26の該当するエントリに格納する(図7、S705、S706)。この例の場合、図12に示すように、エントリNo.「2」のエントリ中の、グループ「H2」に属する論理パスの論理パス識別子として上記論理パス識別子「LID-H2-00003」が格納されることになる。
【0076】
その後、端末管理手段24は、端末状態表26のエントリNo.「2」のエントリを検索し、論理パスを設定していない未処理のグループが存在するか否かを判断する(S703)。この例の場合、未処理のグループが存在しないので(S703がNO)、端末管理手段24は、接続要求元の業務端末3bを管理・制御するための業務端末制御手段(例えば、業務端末制御手段241b)を生成する。この生成された業務端末制御手段241bは、端末を一意に識別可能で、且つ繰り返し利用されることのない端末識別子(例えば、TID-00003)を生成し、端末状態表26の該当するエントリに格納すると共に、業務端末3bへと配布する(S707)。これにより、端末状態表26のエントリNo.「2」のエントリに、図12に示すように、端末識別子「TID-00003」が格納される。
【0077】
業務端末3bでは、中継サーバ2から配布された端末識別子「TID-00003」を記憶する。以降、業務端末3bと中継サーバ2とのメッセージ送受信には端末識別子「TID-00003」を付与することにより、お互いに接続相手を識別した通信を行うことができる。
【0078】
次に、業務端末3a、3bからホストコンピュータにメッセージ送信する際の動作について、業務端末3bからメッセージを送信する場合を例に挙げて説明する。尚、業務端末3bには、端末識別子「TID-00003」が付与されているとする。
【0079】
業務端末3bは、メッセージをホストコンピュータに送信する際、先ず、メッセージに端末識別子「TID-00003」を付加し、その後、端末識別子「TID-00003」を付加したメッセージを中継サーバ2へ送信する。
【0080】
業務端末3bからのメッセージは、該当する業務端末制御手段241bを通じて、論理パス選択手段27に渡される。論理パス選択手段27の処理例を図13のフローチャートに示す。
【0081】
論理パス選択手段27は、業務端末管理手段241bを介して業務端末3bからのメッセージが渡されると、それに付加されている端末識別子「TID-00003」を抽出し、抽出した端末識別子「TID-00003」をキーにして端末状態表26を検索する(図13、S131、S132)。
【0082】
そして、端末識別子「TID-00003」が格納されているエントリを探し出すことができなかった場合は、業務端末制御手段241bを介して業務端末3bへメッセージ受信失敗を通知する(S133がNO、S138)。これに対して、端末識別子「TID-00003」が格納されているエントリを探し出すことができた場合には、そのエントリに格納されている端末種別が「業務端末」になっているか、「制御端末」になっているかを調べる(S134)。今、例えば、端末状態表26の内容が、図12に示すものであるとすると、ステップS132でエントリNo.「2」のエントリが探し出されるので、ステップS134では、端末種別が「業務端末」になっていると認識することになる。
【0083】
ステップS134において、端末種別が「業務端末」であると認識すると、論理パス選択手段27は、エントリNo.「2」のエントリに格納されている論理パス識別子の中に対応するグループ状態が「稼働中」になっているものが存在するか否かを調べる(S135)。そして、対応するグループ状態が「稼働中」となっている論理パス識別子が存在しない場合は、業務端末3bに対してメッセージ受信失敗を通知し(S135がNO、S138)、その後、処理終了となる。これに対して、対応するグループ状態が「稼働中」になっている論理パス識別子が存在する場合には、ステップS137の処理が行われる。この例の場合、論理パス識別子「LID-H1-00003」に対応するグループ状態が「稼働中」となっているので、論理パス制御手段27は、ステップS137の処理を行うことになる。そして、ステップS137では、業務端末3bからのメッセージに上記論理パス識別子「LID-H1-00003」を付加し、この論理パス識別子「LID-H1-00003」によって特定される論理パスを管理・制御している論理パス制御手段213bに渡す。
【0084】
論理パス制御手段213bは、論理パス識別子「LID-H1-00003」の付加されたメッセージが渡されると、論理パス識別子「LID-H1-00003」をキーにして論理パス状態表23を検索し、論理パス識別子「LID-H1-00003」によって特定される論理パスが属するグループを認識する。今、例えば、論理パス状態表23の内容が図11に示すものであるとすると、論理パス制御手段213bは、グループ「H1」に属する論理パスであると認識することになる。
【0085】
その後、論理パス制御手段213bは、パス接続手段212に対してグループ「H1」を渡し、使用する物理パスの選択を依頼する。これにより、パス接続手段212は、物理パス状態表22を検索し、グループ「H1」に属する物理パスの中から、接続状態になっている物理パスを1つ選択する。今、例えば、物理パス状態表22の内容が図4に示すものであるとすると、エントリNo.「1」〜「3」のエントリによって定義されている物理パスの内の1つが選択されることになる。その後、論理パス制御手段213bは、パス接続手段212によって選択された接続状態の物理パスに対応する物理パス制御手段(例えば、物理パス制御手段211b)に、論理パス識別子「LID-H1-00003」の付加されたメッセージを渡す。これにより、物理パス制御手段211bは、対応するホストコンピュータ1a内の物理パス制御手段111bに上記メッセージを送信する。このように、中継サーバ2とホストコンピュータ1aとの間に存在する、「接続」状態のある複数の物理パスの内の1つ利用してメッセージを送信するようにしているので、ある物理パスの障害時にも他の物理パスを利用してメッセージを送信することが可能になる。
【0086】
物理パス制御手段111bが論理パス識別子「LID-H1-00003」の付加されたメッセージを受信すると、パス管理手段11は、論理パス状態表13を検索し、上記論理パス識別子「LID-H1-00003」が格納されているエントリを探し出し、そのエントリに対応する論理パス制御手段(例えば、論理パス制御手段113b)にメッセージを渡す。
【0087】
論理パス制御手段113bは、論理パス識別子「LID-H1-00003」の付加されたメッセージが渡されると、それを業務プログラム実行手段14に渡す。業務プログラム実行手段14は、メッセージ内容に応じた業務プログラム(例えば、業務プログラム141b)を起動し、メッセージを渡す。業務プログラム141bは、ホストコンピュータ1a、1bの双方からアクセス可能なデータベース4を利用して、メッセージによって要求されている業務を処理し、処理結果を論理パス制御手段113bに返却する。尚、処理結果を論理パス制御手段113bに返却する際、業務プログラム実行手段14は、メッセージに付加されていた論理パス識別子「LID-H1-00003」も併せて返却する。
【0088】
論理パス制御手段113bは、処理結果及び論理パス識別子「LID-H1-00003」が返却されると、論理パス識別子「LID-H1-00003」をキーにして論理パス状態表13を検索し、論理パス識別子「LID-H1-00003」によって特定される論理パスが属するグループを認識する。今、例えば、論理パス状態表13の内容が図10(a)に示すものであるとすると、論理パス制御手段113bは、グループ「SERVER」に属する論理パスであると認識することになる。
【0089】
その後、論理パス制御手段113bは、パス接続手段112に対してグループ「SERVER」を渡し、使用する物理パスの選択を依頼する。これにより、パス接続手段112は、物理パス状態表12を検索し、グループ「SERVER」に属する物理パスの中から、接続状態になっている物理パスを1つ選択する。今、例えば、物理パス状態表12の内容が図2に示すものであるとすると、エントリNo.「1」〜「3」のエントリによって定義されている物理パスの内の1つが選択されることになる。その後、論理パス制御手段113bは、パス接続手段112によって選択された接続状態の物理パスに対応する物理パス制御手段(例えば、物理パス制御手段111b)に、論理パス識別子「LID-H1-00003」を付加した処理結果を渡す。これにより、物理パス制御手段111bは、対応する物理パス制御手段211bに上記処理結果を送信する。
【0090】
物理パス制御手段211bが論理パス識別子「LID-H1-00003」の付加された処理結果を受信すると、パス管理手段21は、論理パス状態表23を検索し、上記論理パス識別子「LID-H1-00003」が格納されているエントリを探し出し、そのエントリに対応する論理パス制御手段(例えば、論理パス制御手段213b)に処理結果を渡す。
【0091】
論理パス制御手段213bは、論理パス識別子「LID-H1-00003」の付加された処理結果が渡されると、論理パス状態表23を検索し、上記論理パス識別子「LID-H1-00003」と対応付けて登録されている端末定義名を取得する。今、例えば、論理パス状態表23の内容が図11に示すものであるとすると、端末定義名「TERM-B」を取得することになる。その後、論理パス制御手段213bは、端末定義名「TERM-B」を処理結果に付加して端末制御手段24に渡す。これにより、端末制御手段24は、端末定義名「TERM-B」に対応する業務端末制御手段241を使用して処理結果をメッセージの送信元である業務端末3bに返却する。
【0092】
上述したように、ホストコンピュータ1aに転送されたメッセージは、業務プログラム実行手段14に渡されるが、ホストコンピュータ1a上では、或る論理パスを通じて受信する複数のメッセージは、同一の端末からのメッセージであることが保障される。また、論理パス定義名をホストコンピュータ1a、1bで共通名とすることにより、共通の論理パス定義名を持つ論理パスを通じて受信したメッセージは、同一の端末からのメッセージであることが保障される。例えば、論理パス定義名「L1」を持つ論理パスを通じて受信したメッセージは、端末定義名に「TERM-A 」を持つ業務端末からのメッセージであることが保障され、ホストコンピュータ1aでもホストコンピュータ1bでも同一の端末から受信したメッセージであることが判別可能である。すなわち、複数のホストコンピュータにまたがって、業務端末3a、3bを識別した業務処理を行うことが可能となる。
【0093】
次に、端末状態表26中の「グループ状態」の設定方法について説明する。この「グループ状態」の設定は、ホスト情報収集手段25によって行われるものであり、その処理例を図14のフローチャートに示す。
【0094】
ホスト情報収集手段25は、定期的に、図14のフローチャートに示す処理を行う。先ず、ホスト情報収集手段25は、端末状態表26を参照し、ホストコンピュータ1a、1bとの間の論理パスが接続済みであるか否かを判断する(S1401)。即ち、論理パス識別子が設定されているか否かに基づいて、論理パスが接続済みであるか否かを判断する。
【0095】
そして、論理パスが接続済みでない場合は、端末管理手段24に対して接続要求を出力する(S1401がNO、S1402)。これにより、端末管理手段24において、業務端末3a、3bからの接続要求を受信した場合と同様の動作が行われ、ホストコンピュータ1aとの間、及びホストコンピュータ1bとの間に論理パスが設定されると共に、制御端末制御手段242が生成され、端末識別子(例えば、「TID-#CTRL#」とする)が配布される(図7、S701、S709〜S715)。その後、端末管理手段24は、ステップS1403の処理を行う。
【0096】
これに対して、論理パスが接続済みである場合は、直ちに、ステップS1403の処理が行われる。ステップS1403では、制御用業務プログラムの起動を要求するメッセージを制御端末制御手段242に渡す。その際、配布されている端末識別子「TID-#CTRL#」を上記メッセージに付加する。
【0097】
制御端末制御手段242は、ホスト情報収集手段25からのメッセージを論理パス選択手段27に渡す。
【0098】
論理パス選択手段27は、制御端末制御手段242を介してホスト情報収集手段25からのメッセージが渡されると、それに付加されている端末識別子「TID-#CTRL#」を抽出し、この抽出した端末識別子「TID-#CTRL#」をキーにして端末状態表26を検索する(図13、S131、S132)。今、例えば、端末状態表26の内容が、図12に示すものであるとすると、エントリNo.「3」のエントリに、上記端末識別子「TID-#CTRL#」が格納され、そのエントリの端末種別が「制御端末」となっているので(S133、S134)、論理パス選択手段27は、上記エントリに格納されている各論理パス識別子「LID-H1-00002」、「LID-H2-00002」に対応する論理パス制御手段(論理パス制御手段213c、213fとする)に対して、メッセージを渡す(S136)。その際、論理パス制御手段213cに渡すメッセージには、論理パス識別子「LID-H1-00002」を付加し、論理パス制御手段213fに渡すメッセージには、論理パス識別子「LID-H2-00002」を付加する。
【0099】
これにより、業務端末3a、3bからのメッセージをホストコンピュータ1a、1bに送信する場合と同様の処理が行われ、ホスト情報収集手段25からのメッセージは、ホストコンピュータ1a、1bの業務プログラム実行手段14、14'に渡される。これにより、業務プログラム実行手段14、14'は、制御用業務プログラム142、142'を起動する。
【0100】
制御用業務プログラム142、142'は、自系のホストコンピュータ1a、1bが稼動中であれば「稼動中」を示すメッセージを、待機中であれば「待機中」を示すメッセージを、論理パス制御手段113c、113c'を介してホスト情報収集手段25へ返却する。その際、制御用教務プログラム142、142'は、メッセージに論理パス識別子「LID-H1-00002」、「LID-H2-00002」を付加する。
【0101】
ホスト情報収集手段25は、「稼働中」を示すメッセージが返却された場合は、端末状態表26に格納されているグループ状態の内の、上記メッセージに付加されている論理パス識別子と対応するグループ状態を「稼働中」に変更する(S1405〜S1407)。
【0102】
また、「待機中」を示すメッセージが返却された場合は、端末状態表26に格納されているグループ状態の内の、上記メッセージに付加されている論理パス識別子と対応するグループ状態を「待機中」に変更する(S1405、S1406、S1408)。
【0103】
また、一定時間、メッセージの返却されない論理パスに対応するグループ状態は「不明」に更新する(S1404がYES、S1409)。
【0104】
上述したように、ホスト情報収集手段25を用いて、定期的に各ホストコンピュータ1a、1bからホスト情報(「稼働中」、「待機中」)を収集し、この収集したホスト情報に従って端末状態表26を更新するようにしているので、稼働中のホストコンピュータに障害が発生した場合でも、他のホストコンピュータを利用して業務を継続することができる。例えば、ホストコンピュータ1a、1bがそれぞれ「稼働中」、「待機中」である時に、ホストコンピュータ1aに障害が発生すると、ホストコンピュータ1bが「稼働中」になる。このことが、ホスト情報収集手段25が定期的に行う処理によって端末状態表26に反映され、これ以後は、ホストコンピュータ1bに接続されている論理パスを介してメッセージが転送されることになるので、「稼働中」のホストコンピュータ1aに障害が発生した場合においても、他のホストコンピュータ1bを利用して業務処理を継続することが可能となる。
【0105】
【発明の他の実施例】
次に、本発明の第2の実施例について説明する。本実施例は、負荷分散クラスタシステムなど、複数のホストコンピュータに業務処理を分散させるシステムに本発明を適用したものである。
【0106】
本実施例は、第1の実施例において、下記(1)〜(4)の変更を行うことにより実現される。
【0107】
(1)端末状態表26の代わりに、図15に示す構成を有する端末状態表26aを使用する。端末状態表26aと端末状態表26との相違点は、項目「グループ状態」の代わりに、項目「グループbusy(ビジー)率」を含んでいる点である。グループbusy率は、ホストコンピュータの忙しさ(負荷)を示す指標である。
【0108】
(2)ホスト情報収集手段25に、図16のフローチャートに示す処理を行わせる。
【0109】
(3)論理パス選択手段27に、図17のフローチャートに示す処理を行わせる。
【0110】
(4)制御用業務プログラム142、142'では、ホスト情報収集手段25からのメッセージを受信した際、自ホストコンピュータ1a、1bのbusy率を示すメッセージを返信するようにする。
【0111】
次に本実施例の動作について説明する。ここでは、第1の実施例との相違点についてのみ説明する。
【0112】
ホスト情報収集手段25は、定期的に、図16のフローチャートに示す処理を行う。先ず、ホスト情報収集手段25は、端末状態表26aを参照し、ホストコンピュータ1a、1bとの間の論理パスが接続済みであるか否かを判断する(S161)。
【0113】
そして、論理パスが接続済みでない場合は、端末管理手段24に対して接続要求を出力する(S161がNO、S162)。これにより、前述した処理と同様の処理が行われ、ホストコンピュータ1aとの間、及びホストコンピュータ1bとの間に論理パスが接続されると共に、制御端末制御手段242が生成され、端末識別子(例えば、「TID-#CTRL#」とする)が配布される。その後、端末管理手段24は、ステップS163の処理を行う。
【0114】
これに対して、論理パスが接続済みである場合は、直ちに、ステップS163の処理が行われる。ステップS163では、制御用業務プログラムの起動を要求するメッセージを制御端末制御手段242に渡す。その際、配布されている端末識別子「TID-#CTRL#」を上記メッセージに付加する。
【0115】
制御端末制御手段242は、ホスト情報収集手段25からのメッセージを論理パス選択手段27に渡す。
【0116】
論理パス選択手段27は、制御端末制御手段242を介してホスト情報収集手段25からのメッセージが渡されると、それに付加されている端末識別子「TID-#CTRL#」を抽出し、この抽出した端末識別子「TID-#CTRL#」をキーにして端末状態表26aを検索する(図17、S171、S172)。今、例えば、端末状態表26aの内容が、図15に示すものであるとすると、エントリNo.「3」のエントリに、上記端末識別子「TID-#CTRL#」が格納され、そのエントリの端末種別が「制御端末」となっているので(S173、S174)、論理パス選択手段27は、上記エントリに格納されている各論理パス識別子「LID-H1-00002」、「LID-H2-00002」に対応する論理パス制御手段(論理パス制御手段213c、213fとする)に対して、メッセージを渡す(S177)。その際、論理パス制御手段213cに渡すメッセージには、論理パス識別子「LID-H1-00002」を付加し、論理パス制御手段213fに渡すメッセージには、論理パス識別子「LID-H2-00002」を付加する。
【0117】
これにより、前述した処理と同様の処理が行われ、ホスト情報収集手段25からのメッセージは、ホストコンピュータ1a、1bの業務プログラム実行手段14、14'に渡される。これにより、業務プログラム実行手段14、14'は、制御用業務プログラム142、142'を起動する。
【0118】
制御用業務プログラム142、142'は、自系のホストコンピュータ1a、1bのbusy率を示すメッセージを、論理パス制御手段113c、113c'を介してホスト情報収集手段25へ返却する。その際、制御用業務プログラム142、142'は、メッセージに論理パス識別子「LID-H1-00002」、「LID-H2-00002」を付加する。
【0119】
ホスト情報収集手段25は、busy率を表すメッセージが返却されると、端末状態表26aに格納されているグループbusy率の内の、上記メッセージに付加されている論理パス識別子と対応するグループbusy率を、上記メッセージが表すbusy率に変更する(S165〜S167)。以上の処理を、全てのホストコンピュータ1a、1bから送られてくるメッセージについて行うと(ステップS169がYES)、処理終了となる。但し、所定時間が経過してもメッセージが返却されないホストコンピュータが存在する場合には、そのホストコンピュータに対応するグループbusy率を「不明」に変更する(S164がYES、S168)。
【0120】
次に、業務端末3a、3bからホストコンピュータにメッセージ送信する際の動作について、業務端末3aからメッセージを送信する場合を例に挙げて説明する。尚、業務端末3aには、端末識別子「TID-00001」が付与されているとする。
【0121】
業務端末3aは、メッセージをホストコンピュータに送信する際、先ず、メッセージに端末識別子「TID-00001」を付加し、その後、端末識別子「TID-00001」を付加したメッセージを中継サーバ2へ送信する。
【0122】
業務端末3aからのメッセージは、該当する業務端末制御手段241aを通じて、論理パス選択手段27に渡される。
【0123】
論理パス選択手段27は、業務端末制御手段241aを介して業務端末3aからのメッセージが渡されると、それに付加されている端末識別子「TID-00001」を抽出し、抽出した端末識別子「TID-00001」をキーにして端末状態表26aを検索する(図17、S171、S172)。
【0124】
そして、端末識別子「TID-00001」が格納されているエントリを探し出すことができなかった場合は、業務端末制御手段241aを介して業務端末3aへメッセージ受信失敗を通知する(S173がNO、S178)。これに対して、端末識別子「TID-00001」が格納されているエントリを探し出すことができた場合には、そのエントリに格納されている端末種別が「業務端末」になっているか、「制御端末」になっているかを調べる(S174)。今、例えば、端末状態表26aの内容が、図15に示すものであるとすると、ステップS172でエントリNo.「1」のエントリが探し出されるので、ステップS174では、端末種別が「業務端末」になっていると認識することになる。
【0125】
ステップS174において、端末種別が「業務端末」であると認識すると、論理パス選択手段27は、エントリNo.「1」のエントリに格納されている論理識別子の中から、対応するグループbusy率が最小のものを選択する(S175)。この例の場合、論理パス識別子「LID-H1-00001」、「LID-H2-00001」に対応するグループbusy率がそれぞれ「10%」、「20%」となっているので、論理パス識別子「LID-H1-00001」を選択することになる。その後、論理パス選択手段27は、業務端末3aからのメッセージに上記論理パス識別子「LID-H1-00001」を付加し、この論理パス識別子「LID-H1-00001」によって特定される論理パスを管理している論理パス制御手段213aに渡す(S176)。これ以後は、第1の実施例と同様の動作が行われる。これにより、業務端末3aからのメッセージは、関連する複数の論理パス(論理パス識別子が「LID-H1-00001」、「LID-H2-00001」の論理パス)内の、busy率が最も低いホストコンピュータに接続されている論理パスを介して転送される。つまり、busy率の最も低いホストコンピュータで、メッセージに従った業務処理を行うことができる。また、定期的にbusy率は見直されるため、busy率が逆転した時点で、メッセージの送信先となるホストコンピュータが切り替わる。これにより、負荷を平準化することができる。
【0126】
【本発明のその他の実施例】
次に本発明の第3の実施例について説明する。本実施例の特徴は、中継サーバの障害にも耐えられるようにした点にある。
【0127】
図18は本実施例のブロック図である。本実施例と図1に示した第1の実施例との相違点は、下記(a)〜(c)の通りである。
【0128】
(a)業務端末3aの代わりに業務端末3a'を備えている点。
【0129】
端末3a'は、端末3aが備えている機能に加え、論理パスの接続要求を中継サーバに送信する際、正常に動作している中継サーバの内の、最も優先順位の高い中継サーバに論理パスの接続要求を送信する機能を有する。更に、端末3a'は、端末3aが備えている機能に加え、メッセージをホストコンピュータへ送信する際、正常に動作している中継サーバの内の、最も優先順位の高い中継サーバにメッセージを送信する機能を有している。尚、本実施例では、優先順位は、中継サーバ2a、中継サーバ2bの順になっているとする。即ち、中継サーバ2aの優先順位が最も高くなっているとする。
【0130】
(b)ホストコンピュータ1a、1bの代わりにホストコンピュータ1a'、1b'を備えている点。
【0131】
ホストコンピュータ1a、1bとホストコンピュータ1a'、1b'との相違点は、論理パス状態表13、13'の代わりに論理パス状態表13a、13bを備えている点、制御用業務プログラム142、142'の代わりに制御用業務プログラム142a、142bを備えている点および記録媒体K1a'、K1b'を備えている点である。
【0132】
図19(a)、(b)は、論理パス状態表13a、13bの内容例を示す図である。論理パス状態表13、13'が備えている項目に、項目「端末識別子」が追加された構成となっている。
【0133】
制御用業務プログラム142a、142bは、制御用業務プログラム142、142'が備えている機能に加え、リストを要求するメッセージがホスト情報収集手段25a、25bから送られてきたとき、論理パス状態表13a、13bを参照し、その時点で論理パス接続状態が「接続」状態にあるエントリ中の「端末定義名」、「論理パス識別子」、「端末識別子」の組のリストを含むメッセージを返却する機能を有する。
【0134】
記録媒体K1a'、K1b'は、ディスク、半導体メモリ、その他の記録媒体であり、ホストコンピュータ1a'、1b'をオンラインシステムの一部として機能させるためのプログラムが記録されている。このプログラムは、ホストコンピュータ1a'、1b'によって読み取られ、その動作を制御することで、ホストコンピュータ1a'、1b'上に、パス管理手段11、11'と、物理パス状態表12、12'と、論理パス状態表13a、13bと、業務プログラム実行手段14、14'を実現する。
【0135】
(c)複数の中継サーバ2a、2bを介して業務端末3a'とホストコンピュータ1a'、1b'とを接続するようにしている点。
【0136】
中継サーバ2a、2bと、中継サーバ2との相違点は、ホスト情報収集手段25の代わりにホスト情報収集手段25a、25bを備えている点および記録媒体K2の代わりに記録媒体K2a、K2bを備えている点である。
【0137】
ホスト情報収集手段25a、25bは、ホスト情報収集手段25が備えている機能に加え、定期的に図20のフローチャートに示す処理を実行する機能を有する。
【0138】
記録媒体K2a、K2bは、ディスク、半導体メモリ、その他の記録媒体であり、中継サーバ2a、2bをオンラインシステムの一部として機能させるためのプログラムが記録されている。このプログラムは中継サーバ2a、2bによって読み取られ、その動作を制御することで、中継サーバ2a、2b上に、パス管理手段21、21'と、物理パス状態表22、22'と、論理パス状態表23、23'と、端末管理手段24、24'と、ホスト情報収集手段25a、25bと、端末状態表26、26'と、論理パス選択手段27、27'とを実現する。
【0139】
次に本実施例の動作について説明する。ここでは、第1の実施例との相違点についてのみ説明する。
【0140】
今、例えば、業務端末3a'が、正常に動作している中継サーバ2a、2bの内の最も優先順位の高い中継サーバ(中継サーバ2aとする)に論理パスの接続要求を送信したとする。そして、この論理パスの接続要求により、前述した処理と同様の処理が行われ、論理パス制御手段213aと論理パス制御手段113aとによって中継サーバ2aとホストコンピュータ1a'との間に論理パス(論理パス識別子「LID-H1-00001」の論理パスとする)が設定され、論理パス制御手段213cと論理パス制御手段113a'とによって中継サーバ2aとホストコンピュータ1b'との間に論理パス(論理パス識別子「LID-H2-00001」の論理パスとする)が設定される。更に、業務端末制御手段241aにより業務端末3a'に端末識別子(TID-00001とする)が付与されたとする。本実施例では、業務端末制御手段241aは、この端末識別子「TID-00001」を上記した2つの論理パスを介して、ホストコンピュータ1a'、1b'に送信する。ホストコンピュータ1a'、1b'内の論理パス制御手段113a、113a'は、それぞれ中継サーバ2aから送られてきた端末識別子「TID-00001」を図19(a)、(b)に示すように、論理パス状態表13a、13bの論理パス識別子「LID-H1-00001」、「LID-H2-00001」に対応するエントリに格納する。
【0141】
一方、中継サーバ2a、2b内のホスト情報収集手段25a、25bは、所定時間毎に図20のフローチャートに示す処理を行っている。
【0142】
今、例えば、中継サーバ2b内のホスト情報収集手段25bが図20のフローチャートに示す処理を開始したとする。
【0143】
ホスト情報収集手段25bは、端末状態表26'を参照し、ホストコンピュータ1a'、1b'との間の論理パスが接続済みであるか否かを判断する(S201)。
【0144】
そして、論理パスが接続済みでない場合は、端末管理手段24'に対して接続要求を出力する(S201がNO、S202)。これにより、ホストコンピュータ1a'との間、及びホストコンピュータ1b'との間に論理パスが接続されると共に、制御端末制御手段242'が生成され、端末識別子(例えば、「TID-#CTRL#」とする)が配布される。その後、端末管理手段24'は、ステップS203の処理を行う。
【0145】
これに対して、論理パスが接続済みである場合は、直ちに、ステップS203の処理が行われる。ステップS203では、リストの送信を要求するメッセージを制御端末制御手段242'に渡す。その際、配布されている端末識別子「TID-#CTRL#」を上記メッセージに付加する。
【0146】
制御端末制御手段242'は、ホスト情報収集手段25bからのメッセージを論理パス選択手段27'に渡す。論理パス選択手段27'は、業務端末管理手段242'を介してホスト情報収集手段25bからのメッセージが渡されると、それに付加されている端末識別子「TID-#CTRL#」を抽出し、この抽出した端末識別子「TID-#CTRL#」をキーにして端末状態表26'を検索する(図13、S131、S132)。これにより、端末種別が「制御端末」であることが分かるので、ホストコンピュータ1a'、1b'にリストを要求するメッセージを送信する(S134、S136)。
【0147】
ホスト情報収集手段25'からのメッセージは、ホストコンピュータ1a'、1b'の業務プログラム実行手段14、14'に渡される。これにより、業務プログラム実行手段14、14'は、制御用業務プログラム142a、142bを起動し、リストを要求するメッセージを渡す。
【0148】
制御用業務プログラム142a、142bは、それぞれ論理パス状態表13a、13bを参照し、その時点で論理パス接続状態が「接続」となっている全てのエントリから、そこに格納されている「端末定義名」、「論理パス識別子」、「端末識別子」の組を抽出する。そして、抽出した組のリストを含むメッセージを要求元のホスト情報収集手段25bに返却する。尚、このメッセージには、その送信に使用する論理パスの論理パス識別子が付加される。今、例えば、論理パス状態表13a、13bの内容が図19(a)、(b)に示すものであるとすると、制御用業務プログラム142aは、「TERM-A」、「LID-H1-00001」、「TID-00001」の組と、「#CTRL#」、「LID-H1-00002」、「TID-#CTRL#」の組と、「#CTRL#」、「LID-H1-00003」、「TID-#CTRL#」組とを含むメッセージをホスト情報収集手段25bに返却し、制御用業務プログラム142bは、「TERM-A」、「LID-H2-00001」、「TID-00001」の組と、「#CTRL#」、「LID-H2-00002」、「TID-#CTRL#」の組と、「#CTRL#」、「LID-H2-00003」、「TID-#CTRL#」組とを含むメッセージをホスト情報収集手段25bに返却することになる。
【0149】
ホスト情報収集手段25bは、例えば、ホストコンピュータ1a'から上記したリストを含むメッセージを受信すると、それに付加されている論理パス識別子を抽出する(S205)。その後、ホスト情報収集手段25bは、受信したメッセージ中に未処理の組が存在するか否かを判断する(S206)。そして、存在しない場合は、全てのグループ(全てのホストコンピュータ1a'、1b')からのメッセージを受信済みか否かを判断する(S216)。そして、全てのグループからメッセージを受信済みであると判断した場合は処理を終了し、そうでない場合は、ステップS204の処理に戻る。
【0150】
これに対して、ホストコンピュータ1a'から受信したメッセージ中に未処理の組が存在すると判断した場合は、未処理の組を1つ抽出する(S207)。今、例えば、抽出した組に端末定義名「TERM-A」、論理パス識別子「LID-H1-00001」、端末識別子「TID-00001」が含まれていたとする。その後、論理パス状態表23'を検索し、上記抽出した組に含まれている端末定義名「TERM-A」によって特定される端末が「業務端末」であるのか、「制御端末」であるのかを判断する(S208)。
【0151】
そして、「制御端末」であると判断した場合は、ステップS206の処理に戻る。これに対して、「業務端末」であると判断した場合は、端末状態表26'を参照し、端末定義名「TERM-A」に対応するエントリ中の、ステップS205で抽出した論理パス識別子と対応するグループ(ここで、上記論理パス識別子は、ホストコンピュータ1a'と中継サーバ2bとの間の論理パスを示すものであるので「H1」となる)に、論理パス識別子が設定されているか否かを判断する(S209)。尚、ステップS205で抽出した論理パス識別子と対応するグループは、論理パス状態表23'を、上記論理パス識別子をキーにして検索することにより求めることができる。例えば、ステップS205で抽出した論理パス識別子が、「LID-H1-00001」で、論理パス状態表23'の内容が例えば、図5に示すものである場合は、グループ「H1」が検索され、また、ステップS205で抽出した論理パス識別子が「LID-H2-00001」であれば、グループ「H2」が検索される。
【0152】
ステップS209の判断結果がYESとなった場合、即ち、端末状態表26'の端末定義名「TERM-A」と対応するエントリ中に、グループ「H1」と対応付けて論理パス識別子が格納されている場合は、ステップS213の処理を行う。これに対して、ステップS209の判断結果がNOとなった場合、即ち、端末状態表26'の端末定義名「TERM-A」と対応するエントリ中に、グループ「H1」と対応する領域が空欄であった場合は、別の中継サーバ(中継サーバ2b以外の中継サーバ)によって、業務端末3a'とホストコンピュータ1a'との間の論理パスの接続処理が行われたと認識し、ステップS210の処理を行う。。
【0153】
ステップS210では、処理対象にしている組中の論理パス識別子「LID-H1-00001」に対応する論理パス制御手段213a'を生成し、ステップS211では、論理パス状態表23'をグループ「H1」と端末定義名「TERM-A」をキーにして検索し、該当するエントリ中のグループ「H1」に対応する領域に、上記組中の論理パス識別子「LID-H1-00001」を格納し、ステップS212では、端末状態表26'のグループ「H1」と端末定義名「TERM-A」によって特定される領域に論理パス識別子「LID-H1-00001」を格納する。これにより、該当する論理パスに関するメッセージ送受信を行う手段が確立されたこととなる。
【0154】
その後、端末状態表26'の端末定義名「TERM-A」に対応するエントリに、端末識別子が格納されているか否かを調べる(S213)。そして、格納されている場合(S213がYES)は、ステップS206に戻る。これに対して、格納されていない場合(S213がNO)は、ステップS214の処理を行う。
【0155】
ステップS214では、処理対象にしている組中の端末識別子「TID-00001」に対応する業務端末制御手段241a'を生成し、次のステップS215では、端末状態表26'の端末定義名「TERM-A」に対応するエントリに端末識別子「TID-00001」を格納し、その後、ステップS206の処理を行う。これにより、該当する業務端末3a'に関するメッセージ送受信を行う手段が、中継サーバ2b内に確立されたこととなる。尚、応答タイムアウトとなった場合(S204がYES)は、ホスト情報収集手段25bはその処理を終了する。
【0156】
ホストコンピュータ1b'からメッセージが送られてきた場合も、前述した処理と同様の処理が行われる。
【0157】
以上の処理を全ての中継サーバ2a、2bで行うことにより、或る中継サーバで接続処理を行った端末情報を、全ての中継サーバ2a、2bへと反映することができる。これにより、業務端末3a'から受信するメッセージに付与される「端末識別子」と転送先の「論理パス識別子」は全ての中継サーバ2a、2b上の端末状態表26、26'に存在し、いずれの中継サーバ2a、2bを経由しても、ホストコンピュータ1a'、1b'上の該当する論理パスへの転送が可能となり、業務プログラムは業務端末を識別した処理を行うことができる。
【0158】
図18上の論理パスの対応関係を図中の符号を利用して、図21に示す。例えば、中継サーバ2a上の「213a」と中継サーバ2b上の「213a’」は、共にホストコンピュータ1a'上の「113a」と対応している。
【0159】
中継サーバ2aの障害時には、業務端末3a'は、次に優先度の高い中継サーバ2bを介してホストコンピュータ1a、1bへのメッセージを送信するので、中継サーバに障害が発生した場合においても、端末からの業務を中断することなく処理継続することが可能となる。
【0160】
また、中継サーバを動的に追加し、ホストコンピュータ1a、1bとの間に物理パスを設定した場合も、ホスト情報収集手段25a、25bにより、端末状態表26、26'が更新されるため、即座に端末からのメッセージを処理可能な状態とすることができる。
【0161】
尚、上述した実施例では説明しなかったが、業務端末3a'と中継サーバ2a、2bとの間に、正常に動作している中継サーバの内の、最も負荷の小さい中継サーバに、業務端末3a'からの論理パスの接続要求や、メッセージを送信する負荷分散スイッチを設けるようにしても良い。この場合には、業務端末3a'には、中継サーバの優先度を考慮してメッセージや論理パスの接続要求を出力する機能は必要なく、負荷分散スイッチに対してメッセージや論理パスの接続要求を送信する機能を備えていれば良い。また、上述した実施例においては、中継サーバ2a、2bとして第1の実施例における中継サーバ2に多少の変更(ホスト情報収集手段25に、図14のフローチャートに示す処理だけでなく、図20のフローチャートに示す処理も行わせる)を加えた中継サーバを使用するようにしたが、中継サーバ2a、2bとして第2の実施例における中継サーバに多少の変更(ホスト情報収集手段に図16のフローチャートに示す処理に加え、図20のフローチャートに示す処理も行わせる)を加えた中継サーバを使用するようにしても良い。
【0162】
【発明の効果】
以上説明したように、本発明は、中継サーバと各ホストコンピュータとの間に設定されている論理パスの内の、障害が発生していないホストコンピュータに対応する論理パスと、上記ホストコンピュータとの間に複数設定されている物理パスの内の1つを使用してメッセージを送信するようにしているので、ホストコンピュータに障害が発生した場合であっても、物理パスに障害が発生した場合であっても、通信を継続することができる。
【0163】
また、本発明は、各中継サーバが、各ホストコンピュータからそのホストコンピュータと論理パスを介して接続されている端末に関する端末情報を収集し、収集した端末情報によって示される端末の中に、自中継サーバを介した論理パスによってホストコンピュータと接続されていな端末が存在する場合は、その端末と各ホストコンピュータとを自中継サーバを介した論理パスにより接続するようにしているので、中継サーバの障害にも容易に対処することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施例のブロック図である。
【図2】物理パス状態表12、12'の内容例を示す図である。
【図3】論理パス状態表13、13'の内容例を示す図である。
【図4】物理パス状態表22の内容例を示す図である。
【図5】論理パス状態表23の内容例を示す図である。
【図6】端末状態表26の内容例を示す図である。
【図7】端末管理手段24の処理例を示すフローチャートである。
【図8】パス管理手段21の処理例を示すフローチャートである。
【図9】パス管理手段11の処理例を示すフローチャートである。
【図10】論理パス状態表13、13'の内容例を示す図である。
【図11】論理パス状態表23の内容例を示す図である。
【図12】端末状態表26の内容例を示す図である。
【図13】論理パス選択手段27の処理例を示すフローチャートである。
【図14】ホスト情報収集手段25の処理例を示すフローチャートである。
【図15】本発明の第2の実施例で使用する端末状態表26aの内容例を示す図である。
【図16】本発明の第2の実施例でのホスト情報収集手段25の処理例を示すフローチャートである。
【図17】本発明の第2の実施例での論理パス選択手段27の処理例を示すフローチャートである。
【図18】本発明の第3の実施例のブロック図である。
【図19】論理パス状態表13a、13bの内容例を示す図である。
【図20】ホスト情報収集手段25a、25bの処理例を示すフローチャートである。
【図21】中継サーバ側の論理パス制御手段とホストコンピュータ側の論理パス制御手段との対応関係を示す図である。
【符号の説明】
1a、1a'、1b、1b'…ホストコンピュータ
11、11'…パス管理手段
111a〜111d、111a'〜111d'…物理パス制御手段
112、112'…パス選択手段
113a〜113c、113a'〜113c'…論理パス制御手段
12、12'…物理パス状態表
13、13'、13a、13b…論理パス状態表
14、14'…業務プログラム実行手段
141a、141a'、141b、141b'…業務プログラム
142、142'、142a、142b…制御用業務プログラム
15、15'…操作卓
K1a、K1a'、K1b、K1b'…記録媒体
2、2a、2b…中継サーバ
21、21'…パス管理手段
211a〜211f、211a'〜211d'…物理パス制御手段
212、212'…パス選択手段
213a〜213f、213a'〜213d'…論理パス制御手段
22、22'…物理パス状態表
23、23'…論理パス状態表
24、24'…端末管理手段
241a、241b、241a'…業務端末制御手段
242、242'…制御端末制御手段
25、25a、25b…ホスト情報収集手段
26、26'…端末状態表
27、27'…論理パス選択手段
28、28'…操作卓
3a、3a'、3b…業務端末
4…データベース
K2、K2a、K2b…記録媒体[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an online system in which a host computer and a terminal communicate with each other via a relay server, and more particularly to a technique that enables efficient use of a communication path and improvement of reliability.
[0002]
[Prior art]
In an online system consisting of business terminals and host computers connected via a network, the number of business terminals and the amount of communication are steadily increasing with the spread of the client-server model or the three-layer model. Often problematic.
[0003]
As a conventional technique that enables efficient use of a communication path, a technique is known in which a communication path is divided into two layers, a physical path layer and a logical path layer, and the physical path is shared by a plurality of logical paths. (For example, refer to Patent Document 1).
[0004]
The online system described in
[0005]
[Patent Document 1]
JP 2002-300177 A
[0006]
[Problems to be solved by the invention]
[0007]
However, the conventional technique described in
[0008]
Accordingly, an object of the present invention is to provide a case where a failure occurs in a physical path even when a failure occurs in a host computer in an online system in which a terminal and a host computer communicate via a relay server. Even so, it is to enable continuation of communication.
[0009]
[Means for Solving the Problems]
The logical path control method according to the present invention achieves the above object,
A logical path control method in an online system in which a terminal and a plurality of host computers are connected via a relay server,
Each between the relay server and each host computer, The path depends on the communication protocol A physical path connection step for connecting by a plurality of physical paths;
In response to a connection request from the terminal, each between the relay server and each host computer A path obtained by logically dividing a physical path A connection step of setting a logical path and connecting the terminal and each host computer via a logical path for each set host computer;
When the relay server receives a message from the terminal, the relay server selects a logical path corresponding to a host computer in which no failure has occurred from among the logical paths for each host computer set in the connection step. One physical path is selected from a plurality of physical paths connecting the host computer corresponding to the selected logical path and the own relay server, and the message is transmitted using the selected physical path and the selected logical path. Sending to the host computer.
[0010]
More specifically, the logical path control method according to the present invention is:
The relay server includes a collection step of collecting whether the status of each host computer is in operation, standby, or failure; and
When selecting a logical path in the message transmission step, a logical path corresponding to a host computer whose status collected in the collecting step is in operation is selected.
[0011]
In addition to the method described above, the logical path selection method is
The relay server includes a collection step of collecting a busy rate of each host computer; and
When selecting a logical path in the message sending step, a method of selecting a logical path corresponding to a host computer having the smallest busy rate collected in the collecting step may be employed.
[0012]
In addition, the logical path control method according to the present invention can cope with a failure of the relay server.
A logical path control method in an online system comprising a terminal, a plurality of host computers, and a plurality of relay servers each connecting the terminal and the plurality of host computers,
Between each of the relay servers and each of the host computers, Communication path according to the communication protocol A physical path connection step for connecting by a plurality of physical paths;
Of each of the relay servers, the relay server that has received the connection request from the terminal is between the own relay server and each of the host computers. A path obtained by logically dividing a physical path A connection step of setting a logical path and connecting the terminal and each host computer via a logical path for each set host computer;
A logical path corresponding to a host computer in which a failure has not occurred among the logical paths for each of the host computers set in the connection step by the relay server that has received the message from the terminal among the relay servers. And selecting one physical path from a plurality of physical paths connecting the host computer corresponding to the selected logical path and the own relay server, and selecting the selected physical path and the selected logical path. Using a message sending step to send the message to a host computer;
Each relay server collects terminal information about each terminal connected to the host computer via a logical path from each host computer;
When there is a terminal that is not connected to the host computer by a logical path through the relay server, among the terminals indicated by the terminal information collected in the collection step of the relay server, each relay server, And a failure countermeasure logical path connection step of connecting the terminal and each of the host computers via a logical path via a self-relay server.
[0013]
[Action]
In the present invention, among the logical paths set between the relay server and each host computer, a plurality of logical paths corresponding to the host computer in which no failure has occurred and the host computer are set. Since messages are sent using one of the physical paths, communication is possible regardless of whether a failure occurs in the host computer or a physical path. Can continue.
[0014]
Further, in the present invention, each relay server collects terminal information about each terminal connected to the host computer via a logical path from each host computer, and the relay server itself includes the terminal indicated by the collected terminal information. If there is a terminal that is not connected to the host computer depending on the logical path via the relay server, the terminal and each host computer are connected via a logical path via the local relay server. It is possible to easily cope with the failure.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described in detail with reference to the drawings.
[0016]
[Configuration of Example]
First, a first embodiment of the present invention will be described. In this embodiment, the present invention is applied to a system including an active host computer and a standby host computer, such as a hot standby system. Referring to FIG. 1, the first embodiment of the present invention is shared by a plurality of host computers (hosts) 1a and 1b, a
[0017]
The host computers 1a and 1b and the
[0018]
The host computers 1a and 1b have path management means 11 and 11 ', physical path status tables 12 and 12', logical path status tables 13 and 13 ', business program execution means 14 and 14', and a
[0019]
The physical path status table 12 manages the status of each physical path connecting the host computer 1a and the
[0020]
As shown in FIGS. 2A and 2B, the physical path status tables 12 and 12 ′ include items “physical path definition name”, “group”, “physical path status”, “local physical address”, “ The other party's physical address. Of these, “physical path definition name”, “group”, “local physical address”, and “other physical address” are definition information registered in advance to define (specify) the physical path, and the rest The “physical path status” is status information that changes according to the status of the physical path. “Physical path definition name” indicates the definition name assigned to the physical path, “Group” indicates the group to which the physical path belongs, and “Physical path status” indicates that the physical path is currently in the “connected” status. "Self-side physical address" and "Destination-side physical address" represent the address of the host computer connected by the physical path and the address of the relay server.
[0021]
Also, the physical path state tables 12 and 12 ′ shown in FIGS. 2A and 2B have four entries of entry numbers “1” to “4”, respectively. It manages the status of physical paths defined (specified) by “physical path definition name”, “group”, “local physical address”, and “partner physical address”. For example, in the example of FIG. 2A, the entry with the entry number “1” includes the physical path definition name “P1-SERVER”, the group name “SERVER”, the local physical address “10.1.1.1 (10000)”, This indicates that the physical path defined by the counterpart physical address “10.1.1.3 (30011)” is currently in the “connected” state. In the example of FIG. 2B, the entry with the entry number “4” includes the physical path definition name “P4-SERVER”, the group name “SERVER”, the local physical address “10.1.1.2 (10000)”, This indicates that the physical path defined by the counterpart physical address “10.1.1.3 (30024)” is currently in an “unconnected” state.
[0022]
The logical path status table 13 manages the status of the logical path connecting the host computer 1a and the terminal. Further, the logical path state table 13 ′ manages the state of the logical path that connects the host computer 1b and the terminal. 3A and 3B show examples of contents of the logical path status tables 13 and 13 ′.
[0023]
As shown in FIGS. 3A and 3B, the logical path status tables 13 and 13 ′ include items “logical path definition name”, “terminal definition name”, “group”, “logical path status”, “logical Path identifier ". Of these, "logical path definition name", "terminal definition name", and "group" are definition information registered in advance to define a logical path, and the remaining "logical path status" and "logical path identifier" Is state information that changes according to the state of the logical path. “Logical path definition name” indicates the definition name assigned to the logical path, “Terminal definition name” indicates the terminal definition name assigned to the terminal using the logical path, and “Group” indicates the logical path. Indicates the group name of the group to which the physical path that can be used for communication belongs, and “Logical path status” indicates whether the logical path is currently in “connected” or “not connected” status “Logical path identifier” indicates an identifier assigned to the logical path.
[0024]
Also, the logical path status tables 13 and 13 ′ shown in FIGS. 3A and 3B have three entries of entry numbers “1” to “3”, respectively. It manages the status of logical paths defined by “name”, “terminal definition name”, and “group”. For example, in the example of FIG. 3A, the entry with the entry number “1” has a logical path defined by the logical path definition name “L1”, the terminal definition name “TERM-A”, and the group name “SERVER”. This indicates that the current state is “connected” and “LID-H1-00001” is assigned as the logical path identifier. In the example of FIG. 3B, the entry of entry No. “2” has a logical path defined by the logical path definition name “L2”, the terminal definition name “TERM-B”, and the group “SERVER”. This indicates that the current state is “unconnected”. Note that no logical path identifier is set for an entry whose logical path status is “not connected”.
[0025]
The
[0026]
The physical
[0027]
The logical path control means 113a to 113c control the logical path to the
[0028]
The
[0029]
The business program execution unit 14 stores a plurality of
[0030]
The
[0031]
The recording medium K1a is a disk, semiconductor memory, or other recording medium, and stores a program for causing the host computer 1a to function as part of the online system. This program is read by the host computer 1a and its operation is controlled to realize the path management means 11, the physical path status table 12, the logical path status table 13, and the business program execution means 14 on the host computer 1a.
[0032]
The
[0033]
The physical path status table 22 manages the status of each physical path connecting the
[0034]
The logical path status table 23 manages the status of the logical path connecting the terminal and the host computers 1a and 1b. The structure is equivalent to the logical path status tables 13 and 13 ′ on the host computers 1a and 1b. FIG. 5 shows an example of the contents of the logical path status table 23. In the example of FIG. 5, the logical path belonging to the group “H1” is a logical path connecting the terminal and the host computer 1a, and the logical path belonging to the group “H2” is connecting the terminal and the host computer 1b. It is a logical path.
[0035]
The terminal status table 26 manages definition information and status information of business terminals and control terminals. FIG. 6 shows an example of the contents of the terminal status table 26. Referring to FIG. 6, “terminal definition name”, “terminal type”, and “group” are definition information, and “terminal status”, “terminal identifier”, “logical path identifier”, and “group status” are status information. is there.
[0036]
“Terminal type” indicates whether the type of the terminal is “business terminal” or “control terminal”. “Group” indicates a group to which a logical path that can be used by the terminal belongs. “Terminal state” indicates whether the terminal is currently in a “connected” state or an “unconnected” state. For a terminal in the “connected” state, a “terminal identifier” is stored. The “logical path identifier” prepared for each “group” indicates a logical path identifier assigned to a logical path in a connected state. “Group status” indicates the status of host computers connected by logical paths belonging to the group. In this embodiment, whether the host computer is active / standby / unknown is indicated by “active”, “standby”, and “unknown (failed)”.
[0037]
In the example of FIG. 6, the entry No. “1” indicates that the business terminal having the terminal definition name “TERM-A” is a host using two logical paths belonging to the groups “H1” and “H2”. It shows that communication with the computers 1a and 1b can be performed. In this entry, the logical path identifier of the logical path belonging to the group “H1” is “LID-H1-00001”, and the logical path identifier of the logical path belonging to the group “H2” is “LID-H2-00001”. It is shown that. The logical path identifier is generated and distributed by the host computers 1a and 1b when the logical path is connected. The logical path status tables 13 and 13 'on the host computers 1a and 1b and the logical path status on the
[0038]
The path management unit 21 includes physical
[0039]
The physical
[0040]
The logical path control means 213a to 213c controls the logical path to the host computer 1a, and the logical path control means 213d to 213f controls the logical path to the host computer 1b. These are dynamically generated / disappeared as the logical path is connected / disconnected. The logical path control means 213a to 213f store the logical path identifiers distributed from the logical path control means 113a to 113c and 113a ′ to 113c ′ on the host computers 1a and 1b in the logical path state table 23.
[0041]
The
[0042]
The terminal management unit 24 includes business
[0043]
The business terminal control means 241a and 241b manage and control the connection status of the
[0044]
The business terminal control means 241a and 241b generate a terminal identifier for identifying the business terminal at the time of generation, store the terminal identifier in the terminal status table 26, and distribute the terminal identifier to the
[0045]
The control terminal control means 242 manages and controls the control terminal connection state. The control terminal is a terminal that is logical and does not exist, and is used by the host information collecting means 25. The control terminal control means 242 dynamically generates / disappears as the control terminal is connected / disconnected.
[0046]
At the time of generation, the control terminal control means 242 generates a terminal identifier for identifying the control terminal, stores it in the terminal status table 26, and distributes the terminal identifier to the host information collection means 25.
[0047]
The logical
[0048]
The host information collecting means 25 collects host information by periodically starting the
[0049]
The
[0050]
The recording medium K2 is a disk, semiconductor memory, or other recording medium, and stores a program for causing the
[0051]
[Description of operation of embodiment]
Next, the operation of this embodiment will be described in detail with reference to the drawings.
[0052]
The host computers 1a and 1b are connected to the
[0053]
First, the operation when connecting physical paths will be described. The physical path connection processing is started by inputting a physical path connection command from the
[0054]
Now, for example, if a physical path connection command is input from the
[0055]
When the physical path is connected, the
[0056]
The physical path control means 111a and 211a confirm the physical address of the connected physical path, and set the “physical path status” of the corresponding entry (entry with matching physical address) in the physical path status tables 12 and 22 to the “connected” status. Change to Thereby, the connection of the physical path is completed. The same processing is performed when a physical path connection command is input from the
[0057]
Next, an operation when the
[0058]
Now, for example, if the
[0059]
When the terminal management unit 24 receives the connection request from the
[0060]
Now, for example, if the entry No. “2” is searched as a corresponding entry in step S702, the terminal management unit 24 refers to the entry and finds an unprocessed group for which no logical path is set. It is determined whether or not it exists (S703). In this example, two groups “H1” and “H2” are set in the entry No. “2”, and two logical paths belonging to the groups “H1” and “H2” are set. However, at present, no logical path is set (no logical path identifier is set). Accordingly, since the determination result in step S703 is YES, the terminal management unit 24 selects one of the unprocessed groups, the selected group (for example, the group “H1”), and the entry number “2”. The logical path connection request including the terminal definition name “TERM-B” stored in the entry “” is passed to the path management means 21 (S704).
[0061]
When the logical path connection request including the group “H1” and the terminal definition name “TERM-B” is passed from the terminal management means 24, the path management means 21 receives the group “H1” and the terminal definition name “TERM-B”. The logical path status table 23 is searched using and as a key to find an entry whose logical path status is “not connected” (S81 in FIG. 8). For example, if the contents of the logical path state table 23 are as shown in FIG. 5, the entry with the entry number “2” is searched for. Thereafter, the path management unit 21 generates a new logical path control unit (for example, the logical
[0062]
When generated, the logical
[0063]
Thereafter, the logical
[0064]
The logical path connection request sent to the host computer 1a via the physical path control
[0065]
Thereafter, the path management means 11 searches the logical path status table 13 using the group “SERVER” acquired in step S91 and the terminal definition name “TERM-B” included in the logical path connection request as a key. An entry whose path status is “not connected” is searched (S92). If the contents of the logical path state table 13 are as shown in FIG. 3, the entry with the entry number “2” is searched for.
[0066]
Next, the
[0067]
The newly generated logical path control means 113b generates a logical path identifier (for example, LID-H1-00003) that can uniquely identify a new logical path and that is not repeatedly used. The logical path identifier is stored in the corresponding entry of the logical path status table 13 (the entry found in S92), and the logical path status is changed to “connected” (S93, S94). As a result, as shown in FIG. 10A, the logical path identifier “LID-H1-00003” is stored in the entry of the entry No. “2” in the logical path state table 13 and the logical path state “ Connection "is stored. Further, the logical path control means 113b distributes the logical path identifier to the corresponding logical path control means 213b through the physical path control means 111b and 211b (S95).
[0068]
The logical path control means 213b stores the logical path identifier distributed from the host computer 1a in the corresponding entry of the logical path status table 23 (FIG. 8, S85). As a result, the logical path identifier “LID-H1-00003” is stored in the entry of the entry number “2” in the logical path state table 23 as shown in FIG.
[0069]
Thereafter, the logical
[0070]
When the logical path identifier “LID-H1-00003” of the newly connected logical path is returned from the logical path control means 213b, the terminal management means 24 stores it in the corresponding entry in the terminal status table 26 (FIG. 7, S705, S706). In this example, as shown in FIG. 12, the logical path identifier “LID-H1-00003” is stored as the logical path identifier of the logical path belonging to the group “H1” in the entry No. “2”. Will be.
[0071]
Thereafter, the terminal management unit 24 searches the entry No. “2” entry in the terminal state table 26 and determines whether there is an unprocessed group for which no logical path is set (S703). In this example, since no logical path is set for the group “H2”, a logical path connection request including the group “H2” and the terminal definition name “TERM-B” is passed to the path management means 21 (S704). .
[0072]
As a result, the path management means 21 performs the same processing as steps S81 to S84 (see FIG. 8) described above, and sends a logical path connection request including the group “H2” and the terminal definition name “TERM-B” to the group. It transmits to the host computer 1b corresponding to “H2”.
[0073]
When the path management means 11 ′ in the host computer 1b receives a logical path connection request including the group “H2” and the terminal definition name “TERM-B” from the
[0074]
When the logical path identifier “LID-H2-00003” is returned from the host computer 1b, the path management means 21 in the
[0075]
When the logical path identifier “LID-H2-00003” is returned from the path management means 21, the terminal management means 24 stores it in the corresponding entry of the terminal status table 26 (FIGS. 7, S705, S706). In this example, as shown in FIG. 12, the logical path identifier “LID-H2-00003” is stored as the logical path identifier of the logical path belonging to the group “H2” in the entry No. “2”. Will be.
[0076]
Thereafter, the terminal management unit 24 searches the entry No. “2” entry in the terminal state table 26 and determines whether there is an unprocessed group for which no logical path is set (S703). In this example, there is no unprocessed group (NO in S703), so the terminal management unit 24 manages the business terminal control unit (for example, business terminal control unit) for managing and controlling the
[0077]
The
[0078]
Next, an operation when a message is transmitted from the
[0079]
When transmitting the message to the host computer, the
[0080]
A message from the
[0081]
When the message from the
[0082]
If the entry in which the terminal identifier “TID-00003” is stored cannot be found, a message reception failure is notified to the
[0083]
If the logical
[0084]
When the message with the logical path identifier “LID-H1-00003” added is passed, the logical path control means 213b searches the logical path state table 23 using the logical path identifier “LID-H1-00003” as a key, The group to which the logical path specified by the logical path identifier “LID-H1-00003” belongs is recognized. Now, for example, if the contents of the logical path status table 23 are as shown in FIG. 11, the logical path control means 213b recognizes that the logical path belongs to the group “H1”.
[0085]
Thereafter, the logical
[0086]
When the physical path control
[0087]
When the logical path control unit 113b receives the message to which the logical path identifier “LID-H1-00003” is added, the logical path control unit 113b passes the message to the business program execution unit 14. The business program execution unit 14 activates a business program (for example,
[0088]
When the processing result and the logical path identifier “LID-H1-00003” are returned, the logical path control unit 113b searches the logical path state table 13 using the logical path identifier “LID-H1-00003” as a key, The group to which the logical path specified by the path identifier “LID-H1-00003” belongs is recognized. Now, for example, if the contents of the logical path state table 13 are as shown in FIG. 10A, the logical path control means 113b recognizes that the logical path belongs to the group “SERVER”.
[0089]
Thereafter, the logical path control unit 113b passes the group “SERVER” to the
[0090]
When the physical path control
[0091]
When the processing result with the logical path identifier “LID-H1-00003” added is passed, the logical path control means 213b searches the logical path state table 23 and corresponds to the logical path identifier “LID-H1-00003”. Acquires the terminal definition name that has been registered. Now, for example, if the contents of the logical path status table 23 are as shown in FIG. 11, the terminal definition name “TERM-B” is acquired. Thereafter, the logical
[0092]
As described above, the message transferred to the host computer 1a is transferred to the business program execution means 14. On the host computer 1a, a plurality of messages received through a certain logical path are messages from the same terminal. It is guaranteed that there is. Further, by setting the logical path definition name as the common name in the host computers 1a and 1b, it is guaranteed that the message received through the logical path having the common logical path definition name is a message from the same terminal. For example, a message received through a logical path having the logical path definition name “L1” is guaranteed to be a message from a business terminal having “TERM-A” as the terminal definition name, and the host computer 1a or the host computer 1b It can be determined that the messages are received from the same terminal. That is, it is possible to perform business processing in which the
[0093]
Next, a method for setting the “group status” in the terminal status table 26 will be described. The setting of the “group state” is performed by the host information collecting unit 25, and an example of the processing is shown in the flowchart of FIG.
[0094]
The host information collecting unit 25 periodically performs the process shown in the flowchart of FIG. First, the host information collection unit 25 refers to the terminal state table 26 and determines whether or not the logical path between the host computers 1a and 1b has been connected (S1401). That is, it is determined whether or not the logical path is already connected based on whether or not the logical path identifier is set.
[0095]
If the logical path is not already connected, a connection request is output to the terminal management means 24 (S1401 is NO, S1402). As a result, the terminal management unit 24 performs the same operation as when a connection request is received from the
[0096]
On the other hand, if the logical path is already connected, the process of step S1403 is immediately performed. In step S1403, a message requesting activation of the control business program is passed to the control terminal control means 242. At that time, the distributed terminal identifier “TID- # CTRL #” is added to the message.
[0097]
The control terminal control unit 242 passes the message from the host information collection unit 25 to the logical
[0098]
When the message from the host information collection unit 25 is passed through the control terminal control unit 242, the logical
[0099]
As a result, the same processing as when the messages from the
[0100]
The
[0101]
When a message indicating “in operation” is returned, the host information collection unit 25 returns the group corresponding to the logical path identifier added to the message from among the group states stored in the terminal state table 26. The status is changed to “in operation” (S1405 to S1407).
[0102]
When a message indicating “waiting” is returned, the group status corresponding to the logical path identifier added to the message among the group statuses stored in the terminal status table 26 is set to “waiting”. (S1405, S1406, S1408).
[0103]
In addition, the group status corresponding to the logical path for which no message is returned for a certain period of time is updated to “unknown” (S1404 is YES, S1409).
[0104]
As described above, the host information collection unit 25 is used to periodically collect host information ("active" and "standby") from each of the host computers 1a and 1b, and a terminal status table according to the collected host information. Therefore, even if a failure occurs in a host computer that is in operation, operations can be continued using another host computer. For example, when a failure occurs in the host computer 1a when the host computers 1a and 1b are “operating” and “standby”, respectively, the host computer 1b becomes “operating”. This is reflected in the terminal status table 26 by the processing periodically performed by the host information collecting means 25, and thereafter, the message is transferred through the logical path connected to the host computer 1b. Even when a failure occurs in the “running” host computer 1a, it is possible to continue the business process using another host computer 1b.
[0105]
Other Embodiments of the Invention
Next, a second embodiment of the present invention will be described. In this embodiment, the present invention is applied to a system that distributes business processing to a plurality of host computers, such as a load balancing cluster system.
[0106]
This embodiment is realized by making the following changes (1) to (4) in the first embodiment.
[0107]
(1) Instead of the terminal status table 26, a terminal status table 26a having the configuration shown in FIG. 15 is used. The difference between the terminal state table 26a and the terminal state table 26 is that an item “group busy rate” is included instead of the item “group state”. The group busy rate is an index indicating the busyness (load) of the host computer.
[0108]
(2) The host information collecting unit 25 is caused to perform the processing shown in the flowchart of FIG.
[0109]
(3) The logical
[0110]
(4) When receiving a message from the host information collecting means 25, the
[0111]
Next, the operation of this embodiment will be described. Here, only differences from the first embodiment will be described.
[0112]
The host information collecting unit 25 periodically performs the processing shown in the flowchart of FIG. First, the host information collection unit 25 refers to the terminal state table 26a and determines whether or not the logical path between the host computers 1a and 1b is already connected (S161).
[0113]
If the logical path is not already connected, a connection request is output to the terminal management means 24 (S161 is NO, S162). As a result, processing similar to that described above is performed, logical paths are connected to the host computer 1a and to the host computer 1b, and the control terminal control means 242 is generated to generate a terminal identifier (for example, , "TID- # CTRL #") is distributed. Thereafter, the terminal management unit 24 performs the process of step S163.
[0114]
On the other hand, if the logical path is already connected, the process of step S163 is immediately performed. In step S163, a message requesting activation of the control business program is passed to the control terminal control means 242. At that time, the distributed terminal identifier “TID- # CTRL #” is added to the message.
[0115]
The control terminal control unit 242 passes the message from the host information collection unit 25 to the logical
[0116]
When the message from the host information collection unit 25 is passed through the control terminal control unit 242, the logical
[0117]
As a result, the same processing as described above is performed, and the message from the host information collecting means 25 is passed to the business program executing means 14, 14 'of the host computers 1a, 1b. As a result, the business program execution means 14 and 14 'activate the
[0118]
The
[0119]
When a message indicating the busy rate is returned, the host information collection unit 25 returns the group busy rate corresponding to the logical path identifier added to the message among the group busy rates stored in the terminal state table 26a. Is changed to the busy rate represented by the message (S165 to S167). When the above processing is performed for messages sent from all the host computers 1a and 1b (YES in step S169), the processing ends. However, if there is a host computer that does not return a message even after a predetermined time has elapsed, the group busy rate corresponding to that host computer is changed to “unknown” (YES at S164, S168).
[0120]
Next, an operation when a message is transmitted from the
[0121]
When transmitting the message to the host computer, the business terminal 3a first adds the terminal identifier “TID-00001” to the message, and then transmits the message with the terminal identifier “TID-00001” to the
[0122]
The message from the business terminal 3a is passed to the logical
[0123]
When the message from the business terminal 3a is passed through the business
[0124]
If the entry in which the terminal identifier “TID-00001” is stored cannot be found, a message reception failure is notified to the business terminal 3a via the business terminal control means 241a (S173 is NO, S178). . On the other hand, if the entry storing the terminal identifier “TID-00001” can be found, the terminal type stored in the entry is “business terminal” or “control terminal” Is checked (S174). Now, for example, assuming that the contents of the terminal status table 26a are as shown in FIG. 15, the entry No. “1” is found in step S172, so in step S174, the terminal type is “business terminal”. It will be recognized that.
[0125]
In step S174, when it is recognized that the terminal type is “business terminal”, the logical
[0126]
[Other embodiments of the present invention]
Next, a third embodiment of the present invention will be described. The feature of this embodiment is that it can withstand a failure of the relay server.
[0127]
FIG. 18 is a block diagram of this embodiment. The differences between this embodiment and the first embodiment shown in FIG. 1 are as follows (a) to (c).
[0128]
(A) A business terminal 3a ′ is provided instead of the business terminal 3a.
[0129]
In addition to the functions provided by the terminal 3a, the terminal 3a ′, when transmitting a logical path connection request to the relay server, sets the logical path to the relay server with the highest priority among the normally operating relay servers. Has a function of transmitting a connection request. Furthermore, in addition to the functions of the terminal 3a, the terminal 3a ′ transmits the message to the relay server with the highest priority among the normally operating relay servers when transmitting the message to the host computer. It has a function. In this embodiment, it is assumed that the priority order is in the order of the relay server 2a and the relay server 2b. That is, it is assumed that the priority order of the relay server 2a is the highest.
[0130]
(B) A host computer 1a 'or 1b' is provided instead of the host computer 1a or 1b.
[0131]
The difference between the host computers 1a and 1b and the host computers 1a ′ and 1b ′ is that the logical path status tables 13a and 13b are provided instead of the logical path status tables 13 and 13 ′, and the
[0132]
FIGS. 19A and 19B are diagrams showing examples of contents of the logical path status tables 13a and 13b. The item “terminal identifier” is added to the items included in the logical path status tables 13 and 13 ′.
[0133]
In addition to the functions provided in the
[0134]
The recording media K1a ′ and K1b ′ are disks, semiconductor memories, and other recording media, in which programs for causing the host computers 1a ′ and 1b ′ to function as part of the online system are recorded. This program is read by the host computers 1a ′ and 1b ′, and by controlling the operation thereof, the path management means 11 and 11 ′ and the physical path status tables 12 and 12 ′ are stored on the host computers 1a ′ and 1b ′. And logical path status tables 13a and 13b and business program execution means 14 and 14 '.
[0135]
(C) The business terminal 3a ′ and the host computers 1a ′ and 1b ′ are connected via the plurality of relay servers 2a and 2b.
[0136]
The difference between the relay servers 2a and 2b and the
[0137]
The host
[0138]
The recording media K2a and K2b are disks, semiconductor memories, and other recording media, and a program for causing the relay servers 2a and 2b to function as part of the online system is recorded. This program is read by the relay servers 2a and 2b, and by controlling the operation thereof, the path management means 21 and 21 ', the physical path status tables 22 and 22', and the logical path status on the relay servers 2a and 2b. Tables 23 and 23 ', terminal management means 24 and 24', host information collection means 25a and 25b, terminal status tables 26 and 26 ', and logical path selection means 27 and 27' are realized.
[0139]
Next, the operation of this embodiment will be described. Here, only differences from the first embodiment will be described.
[0140]
Now, for example, it is assumed that the business terminal 3a ′ has transmitted a logical path connection request to the relay server 2a, 2b that is operating normally and having the highest priority (referred to as the relay server 2a). Then, in response to this logical path connection request, the same processing as described above is performed, and the logical path (logical logic) between the relay server 2a and the host computer 1a ′ is processed by the logical path control means 213a and the logical path control means 113a. A logical path having a path identifier “LID-H1-00001” is set, and a logical path (logical path) is established between the relay server 2a and the host computer 1b ′ by the logical
[0141]
On the other hand, the host information collection means 25a and 25b in the relay servers 2a and 2b perform the processing shown in the flowchart of FIG. 20 at every predetermined time.
[0142]
Now, for example, it is assumed that the host
[0143]
The host
[0144]
If the logical path is not already connected, a connection request is output to the terminal management unit 24 '(S201 is NO, S202). As a result, a logical path is connected to the host computer 1a ′ and to the host computer 1b ′, and a control terminal control unit 242 ′ is generated, and a terminal identifier (for example, “TID- # CTRL #”) is generated. Is distributed. Thereafter, the terminal management unit 24 ′ performs the process of step S203.
[0145]
On the other hand, if the logical path is already connected, the process of step S203 is immediately performed. In step S203, a message requesting transmission of the list is passed to the control terminal control means 242 ′. At that time, the distributed terminal identifier “TID- # CTRL #” is added to the message.
[0146]
The control terminal control unit 242 ′ passes the message from the host
[0147]
The message from the host information collecting means 25 ′ is transferred to the business program execution means 14, 14 ′ of the host computers 1a ′, 1b ′. As a result, the business program execution means 14 and 14 'activate the
[0148]
The
[0149]
For example, when receiving a message including the above list from the host computer 1a ′, the host
[0150]
On the other hand, when it is determined that an unprocessed group exists in the message received from the host computer 1a ′, one unprocessed group is extracted (S207). Now, for example, assume that the extracted set includes a terminal definition name “TERM-A”, a logical path identifier “LID-H1-00001”, and a terminal identifier “TID-00001”. Thereafter, the logical path state table 23 ′ is searched, and whether the terminal specified by the terminal definition name “TERM-A” included in the extracted set is “service terminal” or “control terminal”. Is determined (S208).
[0151]
If it is determined that the terminal is a “control terminal”, the process returns to step S206. On the other hand, if it is determined that it is a “service terminal”, the logical path identifier extracted in step S205 in the entry corresponding to the terminal definition name “TERM-A” is referred to the terminal status table 26 ′. Whether the logical path identifier is set in the corresponding group (here, the logical path identifier is “H1” because it indicates the logical path between the host computer 1a ′ and the relay server 2b). Is determined (S209). The group corresponding to the logical path identifier extracted in step S205 can be obtained by searching the logical path status table 23 ′ using the logical path identifier as a key. For example, when the logical path identifier extracted in step S205 is “LID-H1-00001” and the content of the logical path status table 23 ′ is as shown in FIG. 5, for example, the group “H1” is searched, If the logical path identifier extracted in step S205 is “LID-H2-00001”, the group “H2” is searched.
[0152]
When the determination result in step S209 is YES, that is, the logical path identifier is stored in association with the group “H1” in the entry corresponding to the terminal definition name “TERM-A” in the terminal state table 26 ′. If yes, the process of step S213 is performed. On the other hand, when the determination result in step S209 is NO, that is, in the entry corresponding to the terminal definition name “TERM-A” in the terminal state table 26 ′, the area corresponding to the group “H1” is blank. If it is, it is recognized that the logical path connection process between the business terminal 3a ′ and the host computer 1a ′ has been performed by another relay server (a relay server other than the relay server 2b), and the process of step S210 is performed. I do. .
[0153]
In step S210, the logical path control means 213a ′ corresponding to the logical path identifier “LID-H1-00001” in the set to be processed is generated. In step S211, the logical path status table 23 ′ is grouped into the group “H1”. And the terminal definition name “TERM-A” as a key, and the logical path identifier “LID-H1-00001” in the above set is stored in the area corresponding to the group “H1” in the corresponding entry. In S212, the logical path identifier “LID-H1-00001” is stored in the area specified by the group “H1” and the terminal definition name “TERM-A” in the terminal state table 26 ′. As a result, a means for transmitting and receiving messages related to the corresponding logical path is established.
[0154]
Thereafter, it is checked whether or not the terminal identifier is stored in the entry corresponding to the terminal definition name “TERM-A” in the terminal state table 26 ′ (S213). If it is stored (YES in S213), the process returns to step S206. On the other hand, if it is not stored (NO in S213), the process of step S214 is performed.
[0155]
In step S214, the business terminal control means 241a ′ corresponding to the terminal identifier “TID-00001” in the set to be processed is generated, and in the next step S215, the terminal definition name “TERM-” in the terminal status table 26 ′ is generated. The terminal identifier “TID-00001” is stored in the entry corresponding to “A”, and then the process of step S206 is performed. As a result, a means for transmitting and receiving messages related to the corresponding business terminal 3a ′ is established in the relay server 2b. When the response time-out occurs (YES in S204), the host
[0156]
When a message is sent from the host computer 1b ′, the same processing as described above is performed.
[0157]
By performing the above processing in all the relay servers 2a and 2b, the terminal information that has been connected in a certain relay server can be reflected in all the relay servers 2a and 2b. Thus, the “terminal identifier” and the “logical path identifier” of the transfer destination given to the message received from the business terminal 3a ′ exist in the terminal status tables 26 and 26 ′ on all the relay servers 2a and 2b. Even through the relay servers 2a and 2b, transfer to the corresponding logical paths on the host computers 1a 'and 1b' becomes possible, and the business program can perform processing that identifies the business terminal.
[0158]
FIG. 21 shows the correspondence between the logical paths in FIG. 18 using the reference numerals in the drawing. For example, “213a” on the relay server 2a and “213a ′” on the relay server 2b both correspond to “113a” on the host computer 1a ′.
[0159]
At the time of failure of the relay server 2a, the business terminal 3a ′ transmits a message to the host computers 1a and 1b via the relay server 2b having the next highest priority, so even if a failure occurs in the relay server, the terminal It is possible to continue processing without interrupting the work from the start.
[0160]
Even when a relay server is dynamically added and a physical path is set between the host computers 1a and 1b, the terminal status tables 26 and 26 'are updated by the host information collecting means 25a and 25b. The message from the terminal can be immediately processed.
[0161]
Although not described in the above-described embodiment, the business terminal is connected to the relay server with the lightest load among the normally operating relay servers between the business terminal 3a ′ and the relay servers 2a and 2b. A load distribution switch for transmitting a logical path connection request from 3a ′ or a message may be provided. In this case, the business terminal 3a ′ does not need a function of outputting a message or logical path connection request in consideration of the priority of the relay server, and sends a message or logical path connection request to the load balancing switch. What is necessary is just to have the function to transmit. Further, in the above-described embodiment, the relay servers 2a and 2b are slightly changed to the
[0162]
【The invention's effect】
As described above, according to the present invention, a logical path corresponding to a host computer in which no failure has occurred among logical paths set between a relay server and each host computer, and the above-described host computer. Since messages are sent using one of the physical paths that are set in between, even if a failure occurs in the host computer, a failure occurs in the physical path. Even if it exists, communication can be continued.
[0163]
In the present invention, each relay server collects terminal information about each terminal connected to the host computer via a logical path from each host computer, and the relay server self-relays in the terminal indicated by the collected terminal information. If there is a terminal that is not connected to the host computer via a logical path via the server, the terminal and each host computer are connected via a logical path via the local relay server. Can also be easily dealt with.
[Brief description of the drawings]
FIG. 1 is a block diagram of a first exemplary embodiment of the present invention.
FIG. 2 is a diagram showing an example of contents of physical path status tables 12 and 12 ′.
FIG. 3 is a diagram showing an example of contents of logical path status tables 13, 13 ′.
4 is a diagram showing an example of the contents of a physical path status table 22. FIG.
FIG. 5 is a diagram showing an example of the contents of a logical path state table 23;
6 is a diagram showing an example of the contents of a terminal state table 26. FIG.
FIG. 7 is a flowchart showing a processing example of the terminal management means 24;
FIG. 8 is a flowchart showing a processing example of the path management means 21;
FIG. 9 is a flowchart showing a processing example of the
FIG. 10 is a diagram showing an example of the contents of logical path status tables 13, 13 ′.
11 is a diagram showing an example of the contents of a logical path status table 23. FIG.
12 is a diagram showing an example of the contents of a terminal state table 26. FIG.
13 is a flowchart showing a processing example of a logical
14 is a flowchart showing a processing example of the host information collecting means 25. FIG.
FIG. 15 is a diagram showing an example of the contents of a terminal status table 26a used in the second embodiment of the present invention.
FIG. 16 is a flowchart showing a processing example of the host information collecting means 25 in the second embodiment of the present invention.
FIG. 17 is a flowchart showing a processing example of a logical
FIG. 18 is a block diagram of a third exemplary embodiment of the present invention.
FIG. 19 is a diagram illustrating an example of contents of logical path status tables 13a and 13b.
FIG. 20 is a flowchart showing a processing example of host information collecting means 25a and 25b.
FIG. 21 is a diagram showing a correspondence relationship between logical path control means on the relay server side and logical path control means on the host computer side.
[Explanation of symbols]
1a, 1a ′, 1b, 1b ′... Host computer
11, 11 '... path management means
111a to 111d, 111a ′ to 111d ′, physical path control means
112, 112 '... Path selection means
113a to 113c, 113a ′ to 113c ′, logical path control means
12, 12 '... Physical path state table
13, 13 ', 13a, 13b ... Logical path status table
14, 14 '... business program execution means
141a, 141a ', 141b, 141b' ... business program
142, 142 ', 142a, 142b ... business program for control
15, 15 '... console
K1a, K1a ′, K1b, K1b ′... Recording medium
2, 2a, 2b ... relay server
21, 21 '... path management means
211a to 211f, 211a ′ to 211d ′, physical path control means
212, 212 '... Path selection means
213a to 213f, 213a ′ to 213d ′, logical path control means
22, 22 '... Physical path state table
23, 23 '... Logical path status table
24, 24 '... terminal management means
241a, 241b, 241a '... business terminal control means
242 and 242 '... control terminal control means
25, 25a, 25b ... Host information collecting means
26, 26 '... Terminal status table
27, 27 '... Logical path selection means
28, 28 '... console
3a, 3a ', 3b ... business terminal
4 ... Database
K2, K2a, K2b ... Recording medium
Claims (7)
前記中継サーバと前記各ホストコンピュータとの間それぞれを、複数の物理的な通信路である物理パスによって接続する物理パス接続ステップと、
前記端末からの接続要求に応答して、前記中継サーバと前記各ホストコンピュータとの間それぞれに論理パスを設定し、該設定した各ホストコンピュータの論理パスを介して前記端末と前記各ホストコンピュータとを接続する接続ステップと、
前記中継サーバが、前記各ホストコンピュータの状態が稼働中、待機中、障害中の何れであるのかを収集し、前記端末からメッセージが送られてきたとき、前記接続ステップで設定した前記各ホストコンピュータの論理パスの中から、前記収集した状態が稼働中になっているホストコンピュータに対応する論理パスを選択すると共に該選択した論理パスに対応するホストコンピュータと自中継サーバとを接続する複数の物理パスの中から1つの物理パスを選択し、該選択した物理パスと前記選択した論理パスとを用いて前記メッセージをホストコンピュータに送信するメッセージ送信ステップとを含むことを特徴とする論理パス制御方法。A logical path control method in an online system in which a terminal and a plurality of host computers are connected via a relay server,
Each between the relay server and the respective host computer, a physical path connection step of connecting the physical path of a plurality of physical communication channels,
In response to a connection request from the terminal, the set of logical paths respectively between the relay server and the respective host computer, said each host computer and the terminal via the logic path for each host computer with said set Connecting step to connect,
Each of the host computers set in the connection step when the relay server collects whether the status of each of the host computers is operating, standby, or faulty, and a message is sent from the terminal A plurality of physical paths that select a logical path corresponding to the host computer whose collected state is in operation and connect the host computer corresponding to the selected logical path and the own relay server. A logical path control method comprising: a message transmission step of selecting one physical path from among the paths and transmitting the message to a host computer using the selected physical path and the selected logical path. .
前記中継サーバが、前記各ホストコンピュータのビジー率を収集する収集ステップを含み、且つ、
前記メッセージ送信ステップにおいて論理パスを選択する際、前記収集ステップで収集したビジー率が最も小さいホストコンピュータに対応する論理パスを選択することを特徴とする論理パス制御方法。The logical path control method according to claim 1,
The relay server includes a collection step of collecting a busy rate of each host computer; and
A logical path control method comprising: selecting a logical path corresponding to a host computer having the smallest busy rate collected in the collecting step when selecting a logical path in the message sending step.
前記各中継サーバと前記各ホストコンピュータとの間それぞれを、複数の物理的な通信路である物理パスによって接続する物理パス接続ステップと、
前記各中継サーバの内の、前記端末からの接続要求を受信した中継サーバが、自中継サーバと前記各ホストコンピュータとの間それぞれに論理パスを設定し、該設定した各ホストコンピュータの論理パスを介して前記端末と前記各ホストコンピュータとを接続する接続ステップと、
前記各中継サーバの内の、前記端末からのメッセージを受信した中継サーバが、前記各ホストコンピュータの状態が稼働中、待機中、障害中の何れであるのかを収集し、前記端末からメッセージが送られてきたとき、前記接続ステップで設定した前記各ホストコンピュータの論理パスの中から、前記収集した状態が稼働中になっているホストコンピュータに対応する論理パスを選択すると共に該選択した論理パスに対応するホストコンピュータと自中継サーバとを接続する複数の物理パスの中から1つの物理パスを選択し、該選択した物理パスと前記選択した論理パスとを用いて前記メッセージをホストコンピュータに送信するメッセージ送信ステップと、
前記各中継サーバが、前記各ホストコンピュータから、そのホストコンピュータと論理パスを介して接続されている端末に関する端末情報を収集する収集ステップと、
前記各中継サーバが、自中継サーバの前記収集ステップで収集した端末情報によって示される端末の中に、自中継サーバを介した論理パスによってはホストコンピュータと接続されていない端末が存在する場合は、該端末と前記各ホストコンピュータとを自中継サーバを介した論理パスにより接続する障害対策用論理パス接続ステップとを含むことを特徴とする論理パス制御方法。A logical path control method in an online system comprising a terminal, a plurality of host computers, and a plurality of relay servers each connecting the terminal and the plurality of host computers,
Each between each relay server and the respective host computer, a physical path connection step of connecting the physical path of a plurality of physical communication channels,
Of said each relay server, the relay server receives the connection request from the terminal, sets a logical path to each between the the own relay server each host computer, the logical path for each host computer with said set A connection step of connecting the terminal and each of the host computers via
Among the relay servers, the relay server that has received the message from the terminal collects whether the status of each host computer is active, standby, or faulty, and sends a message from the terminal. When selected, a logical path corresponding to the host computer whose collected state is in operation is selected from the logical paths of the host computers set in the connection step, and the selected logical path is One physical path is selected from a plurality of physical paths connecting the corresponding host computer and the own relay server, and the message is transmitted to the host computer using the selected physical path and the selected logical path. A message sending step;
Each relay server collects terminal information about each terminal connected to the host computer via a logical path from each host computer;
When there is a terminal that is not connected to a host computer by a logical path through the relay server, among the terminals indicated by the terminal information collected in the collection step of the relay server, each relay server, A logical path control method comprising: a fault countermeasure logical path connection step for connecting the terminal and each of the host computers via a logical path via a self-relay server.
自中継サーバと前記各ホストコンピュータとの間それぞれを、複数の物理的な通信路である物理パスによって接続する物理パス接続手段と、
前記端末からの接続要求に応答して、自中継サーバと前記各ホストコンピュータとの間それぞれに論理パスを設定し、該設定した各ホストコンピュータの論理パスを介して前記端末と前記各ホストコンピュータとを接続する接続手段と、
前記各ホストコンピュータの状態が稼働中、待機中、障害中の何れであるのかを収集し、前記端末からメッセージが送られてきたとき、前記接続手段で設定した前記各ホストコンピュータの論理パスの中から、前記収集した状態が稼働中になっているホストコンピュータに対応する論理パスを選択すると共に該選択した論理パスに対応するホストコンピュータと自中継サーバとを接続する複数の物理パスの中から1つの物理パスを選択し、該選択した物理パスと前記選択した論理パスとを用いて前記メッセージをホストコンピュータに送信するメッセージ送信手段とを備えたことを特徴とする中継サーバ。A relay server that is a component of an online system in which a terminal and a plurality of host computers are connected via a relay server,
Each between its own relay server and the respective host computer, a physical path connection means for connecting the physical path of a plurality of physical communication channels,
In response to a connection request from said terminal, set a logical path to each between the the own relay server each host computer, and each host computer and the terminal via the logic path for each host computer with said set Connecting means for connecting,
Collecting whether the status of each host computer is active, standby, or faulty, and when a message is sent from the terminal , the logical path of each host computer set by the connection means The logical path corresponding to the host computer whose collected state is in operation is selected, and one of a plurality of physical paths connecting the host computer corresponding to the selected logical path and the local relay server is selected. A relay server comprising message transmission means for selecting one physical path and transmitting the message to a host computer using the selected physical path and the selected logical path.
自中継サーバと前記各ホストコンピュータとの間それぞれを、複数の物理的な通信路である物理パスによって接続する物理パス接続手段と、
前記端末から接続要求を受信したとき、自中継サーバと前記各ホストコンピュータとの間それぞれに論理パスを設定し、該設定した各ホストコンピュータの論理パスを介して前記端末と前記各ホストコンピュータとを接続する接続手段と、
前記各ホストコンピュータの状態が稼働中、待機中、障害中の何れであるのかを収集し、前記端末からメッセージを受信したとき、前記接続手段で設定した前記各ホストコンピュータの論理パスの中から、前記収集した状態が稼働中になっているホストコンピュータに対応する論理パスを選択すると共に該選択した論理パスに対応するホストコンピュータと自中継サーバとを接続する複数の物理パスの中から1つの物理パスを選択し、該選択した物理パスと前記選択した論理パスとを用いて前記メッセージをホストコンピュータに送信するメッセージ送信手段と、
前記各ホストコンピュータから、そのホストコンピュータと論理パスを介して接続されている端末に関する端末情報を収集する収集手段と、
自中継サーバの前記収集手段で収集した端末情報によって示される端末の中に、自中継サーバを介した論理パスによってはホストコンピュータと接続されていない端末が存在する場合は、該端末と前記各ホストコンピュータとを自中継サーバを介した論理パスにより接続する障害対策用論理パス接続手段とを備えたことを特徴とする中継サーバ。A relay server that is a component of an online system comprising a terminal, a plurality of host computers, and a plurality of relay servers each connecting the terminal and the plurality of host computers;
Each between its own relay server and the respective host computer, a physical path connection means for connecting the physical path of a plurality of physical communication channels,
When receiving a connection request from the terminal, sets a logical path to each between the the own relay server each host computer, and the terminal and through the logic path for each host computer to which the set each host computer Connecting means for connecting;
Collecting whether the status of each host computer is active, standby, or faulty, and when receiving a message from the terminal, from the logical path of each host computer set by the connection means , One physical path is selected from a plurality of physical paths connecting the host computer corresponding to the selected logical path and the own relay server while selecting a logical path corresponding to the host computer whose collected state is in operation. Message sending means for selecting a path and sending the message to a host computer using the selected physical path and the selected logical path;
Collecting means for collecting terminal information relating to a terminal connected to the host computer via a logical path from each host computer;
If there is a terminal that is not connected to a host computer by a logical path via the own relay server among the terminals indicated by the terminal information collected by the collecting means of the own relay server, the terminal and each of the hosts A relay server comprising a failure countermeasure logical path connection means for connecting a computer with a logical path via a local relay server.
前記コンピュータを、
自中継サーバと前記各ホストコンピュータとの間それぞれを、複数の物理的な通信路である物理パスによって接続する物理パス接続手段、
前記端末からの接続要求に応答して、自中継サーバと前記各ホストコンピュータとの間それぞれに論理パスを設定し、該設定した各ホストコンピュータの論理パスを介して前記端末と前記各ホストコンピュータとを接続する接続手段、
前記各ホストコンピュータの状態が稼働中、待機中、障害中の何れであるのかを収集し、前記端末からメッセージが送られてきたとき、前記接続手段で設定した前記各ホストコンピュータの論理パスの中から、前記収集した状態が稼働中になっているホストコンピュータに対応する論理パスを選択すると共に該選択した論理パスに対応するホストコンピュータと自中継サーバとを接続する複数の物理パスの中から1つの物理パスを選択し、該選択した物理パスと前記選択した論理パスとを用いて前記メッセージをホストコンピュータに送信するメッセージ送信手段として機能させるためのプログラム。A program for realizing, by a computer, a relay server that is a component of an online system in which a terminal and a plurality of host computers are connected via a relay server,
The computer,
Physical path connection means respectively between the own relay server and the respective host computer, connected by a physical path is a plurality of physical communication channels,
In response to a connection request from said terminal, set a logical path to each between the the own relay server each host computer, and each host computer and the terminal via the logic path for each host computer with said set Connecting means to connect,
Collecting whether the status of each host computer is active, standby, or faulty, and when a message is sent from the terminal , the logical path of each host computer set by the connection means The logical path corresponding to the host computer whose collected state is in operation is selected, and one of a plurality of physical paths connecting the host computer corresponding to the selected logical path and the own relay server is selected. A program for selecting one physical path and causing it to function as a message transmission unit that transmits the message to a host computer using the selected physical path and the selected logical path.
前記コンピュータを、
自中継サーバと前記各ホストコンピュータとの間それぞれを、複数の物理的な通信路である物理パスによって接続する物理パス接続手段、
前記端末から接続要求を受信したとき、自中継サーバと前記各ホストコンピュータとの間それぞれに論理パスを設定し、該設定した各ホストコンピュータの論理パスを介して前記端末と前記各ホストコンピュータとを接続する接続手段、
前記各ホストコンピュータの状態が稼働中、待機中、障害中の何れであるのかを収集し、前記端末からメッセージを受信したとき、前記接続手段で設定した前記各ホストコンピュータの論理パスの中から、前記収集した状態が稼働中になっているホストコンピュータに対応する論理パスを選択すると共に該選択した論理パスに対応するホストコンピュータと自中継サーバとを接続する複数の物理パスの中から1つの物理パスを選択し、該選択した物理パスと前記選択した論理パスとを用いて前記メッセージをホストコンピュータに送信するメッセージ送信手段、
前記各ホストコンピュータから、そのホストコンピュータと論理パスを介して接続されている端末に関する端末情報を収集する収集手段、
自中継サーバの前記収集手段で収集した端末情報によって示される端末の中に、自中継サーバを介した論理パスによってはホストコンピュータと接続されていない端末が存在する場合は、該端末と前記各ホストコンピュータとを自中継サーバを介した論理パスにより接続する障害対策用論理パス接続手段として機能させるためのプログラム。A program for realizing by a computer a relay server that is a component of an online system including a terminal, a plurality of host computers, and a plurality of relay servers each connecting the terminal and the plurality of host computers. And
The computer,
Physical path connection means respectively between the own relay server and the respective host computer, connected by a physical path is a plurality of physical communication channels,
When receiving a connection request from the terminal, sets a logical path to each between the the own relay server each host computer, and the terminal and through the logic path for each host computer to which the set each host computer Connection means to connect,
Collecting whether the status of each host computer is active, standby, or faulty, and when receiving a message from the terminal, from among the logical paths of the host computers set by the connection means , One physical path is selected from a plurality of physical paths connecting the host computer corresponding to the selected logical path and the own relay server while selecting a logical path corresponding to the host computer whose collected state is in operation. A message transmission means for selecting a path and transmitting the message to a host computer using the selected physical path and the selected logical path;
Collecting means for collecting terminal information relating to a terminal connected to the host computer via a logical path from each host computer,
If there is a terminal that is not connected to a host computer by a logical path via the own relay server among the terminals indicated by the terminal information collected by the collecting means of the own relay server, the terminal and each of the hosts A program for causing a computer to function as a failure countermeasure logical path connection means for connecting to a computer via a logical path via its own relay server.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003136840A JP4207657B2 (en) | 2003-05-15 | 2003-05-15 | Logical path control method, relay server, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003136840A JP4207657B2 (en) | 2003-05-15 | 2003-05-15 | Logical path control method, relay server, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004341767A JP2004341767A (en) | 2004-12-02 |
| JP4207657B2 true JP4207657B2 (en) | 2009-01-14 |
Family
ID=33526648
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003136840A Expired - Fee Related JP4207657B2 (en) | 2003-05-15 | 2003-05-15 | Logical path control method, relay server, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4207657B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4698316B2 (en) * | 2005-07-15 | 2011-06-08 | 株式会社日立製作所 | Access path management method and program |
| WO2016103632A1 (en) * | 2014-12-24 | 2016-06-30 | 日本電気株式会社 | Multi-layer network system and path setting method in multi-layer network |
-
2003
- 2003-05-15 JP JP2003136840A patent/JP4207657B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2004341767A (en) | 2004-12-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4188602B2 (en) | Cluster type disk control apparatus and control method thereof | |
| US7376726B2 (en) | Storage path control method | |
| US7237027B1 (en) | Scalable storage system | |
| US7065526B2 (en) | Scalable database management system | |
| US7818408B1 (en) | Automated virtual interface failover in a mass storage cluster | |
| US8683001B2 (en) | Address management device | |
| CN100389392C (en) | Method for realizing load uniform in clustering system, system and storage controller | |
| US20100138540A1 (en) | Method of managing organization of a computer system, computer system, and program for managing organization | |
| US8683482B2 (en) | Computer system for balancing access load of storage systems and control method therefor | |
| CN109842651A (en) | A kind of continual load-balancing method of business and system | |
| CN112769837B (en) | Communication transmission method, device, equipment, system and storage medium based on WebSocket | |
| US20060248304A1 (en) | Computing system, host computer, storage device in the computing system and volume switching method of the same | |
| US6931437B2 (en) | Concentrated system for controlling network interconnections | |
| CN110275772B (en) | Data processing method and related equipment thereof | |
| CN108846745B (en) | Blockchain transaction processing auxiliary system, blockchain data processing system and method | |
| JP2003241900A (en) | Storage area network system access control method, storage area network system, and network switch | |
| US20070112812A1 (en) | System and method for writing data to a directory | |
| US5764914A (en) | Network system for connecting to a network node from terminal | |
| JPWO2012063301A1 (en) | Computer system, multi-tenant control method, and multi-tenant control program | |
| US8572201B2 (en) | System and method for providing a directory service network | |
| JP4207657B2 (en) | Logical path control method, relay server, and program | |
| JP7179810B2 (en) | Cluster system, cluster system failover control method | |
| CN115550368B (en) | Metadata reporting method, device, equipment and storage medium | |
| JP3501944B2 (en) | Database management device and recording medium on which the program is recorded | |
| JP4639112B2 (en) | Remote copy topology check method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070703 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070831 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071002 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071030 |
|
| RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20071030 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20071030 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20071205 |
|
| RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20080604 |
|
| 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: 20080930 |
|
| 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: 20081013 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4207657 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111031 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121031 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131031 Year of fee payment: 5 |
|
| LAPS | Cancellation because of no payment of annual fees |