JP6710128B2 - 通信装置及び通信装置の復旧方法 - Google Patents

通信装置及び通信装置の復旧方法 Download PDF

Info

Publication number
JP6710128B2
JP6710128B2 JP2016170472A JP2016170472A JP6710128B2 JP 6710128 B2 JP6710128 B2 JP 6710128B2 JP 2016170472 A JP2016170472 A JP 2016170472A JP 2016170472 A JP2016170472 A JP 2016170472A JP 6710128 B2 JP6710128 B2 JP 6710128B2
Authority
JP
Japan
Prior art keywords
functional block
functional
failure
block
blocks
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.)
Active
Application number
JP2016170472A
Other languages
English (en)
Other versions
JP2018037920A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2016170472A priority Critical patent/JP6710128B2/ja
Publication of JP2018037920A publication Critical patent/JP2018037920A/ja
Application granted granted Critical
Publication of JP6710128B2 publication Critical patent/JP6710128B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、3個以上の機能ブロックを有する通信装置及び通信装置の復旧方法に関する。
一般に、通信装置における障害の有無は、上位装置としての監視装置によって定期的に監視される。監視装置が通信装置の障害の存在を検出した場合、監視装置が通信装置に復旧命令を送信する、又は、ユーザ(保守者を含む)が通信装置の復旧のための操作(例えば、通信装置の電源断及び電源再投入)を行う、などの対応が必要である。しかし、この場合には、監視装置に負荷が集中することがある、及びユーザ操作が要求される場合には障害の検出から復旧完了までに要する時間の短縮が難しく且つユーザに負担を与える、という課題がある。
これらの課題を解決できる技術として、自律復旧機能を備えた装置が提案されている(例えば、特許文献1参照)。この装置は、駆動部を制御する機能ブロックとしての制御部(駆動制御部)と、ヒューマンインタフェース部を制御する他の機能ブロックとしての他の制御部(ヒューマンインタフェース制御部)とを備えている。この装置では、2つの制御部(2つの機能ブロック)が、相手方の制御部(監視対象の機能ブロック)で実行されている制御プログラムが正常に機能しているか否かを互いに監視し、制御プログラムが正常に機能していないと判断したときに監視対象の機能ブロックを再起動させることにより、正常に機能していない機能ブロックの復旧処理を行う。
特開2005−149376号公報
しかしながら、特許文献1で提案されている装置では、2つの機能ブロックの内の一方の機能ブロックに障害が発生している期間中、他方の機能ブロックは監視されておらず、他方の機能ブロックの障害を検出することができないという課題がある。
本発明は、上記従来技術の課題を解決するためになされたものであり、3個以上の機能ブロックの内の1つの機能ブロックに障害が発生した場合であっても、監視対象の機能ブロックの監視を他の機能ブロックによって継続することができる通信装置及びその復旧方法を提供することを目的とする。
本発明に係る通信装置は、予め決められた処理を行う第1から第N(Nは3以上の整数)の機能ブロックを備えた通信装置であって、前記第1から第Nの機能ブロックの各々は、自身の機能ブロック以外の機能ブロックである他の機能ブロックの障害の有無を監視する監視部と、前記監視部によって前記他の機能ブロックの障害が検出されたときに、前記障害が検出された前記他の機能ブロックに復旧命令信号を出力する復旧命令部と、前記自身の機能ブロックの障害を解消する復旧処理を行う制御部と、を有し、前記第1から第Nの機能ブロックの内の第k(kはN以下の正の整数)の機能ブロックは、前記第1から第Nの機能ブロックの内の第k+1の機能ブロックの障害の有無を監視し、前記第kの機能ブロックによって前記第k+1の機能ブロックの障害が検出されたときに、前記第kの機能ブロックは、前記第k+1の機能ブロックに復旧命令信号を出力し、前記第k+1の機能ブロックは、前記第1から第Nの機能ブロックの内の第k+2の機能ブロックの障害の有無を監視し、前記第k+1の機能ブロックによって前記第k+2の機能ブロックの障害が検出されたときに、前記第k+1の機能ブロックは、前記第k+2の機能ブロックに復旧命令信号を出力し、前記第kの機能ブロックは、前記第k+1の機能ブロックが復旧できないことが検出された後の期間、前記第k+1の機能ブロックの状態の監視を停止し、前記第k+2の機能ブロックの状態の監視を開始し、前記第kの機能ブロックによって前記第k+2の機能ブロックの障害が検出されたときに、前記第kの機能ブロックは、前記第k+2の機能ブロックに復旧命令信号を出力することを特徴とする。
本発明によれば、3個以上の機能ブロックの内の1つの機能ブロックに障害が発生した場合であっても、監視対象の機能ブロックの監視を他の機能ブロックによって継続することができるという効果がある。
本発明の実施の形態1に係る通信装置の構成例を示すブロック図である。 実施の形態1に係る通信装置の他の構成例を示すブロック図である。 実施の形態1に係る通信装置の機能ブロックの概略構成を示すブロック図である。 実施の形態1に係る通信装置における機能ブロックの障害発生時の動作を示すシーケンス図である。 (a)及び(b)は、実施の形態1に係る通信装置における監視対象の機能ブロックが2つの機能ブロックから復旧命令信号を受け取ったときの動作を示す図である。 本発明の実施の形態2に係る通信装置の構成例を示すブロック図である。 実施の形態2に係る通信装置の他の構成例を示すブロック図である。 実施の形態2に係る通信装置の機能ブロック(障害発生前)の概略構成を示すブロック図である。 実施の形態2に係る通信装置の機能ブロック(障害発生時)の概略構成を示すブロック図である。 実施の形態2に係る通信装置における機能ブロックの障害発生時の動作を示すシーケンス図である。 本発明の実施の形態1の変形例に係る通信装置の構成例を示すブロック図である。
《1》実施の形態1
《1−1》通信装置1の構成例
図1は、本発明の実施の形態1に係る通信装置1の構成例を示すブロック図である。通信装置1は、実施の形態1に係る復旧方法を実行することができる装置である。図1に示されるように、実施の形態1に係る通信装置1は、予め決められた処理(例えば、通信のための信号処理)を行う第1から第Nの機能ブロックとしての機能ブロック10_1,…,10_N(機能ブロックを互いに区別する必要がない場合には、機能ブロック10とも表記する)と、機能ブロック10_1,…,10_Nに電力を供給する電源部16とを備えている。ここで、Nは、3以上の整数である。なお、通信装置1は、機能ブロック10_1,…,10_N以外の機能ブロック(図1には示さず)を備えてもよい。
機能ブロック10_1,…,10_Nの各々は、ある処理を実行(すなわち、ある機能を実現)するための部分(機能部)である。機能ブロック10_1,…,10_Nの各々は、ある処理を実行するためのソフトウェアであるプログラムを格納する記憶部としてのメモリと、このプログラムを実行する情報処理部としてのプロセッサとを有するプログラム実行部であることが可能である。また、機能ブロック10_1,…,10_Nの各々は、ある処理を実行するための電気回路である半導体集積回路によって構成されることも可能である。また、機能ブロック10_1,…,10_Nの各々は、プログラム実行部と半導体集積回路との組み合わせによって構成されることも可能である。
電源部16は、機能ブロック10_1,…,10_Nに電力を供給するための電力供給回路を有する。電源部16は、外部から受け取った電力を機能ブロック10_1,…,10_Nに供給する回路、又は、内蔵された電池から電力を機能ブロック10_1,…,10_Nに供給する回路のいずれであってもよい。また、電源部16は、外部から受け取った電力を機能ブロック10_1,…,10_Nに供給する回路と、内蔵された電池から電力を機能ブロック10_1,…,10_Nに供給する回路との両方を有してもよい。
図1の例では、機能ブロック10_1,…,10_Nは、機能ブロック10_1,…,10_Nの動作を制御する制御部14_1,…,14_N(制御部を互いに区別する必要がない場合には、制御部14とも表記する)をそれぞれ有している。制御部14_1,…,14_Nは、例えば、機能ブロック10_1,…,10_Nに入力される電力をそれぞれ制御する電力制御部としての機能(電力制御機能)を持つ。制御部14_1,…,14_Nは、例えば、機能ブロック10_1,…,10_N(すなわち、自身の機能ブロック)に供給される電力をON(電力供給)又はOFF(電力供給停止)に切り替えることができる。制御部14_1,…,14_Nによる電力供給のOFF及びその後のON(電力供給を一時停止し、その直後に電力供給を再開する動作、すなわち、再起動)により、機能ブロック10_1,…,10_Nに存在する障害を解消する(障害が存在しない状態に戻す)ための復旧処理を行うことができる。
なお、制御部14_1,…,14_Nによる復旧処理は、電力供給のOFF及びその直後のONの処理に限定されず、復旧処理のためのソフトウェア(S/W)を実行することによるS/Wリセット、及び、復旧処理のためのハードウェア(H/W)を動作させることによるH/Wリセットであってもよい。
図1に示されるように、機能ブロック10_1,…,10_Nには、第kの機能ブロック(例えば、機能ブロック10_k)、第k+1の機能ブロック(例えば、機能ブロック10_k+1)、及び第k+2の機能ブロック(例えば、機能ブロック10_k+2)が含まれる。本出願では、機能ブロック10_kと機能ブロック10_k+1とが互いに隣り合う機能ブロックであり、機能ブロック10_k+1と機能ブロック10_k+2とが互いに隣り合う機能ブロックである場合を説明する。
ここで、kは、N以下の正の整数である。また、k=N−1のときは、機能ブロック10_N−1と機能ブロック10_Nとが隣り合う機能ブロックであり、機能ブロック10_Nと機能ブロック10_1とが隣り合う機能ブロックである。また、k=Nのときは、機能ブロック10_Nと機能ブロック10_1とが隣り合う機能ブロックであり、機能ブロック10_1と機能ブロック10_2とが隣り合う機能ブロックである。
図1に機能ブロック10_kから延びる接続線17_k+1で示されるように、機能ブロック10_kは、機能ブロック10_kによる監視対象の機能ブロックである機能ブロック10_k+1の障害の有無を監視し、機能ブロック10_kによって機能ブロック10_k+1の障害が検出されたときに、機能ブロック10_kは、機能ブロック10_k+1に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_k+1は、自身の機能ブロック10_k+1を障害が存在しない状態に戻すための復旧処理を行うことができる。
また、図1に機能ブロック10_k+2から延びる接続線18_k+1で示されるように、機能ブロック10_k+2は、機能ブロック10_k+2による監視対象の機能ブロックである機能ブロック10_k+1の障害の有無を監視し、機能ブロック10_k+2によって機能ブロック10_k+1の障害が検出されたときに、機能ブロック10_k+2は、機能ブロック10_k+1に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_k+1は、自身の機能ブロック10_k+1を障害が存在しない状態に戻すための復旧処理を行うことができる。
このように、通信装置1が図1の構成例を採用することにより、機能ブロック10_k及び機能ブロック10_k+2の内のいずれか一方の機能ブロック(例えば、機能ブロック10_k)に障害が発生して監視機能が停止した場合であっても、監視対象の機能ブロックである機能ブロック10_k+1の監視を他方の機能ブロック(例えば、機能ブロック10_k+2)によって継続することができる。
また、図1に機能ブロック10_k+1から延びる接続線18_kで示されるように、機能ブロック10_k+1は、機能ブロック10_k+1による監視対象の機能ブロックである機能ブロック10_kの障害の有無を監視し、機能ブロック10_k+1によって機能ブロック10_kの障害が検出されたときに、機能ブロック10_k+1は、機能ブロック10_kに復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_kは、自身の機能ブロック10_kを障害が存在しない状態に戻すための復旧処理を行うことができる。
また、図1に機能ブロック10_k+1から延びる接続線17_k+2で示されるように、機能ブロック10_k+1は、機能ブロック10_k+1による監視対象の機能ブロックである機能ブロック10_k+2の障害の有無を監視し、機能ブロック10_k+1によって機能ブロック10_k+2の障害が検出されたときに、機能ブロック10_k+1は、機能ブロック10_k+2に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_k+2は、自身の機能ブロック10_k+2を障害が存在しない状態に戻すための復旧処理を行うことができる。
図1には、機能ブロック10_kによる機能ブロック10_k+1の障害の有無の監視と、機能ブロック10_k+2による機能ブロック10_k+1の障害の有無の監視とは、機能ブロック10_1から10_Nまでの内の一部について行われている場合、すなわち、3個の機能ブロックについて行われている場合を示している。しかし、互いに隣り合う機能ブロックの間で互いに監視し合う構成(接続関係)を、図1の場合よりも多くすることも可能である。なお、互いに隣り合う機能ブロックの間で互いに監視し合う構成(接続関係)を、機能ブロック10_1から10_Nまでの全てに適用した例は、後述の図2を用いて説明する。
なお、隣り合う機能ブロックとは、通信装置1内における実際の位置が互いに最も近い1対の機能ブロックという意味ではなく、通信装置1内において互いに監視し合うことが可能な位置関係にある1対の機能ブロックという意味である。互いに監視し合う機能ブロックの組み合わせは、機能ブロックの配置及び重要度(通信機能に関係する重要度の高い機能ブロック又は通信機能自体に影響を与えない重要度の低い機能ブロック)などに決定することが可能である。
《1−2》通信装置1の他の構成例
図2は、実施の形態1に係る通信装置1の他の構成例を示すブロック図である。図1では機能ブロック10_1,…,10_Nの内の一部の機能ブロックが互いに監視し合う構成例を示したが、図2では、機能ブロック10_1,…,10_Nの全ての機能ブロックが互いに監視し合う構成例を示す。言い換えれば、図2においては、機能ブロック10_kと機能ブロック10_k+1との間で互いに監視し合い、機能ブロック10_k+1と機能ブロック10_k+2との間で互いに監視し合う関係が、k=1からk=Nまでの全ての機能ブロックについて形成されている。図2においては、機能ブロック10_1,…,10_Nは、隣り合う機能ブロックと接続され、全体としてリング状に接続されている。ただし、k=N−1のときは、監視対象の機能ブロックは機能ブロック10_Nであり、機能ブロック10_Nと機能ブロック10_N−1との間で互いに監視し合い、機能ブロック10_Nと機能ブロック10_1との間で互いに監視し合う。また、k=Nのときは、監視対象の機能ブロックは機能ブロック10_1であり、機能ブロック10_1と機能ブロック10_Nとの間で互いに監視し合い、機能ブロック10_1と機能ブロック10_2との間で互いに監視し合う。
図2に示されるように、機能ブロック10_kは、機能ブロック10_kによる監視対象の機能ブロックである機能ブロック10_k+1の障害の有無を監視し、機能ブロック10_kによって機能ブロック10_k+1の障害が検出されたときに、機能ブロック10_kは、機能ブロック10_k+1に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_k+1は、自身の機能ブロック10_k+1における復旧処理を行うことができる。また、機能ブロック10_k+1は、機能ブロック10_k+1による監視対象の機能ブロックである機能ブロック10_kの障害の有無を監視し、機能ブロック10_k+1によって機能ブロック10_kの障害が検出されたときに、機能ブロック10_k+1は、機能ブロック10_kに復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_kは、自身の機能ブロック10_kにおける復旧処理を行うことができる。
また、図2に示されるように、機能ブロック10_k+2は、機能ブロック10_k+2による監視対象の機能ブロックである機能ブロック10_k+1の障害の有無を監視し、機能ブロック10_k+2によって機能ブロック10_k+1の障害が検出されたときに、機能ブロック10_k+2は、機能ブロック10_k+1に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_k+1は、自身の機能ブロック10_k+1における復旧処理を行うことができる。また、機能ブロック10_k+1は、機能ブロック10_k+1による監視対象の機能ブロックである機能ブロック10_k+2の障害の有無を監視し、機能ブロック10_k+1によって機能ブロック10_k+2の障害が検出されたときに、機能ブロック10_k+1は、機能ブロック10_k+2に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_k+2は、自身の機能ブロック10_k+2における復旧処理を行うことができる。
図2の構成例では、機能ブロック10_kと機能ブロック10_k+1と同様に、機能ブロック10_1,…,10_Nの全てについて、隣り合う機能ブロックが互いに相手方を監視し合う。このように、通信装置1が図2の構成例を採用することにより、機能ブロック10_1,…,10_Nの内のいずれかの機能ブロック(例えば、機能ブロック10_k)に障害が発生して監視機能が停止した場合であっても、監視対象の機能ブロック10_k+1の監視を他の機能ブロック(例えば、機能ブロック10_k+2)によって継続することができる。
《1−3》機能ブロックの構成
図3は、実施の形態1に係る通信装置1の機能ブロックの概略構成を示すブロック図である。図3には、図1及び図2に示される機能ブロックの内の一部の機能ブロックの内部構成が示されている。図3には、3個の機能ブロック10_k,10_k+1,10_k+2が示されているが、図3に示される内部構成は、機能ブロック10_1,…,10_Nの全てに適用可能である。したがって、機能ブロックの内部構成の説明に際しては、図1及び図2をも参照する。
機能ブロック10_1,…,10_Nは、状態通知部11_1,…,11_N(状態通知部を互いに区別する必要がない場合には、状態通知部11とも表記する)と、監視部12_1,…,12_Nと(監視部を互いに区別する必要がない場合には、監視部12とも表記する)、復旧命令部13_1,…,13_N(復旧命令部を互いに区別する必要がない場合には、復旧命令部13とも表記する)と、制御部14_1,…,14_Nとをそれぞれ備えている。また、機能ブロック10_1,…,10Nは、外部インタフェース部(I/F部)15_1,…,15_N(外部インタフェース部を互いに区別する必要がない場合には、外部インタフェース部15とも表記する)をそれぞれ備えてもよい。
監視部12_1,…,12_Nは、自身の機能ブロック以外の機能ブロック(他の機能ブロック)の障害の有無を監視する監視機能を有する。図2の例では、機能ブロック10_k+1の監視部12_k+1は、他の機能ブロックとしての機能ブロック10_k及び10_k+2の障害の有無を監視する。また、機能ブロック10_kの監視部12_kと機能ブロック10_k+2の監視部12_k+2は、他の機能ブロックとしての機能ブロック10_k+1の障害の有無を監視する。
状態通知部11_1,…,11_Nは、自身の機能ブロックの状態を示す状態通知信号を出力する。状態通知信号の出力は、例えば、定期的に繰り返される。監視部12_1,…,12_Nは、他の機能ブロックの障害の有無を、状態通知信号に基づいて監視することができる。例えば、機能ブロック10_kの監視部12_kは、他の機能ブロックとしての機能ブロック10_k+1の状態通知部11_k+1から出力された状態通知信号に基づいて、障害の有無を監視する。また、機能ブロック10_k+2の監視部12_k+2は、他の機能ブロックとしての機能ブロック10_k+1の状態通知部11_k+1から出力された状態通知信号に基づいて、障害の有無を監視する。
復旧命令部13_1,…,13_Nは、監視部12_1,…,12_Nによって他の機能ブロックの障害が検出されたときに、障害が検出された他の機能ブロックに復旧命令信号を出力する復旧命令機能を有する。例えば、機能ブロック10_kの復旧命令部13_kは、他の機能ブロックとしての機能ブロック10_k+1に障害が検出されたときに、機能ブロック10_k+1の制御部14_k+1に復旧命令信号を出力する。また、機能ブロック10_k+2の復旧命令部13_k+2は、他の機能ブロックとしての機能ブロック10_k+1に障害が検出されたときに、機能ブロック10_k+1の制御部14_k+1に復旧命令信号を出力する。このように、復旧命令部(例えば、13_k)は、自身の機能ブロック(例えば、10_k)の監視部(例えば、12_k)及び2つの他の機能ブロック内の制御部と接続される。復旧命令部(例えば、13_k)は、自身の機能ブロック(例えば、10_k)の監視部(例えば、12_k)から障害検出通知を受け取った場合、S/Wリセット、H/Wリセット、及び電源断後の電源再投入(電源OFF/ON)による再起動のいずれかの選択、すなわち、復旧処理の種類の選択を行い、障害が発生した他の機能ブロック内の制御部に対して復旧命令信号を出力する。復旧命令信号は、復旧処理の種類を含むことができる。また、復旧命令部(例えば、13_k)は、自身の機能ブロック(例えば、10_k)の監視部(例えば、12_k)から復旧不可能通知を受け取った場合、障害が発生した他の機能ブロック内の制御部に対して、障害が発生した機能ブロックにおける電源OFF命令を出力してもよい。
制御部14_1,…,14_Nは、自身の機能ブロックの障害を解消する復旧処理を行う復旧処理機能を有する。制御部14_1,…,14_Nは、復旧命令信号を受け取ると、自身の機能ブロックの障害を解消する復旧処理を行う。復旧処理としては、機能ブロックのS/Wリセット、機能ブロックのH/Wリセット、及び機能ブロックの電源断及びその直後の電源再投入(再起動)がある。制御部(例えば、14_k)は、2つの他の機能ブロック内の復旧命令部と接続され、復旧命令信号を受け取った場合、自身の機能ブロック(例えば、10_k)に対してS/Wリセット、H/Wリセット、及び、電源OFF/ONによる復旧処理のいずれかを実行し、復旧を試みる。また、制御部(例えば、14_k)は、他の機能ブロック内の復旧命令部から電源OFF命令を受け取った場合、自身の機能ブロック(例えば、10_k)の電源をOFFにすることができる。
なお、機能ブロック10_1,…,10_Nの内部構成は、図3の例に限定されず、例えば、状態通知部(例えば、11_k)と監視部(例えば、12_k)とが1つの構成である状態通知・監視部であってもよく、又は、監視部(例えば、12_k)と復旧命令部(例えば、13_k)とが1つの構成である監視・復旧命令部であってもよく、又は、他の構成であってもよい。
外部インタフェース部15_1,…,15_Nは、上位装置又は下位装置などの他の通信装置(外部装置)と通信可能に接続され、他の通信装置との間で主信号データの送受信を行うことができる。また、外部インタフェース部(例えば、15_k)は、自身の機能ブロック(例えば、10_k)内の監視部(例えば、12_k)と接続され、監視部(例えば、12_k)から障害検出通知を受け取った場合は、機能ブロック(例えば、10_k)に障害が存在することを知らせる障害警報を上位装置に送信することができる。外部インタフェース部(例えば、15_k)は、監視部(例えば、12_k)から回復検出通知を受け取った場合は、機能ブロック(例えば、10_k)の障害が復旧されたことを知らせる回復通知を上位装置に送信することができる。
また、自身の機能ブロック(例えば、10_k)の監視部(例えば、12_k)は、外部インタフェース部(例えば、15_k)と接続され、監視対象の機能ブロックの障害を検出した場合には、自身の機能ブロック(例えば、10_k)の復旧命令部(例えば、13_k)及び外部インタフェース部(例えば、15_k)に障害検出通知を出力する。自身の機能ブロック(例えば、10_k)の監視部(例えば、12_k)は、監視対象の機能ブロックの回復を検出した場合には、外部インタフェース部(例えば、15_k)に回復検出通知を出力することができる。自身の機能ブロック(例えば、10_k)の監視部(例えば、12_k)は、監視対象の機能ブロックの復旧が不可能であることを示す復旧不可能を検出した場合には、復旧命令部(例えば、13_k)及び外部インタフェース部(例えば、15_k)に復旧不可能通知を出力することができる。
機能ブロック10_1,…,10_Nの状態通知部11_1,…,11_Nと、監視部12_1,…,12_Nと、復旧命令部13_1,…,13_Nと、制御部14_1,…,14_Nと、外部インタフェース部15_1,…,15_Nとは、ソフトウェアであるプログラムを格納する記憶部としてのメモリと、このプログラムを実行する情報処理部としてのプロセッサとを有するプログラム実行部であること、又は、半導体集積回路によって構成されること、又は、プログラム実行部と半導体集積回路との組み合わせによって構成されることが可能である。
図3に示されるように、機能ブロック10_kの監視部12_kは、機能ブロック10_k+1の状態通知部11_k+1から出力される状態通知信号に基づいて機能ブロック10_k+1の障害の有無を監視し、機能ブロック10_kの監視部12_kによって機能ブロック10_k+1の障害が検出されたときに、機能ブロック10_kの復旧命令部13_kは、機能ブロック10_k+1の制御部14_k+1に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_k+1の制御部14_k+1は、機能ブロック10_k+1を障害が存在しない状態に戻すための復旧処理を行うことができる。
また、機能ブロック10_k+2の監視部12_k+2は、機能ブロック10_k+1の状態通知部11_k+1から出力される状態通信信号に基づいて機能ブロック10_k+1の障害の有無を監視し、機能ブロック10_k+2の監視部12_k+2によって機能ブロック10_k+1の障害が検出されたときに、機能ブロック10_k+2の復旧命令部13_k+2は、機能ブロック10_k+1の制御部14_k+1に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_k+1の制御部14_k+1は、機能ブロック10_k+1を障害が存在しない状態に戻すための復旧処理を行うことができる。
また、機能ブロック10_k+1の監視部12_k+1は、機能ブロック10_kの状態通知部11_kから出力される状態通信信号に基づいて機能ブロック10_kの障害の有無を監視し、機能ブロック10_k+1の監視部12_k+1によって機能ブロック10_kの障害が検出されたときに、機能ブロック10_k+1の復旧命令部13_k+1は、機能ブロック10_kの制御部14_kに復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_kの制御部14_kは、機能ブロック10_kを障害が存在しない状態に戻すための復旧処理を行うことができる。
また、機能ブロック10_k+1の監視部12_k+1は、機能ブロック10_k+2の状態通知部11_k+2から出力される状態通信信号に基づいて機能ブロック10_k+2の障害の有無を監視し、機能ブロック10_k+1の監視部12_k+1によって機能ブロック10_k+2の障害が検出されたときに、機能ブロック10_k+1の復旧命令部13_k+1は、機能ブロック10_k+2の制御部14_k+2に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック10_k+2の制御部14_k+2は、機能ブロック10_k+2を障害が存在しない状態に戻すための復旧処理を行うことができる。
《1−4》通信装置1の動作
図4は、実施の形態1に係る通信装置1における機能ブロックの障害発生時の動作を示すシーケンス図である。なお、機能ブロック10_k,10_k+1,10_k+2の動作の説明に際しては、図1から図3をも参照する。また、図4においては、機能ブロック10_k,10_k+2が機能ブロック10_k+1の障害を監視する場合の動作を説明するが、他の機能ブロックの組み合わせに関する動作も、図4における動作と同様である。
機能ブロック10_k,10_k+2の監視部12_k,12_k+2は、監視対象の機能ブロック10_k+1の状態通知部11_k+1から状態通知信号が定期的に送信されているか否かを監視する。機能ブロック10_k+1に障害が発生すると(ステップS101)、機能ブロック10_k+1の状態通知部11_k+1から状態通知信号が送信されなくなることにより(ステップS102)、機能ブロック10_k,10_k+2の監視部12_k,12_k+2は、機能ブロック10_k+1に障害が発生したことを検出する(ステップS103)。
機能ブロック10_k+1における障害発生を検出した機能ブロック10_k,10_k+2において、監視部12_k,12_k+2は、機能ブロック10_k,10_k+2の復旧命令部13_k,13_k+2に障害検出通知をそれぞれ出力し、復旧命令部13_k,13_k+2は、機能ブロック10_k+1の制御部14_k+14に対して、復旧命令信号をそれぞれ出力する(ステップS104,S105)。
機能ブロック10_k,10_k+2の監視部12_k,12_k+2は、機能ブロック10_k,10_k+2の外部インタフェース部15_k,15_k+2を経由して、上位装置に対して、機能ブロック10_k+1の障害の発生を知らせる警報通知を送信する(ステップS106,S107)。
復旧命令信号を受け取った機能ブロック10_k+1の制御部14_k+1は、自身の機能ブロック10_k+1に対して復旧処理(例えば、機能ブロック10_k+1の再起動)を行って(ステップS108)、復旧を試みる。機能ブロック10_k+1の再起動が完了し、自身の機能ブロック10_k+1の障害が解消した場合(すなわち、復旧が成功した場合)には(ステップS109)、状態通知部11_k+1は状態通知信号の送信を再開する(ステップS110)。
機能ブロック10_k,10_k+2の監視部12_k,12_k+2は、機能ブロック10_k+1から状態通知信号の送信が再開されたことを検出すると、外部インタフェース部15_k,15_k+2を経由して上位装置へ回復通知を送信する(ステップS111,S112)。
機能ブロック10_k+1が障害を解消できなかった場合(すなわち、復旧が成功しなかった場合)には、機能ブロック10_k,10_k+2の監視部12_k,12_k+2は、復旧命令部13_k,13_k+2から機能ブロック10_k+1の制御部14_k+1に対して電源OFF命令を出力する。機能ブロック10_k+1の制御部14_k+1は、電源OFF命令を受け取ると、機能ブロック10_k+1の電源をOFFにする。また、機能ブロック10_k,10_k+2の監視部12_k,12_k+2は、外部インタフェース部15_k,15_k+2を経由して、上位装置へ故障警報を送信する。なお、機能ブロック10_k+1が障害を解消できなかった状況(すなわち、復旧が成功しなかった状況)は、例えば、機能ブロック10_k,10_k+2の監視部12_k,12_k+2が、機能ブロック10_k+1の状態通知部11_k+1からの状態通知信号を、例えば、復旧命令信号の出力時から予め決められた基準時間以上、受け取ることができなかったことにより、検出可能である。
なお、実施の形態1では、図2に示されるように、ある機能ブロックが隣り合う(両隣の)2つの機能ブロックと接続されたリング状の接続状態を形成し、機能ブロックが両隣の機能ブロックと相互監視する場合を例示した。しかし、互いに監視し合う機能ブロックの組み合わせは、互いに隣り合う機能ブロックに限定されない。互いに監視し合う機能ブロックの組み合わせは、通信装置1の構造、機能ブロックの重要度(通信装置1の動作に必ず必要な機能ブロックであるか否かなど)などに応じて変更可能である。
図5(a)及び(b)は、実施の形態1に係る通信装置1における監視対象の機能ブロック10_k+1が2つの機能ブロック10_k,10_k+1から復旧命令信号を受け取ったときの動作を示す図である。
実施の形態1では、図3に示されるように、機能ブロック10_k+1に対して機能ブロック10_k,10_k+2が監視及び復旧命令信号の出力を行う。そのため、機能ブロック10_k+1の障害発生を機能ブロック10_k,10_k+2の両方で検出し、機能ブロック10_k,10_k+2の両方から機能ブロック10_k+1に対して復旧命令信号を出力することがある。このような場合には、図5(a)に示されるように機能ブロック10_k+1の制御部14_k+1は、機能ブロック10_k,10_k+2から出力される復旧命令信号の論理積を用いるか、又は、図5(b)に示されるように機能ブロック10_k+1の制御部14_k+1は、機能ブロック10_k,10_k+2から出力される復旧命令信号の論理和を用いることができる。
図5(a)の場合には、機能ブロック10_k又は機能ブロック10_k+2が故障すると復旧処理が実行できなくなるため、機能ブロック10_k又は機能ブロック10_k+2が故障したとき、すなわち、機能ブロック10_k+1の監視部12_k+1が機能ブロック10_kの状態通知部11_k又は機能ブロック10_k+2の状態通知部11_k+2のいずれかから予め決められた基準時間以上、状態通知信号を受け取ることができなかったときに、機能ブロック10_k+1の監視部12_k+1は、制御部14_k+1に実行条件を図5(a)の論理積から図5(b)の論理和に変更するよう指示し、制御部14_k+1は、故障していない機能ブロックからの復旧命令により復旧処理を実行するようにしてもよい。
《1−5》効果
以上に説明したように、実施の形態1に係る通信装置1においては、ある1つの機能ブロック(監視対象の機能ブロック)に対する監視を2つの機能ブロックが行っているため、監視を行っている2つの機能ブロックの内の一方が故障して、復旧不可能となった場合であっても、監視を行っている他方の機能ブロックが監視対象の機能ブロックの監視を継続することができる。よって、2つの機能ブロックの内の一方が故障した場合であっても、監視対象の機能ブロックは障害発生時に自律的に復旧処理を行うことができる。
また、実施の形態1に係る通信装置1においては、複数の機能ブロックで同時に障害が発生した場合であっても、監視を行っている2つの機能ブロックの内の一方が正常に動作している場合には、監視対象の機能ブロックは障害発生時に自律的に復旧処理を行うことができる。
さらに、実施の形態1に係る通信装置1においては、1つの機能ブロックに対して2つの機能ブロックが監視を行っており、監視を行っている2つの機能ブロックの各々が外部インタフェース部を有しているため、警報通知経路を多重化することができ、上位装置に確実に警報通知を送信することが可能である。
《2》実施の形態2
《2−1》通信装置2の構成例
上記実施の形態1においては、2つの機能ブロックが1つの機能ブロックに対して監視を行い、復旧命令信号を出力する通信装置1及びその復旧方法を説明した。これに対し、実施の形態2においては、1つの監視を行う機能ブロックが1つの監視対象の機能ブロックに対して監視を行い、復旧命令信号を出力し、監視を行う機能ブロックが故障して復旧不可能になった場合には、別の機能ブロックが監視対象の機能ブロックの監視を引き継ぐように構成されている。
図6は、本発明の実施の形態2に係る通信装置2の構成例を示すブロック図である。通信装置2は、実施の形態2に係る復旧方法を実行することができる装置である。図6に示されるように、実施の形態2に係る通信装置2は、予め決められた処理(例えば、通信のための信号処理)を行う第1から第Nの機能ブロックとしての機能ブロック20_1,…,20_N(機能ブロックを互いに区別する必要がない場合には、機能ブロック20とも表記する)と、機能ブロック20_1,…,20_Nに電力を供給する電源部26とを備えている。電源部26は、実施の形態1における電源部16と同様に構成される。ここで、Nは、3以上の整数である。なお、通信装置2は、機能ブロック20_1,…,20_N以外の機能ブロック(図6に示さず)を備えてもよい。
機能ブロック20_1,…,20_Nの各々は、ある処理を実行するための部分(機能部)である。機能ブロック20_1,…,20_Nの各々は、ある処理を実行するためのソフトウェアであるプログラムを格納する記憶部としてのメモリと、このプログラムを実行する情報処理部としてのプロセッサとを有するプログラム実行部であることが可能である。また、機能ブロック20_1,…,20_Nの各々は、ある処理を実行するための電気回路である半導体集積回路によって構成されることも可能である。また、機能ブロック20_1,…,20_Nの各々は、プログラム実行部と半導体集積回路との組み合わせによって構成されることも可能である。
図6に示されるように、機能ブロック20_1,…,20_Nは、制御部24_1,…,24_N(制御部を互いに区別する必要がない場合には、制御部24とも表記する)をそれぞれ有している。制御部24_1,…,24_Nは、実施の形態1における制御部14_1,…,14_Nと同様に構成される。
図6に示されるように、機能ブロック20_1,…,20_Nには、第kの機能ブロック(例えば、機能ブロック20_k)、第k+1の機能ブロック(例えば、機能ブロック20_k+1)、及び第k+2の機能ブロック(例えば、機能ブロック20_k+2)が含まれる。ここで、kは、N以下の正の整数である。また、k=Nのときは、機能ブロック10_Nは、機能ブロック10_1を監視する。
図6に機能ブロック20_k+1から延びる接続線27_k+2で示されるように、機能ブロック20_k+1は、監視対象の機能ブロックである機能ブロック20_k+2の障害の有無を監視する。機能ブロック20_k+1によって機能ブロック20_k+2の障害が検出されたときに、機能ブロック20_k+1は、機能ブロック20_k+2に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック20_k+2は、復旧処理を行うことができる。
また、図6に機能ブロック20_kから延びる接続線27_k+1で示されるように、機能ブロック20_kは、監視対象の機能ブロックである機能ブロック20_k+1の障害の有無を監視する。機能ブロック20_kによって機能ブロック20_k+1の障害が検出されたときに、機能ブロック20_kは、機能ブロック20_k+1に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック20_k+1は、復旧処理を行うことができる。
機能ブロック20_k+1が、復旧処理を行っても復旧が完了できない場合(すなわち、障害が解消されない場合)には、機能ブロック20_kは、機能ブロック20_k+1が、復旧不可能であると判断する。このとき、機能ブロック20_k+2を監視している機能ブロック20_k+1が、正常に動作していない。そこで、実施の形態2に係る通信装置2においては、機能ブロック20_k+1が、復旧不可能であると判断された場合には、機能ブロック20_kから延びる接続線28_k+2で示されるように、機能ブロック20_kは、監視対象の機能ブロックである機能ブロック20_k+2の障害の有無を監視する。機能ブロック20_kによって機能ブロック20_k+2の障害が検出されたときに、機能ブロック20_kは、機能ブロック20_k+2に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック20_k+2は、復旧処理を行うことができる。
このように、通信装置2が図6の構成例を採用することにより、機能ブロック20_k+1に障害が発生して監視機能が停止した場合であっても、他の機能ブロック20_kが、監視対象の機能ブロック20_k+2の監視を継続することができる。
図6には、機能ブロック20_kによる機能ブロック20_k+1の障害の有無の監視と、機能ブロック20_k+1による機能ブロック20_k+2の障害の有無の監視とは、機能ブロック20_1から20_Nまでの内の一部について行われている場合、すなわち、3個の機能ブロックについて行われている場合を示している。しかし、同様の構成(接続関係)を、図6の場合よりも多くすることも可能である。
《2−2》通信装置2の他の構成例
図7は、実施の形態2に係る通信装置2の他の構成例を示すブロック図である。上記図6では、機能ブロック20_k+1が復旧不可能であると判断された場合には、機能ブロック20_kが、監視を行う予備の機能ブロックとして機能し、監視対象の機能ブロックである機能ブロック20_k+2の障害の有無の監視を開始する構成が、機能ブロック20_1,…,20_Nの内の一部について採用されている。これに対し、図7では、機能ブロック20_k+1が復旧不可能であると判断された場合には、機能ブロック20_kが、監視を行う予備の機能ブロックとして機能し、監視対象の機能ブロックである機能ブロック20_k+2の障害の有無の監視を開始する構成が、機能ブロック20_1,…,20_Nの全てについて採用されている。このため、図7における機能ブロック20_1,…,20_Nでは、機能ブロック20_1,…,20_Nは全体としてリング状に接続されている。
なお、k=N−1のときは、機能ブロック20_N−1による監視対象の機能ブロックは機能ブロック20_Nであり、機能ブロック20_Nによる監視対象の機能ブロックは機能ブロック20_1である。また、k=Nのときは、機能ブロック20_Nによる監視対象の機能ブロックは機能ブロック20_1である。
図7に示されるように、機能ブロック20_1,…,20_Nの内の機能ブロック20_kは、機能ブロック20_k+1の障害の有無を監視し、機能ブロック20_kによって機能ブロック20_k+1の障害が検出されたときに、機能ブロック20_kは、機能ブロック20_k+1に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック20_k+1は、復旧処理を行うことができる。
機能ブロック20_k+1は、機能ブロック20_k+2の障害の有無を監視し、機能ブロック20_k+1によって機能ブロック20_k+2の障害が検出されたときに、機能ブロック20_k+1は、機能ブロック20_k+2に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック20_k+2は、復旧処理を行うことができる。
機能ブロック20_kは、機能ブロック20_k+1に障害が検出されて復旧できないことが検出された後の期間に、機能ブロック20_k+1の状態の監視を停止し、機能ブロック20_k+2の状態の監視を開始する。
なお、機能ブロック20_kは、機能ブロック20_k+1に障害が検出されてから復旧が完了するまでの期間、機能ブロック20_k+1の状態の監視を停止し、機能ブロック20_k+2の状態の監視を行ってもよい。
機能ブロック20_kによって機能ブロック20_k+2の障害が検出されたときに、機能ブロック20_kは、機能ブロック20_k+2に復旧命令信号を出力する。この復旧命令信号を受け取った機能ブロック20_k+2は、復旧処理を行うことができる。
このように、通信装置2が図7の構成例を採用することにより、機能ブロック20_k+1に障害が発生して監視機能が停止した場合であっても、監視対象の機能ブロックである機能ブロック20_k+2の監視を他の機能ブロックである機能ブロック20_kによって継続することができる。
図6では機能ブロック20_1,…,20_Nの内の一部の機能ブロックが、機能ブロック20_k+1に障害が発生して監視機能が停止した場合であっても、監視対象の機能ブロックである機能ブロック20_k+2の監視を他の機能ブロックである機能ブロック20_kによって継続することができる。これに対し、図7においては、機能ブロック20_1,…,20_Nのいずれかに障害が発生して監視機能が停止した場合であっても、監視対象の機能ブロックである機能ブロックの監視を他の機能ブロックである機能ブロックによって継続することができ、全体としてリング状に接続されている。
《2−3》機能ブロックの構成
図8は、実施の形態2に係る通信装置2の機能ブロック(障害発生前)の概略構成を示すブロック図である。また、図9は、実施の形態2に係る通信装置の機能ブロック(障害発生時)の概略構成を示すブロック図である。図8及び図9には、図6及び図7に示される機能ブロックの内の一部の機能ブロックの内部構成が示されている。図8及び図9には、3個の機能ブロック20_k,20_k+1,20_k+2を示しているが、図8及び図9に示される内部構成は、機能ブロック20_1,…,20_Nの全てに適用可能である。したがって、機能ブロックの内部構成の説明に際しては、図6及び図7をも参照する。
機能ブロック20_1,…,20_Nは、状態通知部21_1,…,21_N(状態通知部を互いに区別する必要がない場合には、状態通知部21とも表記する)と、監視部22_1,…,22_Nと(監視部を互いに区別する必要がない場合には、監視部22とも表記する)、復旧命令部23_1,…,23_N(復旧命令部を互いに区別する必要がない場合には、復旧命令部23とも表記する)と、制御部24_1,…,24_Nとをそれぞれ備えている。また、機能ブロック20_1,…,20Nは、外部インタフェース部(I/F部)25_1,…,25_N(外部インタフェース部を互いに区別する必要がない場合には、外部インタフェース部25とも表記する)をそれぞれ備えてもよい。
監視部22_1,…,22_Nは、自身の機能ブロック以外の機能ブロックである他の機能ブロックの障害の有無を監視する監視機能を有する。図8の例では、機能ブロック20_k+1の監視部22_k+1は、他の機能ブロックとしての機能ブロック20_k+2の障害の有無を監視し、機能ブロック20_kの監視部22_kは、他の機能ブロックとしての機能ブロック20_k+1の障害の有無を監視する。
状態通知部21_1,…,21_Nは、自身の機能ブロックの状態を示す状態通知信号を出力する。状態通知信号の出力は、例えば、定期的に繰り返される。監視部22_1,…,22_Nは、自身の機能ブロック以外の機能ブロックである他の機能ブロックの障害の有無を、状態通知信号に基づいて監視することができる。例えば、機能ブロック20_kの監視部22_kは、他の機能ブロックとしての機能ブロック20_k+1の状態通知部21_k+1から出力された状態通知信号に基づいて、障害の有無を監視する。また、機能ブロック20_k+1の監視部22_k+1は、他の機能ブロックとしての機能ブロック20_k+2の状態通知部21_k+2から出力された状態通知信号に基づいて、障害の有無を監視する。障害の検出方法は、実施の形態1の場合と同じである。
復旧命令部23_1,…,23_Nは、監視部22_1,…,22_Nによって他の機能ブロックの障害が検出されたときに、障害が検出された他の機能ブロックに復旧命令信号を出力する復旧命令機能を有する。例えば、障害が発生していないときには、図8に示されるように、機能ブロック20_kの復旧命令部23_kは、他の機能ブロックとしての機能ブロック20_k+1に障害が検出されたときに、機能ブロック20_k+1の制御部24_k+1に復旧命令信号を出力する。また、機能ブロック20_k+1の復旧命令部23_k+1は、他の機能ブロックとしての機能ブロック20_k+2に障害が検出されたときに、機能ブロック20_k+2の制御部24_k+2に復旧命令信号を出力する。また、機能ブロック20_k+1に障害が発生しているときには、図9に示されるように、機能ブロック20_kの復旧命令部23_kは、他の機能ブロックとしての機能ブロック20_k+2に障害が検出されたときに、機能ブロック20_k+2の制御部24_k+2に復旧命令信号を出力する。このように、機能ブロック20_k+2は、機能ブロック20_k+1の故障時(障害発生時)に機能ブロック20_kによって監視されるので、3個以上の機能ブロックの内の1つの機能ブロックに障害が発生した場合であっても、監視対象の機能ブロックの監視を他の機能ブロックによって継続することができる。
復旧命令部(例えば、23_k)は、自身の機能ブロック(例えば、20_k)の監視部(例えば、22_k)から障害検出通知を受け取った場合、S/Wリセット、H/Wリセット、及び電源断後の電源再投入(電源OFF/ON)のいずれかの選択、すなわち、復旧処理の種類の選択を行い、障害が発生した他の機能ブロック内の制御部に対して復旧命令信号を出力する。復旧命令信号は、復旧処理の種類を含むことができる。また、復旧命令部(例えば、23_k)は、自身の機能ブロック(例えば、20_k)の監視部(例えば、22_k)から復旧不可能通知を受け取った場合、障害が発生した他の機能ブロック内の制御部に対して電源OFF命令を出力する。
制御部24_1,…,24_Nは、自身の機能ブロックの障害を解消する復旧処理を行う復旧処理機能を有する。制御部24_1,…,24_Nは、復旧命令信号を受け取ると、自身の機能ブロックの障害を解消する復旧処理を行う。復旧処理としては、機能ブロックのS/Wリセット、機能ブロックのH/Wリセット、及び機能ブロックの電源断後の電源再投入がある。制御部(例えば、24_k)は、2つの他の機能ブロック内の復旧命令部と接続され、復旧命令信号を受け取った場合、自身の機能ブロック(例えば、20_k)に対してS/Wリセット、H/Wリセット、及び、電源OFF/ONによる復旧処理のいずれかを実行し、復旧を試みる。また、制御部(例えば、24_k)は、他の機能ブロック内の復旧命令部から電源OFF命令を受け取った場合、自身の機能ブロック(例えば、20_k)の電源をOFFにすることができる。
なお、機能ブロック20_1,…,20_Nの内部構成は、図8及び図9の例に限定されず、例えば、状態通知部(例えば、21_k)と監視部(例えば、22_k)とが1つの構成である状態通知・監視部であってもよく、又は、監視部(例えば、22_k)と復旧命令部(例えば、23_k)とが1つの構成である監視・復旧命令部であってもよく、又は、他の構成であってもよい。
外部インタフェース部25_1,…,25_Nは、上位装置又は下位装置などの他の通信装置(外部装置)と通信可能に接続され、他の通信装置との間で主信号データの送受信を行うことができる。また、外部インタフェース部(例えば、25_k)は、自身の機能ブロック(例えば、20_k)内の監視部(例えば、22_k)と接続され、監視部(例えば、22_k)から障害検出通知を受け取った場合は、監視対象の機能ブロック(例えば、20_k+1)に障害が存在することを知らせる障害警報を上位装置に送信することができる。外部インタフェース部(例えば、25_k)は、監視部(例えば、22_k)から障害が復旧されたことを知らせる回復検出通知を受け取った場合は、監視対象の機能ブロック(例えば、20_k+1)の障害が復旧されたことを知らせる回復通知を上位装置に送信することができる。
また、自身の機能ブロック(例えば、20_k)の監視部(例えば、22_k)は、外部インタフェース部(例えば、25_k)と接続され、監視対象の機能ブロックの障害を検出した場合には、自身の機能ブロック(例えば、20_k)の復旧命令部(例えば、23_k)及び外部インタフェース部(例えば、25_k)に障害検出通知を出力する。自身の機能ブロック(例えば、20_k)の監視部(例えば、22_k)は、監視対象の機能ブロックの回復を検出した場合には、外部インタフェース部(例えば、25_k)に回復検出通知を出力することができる。自身の機能ブロック(例えば、20_k)の監視部(例えば、22_k)は、監視対象の機能ブロックの復旧が不可能であることを示す復旧不可能を検出した場合には、復旧命令部(例えば、23_k)及び外部インタフェース部(例えば、25_k)に復旧不可能通知を出力することができる。
機能ブロック20_1,…,20_Nの状態通知部21_1,…,21_Nと、監視部22_1,…,22_Nと、復旧命令部23_1,…,23_Nと、制御部24_1,…,24_Nと、外部インタフェース部25_1,…,25_Nとは、ソフトウェアであるプログラムを格納する記憶部としてのメモリと、このプログラムを実行する情報処理部としてのプロセッサとを有するプログラム実行部であること、又は、半導体集積回路によって構成されること、又は、プログラム実行部と半導体集積回路との組み合わせによって構成されることが可能である。
《2−4》動作
図10は、実施の形態2に係る通信装置2における機能ブロックの障害発生時の動作を示すシーケンス図である。なお、機能ブロック20_k,20_k+1,20_k+2の動作の説明に際しては、図6から図9をも参照する。また、図10においては、機能ブロック20_k,20_k+1,20_k+2の動作を説明するが、他の機能ブロックにおける動作も図10における動作と同様である。
機能ブロック20_kの監視部22_kは、監視対象の機能ブロック20_k+1の状態通知部21_k+1から状態通知信号が送信されているか否かを監視する。機能ブロック20_k+1に障害が発生すると(ステップS201)、機能ブロック20_k+1の状態通知部21_k+1から状態通知信号が送信されなくなることにより(ステップS202)、機能ブロック20_kの監視部22_kは、機能ブロック20_k+1に障害が発生したことを検出する(ステップS203)。
機能ブロック20_k+1の障害が検出されると、機能ブロック20_kの復旧命令部23_kは、機能ブロック20_k+1内の制御部24_k+1に対して、復旧命令信号を送信する(ステップS204,S205)。
機能ブロック20_kの監視部22_kは、機能ブロック20_kの外部インタフェース部25_kを経由して、上位装置に対して、機能ブロック20_k+1の障害の発生を知らせる警報通知を送信する(ステップS206,S207)。
復旧命令信号を受け取った機能ブロック20_k+1の制御部24_k+1は、自身の機能ブロック20_k+1に対して復旧処理(例えば、機能ブロック20_k+1の再起動)を行って(ステップS208)、復旧を試みる。
復旧命令信号を受け取った機能ブロック20_k+1の制御部24_k+1は、再起動が完了し、復旧した場合は、状態通知部21_k+1に状態通知信号の送信を再開させる。機能ブロック20_k内の監視部22_kは、機能ブロック20_k+1から状態通知信号の送信が再開されたことを検出すると、外部インタフェース部25_kを経由して上位装置へ回復通知を送信する。
機能ブロック20_k+1の再起動が完了しても、自身の機能ブロック20_k+1の障害が解消しなかった場合(すなわち、復旧不可能である場合)には(ステップS209)、状態通知部21_k+1は状態通知信号の停止を継続する(ステップS210)。もしくは、機能ブロック20_k+1が起動しない場合には(ステップS209)、状態通知部21_k+1は状態通知信号を送信できない(ステップS210)。状態通知信号の停止を検出した機能ブロック20_kの監視部22_kは、機能ブロック20_k+1に電源OFF命令を出力し(ステップS211)、電源OFF命令を受け取った機能ブロック20_k+1の制御部24_k+1は自身の機能ブロックの電源をOFFにする(ステップS212)。
機能ブロック20_kの監視部22_kは、外部インタフェース部25_kを経由して、上位装置へ故障警報を送信し(ステップS214)、新たな監視対象である機能ブロック20_k+2の監視を開始する(ステップS215,S216)。
《2−5》効果
以上に説明したように、実施の形態2に係る通信装置2においては、1つの機能ブロックに対して1つの機能ブロックが監視を行い、ある機能ブロックが完全に故障した(すなわち、障害が復旧不可能である)場合には、他の機能ブロックが故障した機能ブロックが監視していた機能ブロックの監視を引き継ぐようにしたので、各機能ブロック内におけるリソースの増加を抑えつつ、機能ブロックが完全に故障した(復旧不可能である)場合であっても、通信装置2の全体としては、各機能ブロックの監視を継続することができる。
《3》変形例1
上記実施の形態1では、監視対象の機能ブロックを2つの機能ブロックで監視する場合を説明したが、監視対象の機能ブロックの重要度に応じて、監視する機能ブロックの数を増減させてもよい(すなわち、重要度に応じた重み付けを行ってもよい)。図11は、変形例1の通信装置1aの構成例を示すブロック図である。図11において、図2に示される構成要素と同一又は対応する構成要素には、図2に示される符号と同じ符号が付される。例えば、通信装置1の動作上障害発生の影響が大きい機能ブロック(図11における10_k+1)に対しては、3つ以上の所定の数の機能ブロック(10_k,10_k+2.10_k+3)によって監視を行い、逆に、障害発生の影響が小さい機能ブロック(図11における10_k+2)に対しては、1つの機能ブロックで監視を行う(図11における10_k+1)、又は、監視を行わない形態でもよい。
《4》変形例2
上記実施の形態2では、例えば、監視対象の機能ブロック20_k+2を1つの機能ブロック20_k+1で監視し、監視する機能ブロック20_k+1に障害が発生した場合には、予備の機能ブロック20_kが監視対象の機能ブロック20_k+2の監視を開始する場合を説明した。しかし、監視対象の機能ブロックの重要度に応じて、予備の機能ブロックの数を増減させてもよい(すなわち、重要度に応じた重み付けを行ってもよい)。例えば、通信装置2の動作上障害発生の影響が大きい機能ブロックに対しては、2つ以上の所定の数の機能ブロックを予備の機能ブロックとし、逆に、障害発生の影響が小さい機能ブロックに対しては、予備の機能ブロックを用意しない形態でもよい。
《5》変形例3
上記実施の形態及び変形例においては、通信装置及び通信装置の復旧方法を説明したが、本発明は、通信装置以外の電子機器(外部インタフェース部を備えない機器)にも適用可能である。
1 通信装置、 10_1,…,10_k,10_k+1,10_k+2,…,10_N(Nは3以上の整数、kはN以下の正の整数) 機能ブロック、
11_1,…,11_k,11_k+1,11_k+2,…,11_N 状態通知部、 12_1,…,12_k,12_k+1,12_k+2,…,12_N 監視部、
13_1,…,13_k,13_k+1,13_k+2,…,13_N 復旧命令部、 14_1,…,14_k,14_k+1,14_k+2,…,14_N 制御部、
15_1,…,15_k,15_k+1,15_k+2,…,15_N 外部インタフェース部、 2 通信装置、 20_1,…,20_k,20_k+1,20_k+2,…,20_N 機能ブロック、
21_1,…,21_k,21_k+1,21_k+2,…,21_N 状態通知部、 22_1,…,22_k,22_k+1,22_k+2,…,22_N 監視部、
23_1,…,23_k,23_k+1,23_k+2,…,23_N 復旧命令部、 24_1,…,24_k,24_k+1,24_k+2,…,24_N 制御部、
25_1,…,25_k,25_k+1,25_k+2,…,25_N 外部インタフェース部。

