(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024115730
(43)【公開日】2024-08-27
(54)【発明の名称】通信装置、通信装置の管理方法、制御モジュール、及び管理プログラム
(51)【国際特許分類】
H04L 12/28 20060101AFI20240820BHJP
H04L 49/00 20220101ALI20240820BHJP
【FI】
H04L12/28 200Z
H04L49/00
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023021543
(22)【出願日】2023-02-15
(71)【出願人】
【識別番号】000002130
【氏名又は名称】住友電気工業株式会社
(74)【代理人】
【識別番号】110000280
【氏名又は名称】弁理士法人サンクレスト国際特許事務所
(72)【発明者】
【氏名】東 泰彦
(72)【発明者】
【氏名】濱田 洋平
【テーマコード(参考)】
5K030
5K033
【Fターム(参考)】
5K030GA12
5K030KA04
5K030MD04
5K033AA05
5K033DB20
5K033EA03
5K033EC01
(57)【要約】
【課題】通信装置の可用性を向上させる。
【解決手段】
通信装置は、通信モジュールと、制御モジュールと、を備え、前記通信モジュールは、通信に用いられる第1稼働設定情報を記憶する第1揮発性記憶部を含み、前記制御モジュールは、前記第1稼働設定情報に基づいて生成される起動設定情報を記憶する不揮発性記憶部を含み、前記第1稼働設定情報は第1識別情報を含み、前記起動設定情報は第2識別情報を含み、前記通信装置は、前記制御モジュールが起動したときに、前記第1識別情報と前記第2識別情報とが一致するか否かを判定する判定部と、前記判定部によって前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するモード制御部と、を備える。
【選択図】
図4
【特許請求の範囲】
【請求項1】
対向装置と通信を行う通信装置であって、
前記対向装置との通信を実行する通信モジュールと、
前記通信モジュールを制御する制御モジュールと、
を備え、
前記通信モジュールは、通信に用いられる第1稼働設定情報を記憶する第1揮発性記憶部を含み、
前記制御モジュールは、再起動した前記制御モジュールが認識する前記通信モジュールの設定内容を示す情報であり、前記第1稼働設定情報に基づいて生成され得る起動設定情報を記憶する不揮発性記憶部を含み、
前記第1稼働設定情報は、前記第1稼働設定情報を識別するための第1識別情報を含み、
前記起動設定情報は、前記起動設定情報に関する第2識別情報を含み、
前記第1稼働設定情報に基づいて生成された前記起動設定情報に含まれる前記第2識別情報は、前記起動設定情報の生成に用いられた前記第1稼働設定情報に含まれる前記第1識別情報と一致し、
前記第1稼働設定情報は、前記通信モジュールの設定が変更された場合に前記起動設定情報から独立して変更可能であり、
前記通信装置は、
前記制御モジュールが再起動したときに、前記第1識別情報と前記第2識別情報とが一致するか否かを判定する判定部と、
前記判定部によって前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するモード制御部と、
を備える、
通信装置。
【請求項2】
前記判定部によって前記第1識別情報と前記第2識別情報とが一致すると判定され、且つ、前記通信モジュールの前記動作モードが前記第1モードである場合、前記モード制御部は、前記通信モジュールの前記動作モードを前記第1モードに維持する、
請求項1に記載の通信装置。
【請求項3】
前記判定部によって前記第1識別情報と前記第2識別情報とが一致すると判定され、且つ、前記通信モジュールの前記動作モードが前記第2モードである場合、前記モード制御部は、前記通信モジュールの前記動作モードを前記第2モードから前記第1モードに変更する、
請求項1に記載の通信装置。
【請求項4】
前記通信装置は、前記通信モジュールの前記動作モードが前記第1モードである場合に、前記第1稼働設定情報に基づいて、前記第1稼働設定情報に含まれる前記第1識別情報と同じ情報である第2識別情報を含む新たな起動設定情報を生成する第1生成部をさらに備える、
請求項1に記載の通信装置。
【請求項5】
前記制御モジュールは、第2稼働設定情報を記憶する第2揮発性記憶部をさらに含み、
前記通信装置は、
前記制御モジュールが再起動したときに、前記起動設定情報に基づいて、前記第2稼働設定情報を生成し、生成された前記第2稼働設定情報を前記第2揮発性記憶部に格納する稼働設定情報生成部と、
前記通信モジュールの前記動作モードが前記第1モードである場合、前記第1揮発性記憶部における前記第1稼働設定情報を、前記第2揮発性記憶部における前記第2稼働設定情報に一致させるよう変更する変更部と、
をさらに備え、
前記変更部は、前記通信モジュールの前記動作モードが前記第2モードである場合、前記第1揮発性記憶部における前記第1稼働設定情報を変更しない、
請求項1から請求項4のいずれか1項に記載の通信装置。
【請求項6】
前記稼働設定情報生成部は、前記起動設定情報から独立して、第2稼働設定情報を変更することが可能であり、前記起動設定情報から独立して変更された前記第2稼働設定情報を前記第2揮発性記憶部に格納する、
請求項5に記載の通信装置。
【請求項7】
前記通信装置は、前記通信モジュールの前記動作モードが前記第2モードである場合に、前記第1稼働設定情報と前記第2稼働設定情報との差分情報を生成する差分生成部をさらに備える、
請求項5に記載の通信装置。
【請求項8】
前記通信装置は、前記通信モジュールの前記動作モードが前記第2モードである場合に、前記第1稼働設定情報に基づいて新たな起動設定情報を生成する第2生成部をさらに備える、
請求項1に記載の通信装置。
【請求項9】
前記第1識別情報及び前記第2識別情報のそれぞれは、前記第1稼働設定情報が変更される度に更新される第1識別子を含む、
請求項1に記載の通信装置。
【請求項10】
前記第1識別情報及び前記第2識別情報のそれぞれは、前記通信モジュールが再起動される度に更新される第2識別子をさらに含む、
請求項9に記載の通信装置。
【請求項11】
第1揮発性記憶部を含み、対向装置との通信を実行する通信モジュールと、不揮発性記憶部を含み、前記通信モジュールを制御する制御モジュールとを備える通信装置の管理方法であって、
前記第1揮発性記憶部に記憶された、通信に用いられる第1稼働設定情報に含まれる第1識別情報と、前記不揮発性記憶部に記憶された、前記第1稼働設定情報に基づいて生成され得る起動設定情報に含まれる第2識別情報とが一致するか否かを、前記制御モジュールが再起動したときに判定するステップと、
前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するステップと、
を含み、
前記起動設定情報は、再起動した前記制御モジュールが認識する前記通信モジュールの設定内容を示す情報であり、
前記第1稼働設定情報に基づいて生成された前記起動設定情報に含まれる前記第2識別情報は、前記起動設定情報の生成に用いられた前記第1稼働設定情報に含まれる前記第1識別情報と一致し、
前記第1稼働設定情報は、前記通信モジュールの設定が変更された場合に前記起動設定情報から独立して変更可能である、
通信装置の管理方法。
【請求項12】
対向装置と通信を行う通信装置において、前記対向装置との通信を実行する通信モジュールを制御する制御モジュールであって、
前記通信モジュールに設けられた第1揮発性記憶部に記憶された、再起動した前記制御モジュールが認識する前記通信モジュールの設定内容を示す情報であり、通信に用いられる第1稼働設定情報に基づいて生成され得る起動設定情報を記憶する不揮発性記憶部と、
前記制御モジュールが再起動したときに、前記第1稼働設定情報に含まれる、前記第1稼働設定情報を識別するための第1識別情報と、前記起動設定情報に含まれる、前記起動設定情報に関する第2識別情報とが一致するか否かを判定する判定部と、
前記判定部によって前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するモード制御部と、
を備え、
前記第1稼働設定情報に基づいて生成された前記起動設定情報に含まれる前記第2識別情報は、前記起動設定情報の生成に用いられた前記第1稼働設定情報に含まれる前記第1識別情報と一致し、
前記第1稼働設定情報は、前記通信モジュールの設定が変更された場合に前記起動設定情報から独立して変更可能である、
制御モジュール。
【請求項13】
対向装置と通信を行う通信装置において、前記対向装置との通信を実行する通信モジュールを制御する制御モジュールにおいて用いられる管理プログラムであって、
不揮発性記憶部を含むコンピュータに、
前記通信モジュールに設けられた前記第1揮発性記憶部に記憶された、通信に用いられる第1稼働設定情報に含まれる第1識別情報と、前記不揮発性記憶部に記憶された、前記第1稼働設定情報に基づいて生成され得る起動設定情報に含まれる第2識別情報とが一致するか否かを、前記制御モジュールが再起動したときに判定するステップと、
前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するステップと、
を実行させ、
前記起動設定情報は、再起動した前記制御モジュールが認識する前記通信モジュールの設定内容を示す情報であり、
前記第1稼働設定情報に基づいて生成された前記起動設定情報に含まれる前記第2識別情報は、前記起動設定情報の生成に用いられた前記第1稼働設定情報に含まれる前記第1識別情報と一致し、
前記第1稼働設定情報は、前記通信モジュールの設定が変更された場合に前記起動設定情報から独立して変更可能である、
管理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、通信装置、通信装置の管理方法、制御モジュール、及び管理プログラムに関する。
【背景技術】
【0002】
特許文献1には、パケットの転送先を決定する転送制御部と、転送制御部を制御する制御部と、を備え、制御部に障害が検出された場合に、転送制御部のプロセッサが、揮発メモリに格納された設定情報及びログ情報を読み出し、読み出した設定情報及びログ情報を不揮発メモリに格納し、制御部を再起動し、制御部の障害の原因となる設定情報より前の時刻に不揮発メモリに格納された設定情報を用いて、制御部を設定する通信装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
通信装置の設定情報には、例えばVLAN(Virtual Local Area Network)、QoS(Quality of Service)に関連する設定パラメータ等、対向装置と共に設定される必要がある設定パラメータが含まれる。しかしながら、特許文献1に開示された通信装置では、制御部の設定に用いられる設定情報が古かったり、対向装置における設定情報と異なったりした場合、通信装置と対向装置との間における設定の整合が崩れ、主信号の通信が正常に行えなくなる等の影響が生じるおそれがある。
【課題を解決するための手段】
【0005】
本開示の一態様に係る通信装置は、対向装置と通信を行う通信装置であって、前記対向装置との通信を実行する通信モジュールと、前記通信モジュールを制御する制御モジュールと、を備え、前記通信モジュールは、通信に用いられる第1稼働設定情報を記憶する第1揮発性記憶部を含み、前記制御モジュールは、再起動した前記制御モジュールが認識する前記通信モジュールの設定内容を示す情報であり、前記第1稼働設定情報に基づいて生成され得る起動設定情報を記憶する不揮発性記憶部を含み、前記第1稼働設定情報は、前記第1稼働設定情報を識別するための第1識別情報を含み、前記起動設定情報は、前記起動設定情報に関する第2識別情報を含み、前記第1稼働設定情報に基づいて生成された前記起動設定情報に含まれる前記第2識別情報は、前記起動設定情報の生成に用いられた前記第1稼働設定情報に含まれる前記第1識別情報と一致し、前記第1稼働設定情報は、前記通信モジュールの設定が変更された場合に前記起動設定情報から独立して変更可能であり、前記通信装置は、前記制御モジュールが再起動したときに、前記第1識別情報と前記第2識別情報とが一致するか否かを判定する判定部と、前記判定部によって前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するモード制御部と、を備える。
【発明の効果】
【0006】
本開示によれば、通信装置の可用性を向上させることができる。
【図面の簡単な説明】
【0007】
【
図1】
図1は、実施形態に係る通信装置の構成の一例を示す図である。
【
図2】
図2は、実施形態に係る制御モジュールのハードウェア構成の一例を示すブロック図である。
【
図3】
図3は、実施形態に係る通信モジュールのハードウェア構成の一例を示すブロック図である。
【
図4】
図4は、実施形態に係る通信装置の機能の一例を示す機能ブロック図である。
【
図5】
図5は、running-configの構成の一例を模式的に示す図である。
【
図6】
図6は、第1識別情報の一例を示す図である。
【
図7】
図7は、startup-configの構成の一例を模式的に示す図である。
【
図8】
図8は、実施形態に係る制御モジュールによるモード制御処理の一例を示すフローチャートである。
【
図9】
図9は、実施形態に係る制御モジュールによるrunning-config変更処理の一例を示すフローチャートである。
【
図10】
図10は、実施形態に係る制御モジュールによるstartup-config更新処理の一例を示すフローチャートである。
【
図11】
図11は、実施形態に係る制御モジュールによる差分情報生成処理の一例を示すフローチャートである。
【
図12】
図12は、通信モジュールの動作モードを通常モードから制限モードへ変更する場合の通信装置の動作の一例を示すシーケンス図である。
【
図13】
図13は、通信モジュールの動作モードを制限モードから通常モードへ復帰させる場合の通信装置の動作の一例を示すシーケンス図である。
【
図14】
図14は、通信モジュールの動作モードを制限モードから通常モードへ復帰させる場合の通信装置の動作の他の例を示すシーケンス図である。
【
図15】
図15は、通信モジュールの動作モードを制限モードから通常モードへ復帰させる場合の通信装置の動作の変形例を示すシーケンス図である。
【発明を実施するための形態】
【0008】
<本開示の実施形態の概要>
以下、本開示の実施形態の概要を列記して説明する。
【0009】
(1) 本実施形態に係る通信装置は、対向装置と通信を行う通信装置であって、前記対向装置との通信を実行する通信モジュールと、前記通信モジュールを制御する制御モジュールと、を備え、前記通信モジュールは、通信に用いられる第1稼働設定情報を記憶する第1揮発性記憶部を含み、前記制御モジュールは、再起動した前記制御モジュールが認識する前記通信モジュールの設定内容を示す情報であり、前記第1稼働設定情報に基づいて生成され得る起動設定情報を記憶する不揮発性記憶部を含み、前記第1稼働設定情報は、前記第1稼働設定情報を識別するための第1識別情報を含み、前記起動設定情報は、前記起動設定情報に関する第2識別情報を含み、前記第1稼働設定情報に基づいて生成された前記起動設定情報に含まれる前記第2識別情報は、前記起動設定情報の生成に用いられた前記第1稼働設定情報に含まれる前記第1識別情報と一致し、前記第1稼働設定情報は、前記通信モジュールの設定が変更された場合に前記起動設定情報から独立して変更可能であり、前記通信装置は、前記制御モジュールが再起動したときに、前記第1識別情報と前記第2識別情報とが一致するか否かを判定する判定部と、前記判定部によって前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するモード制御部と、を備える。第1識別情報と第2識別情報とが一致する場合、起動設定情報は、第1稼働設定情報に基づいて生成された情報である。一方、第1識別情報と第2識別情報とが一致しない場合、起動設定情報は、第1稼働設定情報に基づいて生成された情報ではない。この場合、起動設定情報は対向装置における設定情報と異なる可能性がある。したがって、第1識別情報と第2識別情報とが一致しない場合に第1稼働設定情報の変更を制限することで、対向装置との設定の不整合を抑制し、主信号の通信を維持することができる。第1識別情報と第2識別情報とが一致するとは、第1識別情報と第2識別情報とが完全に一致する場合だけでなく、例えば、第1識別情報と第2識別情報とが互いに異なるデータ形式である場合に第1識別情報の内容と第2識別情報の内容とが一致することを含む。
【0010】
(2) 上記(1)において、前記判定部によって前記第1識別情報と前記第2識別情報とが一致すると判定され、且つ、前記通信モジュールの前記動作モードが前記第1モードである場合、前記モード制御部は、前記通信モジュールの前記動作モードを前記第1モードに維持してもよい。第1識別情報と第2識別情報とが一致する場合、起動設定情報を用いて第1稼働設定情報が変更された時点よりも後において、第1稼働設定情報が変更されていない。したがって、通信モジュールの動作モードを第1モードに維持することにより、例えばユーザが第1稼働設定情報を変更することができ、高い自由度で通信装置を運用することができる。
【0011】
(3) 上記(1)又は(2)において、前記判定部によって前記第1識別情報と前記第2識別情報とが一致すると判定され、且つ、前記通信モジュールの前記動作モードが前記第2モードである場合、前記モード制御部は、前記通信モジュールの前記動作モードを前記第2モードから前記第1モードに変更してもよい。これにより、例えばユーザが第1稼働設定情報を変更することができ、高い自由度で通信装置を運用することができる。
【0012】
(4) 上記(1)から(3)のいずれか1つにおいて、前記通信装置は、前記通信モジュールの前記動作モードが前記第1モードである場合に、前記第1稼働設定情報に基づいて、前記第1稼働設定情報に含まれる前記第1識別情報と同じ情報である第2識別情報を含む新たな起動設定情報を生成する第1生成部をさらに備えてもよい。これにより、第1稼働設定情報を用いて、新たな起動設定情報を生成し、不揮発性記憶部における起動設定情報を更新することができる。起動設定情報が更新された後に制御モジュールが再起動された場合に、第1識別情報と第2識別情報とが一致し、通信モジュールの動作モードを第1モードに設定することができる。
【0013】
(5) 上記(1)から(4)のいずれか1つにおいて、前記制御モジュールは、第2稼働設定情報を記憶する第2揮発性記憶部をさらに含み、前記通信装置は、前記制御モジュールが再起動したときに、前記起動設定情報に基づいて、前記第2稼働設定情報を生成し、生成された前記第2稼働設定情報を前記第2揮発性記憶部に格納する稼働設定情報生成部と、前記通信モジュールの前記動作モードが前記第1モードである場合、前記第1揮発性記憶部における前記第1稼働設定情報を、前記第2揮発性記憶部における前記第2稼働設定情報に一致させるよう変更する変更部と、をさらに備え、前記変更部は、前記通信モジュールの前記動作モードが前記第2モードである場合、前記第1揮発性記憶部における前記第1稼働設定情報を変更しなくてもよい。これにより、通信モジュールの動作モードが第1モードである場合には、第1稼働設定情報を第2稼働設定情報に同期させることで変更することができ、通信モジュールの動作モードが第2モードである場合には、第1稼働設定情報の変更を制限し、第1稼働設定情報を維持することができる。
【0014】
(6) 上記(5)において、前記稼働設定情報生成部は、前記起動設定情報から独立して、第2稼働設定情報を変更することが可能であり、前記起動設定情報から独立して変更された前記第2稼働設定情報を前記第2揮発性記憶部に格納してもよい。これにより、第2稼働設定情報を、起動設定情報とは無関係に生成することができる。生成された第2稼働設定情報に第1稼働設定情報を同期させることで、起動設定情報とは無関係に第1稼働設定情報を変更することができる。
【0015】
(7) 上記(5)又は(6)において、前記通信装置は、前記通信モジュールの前記動作モードが前記第2モードである場合に、前記第1稼働設定情報と前記第2稼働設定情報との差分情報を生成する差分生成部をさらに備えてもよい。これにより、例えばユーザが差分情報に基づいて第2稼働設定情報を第1稼働設定情報と同じ内容に編集することができる。
【0016】
(8) 上記(1)から(7)のいずれか1つにおいて、前記通信装置は、前記通信モジュールの前記動作モードが前記第2モードである場合に、前記第1稼働設定情報に基づいて新たな起動設定情報を生成する第2生成部をさらに備えてもよい。これにより、通信モジュールの動作モードが第2モードである場合に、通信に使用されている第1稼働設定情報を用いて新たな起動設定情報を生成し、不揮発性記憶部における起動設定情報を更新することができる。
【0017】
(9) 上記(1)から(8)のいずれか1つにおいて、前記第1識別情報及び前記第2識別情報のそれぞれは、前記第1稼働設定情報が変更される度に更新される第1識別子を含んでもよい。これにより、第1識別情報と第2識別情報とを比較することで、起動設定情報が現行の第1稼働設定情報に対応しているか否かを判断することができる。
【0018】
(10) 上記(9)において、前記第1識別情報及び前記第2識別情報のそれぞれは、前記通信モジュールが再起動される度に更新される第2識別子をさらに含んでもよい。これにより、第1識別情報と第2識別情報とを比較することで、起動設定情報が、第1稼働設定情報が変更された動作期間に対応しているか否かを判断することができる。なお、「動作期間」は、通信モジュールが再起動されてから次回再起動されるまでの期間を意味する。
【0019】
(11) 本実施形態に係る通信装置の管理方法は、第1揮発性記憶部を含み、対向装置との通信を実行する通信モジュールと、不揮発性記憶部を含み、前記通信モジュールを制御する制御モジュールとを備える通信装置の管理方法であって、前記第1揮発性記憶部に記憶された、通信に用いられる第1稼働設定情報に含まれる第1識別情報と、前記不揮発性記憶部に記憶された、前記第1稼働設定情報に基づいて生成され得る起動設定情報に含まれる第2識別情報とが一致するか否かを、前記制御モジュールが再起動したときに判定するステップと、前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するステップと、を含み、前記起動設定情報は、再起動した前記制御モジュールが認識する前記通信モジュールの設定内容を示す情報であり、前記第1稼働設定情報に基づいて生成された前記起動設定情報に含まれる前記第2識別情報は、前記起動設定情報の生成に用いられた前記第1稼働設定情報に含まれる前記第1識別情報と一致し、前記第1稼働設定情報は、前記通信モジュールの設定が変更された場合に前記起動設定情報から独立して変更可能である。第1識別情報と第2識別情報とが一致しない場合、通信モジュールの動作モードを第2モードに設定することにより、第1稼働設定情報の変更が制限され、制御モジュールの再起動前における通信モジュールの設定内容が維持される。したがって、通信装置と対向装置との間における設定の整合が維持され、主信号の通信を継続することができる。
【0020】
(12) 本実施形態に係る通信装置の制御モジュールは、対向装置と通信を行う通信装置において、前記対向装置との通信を実行する通信モジュールを制御する制御モジュールであって、前記通信モジュールに設けられた第1揮発性記憶部に記憶された、再起動した前記制御モジュールが認識する前記通信モジュールの設定内容を示す情報であり、通信に用いられる第1稼働設定情報に基づいて生成され得る起動設定情報を記憶する不揮発性記憶部と、前記制御モジュールが再起動したときに、前記第1稼働設定情報に含まれる、前記第1稼働設定情報を識別するための第1識別情報と、前記起動設定情報に含まれる、前記起動設定情報に関する第2識別情報とが一致するか否かを判定する判定部と、前記判定部によって前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するモード制御部と、を備え、前記第1稼働設定情報に基づいて生成された前記起動設定情報に含まれる前記第2識別情報は、前記起動設定情報の生成に用いられた前記第1稼働設定情報に含まれる前記第1識別情報と一致し、前記第1稼働設定情報は、前記通信モジュールの設定が変更された場合に前記起動設定情報から独立して変更可能である。第1識別情報と第2識別情報とが一致しない場合、通信モジュールの動作モードを第2モードに設定することにより、第1稼働設定情報の変更が制限され、制御モジュールの再起動前における通信モジュールの設定内容が維持される。したがって、通信装置と対向装置との間における設定の整合が維持され、主信号の通信を継続することができる。
【0021】
(13) 本実施形態に係る通信装置の管理プログラムは、対向装置と通信を行う通信装置において、前記対向装置との通信を実行する通信モジュールを制御する制御モジュールにおいて用いられる管理プログラムであって、不揮発性記憶部を含むコンピュータに、前記通信モジュールに設けられた前記第1揮発性記憶部に記憶された、通信に用いられる第1稼働設定情報に含まれる第1識別情報と、前記不揮発性記憶部に記憶された、前記第1稼働設定情報に基づいて生成され得る起動設定情報に含まれる第2識別情報とが一致するか否かを、前記制御モジュールが再起動したときに判定するステップと、前記第1識別情報と前記第2識別情報とが一致しないと判定された場合に、前記通信モジュールの動作モードを、前記第1稼働設定情報の変更が可能な第1モードから、前記第1稼働設定情報の変更を制限する第2モードに変更するステップと、を実行させ、前記起動設定情報は、再起動した前記制御モジュールが認識する前記通信モジュールの設定内容を示す情報であり、前記第1稼働設定情報に基づいて生成された前記起動設定情報に含まれる前記第2識別情報は、前記起動設定情報の生成に用いられた前記第1稼働設定情報に含まれる前記第1識別情報と一致し、前記第1稼働設定情報は、前記通信モジュールの設定が変更された場合に前記起動設定情報から独立して変更可能である。第1識別情報と第2識別情報とが一致しない場合、通信モジュールの動作モードを第2モードに設定することにより、第1稼働設定情報の変更が制限され、制御モジュールの再起動前における通信モジュールの設定内容が維持される。したがって、通信装置と対向装置との間における設定の整合が維持され、主信号の通信を継続することができる。
【0022】
本開示は、上記のような特徴的な構成を備える通信装置、特徴的な処理をステップとする通信装置の管理方法、通信装置に用いられる制御モジュール、及び制御モジュールにおいて用いられる管理プログラムとして実現することができるだけでなく、通信装置を備える通信システムとして実現したり、制御モジュールの一部又は全部を半導体集積回路として実現したりすることができる。
【0023】
<本開示の実施形態の詳細>
以下、図面を参照しつつ、本発明の実施形態の詳細を説明する。なお、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
【0024】
[1.通信装置の構成]
図1は、実施形態に係る通信装置の構成の一例を示す図である。
【0025】
通信装置10は、制御モジュール100と、通信モジュール200_1,200_2とを含む。
【0026】
通信モジュール200_1,200_2は、対向装置との通信を実行するモジュールである。例えば、通信モジュール200_1,200_2は、通信装置10とは異なる外部の複数の通信装置間の通信を中継する中継モジュールである。通信モジュール200_1は、外部の通信装置と通信するための通信線20_11,20_12が接続されている。通信モジュール200_2は、外部の通信装置と通信するための通信線20_21,20_22が接続されている。以下、通信モジュール200_1,200_2を「通信モジュール200」と総称することがある。
【0027】
通信モジュール200は、例えば、1対1のネットワークトポロジに対応した通信モジュールである。他の例として、通信モジュール200は、1対多のネットワークトポロジに対応した通信モジュールであり、具体的な一例では、PON(Passive Optical Network)用の通信モジュールであってもよい。通信モジュール200は、イーサネット(登録商標)用の通信モジュールである。通信モジュール200は、ITU-T(International Telecommunication Union-Telecommunication Standardization Sector)によって規定された通信規格に対応した通信モジュールであってもよい。例えば、通信モジュール200は、OTN(Optical Transport Network)用の通信モジュールであってもよいし、G-PON(Gigabit PON)用の通信モジュールであってもよいし、GE-PON(Gigabit Ethernet PON)用の通信モジュールであってもよいし、10G-EPON(10Gigabit Ethernet PON)用の通信モジュールであってもよい。通信モジュール200は、上記以外のネットワークトポロジ又は通信規格用の通信モジュールであってもよい。
【0028】
制御モジュール100は、通信モジュール200_1,200_2を制御するためのモジュールである。制御モジュール100と通信モジュール200_1,200_2とは信号線により接続されている。
【0029】
通信装置10は、筐体に制御モジュール100及び通信モジュール200_1,200_2が収容されて構成される。例えば、通信装置10は、筐体に制御モジュール100及び通信モジュール200_1,200_2を着脱可能ないわゆるシャーシ型(筐体型)の通信装置である。
【0030】
図1の例では、通信装置10に2つの通信モジュール200_1,200_2が取り付けられているが、これに限定されない。例えば、通信装置10に1つの通信モジュールだけが設けられていてもよいし、3つ以上の通信モジュールが設けられていてもよい。
【0031】
通信装置10は、外部通信ポート300を含む。外部通信ポート300は、信号線により制御モジュール100に接続されている。
【0032】
外部通信ポート300には、管理装置30が接続される。管理装置30は、ユーザが使用する端末であり、ユーザインタフェース装置である。ユーザは、管理装置30を用いて、通信装置の状態を閲覧したり、制御モジュール100に各種の指示を入力することができる。
【0033】
制御モジュール100は、通信モジュール200_1,200_2の起動状態に関わらず、再起動することができる。すなわち、通信モジュール200_1,200_2が動作している間に、制御モジュール100は再起動することができる。これにより、通信モジュール200_1,200_2による通信が中断されることなく、制御モジュール100の再起動を行うことができる。例えば、制御モジュール100のソフトウェア更新を実施した場合に制御モジュール100は再起動する。他の例では、制御モジュール100に障害が発生した場合、制御モジュール100を復旧するために再起動を行うことがある。例えば、ユーザは、管理装置30に制御モジュール100の再起動の指示を入力することができる。制御モジュール100は、ユーザからの指示にしたがって再起動する。
【0034】
[2.制御モジュールの構成]
図2は、実施形態に係る制御モジュールのハードウェア構成の一例を示すブロック図である。
【0035】
制御モジュール100は、プロセッサ101と、不揮発性メモリ102と、揮発性メモリ103と、読出装置104と、入出力インタフェース(以下、「I/O」ともいう)105とを含む。
【0036】
揮発性メモリ103は、例えばSRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)等の半導体メモリである。不揮発性メモリ102は、例えばフラッシュメモリ、ハードディスク、PROM(Programmable Read Only Memory)、EPROM(Erasable PROM)、EEPROM(Electrically Erasable PROM)等の書き換え可能な不揮発性メモリである。不揮発性メモリ102には、コンピュータプログラムである管理プログラム110、及び管理プログラム110の実行に使用されるデータが格納される。制御モジュール100の各機能は、管理プログラム110がプロセッサ101によって実行されることで発揮される。
【0037】
プロセッサ101は、例えばCPU(Central Processing Unit)である。ただし、プロセッサ101は、CPUに限られない。プロセッサ101は、GPU(Graphics Processing Unit)であってもよい。具体的な一例では、プロセッサ101は、マルチコアプロセッサである。プロセッサ101は、シングルコアプロセッサであってもよい。プロセッサ101は、コンピュータプログラムを実行可能に構成される。ただしプロセッサ101は、例えば、ASIC(Application Specific Integrated Circuit)であってもよいし、ゲートアレイ、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスであってもよい。この場合、ASIC又はプログラマブルロジックデバイスは、管理プログラム110と同じ機能を実行可能に構成される。
【0038】
揮発性メモリ103には、running-config112が格納される。running-config112は、後述する通信モジュール200のrunning-config212に基づいて生成される。揮発性メモリ103のrunning-config112は、制御モジュール100の再起動時に消去される。running-config112は、「第2稼働設定情報」の一例である。揮発性メモリ103は、「第2揮発性記憶部」の一例である。
【0039】
不揮発性メモリ102には、startup-config111が格納される。startup-config111は、再起動した制御モジュール100が認識する通信モジュール200の設定内容を示す情報である。startup-config111は、通信モジュール200のrunning-config212の生成に用いられる。通信装置10が再起動した場合、制御モジュール100においてstartup-config111に基づいてrunning-config112が生成され、running-config112と同じrunning-config212が通信モジュール200に与えられる。不揮発性メモリ102のstartup-config111は、制御モジュール100が再起動しても消去されない。startup-config111は、「起動設定情報」の一例である。不揮発性メモリ102は、「不揮発性記憶部」の一例である。
【0040】
読出装置104は、可搬型ストレージ40を着脱可能である。可搬型ストレージ40は、不揮発性メモリであり、例えば、SD(登録商標)カード等のカード型のフラッシュメモリである。可搬型ストレージ40に、管理プログラム110及びstartup-config111の少なくとも一方が格納されてもよい。可搬型ストレージ40には、startup-config111と同じ情報を含み、startup-config111とはデータ形式が異なるデータが格納されていてもよい。例えば、制御モジュール100の起動シーケンスにおいて、可搬型ストレージ40の当該データをプロセッサ101が読み出し、読み出したデータをstartup-config111に変換して不揮発性メモリ102に書き込む(インポートする)ことができる。
【0041】
I/O105は、制御モジュール100と外部とのデータの入出力を行う。I/O105は、外部通信ポート300を介して管理装置30に接続されている。さらに、I/O105は、通信モジュール200_1,200_2に接続されている。
【0042】
例えば、管理装置30は、キーボード及びマウス等のポインティングデバイスを含む入力装置と、例えば液晶パネル又はOEL(有機エレクトロルミネッセンス)パネルを含む表示装置とを備える。入力装置は、表示装置の画面に重ねられた静電容量式又は感圧式のタッチパッドであってもよい。管理装置30は、入力装置にユーザから入力されるデータを受け付け、通信装置10の状態等の情報を表示装置によって表示することができる。
【0043】
管理プログラム110は、通信モジュール200_1,200_2を管理するためのプログラムである。さらに具体的には、管理プログラム110は、通信モジュール200_1,200_2の設定情報(running-config212)及び動作モードを管理するためのプログラムである。
【0044】
[3.通信モジュールの構成]
図3は、実施形態に係る通信モジュールのハードウェア構成の一例を示すブロック図である。
【0045】
通信モジュール200は、プロセッサ201と、不揮発性メモリ202と、揮発性メモリ203と、信号処理回路204と、トランシーバ(TRx)205_1,205_2と、入出力インタフェース(I/O)206とを含む。
【0046】
揮発性メモリ203は、例えばSRAM、DRAM等の半導体メモリである。不揮発性メモリ202は、例えばフラッシュメモリ、ハードディスク、ROM等である。不揮発性メモリ202には、コンピュータプログラムである制御プログラム210、及び制御プログラム210の実行に使用されるデータが格納される。通信モジュール200の各機能は、制御プログラム210がプロセッサ201によって実行されることで発揮される。
【0047】
プロセッサ201は、例えばCPUである。ただし、プロセッサ201は、CPUに限られない。プロセッサ201は、GPUであってもよい。具体的な一例では、プロセッサ201は、マルチコアプロセッサである。プロセッサ201は、シングルコアプロセッサであってもよい。プロセッサ201は、コンピュータプログラムを実行可能に構成される。ただしプロセッサ201は、例えば、ASICであってもよいし、プログラマブルロジックデバイスであってもよい。この場合、ASIC又はプログラマブルロジックデバイスは、制御プログラム210と同じ機能を実行可能に構成される。
【0048】
揮発性メモリ203には、running-config212が格納される。running-config212は、通信モジュール200の通信に用いられる設定情報であり、複数の設定パラメータを含む。running-config212は、通信モジュール200の再起動時に消去される。running-config212は、「第1稼働設定情報」の一例である。揮発性メモリ203は、「第1揮発性記憶部」の一例である。
【0049】
トランシーバ205_1,205_2は、対向装置と通信線を介して接続される。トランシーバ205_1,205_2は、対向装置から送信された信号(主信号)を受信し、対向装置へ主信号を送信することができる。信号処理回路204は、トランシーバ205_1,205_2に接続されている。信号処理回路204は、対向装置から受信した信号(主信号)に所定の処理を施し、対向装置へ送信する信号に所定の処理を施すためのハードウェア回路である。例えば、信号処理回路204は、対向装置に対して送受信する信号に所定のフレーム処理を施す。
【0050】
I/O206は、制御モジュール210と外部とのデータの入出力を行う。I/O206は、制御モジュール100に接続されている。
【0051】
制御プログラム210は、running-config212の更新を制御するためのプログラムである。さらに制御プログラム210は、通信モジュール200の動作モードを制御するためのプログラムである。
【0052】
[4.通信装置の機能]
図4は、実施形態に係る通信装置の機能の一例を示す機能ブロック図である。
【0053】
制御モジュール100は、判定部121と、モード制御部122と、変更部123と、running-config生成部124と、第1生成部125と、差分生成部126との各機能を有する。通信モジュール200は、制御部220の機能を有する。
【0054】
判定部121は、制御モジュールが起動したときに、通信モジュール200からrunning-config212を取得し、不揮発性メモリ102からstartup-config111を読み出す。判定部121は、running-config212に含まれる第1識別情報と、startup-config111に含まれる第2識別情報とを比較し、第1識別情報と第2識別情報とが一致するか否かを判定する。
【0055】
図5は、running-configの構成の一例を模式的に示す図である。running-config212は、第1識別情報と、複数の設定パラメータA,B,C,…の設定値a1,b1,c1,…とを含む。
【0056】
第1識別情報は、running-config212を識別するための情報である。すなわち、第1識別情報は、running-config212が生成又は変更される都度更新される。
【0057】
図6は、第1識別情報の一例を示す図である。running-config212は第1識別子を含む。第1識別子は、running-config212が変更される度に更新される情報である。
【0058】
例えば、第1識別子の一例は、トランザクションIDである。トランザクションIDは、特定のコマンドが実行される度にインクリメントされる数値である。特定のコマンドには、running-configの変更を指示するコマンドが含まれる。running-config212の変更を指示するコマンドが実行される都度、トランザクションIDは更新される。
【0059】
トランザクションIDは、制御モジュール100(正確には、コマンドを管理する制御モジュール100のオペレーティングシステム)が再起動されるとリセットされる。したがって、第1識別子だけではrunning-config212を一意に特定することができない可能性がある。このため、第1識別情報は、通信モジュール200が再起動される度に更新される第2識別子をさらに含んでもよい。第2識別子の一例は、UUID(Universally Unique Identifier)である。UUIDは、制御モジュール100が再起動される度にも更新される。UUIDは、通信モジュールの動作期間の特定に用いることができる。
【0060】
第1識別情報は、UUID及びトランザクションID以外の情報を含んでもよい。例えば、第1識別情報は、通信装置10の筐体を識別するための筐体シリアル番号を含んでもよい。他の例では、第1識別情報は、イーサネット通信装置、OTN通信装置、PON通信装置等の通信装置の種別と特定可能な装置識別子を含んでもよい。
【0061】
図7は、startup-configの構成の一例を模式的に示す図である。startup-config111は、第2識別情報と、複数の設定パラメータA,B,C,…の設定値a2,b2,c2,…とを含む。
【0062】
startup-config111は、running-config212に基づいて生成される。具体的な一例では、startup-config111は、running-config212と同じ内容の情報である。例えば、ある時点におけるrunning-config212からstartup-config111が生成された場合、startup-config111に含まれる第2識別情報は、running-config212に含まれる第1識別情報と同じ情報であり、startup-config111に含まれる設定パラメータA,B,C,…の値は、running-config212に含まれる設定パラメータA,B,C,…の値a1,b1,c1…と同じa1,b1,c1…である。
【0063】
つまり、running-config212に含まれる第1識別情報は、running-config212に基づいて生成されたstartup-config111に含まれる第2識別情報と一致する。
【0064】
running-config212は、startup-config111とは別個に変更可能である。すなわち、running-config212は、startup-config111の変更を伴わずに変更される。running-config212が変更されると、変更後のrunning-configには、新たな(変更前とは異なる)第1識別情報が含まれる。この場合、第1識別情報と第2識別情報とは一致しない。
【0065】
図4に戻り、通信モジュール200は、通常モードと制限モードの2つの動作モードを有する。通常モードは、running-config212の変更が可能な動作モードであり、制限モードは、running-config212の変更が制限された動作モードである。通常モードは、「第1モード」の一例である。制限モードは、「第2モード」の一例である。
【0066】
モード制御部122は、通信モジュール200の動作モードを制御する。モード制御部122は、判定部121によって第1識別情報と第2識別情報とが一致しないと判定された場合に、通信モジュール200の動作モードを、通常モードから制限モードに変更する。具体的には、モード制御部122は、判定部121によって第1識別情報と第2識別情報とが一致しないと判定された場合に、通信モジュール200の動作モードを、通常モードから制限モードに変更することを決定する。モード制御部122は、通信モジュール200の動作モードを、通常モードから制限モードに変更することを決定すると、通信モジュールの制御部220にモードの変更を指示し、制御部220が通信モジュール200の動作モードを通常モードから制限モードに変更する。
【0067】
判定部121によって第1識別情報と第2識別情報とが一致すると判定され、且つ、通信モジュール200の動作モードが通常モードである場合、モード制御部122は、通信モジュール200の動作モードを通常モードに維持する。具体的には、モード制御部122は、通信モジュール200の動作モードを通常モードに維持することを決定すると、通信モジュールの制御部220にモードの変更を指示しない。
【0068】
判定部121によって第1識別情報と第2識別情報とが一致すると判定され、且つ、通信モジュール200の動作モードが制限モードである場合、モード制御部122は、通信モジュール200の動作モードを制限モードから通常モードに変更する。具体的には、モード制御部122は、通信モジュール200の動作モードを制限モードから通常モードに変更することを決定し、通信モジュールの制御部220にモードの変更を指示する。制御部220は通信モジュール200の動作モードを制限モードから通常モードに変更する。
【0069】
第1生成部125は、通信モジュール200の動作モードが通常モードである場合に、running-config212に基づいて新たなstartup-config111を生成する。具体的な一例では、第1生成部125は、通信モジュール200の動作モードが通常モードである場合に、管理装置30からのユーザによる指示に基づいて、又は、他の一定の条件にしたがって、通信モジュール200のrunning-config212と同一の内容のrunning-config112を揮発性メモリ103に格納する。すなわち、制御モジュール100のrunning-config112は、通信モジュール200のrunning-config212の複製であり、running-config212と同じ第1識別情報及び設定パラメータの値を含む。第1生成部125は、揮発性メモリに格納されたrunning-config112と同じ内容のstartup-config111を生成し、不揮発性メモリ102に格納する。すなわち、生成されたstartup-config111は、running-config212の第1識別情報と同じ情報である第2識別情報を含み、running-config212の設定パラメータの値と同じ設定パラメータの値を含む。以下、設定パラメータの値を「設定内容」ともいう。
【0070】
running-config生成部124は、制御モジュール100が再起動したときに、startup-config111に基づいて、running-config112を生成する。running-config生成部124は、生成されたrunning-config112を揮発性メモリ103に格納する。生成されたrunning-config112は、startup-config111と同じ情報を含む。すなわち、running-config112の第1識別情報はstartup-config111の第2識別情報と一致し、running-config112の設定内容はstartup-config111の設定内容と一致する。
【0071】
例えば、通信モジュール200の動作モードが通常モードであるか制限モードであるかを示すモード情報が、揮発性メモリ103に格納される。一例では、モード情報の初期値は通常モードを示しており、モード制御部122は、通信モジュール200の動作モードを通常モードから制限モードに変更した場合、制限モードを示す情報にモード情報を上書きする。モード制御部122は、通信モジュール200の動作モードを制限モードから通常モードに変更した場合、通常モードを示す情報にモード情報を上書きする。変更部123は、揮発性メモリ103におけるモード情報を参照することにより、通信モジュール200の動作モードが通常モードであるか制限モードであるかを判断する。変更部123は、通信モジュール200の動作モードが通常モードである場合、管理装置30からのユーザによる指示に基づいて、又は、他の一定の条件にしたがって、通信モジュール200の揮発性メモリ203におけるrunning-config212を、揮発性メモリ103におけるrunning-config112に一致させるよう変更する。具体的には、変更部123は、running-config112とrunning-config212との同期を制御部220に指示する。指示を受け付けた制御部220は、running-config212をrunning-config112に同期させる。これにより、running-config212がrunning-config112に一致する。
【0072】
running-config212がrunning-config112に一致すると、running-config212の第1識別情報はrunning-config112の第1識別情報と一致し、running-config212の設定内容はrunning-config112の設定内容と一致する。
【0073】
変更部123は、通信モジュール200の動作モードが制限モードである場合、揮発性メモリ203におけるrunning-config212を変更しない。具体的には、通信モジュール200の動作モードが制限モードである場合、管理装置30からのユーザによる指示を受け付けたとしても、又は、その他の一定の条件が満たされたとしても、running-config112とrunning-config212との同期の指示を制御部220に出力しない。したがって、通信モジュール200の動作モードが制限モードである場合、running-config212が維持される。
【0074】
running-config生成部124は、startup-config111に基づかずに、すなわち、startup-config111から独立して、running-config112を生成することができる。例えば、running-config生成部124は、管理装置30からのユーザによる指示を受け付けた場合に、指示にしたがってrunning-config112を生成することができる。running-config生成部124は、生成したrunning-config112を揮発性メモリ103に格納する。例えば、通信モジュールの動作モードが通常モードである場合に、新たなrunning-config112が生成された後に、変更部123がrunning-config112とrunning-config212との同期の指示を制御部220に出力することにより、running-config212がrunning-config112と一致するように変更される。
【0075】
差分生成部126は、通信モジュール200の動作モードが制限モードである場合に、running-config212とrunning-config112との差分情報を生成する。具体的には、差分生成部126は、通信モジュール200にrunning-config212の送信を要求する。通信モジュール200は、要求に応じてrunning-config212を制御モジュール100へ送信する。差分生成部126は、揮発性メモリ103に格納されているrunning-config112と、受信したrunning-config212との差分情報を生成する。差分情報には、少なくとも、running-config212におけるrunning-config112と重複していない制御内容が含まれる。
【0076】
差分生成部126は、生成した差分情報113を揮発性メモリ103に格納する。ユーザは、管理装置30を操作して、差分情報113を管理装置30に表示させることができる。これにより、ユーザは、制御モジュール100におけるrunning-config112と、通信モジュール200のrunning-config212との差分を確認することができる。
【0077】
例えば、ユーザは、差分情報を用いて、制御モジュール100におけるrunning-config112を編集し、running-config112を、通信モジュール200のrunning-config212に一致させることができる。これにより、制御モジュール100のrunning-config112と通信モジュール200のrunning-config212との不整合が解消される。
【0078】
例えば、制御モジュール100のrunning-config112と通信モジュール200のrunning-config212とが一致した場合に、モード制御部122は、通信モジュール200の動作モードを通常モードに設定することができる。これにより、制御モジュール100のrunning-config112と通信モジュール200のrunning-config212との不整合が解消された場合に、通信モジュール200のrunning-config212を変更することが可能となる。
【0079】
[5.通信装置の動作]
以下、実施形態に係る通信装置の動作について説明する。
【0080】
制御モジュール100のプロセッサ101が管理プログラム110を実行することにより、制御モジュール100は、モード制御処理と、running-config変更処理と、startup-config更新処理と、差分情報生成処理とを実行することができる。
【0081】
図8は、実施形態に係る制御モジュールによるモード制御処理の一例を示すフローチャートである。
【0082】
制御モジュール100は、管理装置30からのユーザによる指示によって再起動する(ステップS101)。
【0083】
制御モジュール100が再起動すると、プロセッサ101は、揮発性メモリ102からstartup-config111を読み出す(ステップS102)。
【0084】
プロセッサ101は、読み出したstartup-config111に基づいてrunning-config112を生成し、生成したrunning-config112を揮発性メモリ103に書き込む(ステップS103)。running-config112に含まれる第1設定情報は、startup-config111に含まれる第2設定情報と同じ情報であり、running-config112に含まれる設定内容は、startup-config111に含まれる設定内容と同じである。
【0085】
プロセッサ101は、通信モジュール200へ、running-config212の第1識別情報の送信を要求する。通信モジュール200は、要求にしたがって第1識別情報を送信する。プロセッサ101は、受信された第1識別情報を取得する(ステップS104)。なお、プロセッサ101は、通信モジュール200へ、running-config212の送信を要求し、通信モジュール200からrunning-config212を受信してもよい。この場合、プロセッサ101は、受信したrunning-config212から第1識別情報を取得することができる。
【0086】
プロセッサ101は、取得した第1識別情報と、startup-config111の第2識別情報とを比較する(ステップS105)。
【0087】
第1識別情報と第2識別情報とが一致する場合(ステップS106においてYES)、プロセッサ101は、通信モジュール200の動作モードが通常モードであるか制限モードであるかを判定する(ステップS107)。
【0088】
通信モジュール200の動作モードが制限モードである場合(ステップS107において「制限モード」)、プロセッサ101は、通信モジュール200の動作モードを制限モードから通常モードへ変更する指示を通信モジュール200へ出力する(ステップS108)。通信モジュール200は、指示を受け付けると、動作モードを制限モードから通常モードへ変更する。これにより、モード制御処理が終了する。
【0089】
通信モジュール200の動作モードが通常モードである場合(ステップS107において「通常モード」)、プロセッサ101は、モード制御処理を終了する。
【0090】
第1識別情報と第2識別情報とが一致しない場合(ステップS106においてNO)、プロセッサ101は、通信モジュール200の動作モードが通常モードであるか制限モードであるかを判定する(ステップS109)。
【0091】
通信モジュール200の動作モードが通常モードである場合(ステップS109において「通常モード」)、プロセッサ101は、通信モジュール200の動作モードを通常モードから制限モードへ変更する指示を通信モジュール200へ出力する(ステップS110)。通信モジュール200は、指示を受け付けると、動作モードを通常モードから制限モードへ変更する。これにより、モード制御処理が終了する。
【0092】
通信モジュール200の動作モードが制限モードである場合(ステップS109において「制限モード」)、プロセッサ101は、モード制御処理を終了する。
【0093】
図9は、実施形態に係る制御モジュールによるrunning-config変更処理の一例を示すフローチャートである。running-config変更処理は、通信モジュールの動作モードが通常モードである場合に実行可能である。
【0094】
例えば、ユーザは管理装置30を操作して、running-config212の変更指示及びその変更内容を制御モジュール100に入力することができる。
【0095】
プロセッサ101は、running-config212の変更指示を受け付けると(ステップS201)、入力された変更内容によって、揮発性メモリ103に格納されたrunning-config112を変更する(ステップS202)。
【0096】
プロセッサ101は、通信モジュール200へrunning-configの同期を指示する(ステップS203)。通信モジュール200は、指示を受け付けると、running-configの同期を実行する。これにより、通信モジュール200のrunning-config212が、制御モジュール100のrunning-config112に一致するように変更される。以上で、running-config変更処理が終了する。
【0097】
図10は、実施形態に係る制御モジュールによるstartup-config更新処理の一例を示すフローチャートである。startup-config更新処理は、通信モジュールの動作モードが通常モードである場合も制限モードである場合も実行可能である。
【0098】
例えば、ユーザは管理装置30を操作して、startup-config111の更新指示を制御モジュール100に入力することができる。
【0099】
プロセッサ101は、startup-config111の更新指示を受け付けると(ステップS301)、揮発性メモリ103に格納されているrunning-config112の内容によって、新たなstartup-config111を生成する。すなわち、running-config112の第1識別情報と同じ情報である第2識別情報と、running-config112の設定内容と同じ設定内用とを含むstartup-config111を生成する。プロセッサ101は、生成したstartup-configによって不揮発性メモリ102におけるstartup-config111を上書きし、startup-config111を更新する(ステップS302)。以上で、startup-config更新処理が終了する。
【0100】
図11は、実施形態に係る制御モジュールによる差分情報生成処理の一例を示すフローチャートである。差分情報生成処理は、通信モジュール200の動作モードが制限モードである場合に実行される。さらに具体的には、差分情報生成処理は、特定の条件が成立した場合、例えば、管理装置30からユーザによる差分情報の生成指示が制御モジュール100に入力された場合、又は、通信モジュール200の動作モードが制限モードである場合に起動される。
【0101】
プロセッサ101は、通信モジュール200へ、running-config212の送信を要求する(ステップS401)。通信モジュール200は、要求にしたがってrunning-config212を送信する。制御モジュール100は、running-config212を受信する(ステップS402)。
【0102】
プロセッサ101は、受信したrunning-config212と、揮発性メモリ103に格納されたrunning-config112との差分情報113を生成する(ステップS403)。生成された差分情報113は、揮発性メモリ103に格納される。以上で、差分情報生成処理が終了する。
【0103】
例えば、差分情報生成処理の後にstartup-config更新処理を実行することにより、ユーザは、startup-config111を、制御モジュール100のrunning-config112と同じ内容に更新することができる。
【0104】
図12は、通信モジュールの動作モードを通常モードから制限モードへ変更する場合の通信装置の動作の一例を示すシーケンス図である。
【0105】
図12の例では、通信モジュール200_1の初期のrunning-config212は、過去にrunning-configAからrunning-configBに変更されていることを前提にしている。さらに、通信モジュール200_2のrunning-config212はrunning-configAのまま変更されていない。running-configAの第1識別情報と、running-configBの第1識別情報とは異なる。running-configAの設定内容と、running-configBの設定内容は異なる。
【0106】
図12の例では、制御モジュール100のstartup-config111は、startup-configAである。startup-configAは、running-configAの第1識別情報と同じ第2識別情報と、running-configAの設定内容と同じ設定内容とを含む。
【0107】
図12の例では、シーケンス開始時点において通信モジュール200_1の動作モードは通常モードであり、通信モジュール200_2の動作モードは通常モードである。
【0108】
制御モジュール100が再起動すると、プロセッサ101は、startup-configAからrunning-configAを生成し、揮発性メモリ103に格納する(ステップS11)。
【0109】
プロセッサ101は、第1識別情報の送信要求を通信モジュール200_1,200_2のそれぞれに送信する(ステップS12)。通信モジュール200_1のプロセッサ201は、要求に応じてrunning-configBの第1識別情報を送信する。通信モジュール200_2のプロセッサ201は、要求に応じてrunning-configAの第1識別情報を送信する(ステップS13)。
【0110】
プロセッサ101は、受信した第1識別情報と、startup-configAの第2識別情報とを比較する(ステップS14)。この例では、通信モジュール200_1のrunning-configBに含まれる第1識別情報と、startup-configAの第2識別情報とは一致せず、通信モジュール200_2のrunning-configAに含まれる第1識別情報と、startup-configAの第2識別情報とは一致する。
【0111】
プロセッサ101は、通信モジュール200_1に、通常モードから制限モードへの動作モードの変更を指示するモード変更指示を送信する(ステップS15)。通信モジュール200_1のプロセッサ201は、モード変更指示にしたがって、動作モードを通常モードから制限モードへ変更する(ステップS16)。
【0112】
図13は、通信モジュールの動作モードを制限モードから通常モードへ復帰させる場合の通信装置の動作の一例を示すシーケンス図である。
図13は、
図12に続く動作の一例を示している。
【0113】
ユーザは、管理装置30を操作することにより、管理装置30に通信モジュール200_1の再起動の指示を入力することができる。ユーザから入力された指示は、制御モジュール100に与えられ、制御モジュール100は通信モジュール200_1を再起動させる(ステップS21)。
【0114】
通信モジュール200_1が再起動すると、通信モジュール200_1の動作モードは初期値の通常モードに設定される。
【0115】
再起動した通信モジュール200_1の揮発性メモリ203からはrunning-config212が消去されている。このため、制御モジュール100は、通信モジュールが再起動した後に、通信モジュール200_1にrunning-configの同期を指示し、通信モジュール200_1のプロセッサ201は、running-configの同期を実行する。これにより、制御モジュール100のrunning-configAが複製され、揮発性メモリ203に格納される(ステップS22)。この状態で、制御モジュール100のrunning-config112と、通信モジュール200_1のrunning-config212と、通信モジュール200_2のrunning-config212との全てが一致する。さらに、制御モジュール100のstartup-config111の内容と、通信モジュール200_1のrunning-config212の内容と、通信モジュール200_2のrunning-config212の内容との全てが一致する。
【0116】
図13の例では、通信モジュール200_1を再起動するため、通信モジュール200_1による通信が中断される。通信モジュール200_1を再起動せずに、通信モジュール200_1の動作モードを通常モードに復帰させることが好ましい。
【0117】
図14は、通信モジュールの動作モードを制限モードから通常モードへ復帰させる場合の通信装置の動作の他の例を示すシーケンス図である。
図14は、
図12に続く動作の他の例を示している。
【0118】
制御モジュール100のプロセッサ101は、running-configの送信要求を通信モジュール200_1に送信する(ステップS31)。通信モジュール200_1のプロセッサ201は、要求に応じてrunning-configBを送信する(ステップS32)。
【0119】
プロセッサ101は、受信したrunning-configBと、揮発性メモリ103に格納されたrunning-configAとの差分情報113を生成する(ステップS33)。プロセッサ101は、差分情報113を揮発性メモリ103に格納し、差分情報113を管理装置30へ送信する。管理装置30は、受信した差分情報113を表示する。
【0120】
ユーザは管理装置30を操作し、制御モジュール100のrunning-config112を編集し、running-config112をrunning-configBに一致させる(ステップS34)。
【0121】
プロセッサ101は、通信モジュール200_1に制限モードから通常モードへの動作モードの変更を指示するモード変更指示を送信する(ステップS35)。通信モジュール200_1のプロセッサ201は、モード変更指示にしたがって、動作モードを制限モードから通常モードへ変更する(ステップS36)。
【0122】
プロセッサ101は、通信モジュール200_2にrunning-configの同期指示を送信する。通信モジュール200_2のプロセッサ201は、指示にしたがって、running-configの同期を実行する。これにより、制御モジュール100のrunning-configBが複製され、揮発性メモリ203に格納される(ステップS37)。この状態で、制御モジュール100のrunning-config112と、通信モジュール200_1のrunning-config212と、通信モジュール200_2のrunning-config212との全てが一致する。
【0123】
[6.変型例]
図4を参照する。実施形態に係る制御モジュール100の1つの変形例は、第2生成部127の機能を有する。
【0124】
第2生成部127は、通信モジュール200の動作モードが制限モードである場合に、running-config212に基づいて新たなstartup-config111を生成する。具体的な一例では、第2生成部127は、通信モジュール200の動作モードが制限モードである場合に、通信モジュール200のrunning-config212における第1識別情報と同じ第2識別情報と、running-config212における設定内容と同じ設定内容とを含むstartup-config111を生成し、不揮発性メモリ102に格納する。
【0125】
図15は、通信モジュールの動作モードを制限モードから通常モードへ復帰させる場合の通信装置の動作の変形例を示すシーケンス図である。
図15は、
図12に続く動作の他の例を示している。
【0126】
制御モジュール100のプロセッサ101は、running-configの送信要求を通信モジュール200_1に送信する(ステップS41)。通信モジュール200_1のプロセッサ201は、要求に応じてrunning-configBを送信する(ステップS42)。
【0127】
プロセッサ101は、受信したrunning-configBに基づいてstartup-configBを生成する(ステップS43)。生成されたstartup-configBの第2識別情報及び設定内容のそれぞれは、running-configBの第1識別情報及び設定内容と同じである。生成されたstartup-configBは、不揮発性メモリ102に格納される。
【0128】
プロセッサ101は、startup-configB又は受信したrunning-configBからrunning-configBを生成し、揮発性メモリ103に格納する(ステップS44)。生成されたrunning-configBは、通信モジュール200_1のrunning-configBと同一である。
【0129】
プロセッサ101は、通信モジュール200_2にrunning-configの同期指示を送信する。通信モジュール200_2のプロセッサ201は、指示にしたがって、running-configの同期を実行する。これにより、制御モジュール100のrunning-configBが複製され、揮発性メモリ203に格納される(ステップS45)。
【0130】
ユーザは、管理装置30を操作することにより、管理装置30に制御モジュール100の再起動の指示を入力する。ユーザから入力された指示は、制御モジュール100に与えられ、制御モジュール100が再起動する(ステップS46)。
【0131】
制御モジュール100が再起動すると、上述したステップS12~S14と同じ処理が行われ(ステップS48~S50)、通信モジュール200_1,200_2のそれぞれにおけるrunning-configBの第1識別情報と、startup-configBの第2識別情報とが比較される。この例では、通信モジュール200_1及び200_2のそれぞれのrunning-configBに含まれる第1識別情報と、startup-configBの第2識別情報とが一致する。
【0132】
プロセッサ101は、通信モジュール200_1に、制限モードから通常モードへの動作モードの変更を指示するモード変更指示を送信する(ステップS51)。通信モジュール200_1のプロセッサ201は、モード変更指示にしたがって、動作モードを制限モードから通常モードへ変更する(ステップS52)。
【0133】
なお、上述した実施形態及び変形例では、制御モジュール100が、判定部121、モード制御部122、変更部123、running-config生成部124、第1生成部125、差分生成部126、及び第2生成部127の各機能を有したが、これに限定されない。例えば、通信モジュール200が、判定部121、モード制御部122、変更部123、running-config生成部124、第1生成部125、差分生成部126、及び第2生成部127の各機能を有してもよいし、通信装置10に制御モジュール100及び通信モジュール200とは異なる制御回路が設けられている場合、この制御回路が上記の各機能を有してもよい。さらに、制御モジュール100、通信モジュール200、及び制御回路に、判定部121、モード制御部122、変更部123、running-config生成部124、第1生成部125、差分生成部126、及び第2生成部127の各機能が分散して設けられてもよい。
【0134】
[7.補記]
今回開示された実施の形態はすべての点で例示であって、制限的ではない。本発明の権利範囲は、上述の実施形態ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味及びその範囲内でのすべての変更が含まれる。
【符号の説明】
【0135】
10 通信装置
20_11,20_12,20_21,20_22 通信線
30 管理装置
40 可搬型ストレージ
100 制御モジュール
101 プロセッサ
102 不揮発性メモリ(不揮発性記憶部)
103 揮発性メモリ(第2揮発性記憶部)
104 読出装置
105 入出力インタフェース(I/O)
110 管理プログラム
111 startup-config(起動設定情報)
112 running-config(第2稼働設定情報)
113 差分情報
121 判定部
122 モード制御部
123 変更部
124 running-config生成部
125 第1生成部
126 差分生成部
127 第2生成部
200,200_1,200_2 通信モジュール
201 プロセッサ
202 不揮発性メモリ
203 揮発性メモリ(第1揮発性記憶部)
204 信号処理回路
205_1,205_2 トランシーバ(TRx)
206 入出力インタフェース(I/O)
210 制御プログラム
212 running-config(第1稼働設定情報)
220 制御部
300 外部通信ポート