JP4803194B2 - 通信システム、通信方法、プログラム、及び記録媒体 - Google Patents

通信システム、通信方法、プログラム、及び記録媒体 Download PDF

Info

Publication number
JP4803194B2
JP4803194B2 JP2008054152A JP2008054152A JP4803194B2 JP 4803194 B2 JP4803194 B2 JP 4803194B2 JP 2008054152 A JP2008054152 A JP 2008054152A JP 2008054152 A JP2008054152 A JP 2008054152A JP 4803194 B2 JP4803194 B2 JP 4803194B2
Authority
JP
Japan
Prior art keywords
failure
communication
recovery
unit
communication path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008054152A
Other languages
English (en)
Other versions
JP2009211440A (ja
Inventor
真人 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2008054152A priority Critical patent/JP4803194B2/ja
Publication of JP2009211440A publication Critical patent/JP2009211440A/ja
Application granted granted Critical
Publication of JP4803194B2 publication Critical patent/JP4803194B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Description

本発明は、通信システム、通信方法、プログラム、及び記録媒体に関し、特に、2つのホスト間で複数の物理通信路により多重化され、任意の通信路でデータを送受信するシステムにおいて、障害の早期把握や早期復旧に好ましく適用される技術に関するものである。
2つのホスト間で、多重化されたTCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルの通信路を持ち、負荷分散などの目的で、任意の通信路を使ってデータを送信する通信システムにおいて、いかに早く通信路の障害を検出するかという課題があった。これは障害の検出が遅れたために、障害が発生している通信路でデータを送信すると、次のような要因により、リアルタイムな通信が阻害されると言う問題が発生するからである。
・一定時間内に送達確認の電文が返ってこないことによって送信失敗を検出するため、その確認に時間がかかる。
・送信失敗により障害と認識した通信路の復旧に時間がかかる。
・送信できなかった電文を他の正常な通信路を使って再送信するための時間がかかる。
一般に、通信路の障害検出には定期的な試験電文の送信によるチェック、すなわちアライブチェックが行われており、通信路の障害を早く検出するためには、この試験電文の送信頻度を上げる必要があった。しかしながら、多重化された通信路で試験電文の送出頻度を上げると通信帯域を多く占有してしまうため、送出頻度の増加にも限界がある。
例えば特許文献1では、1つの通信経路(物理通信路)内の複数のTCPコネクション(論理通信路)を利用する場合に、アライブチェックを全ての論理通信路に送信せずに、それぞれの論理通信路を切り替えながら送信する方法が示されている。1つの物理通信路で障害が起こると、その物理通信路内のどの論理通信路でアライブチェックを行っても障害を検出できるため、論理通信路を切り替えながらアライブチェックを行うことで、以下のような効果を得ることができる。
・障害検出の能力を低下させずに、個々の論理通信路ごとのアライブチェック間隔を大きくすることができる。
・個々の論理通信路でのアライブチェックの間隔を変えずに、物理通信路を流れるアライブチェックの間隔を短くできるため、障害を早期に発見することができる。
また、例えば特許文献2では、複数の伝送回線で接続された2つの時分割多重化装置からなるシステムにおいて、伝送回路の障害を検出した時分割多重化装置が、正常な伝送回線を介して障害を他の時分割多重化装置に通知する回線障害時の迂回方式が開示されている。
特開2000−305876号公報 特開平3−235538号公報
特許文献1で開示された技術は、ある論理通信路で障害が発生したときに、他の論理通信路でも障害が発生しているという、同一の物理通信路を利用している場合の特性を利用している。したがって、物理通信路自身を多重化した場合など、複数の通信路の一部の通信路だけが障害となるようなシステムでは早期発見の効果はない。
また、特許文献2で開示された技術は、障害発生時に迂回路を利用する方法であり、障害の復旧を認識して迂回路を使用しない元の経路に戻すことはできない。そのため、回線の復旧時に迂回路から戻すために、人手の作業が必要であり、その作業を行うまでは多重度が下がるので耐障害性が低くなる。また、経路として常に1本の回線を選択して接続するため、負荷分散の目的でこの装置を使用することはできない。また、一般に回線の復旧を検出する場合、電文が正常に送信できるかをテストするが、この装置のような障害を通知する構成では、障害が一時的であると障害の通知と復旧の電文が交錯してしまい、障害回線の復旧後に障害通知が届く可能性がある。この場合、復旧が完了した回線を障害と扱ってしまい、再度復旧作業が必要となる。よって、単純に電文を送って復旧を検出するだけでは効率が悪い。
このように、複数の物理通信路を用いて通信路を多重化した多重化通信システムにおいても、試験電文の送出頻度を上げずに、できるだけ早く障害を認識することが重要となる。障害の復旧を認識するためには、TCP/IPプロトコルにおいては、定期的に接続電文を送信することにより、論理通信路を再接続することによって、通信路の障害復旧を認識する。したがって、通信路の復旧の検出においても、障害の検出と同様に、接続電文の送信頻度を上げずに、できるだけ早く通信路を復旧することが課題となる。また、障害の通知と復旧の電文の交錯を排除して、効率的に障害の復旧作業を行うことが求められる。
そこで、本発明は、試験電文や接続電文の送出頻度を上げることなく障害の早期の把握や復旧を行うとともに、障害の通知と復旧の電文の交錯を排除した効率的な障害復旧作業を可能とする通信システム等を提供することを目的とする。
かかる目的を達成するために、本発明の通信システムは、2つのホスト間で複数の物理通信路によって多重化され、任意の物理通信路でデータを送受信する通信システムであって、試験電文を送信して物理通信路における障害の発生を検出する障害検出手段と、接続電文を送信して物理通信路における障害の復旧を検出する復旧検出手段と、物理通信路を用いて障害通知を含む電文の送受信を行うとともに、障害検出手段及び復旧検出手段の動作を制御する通信手段と、通信手段の接続状態及び物理通信路個々の世代管理を行うための第1世代番号を含む情報を記憶する第1記憶手段と、物理通信路全体の世代管理を行うための第2世代番号を記憶する第2記憶手段と、障害通知に含まれている世代番号と、第1記憶手段に保存されている第1世代番号とを比較し、両者が等しいときには障害通知は有効なものとして障害検出手段に対して切断指示を送ることにより、障害検出手段での障害発生検出時における他のホストへの障害通知を行うと共に、通信手段から受け付ける接続受付通知に含まれている世代番号と、第2記憶手段に記憶されている第2世代番号とを比較し、両者が異なるときには物理通信路全体の障害が発生し、復旧後の初めての通信であると判断することにより、復旧検出手段での障害復旧検出時における未復旧状態の物理通信路の障害復旧を行う障害情報共有手段と、を有する。
また、本発明の通信方法は、2つのホスト間で複数の物理通信路によって多重化され、任意の物理通信路でデータを送受信する通信システムにおける通信方法であって、通信システムは、物理通信路における接続状態及び物理通信路個々の世代管理を行うための第1世代番号を含む情報を記憶する第1記憶手段と、物理通信路全体の世代管理を行うための第2世代番号を記憶する第2記憶手段と、を有し、試験電文を送信して物理通信路における障害の発生を検出する障害検出ステップと、接続電文を送信して物理通信路における障害の復旧を検出する復旧検出ステップと、物理通信路を用いて障害通知を含む電文の送受信を行うとともに、障害検出ステップ及び復旧検出ステップの動作を制御する通信ステップと、障害通知に含まれている世代番号と、第1記憶手段に保存されている第1世代番号とを比較し、両者が等しいときには障害通知は有効なものとして障害検出手段に対して切断指示を送ることにより、障害検出手段での障害発生検出時における他のホストへの障害通知を行うと共に、通信手段から受け付ける接続受付通知に含まれている世代番号と、第2記憶手段に記憶されている第2世代番号とを比較し、両者が異なるときには物理通信路全体の障害が発生し、復旧後の初めての通信であると判断することにより、障害検出ステップでの障害発生検出時における他のホストへの障害通知及び復旧検出ステップでの障害復旧検出時における未復旧状態の物理通信路の障害復旧を行う障害情報共有ステップと、を有する。
また、本発明のプログラムは、2つのホスト間で複数の物理通信路によって多重化され、任意の物理通信路でデータを送受信する通信システムに用いられるプログラムであって、通信システムは、物理通信路における接続状態及び物理通信路個々の世代管理を行うための第1世代番号を含む情報を記憶する第1記憶手段と、物理通信路全体の世代管理を行うための第2世代番号を記憶する第2記憶手段と、を有し、コンピュータに、試験電文を送信して物理通信路における障害の発生を検出する障害検出機能と、接続電文を送信して物理通信路における障害の復旧を検出する復旧検出機能と、物理通信路を用いて障害通知を含む電文の送受信を行うとともに、障害検出機能及び復旧検出機能の動作を制御する通信機能と、障害通知に含まれている世代番号と、第1記憶手段に保存されている第1世代番号とを比較し、両者が等しいときには障害通知は有効なものとして障害検出手段に対して切断指示を送ることにより、障害検出手段での障害発生検出時における他のホストへの障害通知を行うと共に、通信手段から受け付ける接続受付通知に含まれている世代番号と、第2記憶手段に記憶されている第2世代番号とを比較し、両者が異なるときには物理通信路全体の障害が発生し、復旧後の初めての通信であると判断することにより、障害検出機能での障害発生検出時における他のホストへの障害通知及び復旧検出機能での障害復旧検出時における未復旧状態の物理通信路の障害復旧を行う障害情報共有機能と、を実現させる。
また、本発明の記録媒体は、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
本発明によれば、試験電文や接続電文の送出頻度を上げることなく障害の早期の把握や復旧を行うことができ、障害の通知と復旧の電文の交錯を排除した効率的な障害復旧作業が可能となる。
本発明では以下の3つの方法によって、試験電文や接続電文の送信頻度を上げずに、障害や障害復旧の早期認識を行う。
(1)障害を認識すると、障害が発生したことを通信相手のホストに通知する
(2)復旧を認識すると、別の通信路も同時復旧していないか確認する
(3)全通信路の障害を認識すると、復旧後に通信相手のホストに全通信路障害を通知する
まず、(1)の方法、すなわち認識した障害を相手ホストに通知する流れを説明する。ホスト1、ホスト2間で多重化された通信路を持ち、両方のホストが相互に通信路のアライブチェックを行っている多重化通信システムにおいて、ホスト1で通信路の障害を認識すると、それ以外の全ての通信路を用いて、障害をホスト2に通知し、ホスト2側の通信手段に障害を認識させる。また、上記の障害通知を行っている間に通信路が復旧した場合、復旧が完了した後に障害通知がホスト2に届くことがある。この場合、既に復旧が完了した通信路を障害と判断して切断してしまうため、この障害通知を無視する必要がある。これを解決するために、本発明では、通信路の世代番号を導入する。両ホストのそれぞれの通信手段は、通信路の世代番号を持ち、再接続が成功するたびに世代番号を1増加させ、両ホストの通信手段は同じ世代番号を持つようにする。障害通知にはこの世代番号を含めて送信する。これにより、障害通知に含まれる世代番号と障害通知を受け取ったホストが保持している通信路の世代番号を比較し、世代番号が異なっている場合に、通信路の復旧後に届いた障害通知と認識し、通知を無視できる。
次に、(2)の方法、すなわち通信路の障害の復旧を認識した場合、他の通信路でも復旧を確認する流れを説明する。複数の通信路で障害が発生していた状態で、そのうちの1つの通信路で定期的な接続電文の送信により復旧した場合に、別の障害中の通信路でも、定期再接続のタイミングを待つことなく再接続を試みる。これにより、他の通信路でも障害が復旧していた場合に、再接続までの時間を短くすることができる。
次に、(3)の方法、すなわち全ての通信路で障害が発生し、通信路が復旧した場合に、全通信路で障害が発生したことを相手ホストに通知する流れを説明する。全ての通信路で障害が発生していた場合、前述の方法だけではホスト1は通信相手のホスト2に障害を通知することができない。障害通知を受け取れなかったホスト2は、ホスト2自身のアライブチェックで通信路の障害を検出する必要がある。そのため、その障害が間欠障害であり、すぐに1つ以上の通信路が復旧した場合でも、ホスト2が通信路の障害を未だ認識できていない場合、ホスト2は復旧した通信路ではなく、障害中の通信路でデータを送信してしまう場合があるという問題がある。これを解決するために、全通信路障害から1つ以上の通信路が復旧したとき、復旧した通信路を使って、全通信路障害が発生していたことを、直ちにホスト2に通知する。ホスト2は復旧した通信路から全通信路障害の通知を受けると、復旧した通信路以外は全て障害中であると判断する。
なお、複数の通信路が同時に復旧することがあるため、この場合でも正しく全通信路障害を通知しなければならない。しかし、ホスト2において、ホスト1からの接続電文を受けることによって通信路2つが復旧した状態で、ホスト2が全通信路障害の通知を受け取ると、受け取った通信路でない方の通信路は、復旧したにも関わらず切断されてしまう。このため、全通信路障害の通知は接続電文に含め、通信路復旧後、ホスト2が最初に受け取るようにしなければならない。しかし、ホスト1からはどの通信路での接続電文が最初にホスト2に届くか分からない。そこで、ホスト2が届いた接続電文が全通信路障害後の最初の接続電文であるかどうかを確認するために、世代番号を導入する。
両ホストの障害情報共有手段は、両ホストで同一の番号を初期値とする通信路全体の世代番号を持ち、全通信路障害を認識したホスト1は、世代番号を1増加させる。通信路を復旧するときには、全通信路障害の有無に関わらず、接続電文に世代番号を含めてホスト2に送信する。再接続電文を受けたホスト2は、電文に含まれる世代番号とホスト2自身の世代番号を比較し、異なる場合は全通信路障害が発生したと認識する。さらに、ホスト2は新しい値で自身の世代番号を更新し、以降の新しい世代番号と等しい世代番号を持つ接続電文は、全通信路障害の通知ではないと判断する。以上により、ホスト2でまだアライブチェックが行われておらず、障害を認識できていない通信路があったとしても、直ちに障害を認識し、障害中の通信路でデータを送信することを回避し、復旧した通信路でデータを送信することができる。
以下、図面を参照しながら、本発明の実施形態について詳細に説明する。
<構成>
図1は、本実施形態における多重化通信を行う2つのホストの構成を示した図である。通信を行うホスト1とホスト2は、複数の物理通信路で接続される。図1の例では通信路31〜33の3つの通信路で接続されている。ホスト1は、多重化通信システム10と通信AP(Application Program)191及び192を有する。通信APは、図1では2つ記載されているが、数に制限はない。多重化通信システム10は、2つのホスト間で本実施形態の多重化通信を行う手段である。多重化通信システム10は、通信路31〜33に対応する通信手段11〜13、全体世代番号記憶部14、障害情報共有手段1、通信状態記憶部16、多重化通信手段19を有する。通信手段の個数は、図1では3つ記載されているが、物理通信路数に依存しており通信路の数と等しい。
通信手段11〜13は、それぞれ通信路31〜33を用いて、ホスト2の通信手段21〜23と通信する手段である。通信手段11は、障害検出手段111と復旧検出手段112を有する。通信手段12及び13は、通信手段11と同様の機構を持つ。全体世代番号記憶部14は、通信路全体の世代番号を保存する記憶域である。この世代番号はホスト間で、全ての通信路での障害の認識を同期させるために用いられる(なお、詳細は後述する)。障害情報共有手段15は、通信手段11〜13やホスト間で、各通信路の障害状態や復旧状態などの情報を共有する手段である。通信状態記憶部16は、それぞれの通信手段の状態を保存する記憶域である。通信手段が通信に使う通信路名、接続状態、世代番号が保存される。多重化通信手段19は、通信AP191及び192がホスト2の通信AP291及び292と通信するために、負荷分散のために任意の正常な通信路を用いてデータ通信を行う手段である。そして、ホスト2は、上述したようなホスト1と同様の構成を備える。
<通信手段11の概略動作>
通信手段11は、通信路31を用いて通信手段21と通信を行う役割と、障害通知や復旧通知を受けたときに、障害検出手段111と復旧検出手段112の動作を制御する役割を持ち、次のように動作する。
・電文送信処理
多重化通信手段19から通信APの電文を多重化通信手段29へ送信するように依頼されると、通信手段21に電文を送信する。また、障害情報共有手段15から障害通知の電文を障害情報共有手段25へ転送するように依頼されると、通信手段21へ電文を送信する。そして、これらの電文送信に失敗したとき、障害検出手段112に障害通知を出す。
・電文受信処理
障害情報共有手段25からの障害通知の電文を受信すると、障害情報共有手段15へ電文を渡す。また、多重化通信手段29からの通信APの電文を受信すると、多重化通信手段19へ電文を渡す。また、接続電文を受信すると、復旧検出手段112と障害情報共有手段15に接続受付通知を出す。
・障害通知の処理
ホスト2から、障害情報共有手段15経由で通信路31の障害通知を受けると、障害検出手段111に切断指示を出す。
<障害検出手段111の概略動作>
障害検出手段111は、試験電文を送信して障害の発生を検出する役割と、ホスト2からの通信路31の障害の通知に従って通信を切断する役割を持つ。そして、通信状態記憶部16に保存されている通信手段11の接続状態が“接続”である、すなわち通信路31が障害中ではないと判断している場合に次のように動作する。
・障害の検出
一定の間隔で定期的に通信路31に試験電文を送信し、送信に失敗したかを確認することで通信路31の障害を検出する。また、障害を検出した場合、通信状態記憶部14の通信手段11の接続状態を“切断”にし、障害情報共有手段15に通信路31での障害を通知する。
・障害通知の処理
ホスト2で検出された通信路31の障害通知を障害情報共有手段15経由で受け取ったとき通信を切断する。
<復旧検出手段112の概略動作>
復旧検出手段112は、接続電文を送信して障害の復旧を検出する役割と、ホスト2からの接続電文受付によって復旧作業を中断する役割を持つ。そして、通信状態記憶部16に保存されている通信手段11の接続状態が“切断”である、すなわち通信路31が障害中であると判断している場合に動作し、以下の役割を持つ。
・復旧の検出
一定時間の間隔で定期的に通信路31に接続電文を送信し、正常に接続できたかを確認することで、通信路31での障害が復旧したときに復旧を検出する。そして、障害の復旧を検出した場合、通信状態記憶部14の通信手段11の接続状態を“接続”にし、障害情報共有手段15に通知する。また、ホスト1の別通信手段での障害の復旧を障害情報共有手段15から通知されると、通信路31での同時復旧を発見するために直ちに接続電文を送信し、復旧しているかを調査する。
・接続受付の処理
復旧検出手段112が、ホスト2からの接続電文を受信した通信手段11によって出される接続受付通知を受けると、復旧が完了したとして復旧検出手段112の処理を中断する。
<全体世代番号記憶部14の内容>
全体世代番号記憶部14には、通信路全体の世代番号が保存される。通信路全体の世代番号は、通信手段の接続状態が1つでも“接続”であれば同じ値を保持し、全ての通信手段の接続状態が“切断”になる度に障害情報共有手段15によって1増加される。
<障害情報共有手段15の概略動作>
障害情報共有手段15は、次のような動作をする。
・障害通知の転送
通信手段11〜13で検出された障害の通知を受け取り、障害をホスト2へ通知するため、通信手段11〜13に障害情報共有手段25への転送を依頼する。また、障害情報共有手段25から転送された、ホスト2で検出された通信路の障害通知を通信手段11〜13に転送し、障害を通知する。
・復旧通知の処理
通信手段11〜13で検出された復旧の通知を受け取ると、他の障害中の通信路でも同時に復旧した可能性があるため、通信手段11〜13のうち切断状態の通信手段の復旧検出手段に、接続電文送信指示を出す。復旧検出手段が、復旧のために接続電文に含める通信路全体の世代番号を要求したときに、全体世代番号記憶部14から取得して返却する。
<通信状態記憶部16の内容>
通信状態記憶部16には、図9に示すような、通信手段11〜13における以下の情報が保存される。
・使用する通信路名
・接続状態(接続あるいは切断)
・通信路の世代番号
接続状態は、障害検出手段が障害を検出すると、障害検出手段によって"切断"に変更され、復旧検出手段が復旧を検出すると、復旧検出手段によって"接続"に変更される。また、世代番号は、通信手段の接続状態が“接続”になる度に復旧検出手段によって1増加され、切断後も同じ値を保持する。
<個別の動作説明>
図2を用いて、障害検出手段と復旧検出手段の動作について説明する。障害検出手段は、通信状態記憶部の通信手段の接続状態が“接続”であるときに動作する。まず、障害が発生していないか確認するために試験電文を送信する(ステップS211)。試験電文の送信に失敗した場合は通信路で障害が発生しているため(ステップS212)、通信を切断して(ステップS215)、通信状態記憶部の接続状態を“切断”に変更する(ステップS216)。また、送信失敗・障害通知による切断であるため(ステップS217)、通信状態記憶部が記憶している通信路の世代番号を含めた障害通知を障害情報共有手段に送る(ステップS218)。そして、通信手段の切断時の処理が完了したため、障害検出手段は処理を終了し、復旧検出手段が処理を開始する。
一方、試験電文の送信に成功した場合は通信路が正常なので(ステップS212)、障害情報共有手段から切断指示が来るか、通信手段から障害通知が来るか、一定時間が経過して次の送信タイミングが来るまで待機する(ステップS213)。そして、切断指示や障害通知がないまま一定時間が経過すると、再度試験電文を送信する(ステップS211)。障害情報共有手段から切断指示を受けると(ステップS214)、通信を切断し(ステップS215)、通信状態記憶部の接続状態を“切断”にする(ステップS216)。また、通信手段から障害通知を受け取ると(ステップS214)、試験電文の送信失敗と同様に通信の切断(ステップS215)、通信状態記憶部の接続状態の切断(ステップS216)の処理を行う。この障害通知は、試験電文以外の電文の送信失敗による通信路の障害を認識するため、通信状態記憶部の接続状態が“接続”である通信手段が電文の送信に失敗したときに障害検出手段に通知される。
復旧検出手段は、通信手段が切断状態であるときに動作する。最初に接続電文に含めるために、全体世代番号記憶部に保存されている通信路全体の世代番号を、障害情報共有手段から取得する(ステップS201)。そして、通信路全体の世代番号を受け取ると、その世代番号を含めた接続電文を送信する(ステップS202)。接続電文が正常に送信されると接続に成功しているため(ステップS203)、通信状態記憶部の通信手段の接続状態を“接続”に変更する(ステップS206)。さらに、通信路の復旧を障害情報共有手段に通知し(ステップS207)、通信状態記憶部の通信路の世代番号を1増やす(ステップS208)。通信手段の接続時の処理が完了したため、復旧検出手段は処理を停止し、障害検出手段が処理を開始する。
一方、接続電文の送信に失敗した場合は通信路の障害が継続しているため(ステップS203)、障害情報共有手段から接続電文送信指示が来るか、または、通信手段から接続受付通知が来るか、一定時間経過して次の送信タイミングが来るまで待つ(ステップS204)。一定時間が経過するか、障害情報共有手段から接続電文送信指示がくると(ステップS205)、もう一度接続電文を送るために通信路全体の世代番号を取得する(ステップS201)。通信手段からの接続受付通知を受けると(ステップS205)、接続電文を受信したことにより通信手段の接続状態が"接続"になったので、世代番号を1増やし(ステップS208)、障害検出手段に制御を移す。
続いて、図3を用いて、自ホストの通信手段の障害検出手段から障害通知を受けたときの障害情報共有手段の動作を説明する。障害情報共有手段は、相手ホストの障害情報共有手段に障害を通知するため、通信状態記憶部を参照して接続状態が“接続”である通信手段が存在するか確認する(ステップS301)。接続状態が“接続”である通信手段が存在する場合は、接続状態が“接続”である全ての通信手段に、障害通知の転送を依頼する(ステップS303)。相手ホストに転送される障害通知には、障害となった通信路の通信路名及び世代番号が含まれる。逆に、接続状態が“接続”である通信手段が1つもない場合は、全通信路障害と判断し、全体世代番号記憶部が記憶している通信路全体の世代番号を1増やす(ステップS302)。
次いで、図4を用いて、通信相手のホストから障害通知を受けたときの障害情報共有手段の動作を説明する。障害情報共有手段は、障害通知に含まれている情報で障害が起こった通信路の情報から、障害通知を転送する対象の通信手段を特定し(ステップS401)、その障害通知を転送する(ステップS402)。通信手段に通知される障害通知には、通信路の世代番号が含まれる。
次に、図5を用いて、障害情報共有手段を通して、通信相手からの障害通知を受けたときの通信手段の動作を説明する。まず、通信手段は、通信状態記憶部を参照し、自身の接続状態が“接続”であるかを確認する(ステップS501)。接続状態が“切断”であるなら既に障害を認識しているため、障害通知は意味のないものなので無視する。接続状態が“接続”であるならまだ障害を認識していないため、受け取った障害通知に含まれている世代番号と、通信状態記憶部に保存されている通信路の世代番号とを比較する(ステップS502)。ここで世代番号が等しくない場合は障害通知がもう古いものであり有効ではないので、障害通知を無視する。他方、世代番号が等しい場合は障害通知が有効なものであるため、障害検出手段に切断指示を出す(ステップS503)。
次いで、図6を用いて、自ホストの通信手段の復旧検出手段から復旧通知を受けた障害情報共有手段の動作を説明する。まず、障害情報共有手段は、ホスト内に切断状態にある通信手段が存在するかを確認する(ステップS601)。切断状態の通信手段が存在している場合、切断状態にある全ての通信手段の復旧検出手段に対して、直ちに再接続を試行させるために接続電文送信指示を出す(ステップS602)。切断状態の通信手段が存在していない場合は復旧通知を無視する。
次いで、図7を用いて、通信相手のホストの通信手段から接続電文を受け取った通信手段の動作を説明する。はじめに、通信状態記憶部を参照し、通信手段の接続状態が既に“接続”にあるときは一度障害が発生しており現在の接続が無効であるため(ステップS701)、障害検出手段に切断通知を送る(ステップS702)。そして、新しい接続を受け入れ(ステップS703)、通信手段の接続状態を“接続”に変更する(ステップS704)。そして、復旧検出手段に復旧できたことを伝えるために接続受付通知を送る(ステップS705)。そして、接続電文に含まれる通信路全体の世代番号とともに接続受付通知を障害情報共有手段に送る(ステップS706)。他方、通信手段の接続状態が切断状態にあるときは(ステップS701)、障害検出手段に切断指示を出すことなく、新しい接続を受け入れる(ステップS703)。
次に、図8を用いて、通信手段から接続受付通知を受けた障害情報共有手段の動作を説明する。はじめに、受け取った接続受付通知に含まれる世代番号と、全体世代番号記憶部に記憶されている通信路全体の世代番号とを比較する(ステップS801)。世代番号が等しい場合は、単に障害が発生していた通信路が復旧しただけであると判断し、何もしない。世代番号が異なる場合は、全通信路障害から復旧した後の初めての接続であると判断し、障害を認識していない全ての通信手段、すなわち、接続通知を送ってきた通信手段以外の、接続状態が“接続”である全ての通信手段の障害検出手段に切断指示を送る(ステップS802)。その後、受け取った新しい通信路全体の世代番号を全体世代番号記憶部に記憶し直す(ステップS803)。
<動作の具体例>
以下の4つの動作例を示す。
(1)ホスト1が1つの通信手段で障害を認識する場合に、ホスト2に障害を通知し、ホスト2が障害を認識する動作の例
(2)複数の通信路で発生していた障害が同時に復旧した場合に、1つの通信路の障害復旧を検出したホストが直ちにもう1つの通信路の障害を復旧させる動作の例
(3)全通信路で障害が発生した場合に、1つの通信路の障害を認識すると直ちに他の通信路の障害を認識させる動作の例
(4)全通信路障害から直ぐに復旧した場合に、直ちにホスト1とホスト2の障害認識の同期を取る動作の例
<動作例(1)>
まず、ホスト1が通信路の障害を認識した場合にホスト2に通知するときのホスト1とホスト2の動作例を示す。動作例の事前条件を以下に示す。
・通信路31及び33が正常であり、通信路32で障害が発生したとする
・通信状態記憶部16の通信手段11〜13の接続状態は全て“接続”であるとし、世代番号はそれぞれ310、320、330とする
・通信状態記憶部26の通信手段21〜23の接続状態は全て“接続”であるとし、世代番号はそれぞれ310、320、330とする
上記の状態では、通信路32で障害が発生しているので、障害検出手段121が試験電文を送信すると送信に失敗する(図2のS211、S212)。送信に失敗したことで、障害検出手段121は障害を検出して通信を切断し(S215)、通信状態記憶部16の通信手段12の接続状態を“切断”にする(S216)。さらに、障害検出手段12は、ホスト2に障害を通知するために、障害情報共有手段15へ通信路32での障害を通知する(S218)。この通知には、通信状態記憶部16に保存されている通信路32の世代番号320を含める。その後、障害検出手段12は処理を終了し、復旧検出手段が処理を開始する(S201)。
障害情報共有手段15は、障害検出手段12から障害通知を受けると、ホスト2に障害を通知するために通信状態記憶部16を参照し、接続状態が“接続”である通信手段が存在するか確認する(図3のS301)。ここでは通信手段11及び13の接続状態が“接続”であるので、通信路31及び33を通して、通信路32の障害と世代番号320の通知をホスト2の障害情報共有手段25へ転送するように通信手段11及び13に依頼する(S303)。障害通知は、通信手段11及び13から通信手段21及び23へ、そして通信手段21及び23から障害情報共有手段25へ転送される。
ホスト2の障害情報共有手段25は、通信手段21から転送された障害通知を受けると、通信状態記憶部26を参照して障害通知の通信路名からどの通信手段の障害通知かを特定する(図4のS401)。ここでは通信路32での障害通知なので、障害通知は通信手段22へ転送される(S402)。
通信手段22は、障害情報共有手段25から障害通知を受けると、通信状態記憶部26に保存されている自身の接続状態を確認する(図5のS501)。ここでは接続状態が“接続”であるので、障害通知が古いものでないか確認するため、障害通知に含まれている世代番号320と、通信状態記憶部26に保存されている通信路32の世代番号320を比較する(S502)。通信手段22は、世代番号がともに320で等しいため、障害通知は有効なものとして、障害検出手段221に対して切断指示を送る(S503)。障害検出手段221は、通信手段22からの切断指示に従って通信を切断し(図2のS215)、通信状態記憶部26の通信手段22の通信状態を“切断“にする(S216)。
また、障害情報共有手段25は、通信手段21による場合と同様に、通信手段23から転送された障害通知を受け取り、障害通知を転送する通信手段を特定する(図4のS401)。ここでは通信路32での障害通知なので、障害通知は通信手段22へ転送される(S402)。通信手段22は、障害情報共有手段25から障害通知を受けると、通信状態記憶部26に保存されている自身の接続状態が“切断”であるため、障害通知を無視する(図5のS501)。
上記の動作の結果、通信手段11、13、21、23の接続状態は“接続”、通信手段12及び22の接続状態は“切断”となり、通信路31及び33が正常で、通信路32が障害という実際の通信路の状態と通信手段の状態の整合性が取れている。また、障害検出手段221は定期的な試験電文の送信タイミングを待つことなく、通信手段21の接続状態を“切断”にすることができた。
<動作例(2)>
次に、複数の通信路で発生していた障害が同時に復旧した場合、1つの通信路の障害復旧を検出したホストが直ちにもう1つの通信路の障害を復旧させる動作の例を示す。動作例の事前条件を以下に示す。
・通信路32及び33で障害が発生していたが、同時に復旧し、通信路31〜33の全てが正常になったとする
・通信状態記憶部16に保存されている通信手段の接続状態は、通信手段11が“接続”、通信手段12及び13が“切断”であり、通信路31〜33の世代番号は順に310、320、330とする
・通信状態記憶部26に保存されている通信手段の接続状態は、通信手段21が“接続”、通信手段22及び23が“切断”であり、通信路31〜33の世代番号は順に310、320、330とする
・全体世代番号記憶部14及び24に記憶されている通信路全体の世代番号は400とする
上記の状態で、通信路32の復旧を検出したホスト1が通信路33を復旧させる動作の具体例を示す。まず、ホスト1の動作は以下のようになる。復旧検出手段122は、障害情報共有手段15経由で全体世代番号記憶部14の世代番号400を取得し(図2のS201)、それを接続電文に含めて送信する(S202)。送信に成功することにより通信路32での通信が接続され、通信状態記憶部16における通信手段12の接続状態を“接続”にする(S206)。また、復旧検出手段122は、通信路32の復旧を障害情報共有手段15に通知し(S207)、通信状態記憶部16に保存されている通信路32の世代番号320を1増やして321にする(S208)。
障害情報共有手段15は、復旧検出手段122から復旧通知を受け、他の通信路でも同時に復旧していないか調査するために、通信状態記憶部16を参照し、接続状態が“切断”である通信手段が存在するか確認する(図6のS601)。ここでは通信手段13の接続状態が“切断”であるので、通信手段13の復旧検出手段132に接続電文送信指示を送る(S602)。
復旧検出手段132は、障害情報共有手段15から接続電文送信指示を受けると、待機を止め(図2のS204)、障害情報共有手段15経由で全体世代番号記憶部14の世代番号400を取得し(S201)、それを接続電文に含めて送信する(S202)。接続電文の送信は成功し、復旧検出手段132は、通信状態記憶部16における通信手段13の接続状態を“接続”に変更し(S206)、通信路33の復旧を障害情報共有手段15に通知する(S207)。その後、通信状態記憶部16に保存されている通信路33の世代番号330を1増やして331にする(S208)。復旧検出手段132は復旧作業が終わったので処理を終了し、障害検出手段131が処理を開始する(S211)。
障害情報共有手段15は、復旧検出手段132から復旧通知を受けると、通信状態記憶部16を参照し、接続状態が“切断”である通信手段が存在するか確認し、切断状態の通信手段が存在しないので、通知処理は行わない(図6のS601)。
一方、ホスト2では以下のように動作する。通信手段22は、ホスト1の復旧検出手段122が送信した接続電文(図2のS202)を受信すると、通信状態記憶部26を参照し、通信手段22自身の接続状態を確認する(図7のS701)。ここでは通信手段22の接続状態は“切断”であるため、通信手段22は新しい接続を受け入れ(S703)、通信状態記憶部26の通信手段22の接続状態を“接続”に変更する(S704)。さらに、通信手段22は、復旧検出手段222に接続受付通知を出し(S705)、接続電文に含まれていた世代番号400とともに、障害情報共有手段25に接続受付通知を出す(S706)。
復旧検出手段222は、通信手段22から接続受付通知を受けると、待機を止め(図2のS204)、通信状態記憶部26に保存されている通信路32の世代番号320を1増やして321にする(S206)。復旧検出手段222は復旧作業を終えたので処理を終了し、障害検出手段221が処理を開始する。
障害情報共有手段25は、通信手段22から接続受付通知を受けると、通知に含まれていた世代番号400と、全体世代番号記憶部24に保存されている通信路全体の世代番号400を比較する(図8のS801)。ここでは世代番号が等しいため、全通信路障害とは関係のない接続であると判断し、障害情報共有手段25はそのまま処理を返す。
通信手段23も通信手段22と同様に、ホスト1の復旧検出手段132が送信した接続電文(図2のS204)を受信するので、通信手段22と同様の手順で復旧処理が行われ、通信状態記憶部16に保存されている通信路33の世代番号は331になる。
上記の動作の結果、通信手段11〜13、21〜23の接続状態は全て“接続”になり、通信路31〜33全てが正常であるという通信路の状態と通信手段の状態の整合性が取れている。通信状態記憶部16及び26に保存されている通信路ごとの世代番号も、通信路31〜33についてそれぞれ310、321、331となりホスト1、2間での整合性が取れている。また、復旧検出手段132は、定期的な接続電文の送信タイミングを待つことなく、通信手段13の接続状態を“接続”にすることができた。また、復旧検出手段222及び232は、定期的な接続電文の送信タイミングを待つことなく、相手からの接続により、通信手段22及び23の接続状態を“接続”にすることができた。
<動作例(3)>
次に、全通信路で障害が発生した場合、1つの通信路の障害を認識すると直ちに他の通信路の障害を認識させる動作の例を示す。動作例の事前条件を以下に示す。
・通信路31〜33は全て障害が発生したとする
・通信状態記憶部16に保存されている通信手段11〜13の接続状態は全て“接続”であり、通信路31〜33の世代番号は順に310、320、330とする
・全体世代番号記憶部14に保存されている通信路全体の世代番号は400とする
上記の状態で、ホスト1が通信路31で障害を検出した場合に、通信路32及び33の障害を認識する動作の具体例を示す。まず、ホスト1で全通信路障害を認識する過程は以下のようになる。障害検出手段111は定期的な送信タイミングになったため、通信手段11を使って試験電文を送信しようとする(図2のS211)。電文の送信に失敗し、障害検出手段111は通信を切断し(S215)、通信状態記憶部16における通信手段11の接続状態を“切断”にする(S216)。さらに、障害検出手段111は、通信状態記憶部16に記憶されている通信路31の世代番号310とともに、障害情報共有手段15に障害を通知する(S218)。障害検出手段111は障害検出が終わったので処理を終了し、復旧検出手段112が処理を開始する(S201)。
障害情報共有手段15は、障害検出手段111から障害通知を受けると、通信状態記憶部16を参照し、接続状態が“接続”である通信手段が存在するか確認する(図3のS301)。そして、接続状態が“接続”である通信手段12及び13を使い、通信路31の障害通知を障害情報共有手段25に転送しようとする(S303)。
通信手段12は、障害情報共有手段15から障害通知の送信の依頼を受けると、通信路31の障害通知を通信手段22に転送しようとするが、通信路32が障害であるため、送信に失敗し、障害検出手段121に障害通知を出す。障害検出手段121は、通信手段12から障害通知を受けると、通信を切断し(図2のS213〜S215)、通信状態記憶部26における通信手段12の接続状態を“切断”に変更する(S216)。さらに、障害検出手段121は、通信状態記憶部16に記憶されている通信路32の世代番号320とともに、障害情報共有手段15に障害を通知する(S218)。障害検出手段121は障害検出が終わったので処理を終了し、復旧検出手段122が処理を開始する(S201)。
障害情報共有手段15は、障害検出手段121から障害を通知されると、通信状態記憶部16を参照し、接続状態が“接続”である通信手段が存在するか確認し(図3のS301)、接続状態が“接続”である通信路13を使い、通信路32の障害通知を障害情報共有手段25に転送しようとする(S303)。
通信手段13は、障害情報共有手段15から障害通知の送信の依頼を受けると、通信路31と通信路32の2つの障害通知を通信手段23に転送しようとするが、通信路33が障害であるため、送信に失敗し、障害検出手段131に障害通知を出す。障害検出手段131は、通信手段13から障害通知を受けると、通信を切断し(図2のS213〜S215)、通信状態記憶部26における通信手段13の接続状態を“切断”に変更する(S216)。さらに、障害検出手段131は、通信状態記憶部16に記憶されている通信路33の世代番号330とともに、障害情報共有手段15に障害を通知する(S218)。障害検出手段131は障害検出が終わったので処理を終了し、復旧検出手段132が処理を開始する(S201)。
障害情報共有手段15は、障害検出手段131から障害通知を受けると、通信状態記憶部16を参照し、接続状態が“接続”である通信手段が存在するか確認する(図3のS301)。ここで、接続状態が“接続”である通信手段が存在しないので、障害情報共有手段15は、全通信路障害が発生したと認識し、全体世代番号記憶部14に記憶されている世代番号400を1増加させ401にする(S302)。
上記の動作の結果、通信手段11〜13は全て切断状態となり、通信路31〜33全てが障害中であるという通信路の状態と通信手段の状態の整合性が取れている。また、障害検出手段121及び131は、障害をホスト2に通知するための障害通知の電文の送信に失敗したことにより、定期的な試験電文の送信タイミングを待つことなく、通信手段12及び13の接続状態を“切断”にすることができた。
<動作例(4)>
最後に、全通信路障害から直ぐに復旧した場合、直ちにホスト1とホスト2の障害認識の同期を取る動作の例を示す。動作例の事前条件を以下に示す。
・通信路31及び32は障害から復旧し、通信路33はまだ障害が発生しているとする
・通信状態記憶部16に保存されている通信手段11〜13の接続状態は全て“切断”であり、通信路31〜33の世代番号は順に310、320、330とする
・通信状態記憶部26に保存されている通信手段21〜23の接続状態は全て“接続”であり、通信路31〜33の世代番号は順に310、320、330とする
・全通信路障害を認識しているホスト1の全体世代番号記憶部14に保存されている通信路全体の世代番号は401とし、全通信路障害を認識していないホスト2の全体世代番号記憶部24の世代番号は400とする
上記の状態で、ホスト1が通信路31の復旧を検出し、通信路32を復旧させる動作と、ホスト2が全通信路障害を認識し、障害認識の同期を取る動作の具体例を示す。まず、ホスト1が復旧を認識する動作は以下のようになる。復旧検出手段112が、定期的な試験電文送信タイミングによって (図2のS204)、障害情報共有手段15経由で全体世代番号記憶部14に保存されている世代番号401を取得し(S201)、接続電文を送信する(S202)。送信は成功し、復旧検出手段112は、通信状態記憶部16に保存されている通信手段11の接続状態を“接続”に変更し(S206)、通信路の復旧を障害情報共有手段15に通知する(S207)。さらに、復旧検出手段112は、通信状態記憶部16に保存されている通信路31の世代番号310を1増加させ、311にする(S208) 。復旧検出手段112は、復旧作業を終えたので処理を終了し、障害検出手段111が処理を開始する(S211)。
障害情報共有手段15は、復旧検出手段112から通信路31の復旧通知を受けると、他の障害中の通信路も同時に復旧していないか調査するために、通信状態記憶部16を参照し、接続状態が“切断”である通信手段が存在するか確認する(図6のS601)。ここでは接続状態が“切断”である通信手段12及び13の復旧検出手段122及び132に接続電文の送信指示を出す(S602)。
復旧検出手段122は、障害情報共有手段15から接続電文の送信指示を受けると、障害情報共有手段15経由で全体世代番号記憶部14の世代番号401を取得し、それを接続電文に含めて送信する(図2のS201)。送信に成功することにより通信路32での通信が接続され(S203)、復旧検出手段122は通信状態記憶部の通信手段12の接続状態を“接続”に変更する(S206)。さらに、復旧検出手段122は、通信路32の復旧を障害情報共有手段15に通知し(S207)、通信状態記憶部16に保存されている通信路32の世代番号320を1増やして321にする(S208)。復旧検出手段122は、復旧作業を終えたので処理を終了し、障害検出手段121に処理を開始する(S211)。
障害情報共有手段15は、復旧検出手段122から通信路32の復旧通知を受けると、他の障害中の通信路も同時に復旧していないか調査するために、通信状態記憶部16を参照し、接続状態が“切断”である通信手段が存在するか確認する(図6のS601)。ここでは接続状態が“切断”である通信手段13の復旧検出手段132に接続電文の送信指示を出す(S602)。
復旧検出手段132は、障害情報共有手段15から2回の接続電文の送信指示を受け取るが、通信路33は障害が発生したままであるため、2回とも送信に失敗する(図2のS203〜S205、S201〜S202)。
一方、ホスト2では以下のようにして全通信路障害を認識する。通信手段21は、ホスト1の通信手段11からの接続電文を受信すると、通信状態記憶部26を参照して自身が切断状態であることを確認し(図7のS701)、新しい接続を受け入れ(S703)、通信状態記憶部26の通信手段21の接続状態を“接続”に変更する(S704)。さらに、通信手段21は、復旧検出手段211に復旧完了を通知し(S705)、接続電文に含まれている世代番号401とともに障害情報共有手段25に接続受付通知を出す(S706)。
復旧検出手段211は、通信手段21が出した接続受付通知を受けると、通信状態記憶部26における通信路31の世代番号310を1増加させ、311にする(図2のS205、S208)。
障害情報共有手段25は、通信手段21が出した接続受付通知を受けると、全通信路障害かどうか確認するために、通知に含まれる世代番号401と全体世代番号記憶部24に保存されている通信路全体の世代番号400を比較する(図8のS801)。ここでは世代番号が異なるため、全通信路障害が発生し、復旧後の初めての通信であると判断する。そして、障害を認識できていない通信手段、すなわち、通信手段21以外で、通信状態記憶部26における接続状態が“接続”である通信手段22及び23の障害検出手段221及び231に対して切断指示を出す(S802)。さらに、障害情報共有手段25は、受け取った世代番号401を新しい世代番号として、全体世代番号記憶部14に保存する(S803)。
障害検出手段221は、障害情報共有手段25から切断指示を受けると、通信を切断し(図2のS215)、通信状態記憶部26に保存されている通信手段22の接続状態を“切断”に変更する(S216)。また、障害検出手段231は、障害情報共有手段25から切断指示を受けると、通信を切断し(図2のS215)、通信状態記憶部26に保存されている通信手段23の接続状態を“切断”に変更する(S216)。
通信手段22は、ホスト1の復旧検出手段221からの接続電文を受信すると、通信状態記憶部26を参照して自身が切断状態であることを確認し(図7のS701)、新しい接続を受け入れ(S703)、通信状態記憶部26の通信手段22の接続状態を“接続”に変更する(S704)。さらに、通信手段22は復旧検出手段221に復旧完了を通知し(S705)、接続電文に含まれている世代番号401とともに障害情報共有手段25に接続受付通知を出す(S706)。
復旧検出手段221は、通信手段22が出した接続受付通知を受けると、通信状態記憶部26の通信路32の世代番号320を1増加させ、321にする(図2のS205、S208)。
障害情報共有手段25は、通信手段22が出した接続受付通知を受けると、全通信路障害かどうか確認するために、通知に含まれる世代番号401と全体世代番号記憶部24に保存されている通信路全体の世代番号401を比較する(図8のS801)。ここでは世代番号が等しいため、全通信路障害ではないとし、障害情報共有手段25はそのまま処理を返す。
上記の動作の結果、通信手段11、12、21、22の接続状態は“接続”、通信手段13及び23の接続状態は“切断”となり、通信路31及び32が正常で、33が障害という実際の通信路の状態と整合性が取れている。また、障害検出手段221及び231は定期的な試験電文の送信タイミングを待つことなく、通信手段22及び23を切断状態にすることができた。また、復旧検出手段122は定期的な接続電文の送信タイミングを待つことなく、通信手段12の接続状態を“接続”にすることができた。また、復旧検出手段212及び222は定期的な接続電文の送信タイミングを待つことなく、相手からの接続により通信手段21及び22の接続状態を“接続”にすることができた。
上述した本実施形態によれば、通信路での障害を検出した場合に、他の正常な通信路を使って相手ホストに通知する。これにより、相手ホストがデータ送信のために通信路を使用するときに、障害の発生している通信路を避けることができるため、障害認識までの時間と再送信などのコストを軽減することができる。このとき、障害を認識した通信路以外の全ての通信路を使って障害通知を行うことで、他の通信路で同時に障害が発生していても、1つ以上正常な通信路があれば、障害通知を確実に相手ホストに届けることができる。また、全ての通信路でデータ通信を行うため、他の通信路で同時に障害が発生していた場合、アライブチェックを待つことなく、通信路の障害を検出できる。これにより、自ホストが次のデータ送信のために、通信路を使用するときに、障害の発生している通信路を避けることができるため、障害認識までの時間と再送信などのコストを軽減することができる。
また、上述した本実施形態によれば、複数の通信路で発生していた障害が同時に復旧した場合に、1つの通信路の再接続に成功した段階で他の通信路でも再接続を試行することによって、再接続までの時間を短縮することができる。これにより、できるだけ多くの通信路によって多重化された状態を早期に復帰し、耐障害性を向上することができる。
また、上述した本実施形態によれば、全ての通信路の間欠障害から復旧した場合に、全通信路障害を認識したホストが、全通信路障害を相手ホストに通知することによって、相手ホストが実際にデータ送信のために通信路を使用するときに、障害の発生している通信路を避けることができるため、障害認識や再送信にかかるコストをなくすことができる。
なお、上述する実施形態は、本発明の好適な実施形態であり、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
すなわち、本実施形態における多重化通信システムで実行されるプログラムは、先に述べた各手段(障害情報共有手段、障害検出手段、復旧検出手段等)を含むモジュール構成となっており、実際のハードウェアを用いて具体的手段を実現する。すなわち、コンピュータ(CPU)が所定の記録媒体からプログラムを読み出して実行することにより上記各手段が主記憶装置上にロードされ、障害情報共有手段、障害検出手段、復旧検出手段等が主記憶装置上に生成される。
本実施形態における多重化通信システムで実行されるプログラムは、インターネット等のネットワークに接続されたコンピュータ上に格納され、ネットワーク経由でダウンロードさせることにより提供されるように構成してもよい。また、上記プログラムをインターネット等のネットワーク経由で提供あるいは配布するように構成してもよい。
また、上記プログラムは、インストール可能な形式又は実行可能な形式のファイルで、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD、不揮発性のメモリカード等のコンピュータで読み取り可能な記録媒体に記録されて提供されるように構成してもよい。また、上記プログラムは、ROM等にあらかじめ組み込んで提供するように構成してもよい。
この場合、上記記録媒体から読み出された又は通信回線を通じてロードし実行されたプログラムコード自体が前述の実施形態の機能を実現することになる。そして、そのプログラムコードを記録した記録媒体は本発明を構成する。
本発明の実施形態に係る多重化通信システムの構成を示すブロック図である。 本発明の実施形態における障害検出手段と復旧検出手段の動作を示すアクティビティ図である。 本発明の実施形態における障害情報共有手段の動作(同一ホストでの障害発生通知を受けた際の動作)を示すアクティビティ図である。 本発明の実施形態における障害情報共有手段の動作(相手のホストから障害発生通知を受けた際の動作)を示すアクティビティ図である。 本発明の実施形態における通信手段の動作(障害情報共有手段から障害通知を受けた際の動作)を示すアクティビティ図である。 本発明の実施形態における障害情報共有手段の動作(復旧通知を受けた際の動作)を示すアクティビティ図である。 本発明の実施形態における通信手段の動作(接続電文を受けた際の動作)を示すアクティビティ図である。 本発明の実施形態における障害情報共有手段の動作(接続受付通知を受けた際の動作)を示すアクティビティ図である。 本発明の実施形態における通信状態記憶部が格納するデータ構成を説明するための図である。
符号の説明
1,2 ホスト
10,20 多重化通信システム
11〜13,21〜23 通信手段
14,24 全体世代番号記憶部
15,25 障害情報共有手段
16,26 通信状態記憶部
19,29 多重化通信手段
31〜33 通信路
111,121,131,211,221,231 障害検出手段
112,122,132,212,222,232 復旧検出手段
191,192,291,292 通信AP

Claims (17)

  1. 2つのホスト間で複数の物理通信路によって多重化され、任意の前記物理通信路でデータを送受信する通信システムであって、
    試験電文を送信して前記物理通信路における障害の発生を検出する障害検出手段と、
    接続電文を送信して前記物理通信路における障害の復旧を検出する復旧検出手段と、
    前記物理通信路を用いて障害通知を含む電文の送受信を行うとともに、前記障害検出手段及び前記復旧検出手段の動作を制御する通信手段と、
    前記通信手段の接続状態及び前記物理通信路個々の世代管理を行うための第1世代番号を含む情報を記憶する第1記憶手段と、
    前記物理通信路全体の世代管理を行うための第2世代番号を記憶する第2記憶手段と、
    前記障害通知に含まれている世代番号と、前記第1記憶手段に保存されている前記第1世代番号とを比較し、両者が等しいときには前記障害通知は有効なものとして前記障害検出手段に対して切断指示を送ることにより、前記障害検出手段での障害発生検出時における他のホストへの障害通知を行うと共に、前記通信手段から受け付ける接続受付通知に含まれている世代番号と、前記第2記憶手段に記憶されている前記第2世代番号とを比較し、両者が異なるときには前記物理通信路全体の障害が発生し、復旧後の初めての通信であると判断することにより、前記復旧検出手段での障害復旧検出時における未復旧状態の前記物理通信路の障害復旧を行う障害情報共有手段と、
    を有することを特徴とする通信システム。
  2. 前記障害情報共有手段は、前記障害検出手段により前記障害の発生が検出されたとき、接続の状態にある前記通信手段として前記第1記憶手段に記憶された全ての前記通信手段に、前記障害の発生が検出された前記物理通信路の第1世代番号を含む障害通知を他のホストへ転送させることを特徴とする請求項1に記載の通信システム。
  3. 前記障害情報共有手段は、前記障害検出手段により全ての前記物理通信路で障害発生が検出されたとき、前記復旧検出手段により障害復旧が検出された前記物理通信路で通信を行う前記通信手段に、前記物理通信路で障害発生が検出されたことを他のホストへ転送させることを特徴とする請求項1又は2に記載の通信システム。
  4. 前記障害情報共有手段は、前記復旧検出手段により前記障害の復旧が検出されたとき、切断の状態にある前記通信状態として前記第1記憶手段に記憶された全ての前記通信手段に、前記復旧検出手段により前記接続電文を送信させることを特徴とする請求項1から3のいずれか1項に記載の通信システム。
  5. 前記障害情報共有手段は、前記通信手段を介して他のホストから受信した前記障害の発生が検出された前記物理通信路の前記第1世代番号を含む障害通知情報から、障害状態にある前記物理通信路で通信を行う前記通信手段を特定し、前記第1世代番号を含む障害通知を前記特定した前記通信手段へ転送し、
    前記通信手段は、前記第1記憶手段に記憶された自身の接続状態が接続の場合に、前記障害情報共有手段から取得した前記第1世代番号と前記第1記憶手段に記憶された前記第1世代番号とを比較し、両世代番号が等しいとき前記障害検出手段に切断指示を出すことを特徴とする請求項1から4のいずれか1項に記載の通信システム。
  6. 前記通信手段は、他のホストから前記第2世代番号を含む前記接続電文を受信し、前記第1記憶手段を参照して自身の接続状態が接続の場合に、前記障害検出手段に切断指示を出すとともに、新しい接続を受け入れて前記第1記憶手段の前記接続状態を接続に更新し、前記第2世代番号を含む接続受付通知を前記障害情報共有手段に転送し、
    前記障害情報共有手段は、前記通信手段から取得した前記第2世代番号と前記第2記憶手段に記憶された前記第2世代番号とを比較して両世代番号が異なる場合に、前記接続受付通知を送信した前記通信手段以外の全ての前記通信手段に、前記障害検出手段に対する切断指示を送出させることを特徴とする請求項1から5のいずれか1項に記載の通信システム。
  7. 前記障害情報共有手段は、前記障害検出手段により全ての前記物理通信路で障害発生が検出され、全ての前記通信手段が切断の状態にあると前記第1記憶手段に記憶されているとき、前記第2記憶手段に記憶された前記第2世代番号を変更して更新することを特徴とする請求項1から6のいずれか1項に記載の通信システム。
  8. 前記障害情報共有手段は、
    前記通信手段から取得した前記第2世代番号と前記第2記憶手段に記憶された前記第2世代番号とを比較して両世代番号が異なる場合に、前記取得した前記第2世代番号により前記第2記憶手段における前記第2世代番号のデータを更新することを特徴とする請求項1から7のいずれか1項に記載の通信システム。
  9. 2つのホスト間で複数の物理通信路によって多重化され、任意の前記物理通信路でデータを送受信する通信システムにおける通信方法であって、
    前記通信システムは、前記物理通信路における接続状態及び前記物理通信路個々の世代管理を行うための第1世代番号を含む情報を記憶する第1記憶手段と、前記物理通信路全体の世代管理を行うための第2世代番号を記憶する第2記憶手段と、を有し、
    試験電文を送信して前記物理通信路における障害の発生を検出する障害検出ステップと、
    接続電文を送信して前記物理通信路における障害の復旧を検出する復旧検出ステップと、
    前記物理通信路を用いて障害通知を含む電文の送受信を行うとともに、前記障害検出ステップ及び前記復旧検出ステップの動作を制御する通信ステップと、
    前記障害通知に含まれている世代番号と、前記第1記憶手段に保存されている前記第1世代番号とを比較し、両者が等しいときには前記障害通知は有効なものとして前記障害検出手段に対して切断指示を送ることにより、前記障害検出手段での障害発生検出時における他のホストへの障害通知を行うと共に、前記通信手段から受け付ける接続受付通知に含まれている世代番号と、前記第2記憶手段に記憶されている前記第2世代番号とを比較し、両者が異なるときには前記物理通信路全体の障害が発生し、復旧後の初めての通信であると判断することにより、前記障害検出ステップでの障害発生検出時における他のホストへの障害通知及び前記復旧検出ステップでの障害復旧検出時における未復旧状態の前記物理通信路の障害復旧を行う障害情報共有ステップと、
    を有することを特徴とする通信方法。
  10. 前記障害情報共有ステップは、前記障害検出ステップにより前記障害の発生が検出されたとき、接続の状態にある前記物理通信路として前記第1記憶手段に記憶された全ての前記物理通信路を用いて通信を行う通信ステップにより、前記障害の発生が検出された前記物理通信路の第1世代番号を含む障害通知を他のホストへ転送させることを特徴とする請求項9に記載の通信方法。
  11. 前記障害情報共有ステップは、前記障害検出ステップにより全ての前記物理通信路で障害発生が検出されたとき、前記復旧検出ステップで障害復旧が検出された前記物理通信路で通信を行う前記通信ステップにより、前記物理通信路で障害発生が検出されたことを他のホストへ転送させることを特徴とする請求項9又は10に記載の通信方法。
  12. 前記障害情報共有ステップは、前記復旧検出ステップにより前記障害の復旧が検出されたとき、切断の状態にある前記物理通信路として前記第1記憶手段に記憶された全ての前記物理通信路を用いて通信を行う通信ステップにより、前記復旧検出ステップで前記接続電文を送信させることを特徴とする請求項9から11のいずれか1項に記載の通信方法。
  13. 2つのホスト間で複数の物理通信路によって多重化され、任意の前記物理通信路でデータを送受信する通信システムに用いられるプログラムであって、
    前記通信システムは、前記物理通信路における接続状態及び前記物理通信路個々の世代管理を行うための第1世代番号を含む情報を記憶する第1記憶手段と、前記物理通信路全体の世代管理を行うための第2世代番号を記憶する第2記憶手段と、を有し、
    コンピュータに、
    試験電文を送信して前記物理通信路における障害の発生を検出する障害検出機能と、
    接続電文を送信して前記物理通信路における障害の復旧を検出する復旧検出機能と、
    前記物理通信路を用いて障害通知を含む電文の送受信を行うとともに、前記障害検出機能及び前記復旧検出機能の動作を制御する通信機能と、
    前記障害通知に含まれている世代番号と、前記第1記憶手段に保存されている前記第1世代番号とを比較し、両者が等しいときには前記障害通知は有効なものとして前記障害検出手段に対して切断指示を送ることにより、前記障害検出手段での障害発生検出時における他のホストへの障害通知を行うと共に、前記通信手段から受け付ける接続受付通知に含まれている世代番号と、前記第2記憶手段に記憶されている前記第2世代番号とを比較し、両者が異なるときには前記物理通信路全体の障害が発生し、復旧後の初めての通信であると判断することにより、前記障害検出機能での障害発生検出時における他のホストへの障害通知及び前記復旧検出機能での障害復旧検出時における未復旧状態の前記物理通信路の障害復旧を行う障害情報共有機能と、
    を実現させることを特徴とするプログラム。
  14. 前記障害情報共有機能は、前記障害検出機能により前記障害の発生が検出されたとき、接続の状態にある前記物理通信路として前記第1記憶手段に記憶された全ての前記物理通信路を用いて通信を行う通信機能により、前記障害の発生が検出された前記物理通信路の第1世代番号を含む障害通知を他のホストへ転送させることを特徴とする請求項13に記載のプログラム。
  15. 前記障害情報共有機能は、前記障害検出機能により全ての前記物理通信路で障害発生が検出されたとき、前記復旧検出機能で障害復旧が検出された前記物理通信路で通信を行う前記通信機能により、前記物理通信路で障害発生が検出されたことを他のホストへ転送させることを特徴とする請求項13又は14に記載のプログラム。
  16. 前記障害情報共有機能は、前記復旧検出機能により前記障害の復旧が検出されたとき、切断の状態にある前記物理通信路として前記第1記憶手段に記憶された全ての前記物理通信路を用いて通信を行う通信機能により、前記復旧検出機能で前記接続電文を送信させることを特徴とする請求項13から15のいずれか1項に記載のプログラム。
  17. 請求項13から16のいずれか1項に記載のプログラムを記録しコンピュータ読み取り可能なことを特徴とする記録媒体。
JP2008054152A 2008-03-04 2008-03-04 通信システム、通信方法、プログラム、及び記録媒体 Expired - Fee Related JP4803194B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008054152A JP4803194B2 (ja) 2008-03-04 2008-03-04 通信システム、通信方法、プログラム、及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008054152A JP4803194B2 (ja) 2008-03-04 2008-03-04 通信システム、通信方法、プログラム、及び記録媒体

Publications (2)

Publication Number Publication Date
JP2009211440A JP2009211440A (ja) 2009-09-17
JP4803194B2 true JP4803194B2 (ja) 2011-10-26

Family

ID=41184511

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008054152A Expired - Fee Related JP4803194B2 (ja) 2008-03-04 2008-03-04 通信システム、通信方法、プログラム、及び記録媒体

Country Status (1)

Country Link
JP (1) JP4803194B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6733724B2 (ja) * 2018-12-06 2020-08-05 日本電気株式会社 情報配信装置及びその通信制御方法、情報配信システム、並びにコンピュータ・プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62186633A (ja) * 1986-02-12 1987-08-15 Nec Corp 代替リンク制御装置
JP3908632B2 (ja) * 2002-09-04 2007-04-25 日本電気株式会社 回線切替システム及び方法

Also Published As

Publication number Publication date
JP2009211440A (ja) 2009-09-17

Similar Documents

Publication Publication Date Title
US6658595B1 (en) Method and system for asymmetrically maintaining system operability
JP5073812B2 (ja) 分散型イーサネットシステムおよび該システムに基づいて障害を検出する方法
JP4760504B2 (ja) ネットワークシステムおよび通信装置
US6594776B1 (en) Mechanism to clear MAC address from Ethernet switch address table to enable network link fail-over across two network segments
CN102047643B (zh) 用于在服务器故障的事件中能使客户端应用更快恢复的方法
JP2004032224A (ja) サーバ引継システムおよびその方法
US20070177589A1 (en) Network system and node redundancy method of network system
JP5419907B2 (ja) ネットワークシステム、及び通信復旧方法
CN102394914A (zh) 集群脑裂处理方法和装置
CN102055605B (zh) 一种应用于aaa服务器的容灾系统及方法
CN109981353B (zh) 一种机框式网络通信设备中的邻站冗余保护方法及系统
CN105516252A (zh) Tcp连接的切换方法、装置和系统
CN103391324B (zh) 一种基于tftp协议的热备份方法
JP4803194B2 (ja) 通信システム、通信方法、プログラム、及び記録媒体
JP5176623B2 (ja) イーサネットの伝送方法、伝送装置およびシステム
KR100794520B1 (ko) 보안 시스템 및 트래픽 제어방법
JP2021061478A (ja) 中継装置、中継システム、及び中継プログラム
US11954509B2 (en) Service continuation system and service continuation method between active and standby virtual servers
JP2003188905A (ja) サーバ/クライアントシステムにおけるtcp/ip通信の多重化方式および方法
JP3917467B2 (ja) 電力系統監視制御システムおよびプログラム
KR101586151B1 (ko) 컨트롤러와 네트워크 장치 간 재연결 방법
CN103023697B (zh) 一种阵列多路径的管理方法、装置及系统
JP4692419B2 (ja) ネットワーク装置及びそれに用いる冗長切替え方法並びにそのプログラム
JPH1141282A (ja) 二重化中継装置
JP5287440B2 (ja) 障害時の無停止通信復旧システム及び方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110517

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110616

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: 20110712

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: 20110725

R150 Certificate of patent or registration of utility model

Ref document number: 4803194

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: 20140819

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees