図1は、本発明の一実施例における通信システムの概要を表わしたものである。この通信システム100は、集中管理端末101と、この集中管理端末101によって管理される特定の電子機器としての特定電子機器102との間に、第1〜第mの電子機器1031〜103m(ただし、mは任意の正の整数)からなるネットワーク104が介在している構成となっている。特定電子機器102と、第1〜第mの電子機器1031〜103mは、テレビジョン、エアーコンディショナ、冷蔵庫、洗濯機、電子レンジに代表される多数の電子機器と同様のものである。
この通信システム100では、集中管理端末101と、特定電子機器102および第1〜第mの電子機器1031〜103mは、LAN(Local Area Network)ケーブル等のケーブルで接続されていてもよいし、家庭用の電源線を用いてたとえばコンセントを介して接続されるようになっていてもよい。また、無線で接続されるようになっていてもよい。更に、これらの通信手段が混在して使用されるようになっていてもよい。また、この図では集中管理端末101と注目している特定電子機器102の間にネットワーク104が介在しているものとして示しているが、実際にはたとえば第1〜第mの電子機器1031〜103mのいずれかが集中管理端末101との通信の対象となる特定電子機器102であると理解してもよい。
本実施例では、たとえば当初、集中管理端末101と特定電子機器102の間が第1および第2の電子機器1031、1032を経由するルートで接続されていたものとする。この後、第1および第2の電子機器1031、1032の間の経路または他の電子機器の内部で障害105が発生したとする。このような場合、第1および第2の電子機器1031、1032を経由するルートを用いて集中管理端末101と特定電子機器102は通信を行うことができなくなる。しかしながら、たとえば第3の電子機器1033を経由する新たなルートが探索できたとすると、これに切り替えることで、集中管理端末101と特定電子機器102は通信を再開することができるようになる。
ところで、本実施例では、特定電子機器102および第1〜第mの電子機器1031〜103mが共にリピータ送信を行うリピータ通信機としての機能を有している。そこで、特定電子機器102および第1〜第mの電子機器1031〜103mを、リピータ通信機と総称することにする。本明細書でリピータ通信機とは、最低限、次の機能を備えた電子機器である。
(1)異常が発生したときに警報を発呼する警報発呼機能。
(2)自装置に対する機器制御機能。
また、これらリピータ通信機はポートの選択によってルーティングを可能にするデータ転送処理部を備えている。
図2は、本実施例におけるリピータ通信機の回路構成の概要を表わしたものである。ここではリピータ通信機として特定電子機器102の構成を表わしているが、第1〜第mの電子機器1031〜103mについても同様である。なお、それぞれのリピータ通信機は、たとえばテレビジョンやエアーコンディショナといった本来の電子機器としての回路部分を備えているが、ここではこれらの図示を省略している。
特定電子機器102は、フレームの送信を行う送信部111と、フレームの受信を行う受信部112と、フレームの終端処理を行う送受信終端部113からなるデータ転送処理部110を備えている。データ転送処理部110の送信部111は、送受信終端部113からフレームを受け取る第1〜第3のバッファ1211〜1213を備えている。これら第1〜第3のバッファ1211〜1213の受け取ったフレームは、送信部111内でこれらの出力を選択するスイッチ122に入力され、選択されたフレームはフレーム終端部123を経てフレーム生成部124に入力されて、送信用のフレーム125が生成されるようになっている。このときフレーム生成部124では、第1〜第3のバッファ1211〜1213のうちの該当するものからポート番号126を受け取るようになっている。
フレーム125は、送受信終端部113内の第4のバッファ部134の送信用バッファ134TXに入力される。なお、送受信終端部113内の第1のバッファ部131の受信用バッファ131RXの出力側が第1のバッファ1211に接続されており、第2のバッファ部132の受信用バッファ132RXの出力側が第2のバッファ1212に接続されている。第3のバッファ部133の受信用バッファ133RXの出力側は、同様に第3のバッファ1213に接続されている。
第4のバッファ部134の送信用バッファ134TXを経たフレームは、回転制御と障害発生の検出を行う回転制御・障害発生検出部135を経て、第4の送受信部139内の送信回路139TXから特定電子機器102の外部に出力されるようになっている。なお、第1〜第3の送受信部136〜138内の受信回路136RX〜138RXがそれぞれ外部から受信したフレームは、回転制御・障害発生検出部135を経て、第1〜第3のバッファ部131〜133の受信用バッファ131RX〜133RXの対応するものに入力されるようになっている。
一方、送受信終端部113の第4の送受信部139内の受信回路139RXが受信し、回転制御・障害発生検出部135を経て、第4のバッファ部134の受信用バッファ134RXに格納されたフレーム141は、受信部112のバッファ142に入力される。バッファ142に蓄積されたフレームは受信部112内のフレーム終端部143で終端され、フレーム生成部144に送られてフレームが生成される。そして、スイッチ145から3系統に振り分けられて出力される。フレーム終端部143で抽出されたポート番号146はフレーム生成部144およびスイッチ145に供給される。
スイッチ145から第1の系統のフレームが出力されたとき、このフレームは送受信終端部113内の第1のバッファ部131の送信用バッファ131TXに入力される。そして、ここから回転制御・障害発生検出部135を経て、第1の送受信部136内の送信回路136TXに入力され、外部に出力されることになる。同様に、スイッチ145から第2の系統のフレームが出力されたとき、このフレームは送受信終端部113内の第2のバッファ部132の送信用バッファ132TXに入力され、ここから回転制御・障害発生検出部135を経て、第2の送受信部137内の送信回路137TXに入力され、外部に出力される。また、スイッチ145から第3の系統のフレームが出力されたとき、このフレームは送受信終端部113内の第3のバッファ部133の送信用バッファ133TXに入力され、ここから回転制御・障害発生検出部135を経て、第3の送受信部138内の送信回路138TXに入力され、外部に出力される。
図3は、図1に示した集中管理端末の構成を示したものである。集中管理端末101は、集中管理のための管理部150をデータ転送処理部110に接続した構成となっている。データ転送処理部110自体の構成は、図3に示したデータ転送処理部110と同一である。したがって、その説明は省略する。
図4は、集中管理端末の管理部の構成の概要を表わしたものである。管理部150には、図1に示したそれぞれのリピータ通信機のアドレスを示すアドレステーブル151が備えられている。アドレステーブル151には、これらのリピータ通信機と集中管理端末101の間のポート番号の並びがアドレスとして個別に記されている。
図5は、それぞれのリピータ通信機が備えるデータ転送処理部の基本的な構成を示したものである。データ転送処理部110は、ポート番号「00」、「01」および「10」の第1〜第3のポート221〜223と、ポート番号「11」の第4のポート224を備えている。それぞれのポート221〜224は、図2に示した送受信終端部113内の第1〜第4の送受信部136〜139内の送信回路136TX〜139TXおよび受信回路136RX〜139RXに対応している。
この図5で第1〜第3のポート221〜223から入力して第4のポート224から出力する方向に示した黒い矢印241〜244は、警報データ等のデータを図1に示した集中管理端末101に伝達する警報パケットの流れる方向を示している。これに対して、第4のポート224から入力して、第1〜第3のポート221〜223のいずれかから出力する方向に示した白い矢印251〜254は、集中管理端末101から制御データ等の制御パケットを流す方向を示している。
本明細書では、黒い矢印241〜244で示された警報パケットの流れる方向を、集中管理端末101にそれぞれのパケットが集約する方向なので集約方向235と呼ぶことにする。また、白い矢印251〜254で示したこの逆の方向を、ルーティングに使用する方向として、ルーティング方向と呼ぶことにする。集約方向235は、データ転送処理部110のメインポート(この例の場合には第4のポート224)から出力する方向である。これに対してルーティング方向は、メインポート以外のポート(この例の場合には第1〜第3のポート221〜223)のいずれかから出力する方向である。
なお、本実施例では説明を単純にするために、データ転送処理部110が第1〜第4のポート221〜224を備えているものとしている。図1に示した実際の特定電子機器102および第1〜第mの電子機器1031〜103mにおけるデータ転送処理部110のポートの数は、これら4つに限られるものではない。
ポート番号「00」、「01」、「10」および「11」は、集約方向とルーティング方向で作用する役目が異なっている。まず、集約方向235では、警報データ等のパケットを送出する最初のリピータ通信機の次のリピータ通信機についてのデータ転送処理部110の入力ポート番号を筆頭にする。そして、次々と経由されるリピータ通信機のデータ転送処理部110の入力ポート番号をこのパケットに順に記憶しながら、最終的に集中管理端末101までこのパケットが送られる。この結果、最初に発呼したリピータ通信機のデータ転送処理部110の所在位置を、途中を経由したリピータ通信機のポート番号の並びで対応付けることで、どこで警報等の発呼が生じたかを判断することができる。集中管理端末101は、これらポート番号の並びを発呼側のリピータ通信機のアドレス(所在地)としてアドレステーブル151に登録するようにしている。
本実施例の通信システム100では、集中管理端末101が制御データ等を送出したい場合、予め収集しておいた宛先となるリピータ通信機の所在地を示すポート番号の並びを、図1に示したネットワーク104の最初のリピータ通信機に送出する。これを受け取ったリピータ通信機は、アドレスを示すポート番号の並びにおける先頭のポート番号を見ることによって、受け取った集中管理端末101からのデータを、メインポート以外の第1〜第3のポート221〜223のいずれから出力すればよいかが分かる。
なお、本実施例で第4のポート224の送信器231は、集約方向235に出るパケットのみを扱う。したがって、集中管理端末101を基点として出力されるパケットが次のリピータ通信機に送出されるポートは、第1〜第3のポート221〜223のいずれかとなる。
ルーティング方向に送られてくるこのパケットを受信したリピータ通信機は、出力ポートを判断できた時点で、出力ポートを判断するために使用した受信データの先頭のポート番号を削除し、次のリピータ通信機へ送出する。これを繰り返すことにより、最終的にポート番号の並びの無くなった制御データを受け取ったリピータ通信機が、宛先となる。そこで、そのリピータ通信機が送られてきた制御データによる制御を実行する。これらについては、前記した特許文献1でも説明している内容であり、また、後に具体的な説明も行う。
本実施例の通信システム100では、このようなリピータ通信機を複数台接続し、1台の集中管理端末を中心としたネットワークを構築している。そして、各リピータ通信機に個々のアドレスを事前に割り当てる手続きを実施せずに、個々のリピータ通信機が容易にルーティングを行えるようにしている。これにより、通信経路の途中に障害105(図1)が発生した場合でも、リピータ通信機が相互に連絡を取ることにより自立的に別経路を探索して、通信を確保することができるようにしている。
このように障害105時に対応できるようにするために、本実施例の通信システム100には、リルーティング機能に関わる機能が備えられている。そこで、後に、初期化やリピータ通信機によるリルーティングについて説明を行う。
この本実施例独自の機能の説明に先立って、図5に示すデータ転送処理部110の特徴となる動作を説明する。いずれか任意のリピータ通信機が図1に示す集中管理端末101に向かって警報データを送出したものとする。この場合、図5で黒い矢印241〜243で示す通り、ポート番号「00」、「01」、「10」の何れかのポートからこれを受信した他のリピータ通信機のデータ転送処理部110は、この警報データをメインポートとしての第4のポート番号「11」に送信する。
ところで、リピータ通信機から集中管理端末101に向かって警報パケットが送出されたとき、その経路上のリピータ通信機の1つに障害が発生していたとする。この場合、その障害よりも手前側(集中管理端末101から遠い側)で障害を発見したリピータ通信機は、使用していたポート番号「11」を通った後の集中管理端末101に至るまでの経路に障害があることを認知する。
このようにして障害を発見したリピータ通信機は、ポート番号「11」以外のポートのうちから、通信可能なポートを探す。この結果、たとえば、ポート番号「00」のポートが通信可能であったとする。この場合、データ転送処理部110は警報パケットを出力するメインポートを、図5に示したポート番号「11」からポート番号「00」に切り替える。これにより、障害を起こしたリピータ通信機を回避するルートで、集中管理端末101にデータを送ることができる。このように、ポートを回転させるようにしてメインポートをそれ以外のポートに切り替えることを、本明細書では「回転」ということにする。
集中管理端末101は、警報パケットを受信したときに、警報パケットを発信したリピータ通信機のポート番号の並び(アドレス)と、集中管理端末101が持っているアドレステーブル151(図4)上にあるポート番号の並び(アドレス)とを比較すれば、今までと異なった通信経路で警報パケットが送られてきたことが分かる。また、以前の通信経路と今回の「回転」後の通信経路を比較すると、障害の発見によってリルーティングしたリピータ通信機の位置を特定することが可能になる。
集中管理端末101は、自身のテーブルに登録された障害を発見したリピータ通信機のアドレス(集中管理端末101から障害を発見したリピータ通信機までのポート番号の並び)を、アドレスの一部分として持つリピータ通信機を抽出する。このようにして抽出されたリピータ通信機は、障害を発生したリピータ通信機を経由して集中管理端末と通信をするリピータ通信機を示している。
そこで、障害発生後の事態に対処するため、集中管理端末101は障害発生を発見したリピータ通信機までのポート番号の並びに置き換え、テーブルの更新を行うことになる。これ以後、集中管理端末101は障害が発生したリピータ通信機を回避して通信可能となる。
集中管理端末101は、警報パケットを送信してきたリピータ通信機に応答を返すとき、更新されたアドレステーブル151から、制御パケットにそのリピータ通信機のアドレスを付与し送信する。これにより、変更後の通信経路を逆に辿るルーティング方法によって目的のリピータ通信機まで応答を返すことが可能になる。
この後、障害を発見したリピータ通信機が回転前のポート番号「11」のポートからデータを送り出し、障害が生じる前の通信経路でこれを集中管理端末101に送ることができたとする。この場合、その障害を発見したリピータ通信機は障害が回復したものと判断する。この場合、そのリピータ通信機は集約方向を元の方向となるように逆回転する。そして、ポート番号「00」の第1のポート221の代わりに、本来のメインポートである第4のポート224から警報パケットを出力するように変更し、通常ルートに復帰する。
したがって、本実施例のリピータ通信機を用いることにより、個々のリピータ通信機へアドレスを事前に与える必要がない。また、障害が発生した場合にはデータ転送処理部110がメインポートを「回転」させることにより、経路を自動的に変化させて障害に強いシステムを提供することができることになる。
図6は、一例として2つのリピータ通信機の間を警報パケットが転送される様子を表わしたものである。ここでは第1のリピータ通信機2611と第2のリピータ通信機2612のデータ転送処理部1101、1102を示している。第1のリピータ通信機2611よりも1つだけ図1に示す集中管理端末101から経由数で遠い側に配置された図示しないリピータ通信機は、図示しないセンサを用いて、外部からの警報状態のオン・オフを検知するようになっている。警報状態がオンとなって警報の発生が検知されると、その図示しない発呼手段は集中管理端末101に警報状態を通知するために発呼する。これにより、その発呼側のリピータ通信機から送出された警報パケットが第1のリピータ通信機2611のポート番号「10」の第3のポート223から黒い矢印243方向に入力されたとする。
この警報パケットは、第1のリピータ通信機2611の第3の送受信部138で終端される。第1のリピータ通信機2611は、この警報パケットを他の装置としての前記した発呼側のリピータ通信機から受信したので、受信したポート番号「10」をこの警報パケットに付加する。そして、第4の送受信部139の送信回路139TX(図2、図5参照)から、ポート番号「11」の第4のポート224を出力する形で、黒い矢印244方向(集約方向235)に出力される。
第1のリピータ通信機2611から出力されたこの警報パケットは、第2のリピータ通信機2612に到達して、そのポート番号「00」の第1のポート221から黒い矢印241方向に入力される。第2のリピータ通信機2612は、この警報パケットを第1の送受信部136で終端する。第2のリピータ通信機2612は、この警報パケットを他の装置としての第1のリピータ通信機2611から受信したので、受信したポート番号「00」をこの警報パケットに付加されたポート番号「01」に更に付加する。そして、第4の送受信部139から、ポート番号「11」の第4のポート224から出力する形で、黒い矢印244方向(集約方向235)に、次のリピータ通信機261(図示せず)へ向けて警報パケットをリピート送信する。
このようにして警報パケットは、これ以後も図示しないリピータ通信機261を集約方向235に順次転送される。そして、そのたびに受信したポート番号が付加されて、最終的に図1に示した集中管理端末101へ送信されることになる。
以上のようにして集中管理端末101に到達した警報パケットには、第1のリピータ通信機2611以降における順に経由したリピータ通信機2612、……のポート番号の列が付加されている。したがって、集中管理端末101は、これらポート番号の列を辿っていくことで、どこで警報が発呼されたかを判断することができる。
なお、ここでは第1のリピータ通信機2611における第3のポート223から入力された警報パケットが第2のリピータ通信機2612における第4のポート224から出力される場合を説明したが、第1のリピータ通信機2611の第1のポート221へ他の図示しないリピータ通信機261から入力された警報パケットも、それ以後は同様の経路を辿って第2のリピータ通信機2612の第4のポート224から出力される。第1のリピータ通信機2611の第2のポート222へ他の図示しないリピータ通信機261から入力された警報パケットについても、同様である。また、第2のリピータ通信機2612でも、第2または第3のポート222、223に対して他の図示しないリピータ通信機261から入力された警報パケットも、第2のリピータ通信機2612の第4のポート224から同様に出力されることになる。
図7は、図6に示した例とは逆に、警報パケットを受け取った集中管理端末から送出される制御パケットが2つのリピータ通信機の間を転送される様子を表わしたものである。図1に示した集中管理端末101は、受け取った警報パケットに対応する制御パケットを生成すると、警報パケットに付加されていたポート番号の列をこれに付加する。そして、警報パケットが送られてきたルートを逆方向にこの制御パケットを送り出す。
第2のリピータ通信機2612に到達した制御パケットは、白い矢印254で示すようにポート番号「11」の第4のポート224に入力される。そして、この時点で制御パケットに付加されているポート番号の列の先頭を参照する。この時点で、ポート番号は2組付加されている。そこで第2のリピータ通信機2612の第4の送受信部139は、該当するポート番号「00」に対応する第1の送受信部136を選択してこの制御パケットの送信処理を受け渡す。このとき、制御パケットに付加されているこのポート番号「00」を削除する。この例では、制御パケットに付加されているポート番号は削除後にポート番号「10」のみとなる。
このように処理された制御パケットは、第2のリピータ通信機2612の第1のポート221から白い矢印251で示すよう第1のリピータ通信機2611の方向に出力される。第2のリピータ通信機2612内で破線で示した矢印256、257は、選択外のポートへの出力を参考的に示したものである。
第1のリピータ通信機2611では、白い矢印254で示すようにポート番号「11」の第4のポート224に制御パケットが入力される。第4の送受信部139はこの制御パケットに付加されているポート番号「10」を判別する。そして、第4の送受信部139から第3の送受信部138を経て、白い矢印253で示すようにポート番号「10」の第3のポート223から出力される。第1のリピータ通信機2611内で破線で示した矢印258、259は、選択外のポートへの出力を参考的に示したものである。
なお、第1のリピータ通信機2611から送出された制御パケットを受信した前記した発呼側のリピータ通信機は、制御パケットにポート番号が付加されていないことを判別する。そこで、この制御パケットを自端末に宛てたパケットであると判別して受信処理を行う。そして、図1に示す集中管理端末101からの制御命令に従って動作を行うことになる。この後に、場合によっては、命令制御の実行完了を示すパケットを集中管理端末101に送信してもよい。
以上の図6および図7に示した例では、メインポートが本来の第4のポート224となっている。したがって、メインポートの回転は行われていない。次に、この通信システム100で、集約方向における警報発呼を実行したリピータ通信機のアドレスの取得方法と、ルーティング方向236で制御パケットを目標のリピータ通信機へ導く方法を説明する。
図8は、該当するリピータ通信機の設置後に集中管理端末が個別アドレスを取得する方法を示したものである。ここでは、図1あるいは図6に示した集中管理端末101に接続されたデータ転送処理部110のリピータ通信機261を符号「A」で表わし、このリピータ通信機「A」に接続されたリピータ通信機261を符号「B」、「C」、「D」でそれぞれ表わしている。更に、リピータ通信機「C」に接続されたリピータ通信機261を符号「E」、「F」でそれぞれ表わし、リピータ通信機「F」に接続されたリピータ通信機261を符号「G」で表わしている。
また、それぞれのリピータ通信機「A」〜「G」のデータ処理転送部110内の2桁の数字「00」、「01」、「10」はデータ転送処理部110のポート番号である。ポート番号「11」のメインポートは他のポートと区別するために網点271で示している。更に、図8に示したそれぞれの矢印は、集中管理端末101への集約方向235、すなわち警報パケットの送出方向を示している。
このような配置の通信システムで、リピータ通信機「G」のアドレスの取得の方法を説明する。リピータ通信機「G」のアドレスは、リピータ通信機「G」から送信されたあるパケットが集中管理端末101に到達するまでの経路上のすべての受信ポートのポート番号を連結した数値として表わされる。リピータ通信機「G」から送出されたパケットはリピータ通信機「F」のポート番号「00」のポートで受信され、続いてリピータ通信機「C」のポート番号「10」のポートで受信される。そして、次にリピータ通信機「A」のポート番号「01」のポートで受信された後に、集中管理端末101に到達する。したがって、リピータ通信機「G」のアドレスは、これらのポート番号「00」、「10」、「01」が順に下位のアドレスから上位のアドレスに追加された方向のアドレス「01 10 00」となる。
同様に、リピータ通信機「E」については、これを出たパケットがリピータ通信機「C」のポート番号「00」のポートで受信され、次にリピータ通信機「A」のポート番号「01」のポートで受信された後に、集中管理端末101に到達する。したがって、リピータ通信機「E」のアドレスは、これらのポート番号「00」、「01」が順に下位のアドレスから上位のアドレスに追加された方向のアドレス「01 00」となる。
これらリピータ通信機「G」と、リピータ通信機「E」のアドレスを比較する。すると、リピータ通信機「G」のアドレス「01 10 00」の方がリピータ通信機「E」のアドレス「01 00」よりも桁数が多い。これは、集中管理端末101に到達するまでに経由するリピータ通信機260の数が多いからである。このようにそれぞれのリピータ通信機260のアドレス長は経路長(経路の経由する数)に依存する。図8では、リピータ通信機261を表わす英字のそばに、これらのアドレスを括弧書きで示している。
また、本実施例で使用するパケットの先頭には、アドレス長を示すサイズデータをアドレスと共に併記することにしている。これにより、たとえば警報パケットを受け取った集中管理端末101は、このサイズデータとポート番号によって表わされた一連のアドレスのデータ長を比較して、経由したリピータ通信機のポート番号の一部欠落といったミスが発生していないかの確認を行うことができる。
図9は、集中管理端末からルーティング方向に制御パケットを宛先のリピータ通信機へ導く様子を示したものである。ここでは、図8と同様にリピータ通信機「A」〜「G」が配置されている。集中管理端末101から宛先のリピータ通信機「G」に制御パケットをルーティング方向236に沿って送信する場合を説明する。集中管理端末101から送信する制御パケットには、リピータ通信機「G」のアドレス「01 10 00」が付けられている。リピータ通信機「G」は宛先の端末となるので、ここに到達する時点でアドレスは制御パケットに付加されていない。
なお、この図9で各リピータ通信機261のデータ転送処理部110の傍に記した括弧書き「 」は、制御パケットがリピータ通信機「G」へ送られてきたときのアドレスを示している。また、破線で示した矢印は、実線で示したルーティング方向236の矢印以外のルーティング可能な方向を示している。
集中管理端末101から送出された制御パケットは、まず、これに唯一接続されたリピータ通信機「A」に送られる。リピータ通信機「A」は制御パケットに付けられたアドレス「011000」の最も上位の方から2ビット「01」を抽出する。そして、この上位2ビット「01」を削除した新しいアドレス「1000」および更新されたアドレス長を制御パケットに付け替えて、削除の対象となった2ビット「01」に対応するポート番号「01」のポートからルーティング方向236に送信する。
この制御パケットは、このルーティング方向236に配置されたリピータ通信機「C」に到達する。リピータ通信機「C」では、制御パケットに付けられたアドレス「1000」の上位2ビット「10」を抽出する。そして、この上位2ビット「10」を削除した新しいアドレス「00」および更新されたアドレス長を制御パケットに付け替えて、削除の対象となった2ビット「10」に対応するポート番号「10」のポートからルーティング方向236に送信する。
この制御パケットは、送出したリピータ通信機「C」のポート番号「10」のポートに対応した方向に配置されたリピータ通信機「F」に到達する。リピータ通信機「F」では、制御パケットに付けられたアドレス「00」を削除して、削除の対象となった2ビット「00」に対応するポート番号「00」のポートからルーティング方向236に送信する。
このようにして、制御パケットは宛先となるリピータ通信機「G」に到達する。リピータ通信機「G」は、制御パケットにアドレスが付いていないことおよび更新されたアドレス長が「0」を示していることを判別する。アドレス長が「0」になっている制御パケットを受け取ったことで、リピータ通信機「G」はその制御パケットが自分宛のものであると判別することができる。
以上説明した内容は、特許文献1で開示された内容と共通する本発明の基盤となる技術に関するものである。続いて、本発明を基にして新たに追加された技術について説明を行う。まず、初期化ルーチンについて説明する。
<初期化ルーチン>
図10は、通信システムの初期化ルーチンを説明するためのものである。この図10では、データ転送処理部110を備えたリピータ通信機261を図8と同様に英字を使用して簡略化した形で表わしている。ただし、この図に示した例では、リピータ通信機「A」が集中管理端末101に直接接続されているものとする。また、同一のポート番号「01」のポートには、順にリピータ通信機「B」〜リピータ通信機「E」が直列に接続されているものとする。
更に、リピータ通信機「A」のポート番号「00」のポートにはリピータ通信機「F」の網点271で示すメインポート(ポート番号「11」のポート)が接続されているものとする。このリピータ通信機「F」のポート番号「10」のポートには、リピータ通信機「G」のメインポートが接続されており、これ以降のポート番号「01」のポートに順にリピータ通信機「H」〜リピータ通信機「J」が直列に接続されているものとする。
更に、リピータ通信機「A」のポート番号「10」のポートにはリピータ通信機「K」のメインポート(ポート番号「11」のポート)が接続されているものとする。また、リピータ通信機「B」のポート番号「10」のポートにはリピータ通信機「L」のメインポート(ポート番号「11」のポート)が接続されているものとする。以下同様にして、リピータ通信機「C」〜リピータ通信機「E」のポート番号「10」のポートには、それぞれリピータ通信機「M」〜リピータ通信機「O」のメインポート(ポート番号「11」のポート)が接続されているものとする。
また、リピータ通信機「F」のポート番号「01」のポートにはリピータ通信機「P」のメインポート(ポート番号「11」のポート)が接続されているものとする。更に、リピータ通信機「G」のポート番号「00」のポートにはリピータ通信機「Q」のメインポート(ポート番号「11」のポート)が接続されているものとする。これ以降は、同様にして、リピータ通信機「H」〜リピータ通信機「J」のポート番号「00」のポートには、それぞれリピータ通信機「R」〜リピータ通信機「T」のメインポート(ポート番号「11」のポート)が接続されているものとする。
なお、図10で破線で示した矢印は、リピータ通信機261同士で接続可能な経路を示している。これ以降の図でも同様である。
ところで初期化ルーチンで集中管理端末101は、リピータ通信機「A」を経由する形で各リピータ通信機に対して「アドレス要求」をブロードキャストする。これにより、「アドレス要求」を受信したリピータ通信機「B」等のリピータ通信機261は、それぞれ次のように動作する。
(1)リピータ通信機261は、アドレス要求のブロードキャストパケットをポート番号「11」のポートから受け取ると、集中管理端末101に対して、アドレス応答をメインポートであるポート番号「11」側に返信する。
(2)その後、ポート番号「11」のポートを除いた残りの全ポート(ポート番号「00」、「01」、「10」の各ポート)に対して、アドレス要求のブロードキャストパケットを転送する。
なお、リピータ通信機261は、アドレス要求のブロードキャストパケットを本来のメインポートとしてのポート番号「11」のポート以外から受け取った場合、集中管理端末101に対して、アドレス応答をその受信したポート番号に返信する。これは、すでに説明したポートが回転した場合の対応である。このように本来のメインポートとしてのポート番号「11」のポート以外のポートからブロードキャストパケットを受信したリピータ通信機261は、その受信したポートを第1の優先順位のアクティブポートとして登録する。この場合、そのリピータ通信機261は受信したこの第1の優先順位のアクティブポート以外のポートへはブロードキャストパケットの転送を行わない。そして、集中管理端末101に対しては、アクティブパス通知を送信する。
このアクティブパス通知を送信したリピータ通信機261は、ポート番号「11」のポート以外からブロードキャストパケットを受信したリピータ通信機である。この受信したリピータ通信機261が集中管理端末101に直結されておらず、他のリピータ通信機261を介在してこれに接続されているものとする。この例では、リピータ通信機「A」以外のリピータ通信機「B」、「C」、……のいずれかのリピータ通信機261ということになる。
この例の場合、アクティブパス通知を受信したこのリピータ通信機261は、受信したポートを第2の優先順位のアクティブポートとして登録する。そしてそのメインポートからアクティブパス通知を送信する。集中管理端末101は、アクティブパス通知を受信したら、これに対して何の応答も行わず、そのアクティブパス通知のパケットを破棄する。
このように本実施例では「アクティブパス通知」を設け、リピータ通信機内でアクティブ経路を優先順位付けしている。これにより、障害発生時に、速やかに回避経路を探索できる。
そこで、これらの各種の通知が行われる様子を具体的に説明する。まず、通信に使用されるパケットの構成を説明する。
図11は、警報パケットのフォーマットを表わしたものである。後の図12〜図15に示す他のフォーマットと同様に、図11では16進数表記で表わしている。警報パケット281は、先頭および末尾の「7e」の部分がそれぞれ1バイトのフラグであり、先頭におけるこれに続いた「a」の部分が3ビットの方向フラグで構成されている。この方向フラグは、たとえば図8に示すリピータ通信機261から集中管理端末101へ向かった通信の場合に10進数表記で「1」となる。その逆の方向の通信の場合には、この方向フラグが10進数表記で「0」となる。この図11に示した警報パケット281は、リピータ通信機261から集中管理端末101へ向かった通信に用いられるので、この場合の方向フラグは10進数表記で常に「1」となる。
これに続いた「b」の部分は、リピータ通信機261一台のポート数を示している。この部分は3ビットで構成されているので、最大で8ポートを指定することができる。具体的には「000」が1ポートで構成されていることを示し、「001」が2ポートで構成されていることを示す。「010」が3ポートを示し、「011」が4ポートであることを示す。以下、「100」が5ポート、「101」が6ポート、「110」が7ポート、「111」が8ポートであることを示す。
これに続く「c」の部分は、通過するリピータ通信機261の数を示している。この部分は12ビットで構成されている。したがって、最大でリピータ通信機261を4096個配置した場合まで特定が可能である。これに続く「d」の部分は、通過するリピータ通信機261の全体のポート番号列を示す。「e」の部分はオペランド領域であり、送付先のリピータ装置番号等の情報で構成される。「f」の部分は1バイトで構成される警報データであり、「g」の部分はCRC(Cyclic Redundancy Checking)を構成している。
なお、本実施例ではパケットフォーマットに、オペランド領域を設けるようにしている。これにより、パケットを順に転送するリピータ通信機の番号をこのパケットに載せることが可能になる。この結果、集中管理端末101は、各リピータ通信機の識別番号とアドレスを対応付けたアドレステーブル151を簡単に作成できる。
警報パケット281は、これがリピータ通信機261を通過していくたびに、「d」の領域の列にこれらのポート番号を次々と追加していく。そして、この警報パケット281が集中管理端末101に到達した時点の「d」の列の内容が発信元のリピータ通信機261のアドレスとなる。
警報パケット281の送出経路が障害のために途中で変更されなければならなくなる場合がある。この場合には、「d」の領域の内容を変更して対応する。これについては後に詳細に説明する。
図12は、これに対して集中管理端末がリピータ通信機に向けて送出する制御パケットのフォーマットを表わしている。制御パケット282は、その構成が図11に示した警報パケット281と基本的に同一である。相違するのは、「a」の部分の3ビット構成の方向フラグが、図8に示す集中管理端末101からリピータ通信機261へ向かった通信なので、この部分が常に「0」になることと、「f」の部分が警報データではなく、1バイトの制御データで構成されることである。
この制御パケット282は、図8に示す集中管理端末101がその送信時に「d」の領域に送付先のリピータ通信機261のアドレスを組み込んで送信を行う。この制御パケット282を受け取ったリピータ通信機261は、自装置の送付ポート番号を削除する。そして、削除したそのポート番号から制御データパケット282を送出する。この動作を次々に繰り返すことにより、目的の送信先のリピータ通信機261にパケットを送付することができる。
制御パケット282の経路に障害が発生してその進路を変更する場合には、集中管理端末101のアドレステーブル151(図4)に存在するその送付先のリピータ通信機261の別のアドレスの付け替えを行う。あるいは、このアドレステーブル151に存在する既存のデータを参照して、目的の送信先のリピータ通信機261に到達できるアドレスを作成して、「d」の領域にセットして経路の変更を行う。これについても、詳細を後に説明する。
図13は、初期化時に集中管理端末がリピータ通信機に送出するアドレス要求パケットの具体的なフォーマットを示したものである。アドレス要求パケット283は、その構成が図11に示した警報パケット281と基本的に同一である。相違あるいは特徴となる第1の点は、「a」の部分の3ビットの方向フラグが、図8に示す集中管理端末101からリピータ通信機261へ向かった通信なので、この部分が10進数表記で「0」となることである。第2の点は、「f」の部分がアドレス要求を示す制御データで構成されることである。第3の点は、「e」の部分がブロードキャストを示すビット構成を示すことである。
ここで集中管理端末101から送り出されるアドレス要求パケット283のブロードキャストは、「通過する全リピータ通信機の数は0個」、「通過する全リピータ通信機のポート番号列は、通信機1台分のポート番号表示ですべて1」というフォーマットで送信される。
図14は、リピータ通信機がアドレス要求パケットを受け取ったときに集中管理端末に返すアドレス応答パケットの具体的なフォーマットを示したものである。アドレス応答パケット284は、その構成が図11に示した警報パケット281と基本的に同一である。相違あるいは特徴となる第1の点は、「a」の部分の3ビットの方向フラグが、図8に示すリピータ通信機261から集中管理端末101へ向かった通信なので、この部分が10進数表記で「1」となることである。第2の点は、「f」の部分がアドレス応答を示す制御データで構成されることである。第3の点は、「e」の部分が発信元リピータ通信機番号を示すビット構成を示すことである。
図15は、アクティブパス通知パケットの具体的なフォーマットを示したものである。アクティブパス通知パケット285は、その構成が図11に示した警報パケット281と基本的に同一である。相違あるいは特徴となる第1の点は、「a」の部分の3ビットの方向フラグが、図8に示すリピータ通信機261から集中管理端末101へ向かった通信なので、この部分が10進数表記で「1」となることである。第2の点は、「f」の部分が発信元リピータ通信機番号で構成されることである。第3の点は、「e」の部分がアクティブパス通知を示す警報データで構成されていることである。
アクティブパス通知パケット285を受信したリピータ通信機261は、受信したポートを第2の優先順位のアクティブポートとして登録し、そのメインポートからアクティブパス通知を送信する。集中管理端末101は、アクティブパス通知を受信したら何もせずこれを破棄する。
次に、一例として、図10に示したリピータ通信機「D」について、その登録の処理内容を説明する。初期化後のリピータ通信機「D」に備えられたテーブルが、たとえば次のような登録内容であったとする。
リピータ通信機「D」のテーブル
ポート番号「11」:メインポート 接続有り アクティブポート デフォルト
ポート番号「10」:x 接続有り
ポート番号「01」:x 接続有り アクティブポート 第2の優先順位
ポート番号「00」:x 接続有り アクティブポート 第1の優先順位
ここで「x」とは、メインポート以外のポートであることを表わしている。
集中管理端末101がアドレス要求パケット283のブロードキャストして、リピータ通信機「D」等のリピータ通信機261がアドレス応答パケット284を送り返したとする。集中管理端末101はこれをこれらのリピータ通信機261アドレス通知として受信し、図4に示した管理部150にアドレステーブル151を作成する。このとき、アドレステーブル151におけるリピータ通信機「D」のテーブル内容は次のようになる。
リピータ通信機「D」
第1のアドレス:01 01 01
第2のアドレス:00 10 01 01 10
ここで、「第1のアドレス:01 01 01」は、集中管理端末101が、リピータ通信機「A」、リピータ通信機「B」、リピータ通信機「C」を順に経由してリピータ通信機「D」と接続される経路を示すアドレスである。これに対して、「第2のアドレス:0010010110」は、集中管理端末101が、リピータ通信機「A」、リピータ通信機「F」、リピータ通信機「G」、リピータ通信機「H」、リピータ通信機「I」を順に経由してリピータ通信機「D」と接続される経路を示すアドレスである。
このようにして初期化により、集中管理端末101はこれに接続されたリピータ通信機「D」等の各リピータ通信機261のアドレスを取得することができる。また、リピータ通信機「D」等の各リピータ通信機261はアクティブポートを認識することができる。
図16は、リピータ通信機「C」に障害が発生した際のリピータ通信機「D」の警報パケットの流れる方向およびルートを示したものである。リピータ通信機「C」に障害291が発生したとする。この場合、リピータ通信機「D」のメインポートであるポート番号「11」から出力される警報パケットは、リピータ通信機「C」を経て集中管理端末101に到達することができない。
そこでリピータ通信機「D」は、警報パケットの出力するポートを、メインポートであるポート番号「11」から第1の優先順位であるポート番号「00」へ回転292させる。そして、リピータ通信機「D」のポート番号「00」のポートから警報パケットを出力させる。この警報パケットは、矢印293方向(集約方向235)に出力され、リピータ通信機「D」の第2のアドレス「0010010110」に示す道順で集中管理端末101に到達する。このようにして、リピータ通信機「C」に障害が発生した場合にも、これを迂回してリピータ通信機「D」の警報パケットを集中管理端末101に到達させることができる。
今、リピータ通信機「O」が警報パケットの送出元として、更に具体的に警報パケットの流れる様子を説明する。リピータ通信機「C」に障害が発生していない状態で初期化が行われたとする。このときのリピータ通信機「O」のアドレスは、図4に示した管理部150のアドレステーブル151上で次のようなものとなる。
リピータ通信機「O」のアドレス:01 01 01 01 10
ある時点で、図16に示すようにリピータ通信機「C」に障害291が発生したとする。この後、リピータ通信機「O」が警報パケット281(図11参照)を集中管理端末101に送出するものとする。リピータ通信機「O」のポート番号「11」のポートから送出された警報パケット281はポート番号「10」のポートからリピータ通信機「E」に入力する。リピータ通信機「E」は、図11に示す警報パケット281の「d」の部分に「10」を付加してポート番号「11」のメインポートから警報パケット281をリピータ通信機「D」に向けて送付する。
リピータ通信機「D」はこの警報パケット281をポート番号「01」のポートから受け取ったので、警報パケット281の「d」の部分の「10」に「01」を追加して「01 10」とする。そして、ポート番号「11」のメインポートから警報パケット281をピータ通信機「C」に向けて送付する。ところが、ポート番号「11」のメインポートにはこれに対して応答がこない。これにより、リピータ通信機「D」からリピータ通信機「C」までの通信路、あるいはピータ通信機「C」に障害が発生している可能性があることになる。
そこで、リピータ通信機「D」は、ポート番号「11」のメインポートから警報パケット281の再送信を繰り返す。この場合にも応答がないものとすると、リピータ通信機「D」はこの段階でリルーティングの処理を行う。リルーティングは、初期化時にアクティブポートとして登録されているポートを選択して行う。リピータ通信機「D」には、メインポートではなく、アクティブポートであるポート番号「00」のポートが存在する。そこでリピータ通信機「D」は、このポート番号「00」のポートをメインポートに設定する。すなわち、回転292を行う。これにより、リピータ通信機「D」のテーブルは、次のように変更される。
リピータ通信機「D」のテーブル
ポート番号「11」:× 障害有り アクティブポート デフォルト
ポート番号「10」:x 接続有り
ポート番号「01」:x 接続有り アクティブポート 第2の優先順位
ポート番号「00」:メインポート 接続有り アクティブポート 第1の優先順位
ここで「x」とは、メインポート以外のポートであることを表わしている。また、「×」は、障害が発生していることを表わしている。
このようにしてリピータ通信機「D」は、新たなメインポートとしてのポート番号「00」のポートから警報パケット281を送出する。リピータ通信機「I」はこの警報パケット281をポート番号「10」のポートから受け取る。そこで、警報パケット281の「d」の部分の「01 10」に「10」を追加して「10 01 10」とする。そして、ポート番号「11」のメインポートから警報パケット281を送出する。
リピータ通信機「H」は、この警報パケット281をポート番号「01」のポートから受け取る。そこで、警報パケット281の「d」の部分に「01」を追加して「01 10 01 10」とする。そして、ポート番号「11」のメインポートから警報パケット281を送出する。
リピータ通信機「G」は、この警報パケット281をポート番号「01」のポートから受け取る。そこで、警報パケット281の「d」の部分に「01」を追加して「01 01 10 01 10」とする。そして、ポート番号「11」のメインポートから警報パケット281を送出する。
リピータ通信機「F」は、この警報パケット281をポート番号「10」のポートから受け取る。そこで、警報パケット281の「d」の部分に「10」を追加して「10 01 01 10 01 10」とする。そして、ポート番号「11」のメインポートから警報パケット281を送出する。
リピータ通信機「A」は、この警報パケット281をポート番号「00」のポートから受け取る。そこで、警報パケット281の「d」の部分に「00」を追加して「00 10 01 01 10 01 10」とする。そして、ポート番号「11」のメインポートから警報パケット281を送出する。この警報パケット281が集中管理端末101に到達することになる。
集中管理端末101はこの警報パケット281を受け取ると、「d」の部分に組み込まれているリピータ通信機「O」のアドレス「00 10 01 01 10 01 10」を確認する。そして、これをアドレステーブル151(図4)に格納されているリピータ通信機「O」のアドレス「01 01 01 01 10」と比較する。これら新旧のアドレスは次のようになる。ここでは、便宜上、共通するアドレスの部分を「 」で括っている。
リピータ通信機「O」の新旧アドレス
新アドレス:00 10 01 01 10[01 10]
旧アドレス: 01 01 01[01 10]
このようにリピータ通信機「O」から集中管理端末101に至る経路は、[01 10]の部分、すなわち、リピータ通信機「O」からリピータ通信機「D」に到達するまでは、同一であることが分かる。そこで、集中管理端末101はこの[01 10]の共通部分を除いた新アドレスの部分を取り出す。この差分のアドレスは「00 10 01 01 10」である。集中管理端末101はこの差分のアドレスと一致するアドレスのリピータ通信機261をアドレステーブル151を使用して検索する。この結果、このアドレスはリピータ通信機「D」のアドレスであることが判明する。これにより、リピータ通信機「D」がリルーティングをしたことが分かる。これは、また集中管理端末101とリピータ通信機「D」の別ルートであることを示している。
そこで、集中管理端末101は障害291が発生したことに対処するために、他のリピータ通信機261のアドレスを必要に応じて書き換える処理を開始する。このために、集中管理端末101はアドレステーブル151に書き込まれている各リピータ通信機261のアドレスから[01 01 01]というビット列を持つリピータ通信機261のアドレスを抽出する。これは、障害の発生したリピータ通信機「C」を含むアドレスであるからである。集中管理端末101のアドレステーブル151の一覧が次のようになっているものとする。
リピータ通信機「A」のアドレス:
リピータ通信機「B」のアドレス:01
:00 10 10
リピータ通信機「C」のアドレス:01 01
:00 10 01 10
リピータ通信機「D」のアドレス:01 01 01
:00 10 01 01 10
リピータ通信機「E」のアドレス:01 01 01 01
:00 10 01 01 01 10
リピータ通信機「F」のアドレス:00
リピータ通信機「G」のアドレス:00 10
:01 00
リピータ通信機「H」のアドレス:00 10 01
:01 01 00
リピータ通信機「I」のアドレス:00 10 01 01
:01 01 01 00
リピータ通信機「J」のアドレス:00 10 01 01 01
:01 01 01 01 00
リピータ通信機「K」のアドレス:10
リピータ通信機「L」のアドレス:01 10
リピータ通信機「M」のアドレス:01 01 10
リピータ通信機「N」のアドレス:01 01 01 10
リピータ通信機「O」のアドレス:01 01 01 01 10
リピータ通信機「P」のアドレス:00 01
リピータ通信機「Q」のアドレス:00 10 00
リピータ通信機「R」のアドレス:00 10 01 00
リピータ通信機「S」のアドレス:00 10 01 01 00
リピータ通信機「T」のアドレス:00 10 01 01 01 00
このアドレステーブル151の一覧から[01 01 01]というビット列をもつリピータ通信機261のアドレスの一覧は、次のようになる。ただし、括弧[01 01 01]で括った部分が照合によって一致した部分である。
リピータ通信機「D」のアドレス:[01 01 01]
リピータ通信機「E」のアドレス:[01 01 01]01
リピータ通信機「N」のアドレス:[01 01 01]10
リピータ通信機「O」のアドレス:[01 01 01]01 10
これを図16と見比べる。すると、リピータ通信機「D」、「E」、「N」および「O」は、障害291の発生したリピータ通信機「C」を本来経由して集中管理端末101に至るリピータ通信機261であることが分かる。そこで、ビット列[01 01 01]を、障害291の発生したリピータ通信機「C」を迂回するための、図16で矢印293で示した経路を示すビット列[00 10 01 01 10]で置き換える。すると、リピータ通信機「D」、「E」、「N」および「O」については、アドレステーブル151の一覧が次のようになる。
リピータ通信機「D」のアドレス:[00 10 01 01 10]
リピータ通信機「E」のアドレス:[00 10 01 01 10]01
リピータ通信機「N」のアドレス:[00 10 01 01 10]10
リピータ通信機「O」のアドレス:[00 10 01 01 10]01 10
ここで、置き換えたビット列の部分は、便宜上、括弧でくくっている。このようにアドレステーブル151の一覧のうちの障害291の発生したリピータ通信機「C」を迂回する必要のあるリピータ通信機261のアドレスを置き換えることによって、集中管理端末101はリピータ通信機「C」以外を宛先とする制御パケットの送信が可能になる。
図17は、アドレステーブルのアドレスを置き換えた後のリピータ通信機「O」を宛先とする制御パケットの流れる方向およびルートを示したものである。集中管理端末101はリピータ通信機「O」を宛先とする制御パケットを送出するとき、アドレステーブル151の変更後のリピータ通信機「O」のアドレス「00 10 01 01 10 01 10」を、図12に示した制御パケット282の「d」の領域に組み込む。そして、この制御パケット282をリピータ通信機「A」に送出する。これにより、制御パケット282は、矢印294方向(図7のルーティング方向236)に沿って転送される。
このとき、制御パケット282は、アドレス[00 10 01 01 10]の部分の最後の箇所でリピータ通信機「I」からリピータ通信機「D」に向けて送出される。このとき、リピータ通信機「D」はそのメインポートが本来のポート番号「11」から第1の優先順位であるポート番号「00」へ回転292している。そこで、制御パケット282は、アドレス[00 10 01 01 10]の後に続くアドレス「01 10」の部分でリピータ通信機「D」およびリピータ通信機「E」を順に経由して、宛先のリピータ通信機「O」に到達することになる。
図18は、集中管理端末と複数のリピータ通信機が以上と異なった接続関係にある場合を示したものである。集中管理端末101に対してリピータ通信機「A」〜「T」がこの図18に示すような接続関係となった場合の例について、先の図10、図16および図17の接続関係と同様に考察してみる。
この図18に示した例を図10、図16および図17に示した例を比べると、リピータ通信機「B」とリピータ通信機「G」を結ぶ経路、およびリピータ通信機「D」とリピータ通信機「I」を結ぶ経路が存在しなくなっている。このような変更によって、通信システムに障害が発生していないときの、図4に示した管理部150のアドレステーブル151の幾つかのリピータ通信機のアドレスを図中に示した。システムの初期化後に、たとえばリピータ通信機「O」のアドレスは、「01 01 01 01 10」となる。
図19は、図18に示した配置例でリピータ通信機「C」に障害が発生した場合に警報パケットを送出する様子を表わしたものである。リピータ通信機「C」に障害が発生した後に、リピータ通信機「O」から警報パケット281(図11参照)を集中管理端末101に向けて送出するものとする。経路上で最初に警報パケット281(図11)を受け取ったリピータ通信機「E」は、そのポート番号「10」を「d」の部分(図11)に組み込んで、ポート番号「11」のメインポートから次のリピータ通信機「D」に向けて警報パケット281を送り出す。
リピータ通信機「D」は、警報パケット281をポート番号「01」を加えて、前記した「d」の部分(図11)のデータを「01 10」として、ポート番号「11」のメインポートから次のリピータ通信機「C」に向けて警報パケット281を送り出す。ところが、このポート番号「11」のメインポートにリピータ通信機「C」から応答がない。これにより、リピータ通信機「C」までの通信路、またはリピータ通信機「C」自身に障害が発生している可能性がある。
そこでリピータ通信機「D」は警報パケット281の再送信を繰り返し、これでも応答がない場合にリルーティングを行う。リルーティングでは、初期化時に、リピータ通信機「D」にアクティブポートとして登録されているポートを選択することになる。ここで、リピータ通信機「D」の初期化後のテーブルは次のようなものであるとする。
リピータ通信機「D」のテーブル(障害発生前)
ポート番号「11」:メインポート 接続有り アクティブポート デフォルト
ポート番号「10」:x 接続有り
ポート番号「01」:x 接続有り アクティブポート 第2の優先順位
ポート番号「00」:x 接続無し
このようにリピータ通信機「D」のテーブルには、メインポートでなく、アクティブポートであるポート番号「01」のポートが存在する。そこで、リピータ通信機「D」は回転301を行って、このポート番号「01」のポートをメインポートに設定をする。リピータ通信機「D」のテーブルは、以下のように変更される。
リピータ通信機「D」のテーブル(障害発生後)
ポート番号「11」:× 障害有り アクティブポート デフォルト
ポート番号「10」:x 接続有り
ポート番号「01」:メインポート 接続有り アクティブポート 第2の優先順位
ポート番号「00」:x 接続無し
リピータ通信機「D」は、前記した「d」の部分(図11)に付加したポート番号「01」とメインポートとなったポートのポート番号「01」が同じとなったので、これを「d」の部分から削除する。そして、ポート番号「01」のポートから警報パケット281を送出する。この警報パケット281はリピータ通信機「E」に送られる。警報パケット281の方向フラグ「a」の部分を確認する。この結果、方向フラグ「a」が集中管理端末101へ向かうことを示す「1」であるにも係らず、その逆方向から警報パケット281を受け取っている。
の
このため、リピータ通信機「E」は、警報パケット281が送られてきたメインポート側に障害が発生していることを知ることができる。そこで、リピータ通信機「E」は警報パケット281の送り出される別ルートを検索する。初期化時のリピータ通信機「E」は、たとえば次のような登録内容となっている。
リピータ通信機「E」のテーブル(障害検出前)
ポート番号「11」:メインポート 接続有り アクティブポート デフォルト
ポート番号「10」:x 接続有り
ポート番号「01」:x 接続無し
ポート番号「00」:x 接続無し アクティブポート 第1の優先順位
リピータ通信機「E」は別ルートを検索するために、第1の優先順位のポート番号「00」のポートをメインポートとするように回転302を行う。この結果、この警報パケット281をリピータ通信機「J」がポート番号「10」のポートから受け取る。リピータ通信機「J」は、前記した「d」の部分(図11)のデータ「10」に「10」を追加して、データ「10 10」とする。そして、リピータ通信機「J」のポート番号「11」のメインポートから警報パケット281を送出する。
リピータ通信機「I」はこの警報パケット281をポート番号「01」のポートから受け取る。リピータ通信機「I」は、前記した「d」の部分(図11)のデータ「10 10」に「01」を追加して、データ「01 10 10」とする。そして、リピータ通信機「I」のポート番号「11」のメインポートから警報パケット281を送出する。
リピータ通信機「H」はこの警報パケット281をポート番号「01」のポートから受け取る。リピータ通信機「H」は、前記した「d」の部分(図11)のデータ「01 10 10」に「01」を追加して、データ「01 01 10 10」とする。そして、リピータ通信機「H」のポート番号「11」のメインポートから警報パケット281を送出する。
リピータ通信機「G」はこの警報パケット281をポート番号「01」のポートから受け取る。リピータ通信機「G」は、前記した「d」の部分(図11)のデータ「01 01 10 10」に「01」を追加して、データ「01 01 01 10 10」とする。そして、リピータ通信機「G」のポート番号「11」のメインポートから警報パケット281を送出する。
リピータ通信機「F」はこの警報パケット281をポート番号「10」のポートから受け取る。リピータ通信機「F」は、前記した「d」の部分(図11)のデータ「01 01 01 10 10」に「10」を追加して、データ「10 01 01 01 10 10」とする。そして、リピータ通信機「F」のポート番号「11」のメインポートから警報パケット281を送出する。
リピータ通信機「A」はこの警報パケット281をポート番号「00」のポートから受け取る。リピータ通信機「A」は、前記した「d」の部分(図11)のデータ「10 01 01 01 10 10」に「00」を追加して、データ「00 10 01 01 01 10 10」とする。そして、リピータ通信機「A」のポート番号「11」のメインポートから警報パケット281を送出する。このようにして集中管理端末101に警報パケット281が到達する。障害発生303の箇所を回避した以上のような警報パケット281の伝達経路を矢印304で示した。
集中管理端末101は、警報パケット281を受信するとその前記した「d」の部分(図11)からアドレスを示すデータ「00 10 01 01 01 10 10」を抽出する。そして、これを図4に示した管理部150のアドレステーブル151におけるリピータ通信機「O」のアドレスと比較する。アドレステーブル151上のアドレスは、「01 01 01 01 10」となっている。これらを次に対比して示す。ここでは、便宜上、アドレスを構成する共通のビット列を括弧[ ]で括っている。
リピータ通信機「O」の新旧アドレス
リピータ通信機「O」の新アドレス:00 10 01 01 01 10[10]
リピータ通信機「O」の旧アドレス: 01 01 01 01[10]
このようにリピータ通信機「O」の新アドレスと旧アドレスからアドレスの最下位部分を起点とした共通する部分を抜き出す。この場合、[10]が共通する部分である。この部分は、リピータ通信機「O」から送信された警報パケット281がこの共通部分まで、新アドレス、旧アドレスともに同じルートを辿ったことを示している。
次に、リピータ通信機「O」の旧アドレスから、共通する部分[10]を除いた部分「01 01 01 01」を取り出し、管理部150のアドレステーブル151内の同データと照合する。すると、「01 01 01 01」の部分はリピータ通信機「E」のアドレスであることが判明する。これにより、リピータ通信機「D」がリルーティングをしたことがわかる。同様に、リピータ通信機「O」の新アドレスから、共通する部分[10]を除いた部分「00 10 01 01 01 10」を取り出す。これは、リピータ通信機「C」の障害発生303を起因とするリピータ通信機「A」からリピータ通信機「E」までの別ルートである。
したがって、リピータ通信機「E」を経由するアドレスのすべてを、リルーティングされたもので置き換える必要がある。そこで、集中管理端末101の管理部150のアドレステーブル151におけるアドレス一覧から「01 01 01 01」というビット列を持つリピータ通信機のアドレスを抽出する。現時点でのアドレステーブル151の内容は、次のようになっている。
集中管理端末101のアドレステーブル151
リピータ通信機「A」のアドレス:
リピータ通信機「B」のアドレス:01
:00 10 10
リピータ通信機「C」のアドレス:01 01
:00 10 01 10
リピータ通信機「D」のアドレス:01 01 01
:00 10 01 01 10
リピータ通信機「E」のアドレス:01 01 01 01
:00 10 01 01 01 10
リピータ通信機「F」のアドレス:00
リピータ通信機「G」のアドレス:00 10
:01 00
リピータ通信機「H」のアドレス:00 10 01
:01 01 00
リピータ通信機「I」のアドレス:00 10 01 01
:01 01 01 00
リピータ通信機「J」のアドレス:00 10 01 01 01
:01 01 01 01 00
リピータ通信機「K」のアドレス:10
リピータ通信機「L」のアドレス:01 10
リピータ通信機「M」のアドレス:01 01 10
リピータ通信機「N」のアドレス:01 01 01 10
リピータ通信機「O」のアドレス:01 01 01 01 10
リピータ通信機「P」のアドレス:00 01
リピータ通信機「Q」のアドレス:00 10 00
リピータ通信機「R」のアドレス:00 10 01 00
リピータ通信機「S」のアドレス:00 10 01 01 00
リピータ通信機「T」のアドレス:00 10 01 01 01 00
この集中管理端末101のアドレステーブル151から、[01 01 01 01]というビット列をもつリピータ通信機のアドレス一覧は、次の通りとなる。
リピータ通信機「E」のアドレス:[01 01 01 01]
リピータ通信機「O」のアドレス:[01 01 01 01]10
ここで、便宜上、括弧[ ]で括った部分が、照合で一致した部分である。図19と照合すると、確かにリピータ通信機「E」とリピータ通信機「O」は、障害発生303がなければリピータ通信機「D」を経由して集中管理端末101に警報パケット281(図11)を送出する。現在は、障害発生303後なので、これらのアドレス部分[01 01 01 01]をアドレス部分[00 10 01 01 01 10]で置き換えればよい。これにより、これら該当するリピータ通信機「E」およびリピータ通信機「O」の置き換え後のアドレスは、次のようになる。
リピータ通信機「E」のアドレス:[00 10 01 01 01 10]
リピータ通信機「O」のアドレス:[00 10 01 01 01 10] 10
このように集中管理端末101のアドレステーブル151の内容を必要に応じて修正することで、集中管理端末101からリピータ通信機「E」およびリピータ通信機「O」への通信が可能になる。
図20は、図19で説明した警報パケットが出力された後の制御パケットの送出される様子を表わしたものである。集中管理端末101がリピータ通信機「D」に対して制御パケット282(図12)を送出したとする。図19で説明したようにリピータ通信機「O」から警報パケット281(図11)が出力された時点で前記したように障害発生303が検出されており、これを基にしてリピータ通信機「E」およびリピータ通信機「O」のアドレスの置き換えが行われている。しかしながら、それ以外のリピータ通信機に対するアドレスの置き換えは行われていない。
このため、集中管理端末101がリピータ通信機「D」に対してそのアドレス「01 01 01」を用いて制御パケットを送出すると、これはリピータ通信機「A」、リピータ通信機「B」という経路を順に辿って、リピータ通信機「B」のポート番号「01」のポートからリピータ通信機「C」に送出されようとする。しかしながらリピータ通信機「C」から応答がないので、リピータ通信機「B」はエラーを集中管理端末101に返すことになる。
このエラーを受信した集中管理端末101は、送られてきたパケットのポート番号の列をチェックする。そして、リピータ通信機「D」と集中管理端末101の間で障害を起こしているのは、リピータ通信機「C」またはリピータ通信機「D」であることが分かる。
このうちのリピータ通信機「D」は、リピータ通信機「C」の経路が断たれた場合、リピータ通信機「E」からの通信を伝送できないため、回転を起こすことが考えられる。このため、回転を起こしたリピータ通信機「E」を経由して、リピータ通信機「D」へアクセスをする。リピータ通信機「E」は、回転を起こす前は、デフォルトのメインポートであるポート番号「11」のポートを経由してアドレスの通知を行っている。このことから、リピータ通信機「D」のアドレスを導く。これは次のようになる。
まず、初期化時のリピータ通信機「D」およびリピータ通信機「E」は次のとおりである。
リピータ通信機「D」のアドレス:[01 01 01]
リピータ通信機「E」のアドレス:[01 01 01]01
これから、リピータ通信機「D」とリピータ通信機「E」の間は、リピータ通信機「E」のポート番号「11」のポートと、リピータ通信機「D」のポート番号「01」のポートを経由していることが分かる。したがって、リピータ通信機「E」のアドレスにポート番号「11」を加えて、リピータ通信機「D」を起点とするリピータ通信機のアドレスを導く。
リピータ通信機「E」のアドレス:[00 10 01 01 01 10]
リピータ通信機「D」のアドレス:[00 10 01 01 01 10]11
この置き換えにより、図19および図20に示したように集中管理端末101からリピータ通信機「D」への通信が可能になる。この経路を矢印311で示す。
次に、リピータ通信機「D」に隣接しているリピータ通信機を集中管理端末101のアドレステーブル151から検索する。すると、リピータ通信機「N」を発見できる。そこで、すでに説明したと同様に、集中管理端末101からこのリピータ通信機「N」に対して、パケットを送信すると、リピータ通信機「B」は、エラーを返す。その結果から、リピータ通信機「E」およびリピータ通信機「D」を経由する経路を導出する。
リピータ通信機「D」からリピータ通信機「N」のアドレスを導く。まず、初期化時のリピータ通信機「D」およびリピータ通信機「N」のアドレスは次のとおりである。
リピータ通信機「D」のアドレス:[01 01 01]
リピータ通信機「N」のアドレス:[01 01 01]10
これにより、リピータ通信機「D」とリピータ通信機「N」の間は、リピータ通信機「N」のポート番号「11」のポートと、リピータ通信機「D」のポート番号「10」のポートを経由していることが分かる。したがって、リピータ通信機「N」のアドレスにポート番号「10」を加え、リピータ通信機「N」を起点とするリピータ通信機のアドレスを導く。
リピータ通信機「E」のアドレス:[00 10 01 01 01 10]
リピータ通信機「D」のアドレス:[00 10 01 01 01 10]11
リピータ通信機「N」のアドレス:[00 10 01 01 01 10]11 10
以上の置き換えによって、図19および図20に示すように、集中管理端末101からリピータ通信機「N」への制御パケット282(図12)の通信が可能になる。
最後に、以上説明した実施例の通信システムにおける幾つかの処理の流れの概要を示すことにする。このような制御は、たとえは集中管理端末101の図示しないCPU(Central Processing Unit)が制御プログラムを実行することによってソフトウェア的に実現することができる。ハードウェア的な実現構成であってもよい。
図21は、集中管理端末による通信システムの初期化処理の様子を表わしたものである。図1と共に説明する。集中管理端末101は初期化時に第1〜第mの電子機器(リピータ通信機)1031〜103m(特定電子機器102を含む)に対して、それぞれのアドレスを通知させるためのアドレス要求をブロードキャストする(ステップS401)。そして、返答に十分な時間を割り当てて、これら電子機器の応答を受信処理する(ステップS402)。そして、各電子機器のアドレスをポート番号の列として抽出して、これを図4に示した管理部150のアドレステーブル151に登録する(ステップS403)。
なお、この通信システムの初期化処理のときに障害を発生させていた電子機器(リピータ通信機)や、そのときにまだネットワーク104に参加していなかった電子機器(リピータ通信機)は、アドレステーブル151に登録されない。これらの電子機器(リピータ通信機)は、たとえばその後、他の電子機器(リピータ通信機)と接続関係を持った上で、警報パケット等のパケットを集中管理端末101に送出することで、アドレステーブル151に追加登録されることになる。
図22は、警報パケットを受信した集中管理端末がそのデータを用いてアドレステーブルを更新する様子を表わしたものである。図1および図4と共に説明する。集中管理端末101は警報パケットを受信すると(ステップS421:Y)、このパケットから警報を発呼した電子機器(リピータ通信機)のアドレスを特定する(ステップS422)。そして、管理部150のアドレステーブル151におけるその電子機器(リピータ通信機)のアドレスと対比する(ステップS423)。
この結果、これらが一致すれば(ステップS424:N)、警報を発呼した電子機器(リピータ通信機)から集中管理端末101に至る経路に障害が発生していなかったことになる。そこでこの場合には、アドレステーブル151を変更することなく、処理を終了する(エンド)。
これに対して、警報パケットによって得られたアドレスが、アドレステーブル151におけるその電子機器(リピータ通信機)のアドレスと異なっていた場合(ステップS424:Y)、これを警報パケットによって得られた新しいアドレス(ポート番号の列)に置き換える(ステップS425)。
次に集中管理端末101はこの新しいアドレス(ポート番号の列)を解析して、障害の発生による迂回箇所のアドレス部分を特定する(ステップS426)。そして、警報を発呼した電子機器(リピータ通信機)のアドレスを置き換えたと同様に、これらのアドレス部分を有する他の電子機器(リピータ通信機)のアドレス部分を置換する(ステップS427)。このようにして、1つの警報パケットを受信したことによるアドレステーブル151の更新が終了する。
ただし、実施例でも説明したように、これによってアドレステーブル151のすべてのアドレスが最新の状態になったものではない。したがって、集中管理端末101は警報パケットを受信するたびにこのような作業を繰り返すと共に、制御パケットを送出したときにエラーが返ってきたものについて、解析を行ってアドレステーブル151の更新を行うことになる。
図23は、電子機器(リピータ通信機)が集中管理端末にパケットを送出する際のポートの選定処理の様子を表わしたものである。図1と共に説明する。電子機器(リピータ通信機)は集中管理端末101にたとえば警報パケットを送出あるいは転送する要求が生じたときには(ステップS441:Y)、現在のメインポートを選択してここからパケットを送出する(ステップS442)。
この後、電子機器(リピータ通信機)はそのパケットの送出についてエラーが発生したかどうかを監視する(ステップS443)。エラーが返されてきたり、送出に対する応答がなかったような場合にはエラーが発生している。このような場合には(Y)、メインポートに成りうるアクティブポートが存在するかどうかをチェックする(ステップS444)。そのようなポートがあれば(Y)、そのポートをメインポートに選択して、ポートをこれに回転させる(ステップS445)。そして、ステップS442に戻って該当するパケットを再送することになる。
ステップS443でエラーが発生しない場合(N)、およびポートの回転が不可能な場合には(ステップS444:N)、共に処理を終了する(エンド)。ただし、後者のステップS444の場合には、そのパケットは宛先に送出されないことになる。
以上説明した本実施例の通信システムによって次のような各種の効果を得ることができる。まず、通常の通信システムでは、ネットワーク上への通信機の設置時、個々の通信機に事前にすべてのアドレス設定が必要である。これに対して本実施例では、通信機の設置後に個々の通信機を擬似発呼させた時の発呼データが通過するすべての通信機のポート番号を列として累積記憶するようにしている。この結果、発呼を最終的に受け取る集中管理部ですべてのアドレス、すなわち、経路を示すポート番号の累積列を記憶管理するだけで、これらの通信機のアドレス管理を行うことができる。
本実施例では、パケットのフォーマットにその転送方向を示すビットを設けるようにした。これにより、集中管理端末101から各リピータ通信機への通信と、リピータ端末から集中管理端末101への通信という2つの方向の識別が明確になり、リピータ通信機に障害が発生したときのリルーティングが行えるようになるという実施例による2番目の効果が発生する。
また、本実施例ではパケットのフォーマットに、オペランド領域を設けることにした。これにより、パケットにリピータ通信機の番号を載せることが可能になり、集中管理端末101は、各リピータ通信機の識別番号とアドレスを対応付けたテーブルを簡易に作成できるという効果を生じる。
更に本実施例では、リピータ通信機が集中管理端末101に対してアクティブパス通知を送信することにした。これにより、障害発生時に、速やかに障害箇所を回避する経路を探索できるという効果を生じる。
更にまた、実施例ではリピータ通信機で受信したメインパス以外からの「アドレス要求」に対して、「アドレス応答」を集中管理端末に通知する方法を明確化したことにより、リピータで障害が発生した際に、集中管理端末Aが経路変更を導出できるという効果を生じる。
また、本実施例の通信システムでは、個々のリピータ通信機に予めアドレスを事前に割り宛てることなく、集中管理端末101がこれらのリピータ通信機のアドレスを把握することができる。これにより、集中管理端末101とそれぞれのリピータ通信機の間で警報パケットおよび制御パケットの通信が可能になる。
更に実施例では、リピータ通信機間に複数のパスを作っておくことにより、障害が発生した場合に、各リピータ通信機が自立的に障害回避ルートを探すことができ、障害に対して強固なシステムを作成することができる。また、この通信システムはシステム構成が簡易となっている。このため、電源コンセントを用いて、たこ足配線を行うように、システムの増設が可能である。この結果、リピータ通信機をもつ機器の数が大量であるか少量であるかに関わらず、通信システムを組むことを簡単に行うことができる。
なお、実施例では一例としてリピータ通信機「C」に障害が発生した場合について、この障害箇所を迂回してパケットを転送する仕組みについて説明した。この仕組みによって集中管理端末101のアドレステーブル151はリピータ通信機「C」が除外されたアドレスに更新されることになって、集中管理端末101がリピータ通信機「C」を宛先にして制御パケット282(図12)を送出する無駄も防止することができる。
しかしながら、リピータ通信機「C」の修理あるいは新しい電子機器の交換によって障害がなくなるような場合がある。このような場合に備えて、集中管理端末101はリピータ通信機「C」の宛先を保存しておいて、これに対して回復チェック用の制御パケットを定期的、あるいは不定期に送信し、エラーが返ってこなかった場合には障害がなくなったものと判別することができる。修理あるいは新しい電子機器の交換後にリピータ通信機「C」からこれを示すパケットを集中管理端末101側に送出させてもよい。
このようにしてネットワークの障害がなくなったような場合、集中管理端末101はそのアドレステーブル151の内容を必要に応じて元の内容に復旧させる処理を行ってもよい。もちろん、図1に示した通信システム100の全体をイニシャライズして、第1〜第mの電子機器1031〜103mのアドレスを再度振り直すようにしてもよい。この場合には、第1〜第mの電子機器1031〜103mのメインポートは、それぞれ本来のポートに一度戻されてもよい。
また、実施例では家庭で主に使用する電子機器について説明したが、これに限るものではない。たとえば、工作機械の複数台を単にリピータ機能しかない通信機を搭載した装置では、ある工作機械のリピータ通信機の障害で、障害を起こした工作機械よりも下流にある工作機械との通信できないことが発生しうる。しかし、本発明を利用し、障害回避経路を複数作成してシステムを構成した場合、障害に対して強固なシステムを構成することができる。