Claims (9)

  1. 予め決められた処理を行う第1から第N(Nは3以上の整数)の機能ブロックを備えた通信装置であって、
    前記第1から第Nの機能ブロックの各々は、
    自身の機能ブロック以外の機能ブロックである他の機能ブロックの障害の有無を監視する監視部と、
    前記監視部によって前記他の機能ブロックの障害が検出されたときに、前記障害が検出された前記他の機能ブロックに復旧命令信号を出力する復旧命令部と、
    前記自身の機能ブロックの障害を解消する復旧処理を行う制御部と、
    を有し、
    前記第1から第Nの機能ブロックの内の第k(kはN以下の正の整数)の機能ブロックは、前記第1から第Nの機能ブロックの内の第k+1の機能ブロックの障害の有無を監視し、前記第kの機能ブロックによって前記第k+1の機能ブロックの障害が検出されたときに、前記第kの機能ブロックは、前記第k+1の機能ブロックに復旧命令信号を出力し、
    前記第k+1の機能ブロックは、前記第1から第Nの機能ブロックの内の第k+2の機能ブロックの障害の有無を監視し、前記第k+1の機能ブロックによって前記第k+2の機能ブロックの障害が検出されたときに、前記第k+1の機能ブロックは、前記第k+2の機能ブロックに復旧命令信号を出力し、
    前記第kの機能ブロックは、前記第k+1の機能ブロックが復旧できないことが検出された後の期間、前記第k+1の機能ブロックの状態の監視を停止し、前記第k+2の機能ブロックの状態の監視を開始し、
    前記第kの機能ブロックによって前記第k+2の機能ブロックの障害が検出されたときに、前記第kの機能ブロックは、前記第k+2の機能ブロックに復旧命令信号を出力する
    ことを特徴とする通信装置。
  2. 前記第kの機能ブロックは、前記第k+1の機能ブロックの障害を検出してから復旧が完了するまでの期間、前記第k+1の機能ブロックの状態の監視を停止し、前記第k+2の機能ブロックの状態の監視を行うことを特徴とする請求項に記載の通信装置。
  3. 前記第1から第Nの機能ブロックの各々は、自身の機能ブロックの状態を示す状態通知信号を出力する状態通知部を有し、
    前記第kの機能ブロックは、前記第k+1の機能ブロックから出力される状態通知信号に基づいて、前記第k+1の機能ブロックの障害の有無を監視し、
    前記第k+1の機能ブロックは、前記第k+2の機能ブロックから出力される状態通知信号に基づいて、前記第k+2の機能ブロックの障害の有無を監視し、
    前記第kの機能ブロックは、前記第k+1の機能ブロックが復旧できないことが検出された後の期間、前記第k+2の機能ブロックから出力される状態通知信号に基づいて、前記第k+2の機能ブロックの障害の有無を監視する
    ことを特徴とする請求項に記載の通信装置。
  4. 前記第kの機能ブロックによる、前記第k+2の機能ブロックの障害の有無の監視は、第1から第Nの機能ブロックの内の一部の機能ブロックについて行われる
    ことを特徴とする請求項からのいずれか1項に記載の通信装置。
  5. k=N−1のときは、第1の機能ブロックを前記第k+2の機能ブロックとみなし、
    k=Nのときは、第1の機能ブロックを前記第k+1の機能ブロックとみなし、第2の機能ブロックを前記第k+2の機能ブロックとみなし、
    前記第kの機能ブロックによる前記第k+1の機能ブロックの障害の有無の監視と、前記第kの機能ブロックによる前記第k+2の機能ブロックの障害の有無の監視とは、第1から第Nの機能ブロックの全ての機能ブロックについて行われる
    ことを特徴とする請求項からのいずれか1項に記載の通信装置。
  6. 前記第k+1の機能ブロックの障害の有無を監視し、前記第k+1の機能ブロックの障害が検出されたときに、前記第k+1の機能ブロックに復旧命令信号を出力する予備の機能ブロックをさらに有する
    ことを特徴とする請求項1から3のいずれか1項に記載の通信装置。
  7. 前記第1から第Nの機能ブロックの各々は、外部装置と通信を行う通信部を有し、
    前記第1から第Nの機能ブロックの内の障害を検出した機能ブロックは、検出された障害に関する情報を前記外部装置に送信する
    ことを特徴とする請求項1からのいずれか1項に記載の通信装置。
  8. 第1から第Nの機能ブロックの内の前記復旧命令信号を受け取った機能ブロックは、前記自身の機能ブロックへの電力の供給を一時停止した後に電力の供給を再開することによって前記復旧処理を行う
    ことを特徴とする請求項1からのいずれか1項に記載の通信装置。
  9. 予め決められた処理を行う第1から第N(Nは3以上の整数)の機能ブロックを備えた通信装置の復旧方法であって、
    前記第1から第Nの機能ブロックの各々は、自身の機能ブロック以外の機能ブロックである他の機能ブロックの障害の有無を監視する監視機能と、前記他の機能ブロックの障害が検出されたときに、前記障害が検出された前記他の機能ブロックに復旧命令信号を出力する復旧命令機能と、前記自身の機能ブロックの障害を解消する復旧処理を行う電源制御機能とを有し、
    前記復旧方法は、
    前記第1から第Nの機能ブロックの内の第k(kはN以下の正の整数)の機能ブロックが、前記第1から第Nの機能ブロックの内の第k+1の機能ブロックの障害の有無を監視するステップと、
    前記第kの機能ブロックによって前記第k+1の機能ブロックの障害が検出されたときに、前記第kの機能ブロックが、前記第k+1の機能ブロックに復旧命令信号を出力するステップと、
    前記第k+1の機能ブロックが、前記第1から第Nの機能ブロックの内の第k+2の機能ブロックの障害の有無を監視するステップと、
    前記第k+1の機能ブロックによって前記第k+2の機能ブロックの障害が検出されたときに、前記第k+1の機能ブロックが、前記第k+2の機能ブロックに復旧命令信号を出力するステップと、
    前記第kの機能ブロックが、前記第k+1の機能ブロックに障害が検出されてから復旧されるまでの期間及び復旧できないことが検出された後の期間に、前記第k+1の機能ブロックの状態の監視を停止し、前記第k+2の機能ブロックの状態の監視を開始するステップと、
    前記第kの機能ブロックによって前記第k+2の機能ブロックの障害が検出されたときに、前記第kの機能ブロックが、前記第k+2の機能ブロックに復旧命令信号を出力するステップと
    を有することを特徴とする通信装置の復旧方法。
JP2016170472A 2016-09-01 2016-09-01 通信装置及び通信装置の復旧方法 Active JP6710128B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016170472A JP6710128B2 (ja) 2016-09-01 2016-09-01 通信装置及び通信装置の復旧方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016170472A JP6710128B2 (ja) 2016-09-01 2016-09-01 通信装置及び通信装置の復旧方法

Publications (2)

Publication Number Publication Date
JP2018037920A JP2018037920A (ja) 2018-03-08
JP6710128B2 true JP6710128B2 (ja) 2020-06-17

Family

ID=61566165

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016170472A Active JP6710128B2 (ja) 2016-09-01 2016-09-01 通信装置及び通信装置の復旧方法

Country Status (1)

Country Link
JP (1) JP6710128B2 (ja)

Also Published As

Publication number Publication date
JP2018037920A (ja) 2018-03-08

Similar Documents

Publication Publication Date Title
US8006129B2 (en) Detecting and preventing the split-brain condition in redundant processing units
US6732300B1 (en) Hybrid triple redundant computer system
JP2006254688A (ja) 外部装置に接続された無停電電源装置のための電源管理システム
CN105974879A (zh) 数字仪控系统中的冗余控制设备、系统及控制方法
JP2006260259A (ja) 情報処理システムの制御方法、情報処理システム、情報処理システムの制御プログラム、冗長構成制御装置
JP2008225858A (ja) Biosストール障害時の復旧装置、その方法及びそのプログラム
WO2015104841A1 (ja) 多重系システムおよび多重系システム管理方法
US20190052355A1 (en) Network switching system
JP4655718B2 (ja) コンピュータシステム及びその制御方法
JP2009104246A (ja) プログラマブルコントローラおよびその異常時復旧方法
EP2784677A1 (en) Processing apparatus, program and method for logically separating an abnormal device based on abnormality count and a threshold
WO2015135100A1 (zh) 一种实现处理器切换的方法、计算机和切换装置
JP2003150279A (ja) コンピュータ・システムにおける管理システム及びバックアップ管理方法
JP6710128B2 (ja) 通信装置及び通信装置の復旧方法
CN109358982B (zh) 硬盘自愈装置、方法以及硬盘
JP2013125493A (ja) コンピュータシステム、待機電力削減方法、及びプログラム
WO2008004330A1 (fr) Système à processeurs multiples
TWI434159B (zh) 雙重系統控制裝置
JP2015106226A (ja) 二重化システム
JP6194496B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP6364773B2 (ja) 情報処理装置、情報処理システム、メモリレプリケーション方法、並びにコンピュータ・プログラム
JP2005148890A (ja) プロセッサ監視装置
JP4834421B2 (ja) ネットワーク装置
JPS6139138A (ja) 多重化システム
JP2013254333A (ja) 多重系制御システム及びその制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20160901

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190225

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200130

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200526

R150 Certificate of patent or registration of utility model

Ref document number: 6710128

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250