(57)【特許請求の範囲】
【請求項１】
複数のノードからなるネットワーク内でメッセージを経路指定する方法であって、
ネットワークのどのノードが相互に通信できるかを決定すること、
相互に通信できるノードのスパンニングツリーを形成すること、
子ノードの論理ノード識別子の独特の部分が、前記子ノードの親ノードの論理ノード識別子の独特な部分を含むように、前記スパンニングツリーに基づき前記ノードに論理ノード識別子を割り当てること、
を行うことによって前記ネットワークを構成し、
メッセージアドレスが現在の論理ノード識別子の独特な部分を含む場合、前記メッセージアドレスをもつメッセージを別のノードに送信する、方法。
【請求項２】
請求の範囲１に記載の方法であって、前記論理ノード識別子を割当てることは、
親ノードの各子ノードを一意に区別する独特の子部分を前記子ノードのために形成すること、
前記親ノードの論理ノード識別子の独特の部分を前記独特の子部分に組み合わせることにより、前記子ノードの論理ノード識別子の独特の部分を子ノードのために形成すること、
を含むことを特徴とする方法。
【請求項３】
請求の範囲２に記載の方法であって、前記割当てることは、
子ノードの論理ノード識別子を前記子ノードへ送ることを含むことを特徴とする方法。
【請求項４】
請求の範囲１、２、または３に記載の方法であって、前記決定することは、
初期化メッセージを全てのノードへ送ること、
前記初期化メッセージを送るノードの１つを親ノードとして記録すること、
を含むことを特徴とする方法。
【請求項５】
請求の範囲３または４に記載の方法であって、前記送ることは、ホップカウント通信プロトコルでのフラッディングを用いることを含むことを特徴とする方法。
【請求項６】
請求の範囲４または５に記載の方法であって、前記決定することは、初期化メッセージに応答することを更に含むことを特徴とする方法。
【請求項７】
請求の範囲６に記載の方法であって、前記応答することは、親経路指定通信プロトコルを用いることを含むことを特徴とする方法。
【請求項８】
請求の範囲１ないし７のいずれか１つに記載の方法であって、前記方法は、区分したスパンニングツリー通信プロトコルを用いて通信することにより、前記ネットワークにノードを加えること、前記ネットワークからノードを除去することのうちの１つに前記ネットワークを再構成することを更に備えることを特徴とする方法。
【請求項９】
請求の範囲１ないし８のいずれか１つに記載の方法であって、前記形成することは、２の最小累乗に応答してノードを区分することにより前記ネットワークの幅を最小にすることを含むことを特徴とする方法。
【請求項１０】
請求の範囲１ないし９のいずれか１つに記載の方法であって、前記スパンニングツリーは、親ポインターと、子ポインターと、ノードのノード物理的識別子と、親物理的識別子と、ホップカウントと、区分したスパンニングツリー論理識別子とを含むエントリを有するリンクされたリストデータ構造を有することを特徴とする方法。
【請求項１１】
請求の範囲１ないし１０のいずれかに記載の方法であって、前記メッセージアドレスと前記ノード識別子とのフォーマットがほぼ対応することを特徴とする方法。
【請求項１２】
請求の範囲１ないし１１のいずれかに記載の方法であって、前記方法は、前記メッセージアドレスを、メッセージを受ける受信ノードの識別子とのみ比較することにより、前記受信ノードが、宛先ノードまでの経路内にあるかどうかを決定することを備えることを特徴とする方法。
【請求項１３】
請求の範囲１ないし１２のいずれかに記載の方法であって、前記送信することは、
前記メッセージアドレスを前記現在のノード識別子と比較し、一致が起きたならば前記メッセージを処理すること、
前記現在のノード識別子の独特の部分を前記メッセージアドレスの対応する部分と比較すること、
前記対応する部分が一致しなければ前記メッセージを捨てること、
前記対応する部分が一致したならば前記メッセージを送信すること、
を含むことを特徴とする方法。
【請求項１４】
請求の範囲１ないし１３のいずれかに記載の方法であって、前記方法は、
送信された前記メッセージが送信されたかどうかを決定すること、
前記メッセージが放送されなかった時は故障したノードを指示すること、
を更に備えることを特徴とする方法。
【請求項１５】
請求の範囲１４に記載の方法であって、前記方法は、
前記故障したノードへの経路に沿った全てのノードに順次、ポーリングすること、
前記ポーリングに対する応答を基にして前記ネットワークを再構成すること、
を更に備えることを特徴とする方法。
【請求項１６】
請求の範囲１ないし１５のいずれか１つに記載の方法であって、前記方法は、ノードにより受けられた全ての上流パケットを、前記ノードの親ノードへ送ること、を備えることを特徴とする方法。
【請求項１７】
複数のノードを備え、前記複数のノードが論理ノード識別子により識別される通信ネットワークであって、
相互に通信できるノードのスパンニングツリーを前記複数のノードが形成し、
子ノードの論理ノード識別子の独特の部分が、前記子ノードの親ノードの論理ノード識別子の独特の部分を含み、
前記ネットワークは、メッセージアドレスが現在の論理ノード識別子の独特な部分を含む場合、前記メッセージアドレスをもつメッセージを別のノードに送信するように構成されたことを特徴とする通信ネットワーク。
【請求項１８】
請求の範囲１７に記載の通信ネットワークであって、前記ネットワークは、ネットワーク制御ノードを備え、前記ネットワーク制御ノードと前記ネットワークのノードとは無線送信器／受信器を含み、その無線送信器／受信器を介して前記ネットワーク制御ノードと前記ネットワークのノードとが通信することを特徴とする通信ネットワーク。
【請求項１９】
請求の範囲１７または１８に記載の通信ネットワークであって、前記ノードは、
前記ノードの論理識別子を記憶するメモリと、
前記メッセージのメッセージアドレスを前記ノードの論理識別子のみと比較することにより、前記ノードが宛先ノードまでの経路内にあるかどうかを決定するプロセッサと、
を含むことを特徴とする通信ネットワーク。
【請求項２０】
請求の範囲１９に記載の通信ネットワークであって、前記プロセッサは前記論理識別子の独特の部分を、メッセージアドレスの対応する部分と比較することを特徴とする通信ネットワーク。
【請求項２１】
請求の範囲１７、１８、１９または２０に記載の通信ネットワークであって、
前記ノードは、
ネットワーク構成を記憶するメモリと、
前記ネットワークのノードの区分されたスパンニングツリー識別子を決定し、
前記識別子を前記ネットワーク構成に記憶し、前記ネットワーク構成を用いてメッセージを前記ノードへ送る、プロセッサと、
を含むことを特徴とする通信ネットワーク。
【発明の詳細な説明】
発明の背景
発明の分野
本発明は、ネットワークのどのノードが相互に通信できるかを決定すること、および識別子をノードに割当てることを含めて、ネットワークを構成する方法に関する。
本発明は、独特のコード識別子により識別されるノードのネットワーク内でメッセージを経路指定する方法にも関するものである。
本発明は、独特のノード識別子により識別される複数のノードを備える通信ネットワーク、およびそのようなネットワークに使用するノードに関するものでもある。
更に、本発明はノードの論理識別子を保存するメモリと、ノードが宛先ノードへのメッセージ経路中にあるかどうかを判定するプロセッサとを備える、通信ネットワーク・ノードに関するものである。
また、本発明は、ネットワーク構成を保存するメモリと、プロセッサとを備える、通信ネットワークのためのネットワーク制御ノードに関するものである。
関連技術についての説明
今日の適当なネットワーク、とくに、近代の建物の実時間制御のために用いるネットワークは、建物を建築する際に設置されるワイヤで接続されたノードを含む。それらの装置では、照明、暖房／冷房、エレベーターなどを制御するためにネットワークを用いる。ネットワークのノードは典型的には、十分な量のメモリと、その他の資源とを有するマイクロコンピュータである。それらの装置は結線され、かつ比較的強力なノードを有するから、それらの装置は高価で、一般に最も大規模な建物において採用されるだけである。また、それらは一般に、とくに電力使用制御装置のための最も適当な対象にできる古い建物に後から取り付けるためには一般に適当ではない。
必要なものは、非常に低コストのノード、すなわち、最少の資源を有するノードすなわち資源に乏しいノードであって、無線で一緒に接続され、したがって、小規模建物および中期簿建物に適当で、古い建物に後から取付けるために適当なノードのネットワークである。
ネットワークを基にした典型的な制御装置では、データ通信ネットワークのノードが情報ユニットをそれ自体の間で交換する。それらのユニットは一般にパケット、フレームまたはセルと呼ばれている。多重ホップネットワークでは、ノードはネットワークの１つおきのノードとの直接通信リンクを持たず、パケットは、発信元ノードから宛先ノードまでの通信経路内にある中間ノードによりパケットを送る必要があるかもしれない。ネットワークの種類およびそれの特徴に応じて、パケットの経路指定のこの機能は中間ノードに次のもののうちの１つを含む。１）中間ノードを出る多くのリンクの１つの選択（たとえば、インターネットに似ている点−点多重ホップネットワークにおける）、または２）受けたパケットを送る（再送信）か否かについての判定（たとえば、全てのノードが共通チャネルを強要する無線多重ホップ放送ネットワークにおいて）。データ通信ネットワークで使用する一般的な経路指定技術のほとんどは、経路指定の判定または選択を行うために経路指定表または判定表をアクセスするためにメッセージのアドレスを用いる動作において、経路指定判定を行うためにそれらの表を利用する。中間ノードにおける経路指定表は、パケットが宛てられる宛先ノードまでの最良の発信リンクすなわち最短経路を典型的に指示する。判定表は、受けたパケットを更に送るか否かを判定することを受ける。初期化したその表はノードのメモリのスペースを占める。たとえば、２５６ノードのネットワークでは、典型的な中間規模の建物について、各ノードが簡単な経路指定表を保存するものとすると、どのノードへパケットを送るかを指示するために最低５１２バイトを必要とする。そのような２５６ノードネットワークにおける判定表は２８８バイトをとる。そのうちの２５６バイトはノードのアドレスのためのものであり、３２バイトは表における各ノードに宛てられたパケットを送るか否かをビットを用いて指示する。小容量メモリ型の資源の乏しいノードのネットワークでは、それらの表を保存するために十分なメモリがない。そのようなノードでは、メモリはデータ通信機能とシステムまたはアプリケーションに特定の機能の間で共用される。したがって、種々の経路指定技術を工夫する必要がある。それらの経路指定方法は非常に小さいＲＡＭを使用しなければならないだけでなく、発信元から宛先までパケットを許容できる遅れで送るために効率的でもなければならない。
必要とされるものは、最少の資源、とくにメモリと、そのようなノードで動作する経路指定プロトコルとを有するノードのネットワークである。
発明の概要
本発明の目的は、低コスト、最少資源のネットワークを無線で接続する装置を得ることである。
本発明の目的はまた、放送通信技術を用いてノードを接続する装置を得ることである。
本発明の追加の目的は、経路指定表をノードに保存することを要しないネットワークを得ることである。
本発明の別の目的は、資源に乏しいノードのネットワークのために適当な経路指定プロトコルを得ることである。
本発明の別の目的は、ノードのネットワークを構成する装置を得ることである。
本発明の別の目的は、低コストネットワークを小規模ないし中規模の建物に設備でき、かつ古い建物に後から設備できるようにする装置を得ることである。
ネットワークを構成する方法は、相互に通信できるノードのスパンニングツリー(spanning tree)を構成する過程を備え、ノードに識別子を割当てることがスパンニングツリーを基にしていることを特徴とするものである。
メッセージの経路指定方法は、相互に通信できるノードのスパンニングツリーをノードが構成し、子ノードの識別子の独特の部分が子ノードの親ノードの識別子の独特の部分を含み、メッセージアドレスが現在のノード識別子の独特の部分を含んでいる時に他のノードへメッセージを送る過程を備えることを特徴とする。
通信ネットワークは、相互に通信できるノードのスパンニングツリーをノードが構成し、子ノードの識別子の独特の部分が子ノードの親ノードの識別子の独特の部分を含むことを特徴とする。
通信ネットワークノードは、メッセージのメッセージアドレスをノードの論理識別子のみと比較することにより、前記決定を実行することをプロセッサが開始させられることを特徴とする。
ネットワーク制御ノードは、ネットワークのノードの区分されたスパンニングツリー識別子を決定すること、識別子をネットワーク構成に保存すること、およびネットワーク構成を用いてメッセージをノードへ送ることをプロセッサが開始させられることを特徴とする。
その装置は、メモリおよび処理能力などのハードウェア資源を最小限有することができるノードの多重ホップ無線放送ネットワークを含むことが好ましい。このネットワークは区分したスパンニングツリーを用いて構成され、中間ノードのアドレスをパケットの宛先アドレスと比較して完全なパケット経路指定の決定を行えるように、ノードアドレスが割当てられる。
後で明らかになるそれらの目的およびその他の目的並びに諸利点は、それの部分を構成する添付図面を参照して後で詳しく説明し、特許請求する構造および動作の詳細に存する。図面全体を通じて同じ参照番号は同じ部分を指す。
第１図は本発明のネットワークのノードを示す。
第２図は無線多重ホップノードのネットワークを示す。
第３図はネットワーク制御ノードにより実行されるプロセスの流れ図である。
第４図、第５図、第６図、第１０図、第１１図、第１３図、第１９図、第２０図、第２２図ないし第２５図はメッセージパケットを示す。
第７図はホップカウントノードによるフラッディングの流れ図である。
第８図は親経路指定プロセスの流れ図である。
第９図はネットワーク制御ノードの初期化プロセスを示す。
第１２図はネットワークノードの初期化プロセスを示す。
第１４図はネットワーク制御ノードにより実行されるグラフ作成プロセスの流れ図である。
第１５図（ａ）はノードのネットワークを示す。
第１５図（ｂ）は第１５図（ａ）のネットワークを表すデータ構造を示す。
第１６図は第２図のネットワークのスパンニングツリーを示す。
第１７図は本発明のフィギュア１７のネットワークのノードに割当てられたアドレスを示す。
第１８図はネットワーク制御ノードのモニタおよび制御プロセスを示す。
第２１図はネットワーク初期化後にネットワークノードにより実行されるプロセスの流れ図である。
好適な実施例についての説明
本発明は、１つの部屋内の光レベルの調節などの簡単な機能を実行するために適当で、光スイッチなどの制御される装置におのおの組込むことができる低コストノードのネットワークに適用される。そのようなネットワークのノードは「資源に乏しい」。経路指定表のような経路指定情報を保存するために不十分なメモリを持つノードを資源に乏しいノードと呼び、発信パケットすなわちメッセージの「最良の経路」を、最短経路、ネットワーク混雑、リンク制御等などの情報を基にして計算するための処理性能が不十分である。好適な実施例は第１図に示すようなネットワークノード１０を含む。各ノードは、モトローラ６８ＨＣ１１マイクロ制御器などの低コストの、４又は８ビットのマイクロ制御器処理ユニット（ＭＰＵ）１２を含む。ＭＣＵ１２はワンチップＲＡＭ１４（３２バイトのオーダー）と、ノードアドレス（すなわち、４バイト）などのプログラム可能で不揮発性の情報を保持するための好ましくはＥＥＰＲＯＭ型のＰＲＯＭ１６と、制御およびネットワーク経路指定プログラムすなわちソフトウエアを保持するＲＯＭ１８（約１または２Ｋバイト）とを非常に限られた量だけ含む。各ノード１０は装置の他のノードと通信できるようにする通常の無線送信器／受信器２０も含む。送信器／受信器２０は低電力装置であって、建物の１ないし３などの数の部屋の寸法の距離などの数十フィートだけを典型的に送信する。ノードは、ＲＡＭなどの資源を最小限有するだけであるから、ノードは経路指定表または判定表に依存する高度な経路指定プログラムを保持できない。ネットワークを管理し、かつネットワーク構成を決定するために、ネットワーク制御ノード（ＮＣＮ）３０と呼ばれる知能的で比較的強力なノードが設けられる。ＮＣＮ３０はＭＰＵ３２、ＲＡＭ３４、ＰＲＯＭ３６、ＲＯＭ３８および送信器／受信器４０の同じバージョンをノード１０として含むことができ、かつ、建物照明調節器などのネットワークおよびシステム制御を行うために適当な従来のディスク記憶装置およびＩ／Ｏ装置を含む、ＰＣまたはワークステーションなどの従来のコンピュータに接続される従来の直列ポート４２も含む。
ＮＣＮ３０は区分したスパンニングツリー（ＰＡＳＴ）経路指定プロトコルを実行する責任を負う。本発明の区分したスパンニングツリー経路指定プロトコルはほとんどあらゆる種類の多重ホップネットワークに応用でき、かつ経路指定表または決定表を使用しない。しかし、それは、資源に乏しい（処理能力およびメモリが乏しい）ノードのネットワークに最も適しており、アドレスを他のノードに割当て、スタート時にネットワークを初期化するのに十分な処理能力とメモリを有するネットワークと制御ノードの使用可能性に依存する。
このプロトコルをより良く理解するために、第２図に示すネットワークについて考えることにする。このネットワークでは、端から端への通信がＮＣＮ６０と資源に乏しいノード６２〜７６の間、および帰りに起きるが、パケットを宛先ノードへ向かって中継するためにパケットを交換すること以外は、７０と７２などの、資源に乏しいノードの間では起きない。プロトコルの動作を説明するために、各ノードがネットワークのいくつかの他のノードの直接無線通信範囲内にある、たとえば、ノード６８がノード６２，６４，６６，７０および７２の範囲内にあるが他のノードの範囲内にはない、放送チャネル・ネットワークの場合について考えることにする。したがって、おのおのの送信器を中心として、送信器のいくつかの付近のノードを設けることができる、重なり合う付近ノード（ノード６６の付近ノードがノード６８の付近ノードに重なり合う）が存在する。
ネットワーク中の全てのノードは共通の放送チャネルを使用する。各送信器がチャネルをモニタすることを求め、通信が無い時のみ送信するようにしている従来のＣＳＭＡ（搬送波検出多重アクセス）を用いて衝突が避けられる。相互に聴取範囲の外にある２つのノードの区域の交差部にあるノードが、２つの近接するノードがチャネルが空いていると考えて同時に送信するものとすると、無効なデータを受信することがある。そのような衝突から回避するために、暗黙のホップ−バイ−ホップ（ｉｍｐｌｉｃｉｔ  ｈｏｐ−ｂｙ−ｈｏｐ）（ＩＨＢＨ）肯定応答技術が用いられる。このＩＨＢＨ肯定応答技術については後で説明する。
７４などの資源に乏しいノードからＮＣＮ６０へ進むパケットは上流へ進むものと言われ、ＮＣＮ６０から資源に乏しいノードまで進むパケットは下流へ進むものと言われる。資源に乏しい各ノードはそれの物理的ＩＤと呼ばれる独特の識別子を持つようにして構成され、または設置中にＩＤをノードに手作業で割当てることができる。
ノード６２〜７６が初めてオンにされると、それらのノードは初期化段階で始動する。その初期化段階ではそれらのノードはＮＣＮ６０からの通信を待つ。大きい制御能力と大きいメモリ容量を持つネットワーク制御ノード（ＮＣＮ）６０は、初期化段階９０（第３図参照）において、最初に、ネットワーク中のノードの数についてユーザーにより入力された情報を基にして、資源に乏しいノードから情報を集めてネットワークの完全かつ正確な表現を、第２図に示すようなグラフの形で形成する。必要とする情報はどのノードが相互に聴取できるかの指示、すなわち、どのノードが他のノードの放送範囲内にあるかのリストである。ホップカウント・プロトコル（後で説明する）でのフラッディング(flooding)を用いて初期化メッセージをネットワークの全てのノードへ放送することにより、情報は得られる。ネットワークの中間レベル中のノードがそれより下のレベルのノードへ放送するように、その放送はレベルごとに進む。こうすることにより各ノードはそれの親ノードであるノード、すなわち、各ノードに最初の初期化放送を送るノード、を記録できるようにされる。ノードは、親経路指定プロトコル（後で説明する）を用いて、戻された応答メッセージを介して、必要とされる情報に応答する。応答メッセージは、親ノードのほかの他のどのノードが聴取できるかを応答メッセージは指示もする。その後でグラフはスパンニングツリーに区分される。その後で、ＮＣＮ６０から、それぞれ、上流または下流に進むパケットに対して、パケットがたどる経路が宛先ノードまたは送りノードのアドレスにより一意に識別されるようにして、ノードに論理（スパンニングツリー−ＰＡＳＴ）が割当てられる。このアドレス指定法では、パケットを受ける、ノード６４などの中間ノードが宛先ノードのアドレス（下流に進むパケットに対して）、またはパケットを送るノードのアドレス（上流に進むパケットに対して）を、その中間ノードのアドレスと比較することにより、前記宛先ノードのアドレスまたは送るノードのアドレスを単に調べる。アドレス比較のみから、中間ノードは、パケットがたどる経路に中間ノードがあるかどうかを告げることができる。中間ノードが経路にあるとすると、それはパケットを進めるが、中間ノードが経路に無ければパケットは捨てられる。アドレスがひとたび割当てられると、ＮＣＮ６０はモニタおよび制御段階９２に入る。その段階では事象およびコマンドに関するメッセージがＰＡＳＴ経路指定プロトコルを用いてネットワークを通される。ＮＣＮ６０の動作の段階の詳細については後で詳しく説明する。しかし、初期化段階の詳細について説明する前に、初期化段階中に利用される２つの経路指定プロトコル、すなわち、１）ホップカウントでのフラディング（ＦＨＣ）および２）親経路指定（ＰＡ）、を理解すると助けになる。それら２つのプロトコルについては第７図と第８図を参照して以下に説明する。しかし、最初にプロトコルを用いて、ネットワーク内を伝送させられる各パケットの構造について説明する。
以下の説明で用いるパケットの構造を第４図に示す。各パケット１００は固定場所に「フラッグ」バイト１０２を含む。このバイト１０２は次のビットフィールド（最下位のビットが右にある）を有する。ビット０と１−後の使用のために留保する、ビット２−パケット優先度：１は「急ぐ」パケットを示し、０は「急がない」パケットを示す。ビット３と４−アドレス指定：１１はパケットが「放送」パケットである、すなわち、パケットをネットワーク内のあらゆるノードで処理すべきことを示し、１０はパケットが「多重キャスト」パケットである、すなわち、群アドレスにより識別される、ネットワーク中の多重ノードがパケットを受けて処理することを示し、０１はパケットが「ユニキャスト」パケットであって、ただ１つのノードに宛てられることを示す。ビット５と６−経路指定型：１１は親経路指定法を用いてパケットを送るべきであることを示し、１０はＦＨＣ経路指定プロトコルを用いてパケットを送るべきであることを示し、０１はＰＡＳＴプロトコルを使用すべきであることを示す。ビット７−進む向き：０はパケットがＮＣＮまで上流へ進むことを示し、１はパケットがＮＣＮから離れて動くことを示す。第２のバイト１０４に独特のＩＤが設けられる。パケット１００の次のフィールド１０６は可変長フィールドであって、宛先（または発信元）ノードの論理アドレスを含む。第４のフィールド１０８は１バイトコマンドを含む。次のフィールド１１０は可変長データフィールドである。パケット１００の最後のフィールド１１２は誤り検査のために用いる検査合計フィールドである。
初期化段階は第４図のパケット１００の、第５図と第６図に示す２つの変更例を用いる。第５図の初期化すなわちＩＮＩＴパケット１２０はＦＨＣ下流経路指定初期化プロセス（第７図参照）中に用いられるのみである。ネットワーク制御ノード（ＮＣＮ）６０は第５図のパケット１２０を、ＮＣＮ６０の直接通信範囲内にある全てのノードへ放送する。ホップカウントでのフラディング（ＦＨＣ）親経路指定法はパケット１２０を放送するために用いる（フラッグバイト内のアドレス指定ビットが１１にセットされる）。各パケット１２０は送りノードの物理的ＩＤ１０４を含む。データフィールド１１０ではＦＨＣのためのホップカウンタ１２２が１にセットされて、送りノードの中間の近接ノードのみがパケットを処理するが、パケットを更に前へ送ることはない（第７図を参照して更に詳しく説明するように）。パケットを送るノードのアドレス１２４はデータフィールド１１０に含まれる。パケット１２０は、ＩＮＩＴパケットの送り元がＮＣＮから離れるホップ１２６の数も含む。第５図と第６図の例では、ＩＮＩＴパケット１２０はＩＤがｅｃ３ｆ（ｈｅｘ）であるノードから送られ、ＩＤが６ｂｆ１（ｈｅｘ）であるノードにより受けられる。ホップカウント・フィールド１２２が、ＩＮＩＴパケット１２０が１ホップだけ超えて伝わらないようにするから、パケット内のアドレスフィールド１０６はｆｆｆｆ（ｈｅｘ）に常にセットされる。第６図の応答すなわちＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０は上流親経路指定プロセス（第８図参照）で用いられるだけである。パケット１３０のアドレス・フィールド１０６はＮＣＮ６０のアドレス（００００ｈｅｘ）にセットされる。データフィールド１１０の中に、経路指定フィールドのための親アドレスと呼ばれるフィールド１３２が含まれ、それの内容が、そのパケット１３０を受けるあらゆる中間ノードの親ノードのＩＤにより置き換えられ、それを送る（放送する）。第２のフィールド１３４は、ＮＣＮ６０により作成されるネットワークグラフのための親ノードアドレスを含む。ＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０を送る最初のノードのアドレスが次のフィールド１３６に保存され、ＮＣＮから最初のノードのホップカウント内の距離が次のフィールド１４０に保存される。
第７図に示すように、ホップカウント（ＦＨＣ）でのフラッディング経路指定法は各ＩＮＩＴパケット１２０内の最大ホップカウンタ（フィールド１２２）を用いて、パケットが発信元ノードから放送ネットワーク内のそれの宛先まで伝わる時にそのパケットが取ることができるホップの最大数を指示する。発信元ノードはパケットがそれの宛先に到達するまでに要するホップの正確な（または最小）数を知らなければならない。独特のパケットＩＤがパケットにまた挿入される。パケットを受ける（１５０）あらゆる中間パケット、たとえばパケット６４が、パケットがＦＨＣパケットであるかどうかを判定し（１５２）、もしそうでなければそのパケットを捨てる（１５４）。もしそうであればノードはホップカウンタを調べて（１５６）、それを１だけ減少する（１５８）。カウンタが零に達すると、パケットは再送信されない。さもなければ中間ノードは付近のものが聴取するためのパケットを放送する（１６０）。パケットが付近のノードから再び受けられたとすると、そのパケットが捨てられるように、パケットの識別子は妥当な長さの時間だけ記録もされる。ノードが障害を起こさなければ、ホップカウントが零になる前にパケットは宛先ノードに確実に到達する。このパケット経路指定法はＮＣＮから上流へ進むパケットはもちろん、下流へ進むパケットにも使用できる。パケットにおいて指定される宛先ノードの物理的ＩＤはそのパケットを処理すべきであって（１６４）、更に送るべきではないことを知るために宛先ノードにより使用される（１６２）。ネットワークの切り離されている部分にパケットの多重コピーが存在することがあるかもしれないから、この経路指定法は効率が非常に悪いことを知ることは容易である。パケットのいくつかのコピーが宛先ノードから離れて進むことがあり、そのためにネットワークの資源をむだにする。この経路指定法の詳細を、ＲＡＮＤ  Ｃｏｒｐｏｒａｔｉｏｎ，Ｍｅｍｏｒａｎｄｕｍ  ＲＭ−３１３０−ＰＲ，Ａｕｇｕｓｔ，１９６４Ｂｏｅｈｍ，Ｓ．Ｐ．およびＰ．Ｂａｒａｎ「広帯域分布通信ネットワークにおけるホット−ポテト経路指定のデジタル・シミュレーション（Ｄｉｇｉｔａｌ  Ｓｉｍｕｌａｔｉｏｎ  ｏｆ  Ｈｏｔ−Ｐｏｔａｔｏ  Ｒｏｕｔｉｎｇ  ｉｎ  ａ  Ｂｒｏａｄｂａｎｄ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｎｅｔｗｏｒｋ）」から更に得ることができる。第７図は、ホップカウントでのフラッディングによる経路指定中に実行される動作の一般化した記述を与えるものであって、制御器における本発明のプロセス内の経路指定プロトコルの性能（６０）と、資源に乏しいノードにおける本発明のプロセス内の経路指定プロトコルの性能（６２〜７６）について、第９図および第１２図を参照して詳しく説明する。
第８図に示す親経路指定法はＮＣＮ６０へ向かって上流に進むパケットの経路指定のためにのみ有用である。ネットワーク内の各ノードは直接通信範囲内にあって、ＮＣＮに最低１ホップだけ近いノードの物理的ＩＤを保存する。ＩＤが保存されているノードを親ノードと呼ぶ。発信元ノードはそれの親ノードのＩＤを出るＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０に挿入し、そのパケットを放送する。パケット１３０を受ける中間ノードは（１７０）、経路指定フラッグを調べて（１７２）それのタイプが親経路指定であることを確認し、それが正しいタイプでなければそのパケットを捨てる（１７４）。それが正しいタイプであればノードはそれに含まれている宛先アドレスを調べる（１７６）。アドレスが中間ノードのアドレスでなければ、親アドレスを調べる（１７８）。親アドレスが中間ノードのアドレスであれば、そのアドレスを中間ノードの親ノードのアドレスで置き換え（１８０）、パケットを送る（１８２）。これは、宛先ノード（ＮＣＮ６０）がパケット１３０を受けてＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０を処理する（１８４）まで続けられる。したがって、パケット１３０は１つのノードから、ＮＣＮに１ホップだけ近いそれの親ノードまでホッピングすることによりＮＣＮまで進む。この経路指定法は、パケット中に現れるＩＤを有するノードのみがパケットを先へ中継するから、ホップカウントでのフラッディング（ＦＨＣ）よりも効率的である。第８図は、親経路指定中に実行される動作の一般化した記述を与えるものであって、制御器における本発明のプロセス内の経路指定プロトコルの性能（６０）と、資源に乏しいノードにおける本発明のプロセス内の経路指定プロトコルの性能（６２〜７６）とについて、第９図および第１２図を参照して詳しく説明する。
第９図に示すように、開始段階９０中はネットワーク制御ノード（ＮＣＮ）６０は、ユーザーがネットワーク中のノードの数を指定した後で、第５図に示すように、ＩＤ（フィールド１０４）が零で、ＦＨＣホップカウント（フィールド１２２）が１である初期化パケット１２０を作成する（２００）ことによりスタートする。その後でこのパケットを送る（２０２）。そうするとＮＣＮ６０はパケットを受けるまで待つ（２０４）。その後で、ＮＣＮ６０は、経路指定タイプがＦＨＣであるかどうかを判定する（２０６）。その判定の結果が否定であれば、そのパケットの経路指定法が親経路指定タイプであるかどうかについての判定を行う（２０８）。その判定の結果が否定であれば、そのパケットを捨てる（２１０）。パケットがＦＨＣ経路指定により経路指定されたとすると、それが開始パケット１２０であるかどうかについて判定する（２１２）。それが開始パケット１２０でなければそのパケットを捨てる。それが開始パケット１２０であれば、ホップカウントが１であるかどうかの判定を行う（２１６）。もしそうであれば、第２図のネットワークのように、ノードをネットワークのノードのグラフに挿入する（２１８）。この挿入動作（２１８）は、ＮＣＮノードＩＤを含む親経路指定された応答パケット１３０をＮＣＮが受けて、認識した場合（２１９）にも行われる。そのグラフのための全てのノードがグラフに入れられていない（２２０）、すなわち、ユーザーが指定したネットワークのノードの数がグラフ中のノードの数に等しくないとすると、装置は戻って他のパケットを待つ（２０４）。グラフが完全であれば、ＮＣＮ６０は論理区分されたスパンニングツリー（ＰＡＳＴ）アドレスをノードに割当てる。それについては後で詳しく説明する。論理アドレスが割当てられると（２２２）、ＮＣＮ６０はそれのアドレスの各ノードに知らせる。これは、ＳＥＴ＿ＡＤＤＲＳパケット２４０（第１０図参照）を作成し（２２４）、それらをノード６２〜７２へ送る（２２６）ことにより行われる。
各ＳＥＴ＿ＡＤＤＲＳパケット２４０は、第１０図に示すように、宛先ノードの物理的ＩＤ１０４と、その宛先に割当てられた論理ＰＡＳＴアドレス２４２とを含み、したがって、宛先ノードはそのパケットを受けて、それをそれの論理ＰＡＳＴアドレスに保存できる。パケット２４０は前記ホップカウントでのフラッディングを用いて経路指定される。ＮＣＮから各ノードへの正確なホップカウント２４４は、この情報が宛先ノードから受けたＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケットの部分であったことから、知られる。パケット２４０は論理アドレス中のビットの数の指示２４６も含む。ＳＥＴ＿ＡＤＤＲＳパケット２４０を受けるノードは、ＲＥＳＰＯＮＳＥ＿ＳＥＴ＿ＡＤＤＲＳパケット２５０（第１１図参照）をＮＣＮ６０へ送ることにより、それのＰＡＳＴアドレスの受取りを確認する。それらのパケット２５０は親経路指定法を用いて経路指定される。
経路指定のタイプの判定における初期化段階中の資源に乏しいノード６２〜７６の動作は、第１２図の同じ動作の参照番号により示されているＮＣＮ６０におけるそれと同じである。ホップカウント検査を行った（２１６）後で、ＩＮＩＴパケット１２０を初めて受ける各ノード（２４０）はパケット１２０の送り元の物理的ＩＤを保存し、その送り元をそれの親ノードとしてマークする（２４２）。また、受けるノードはパケット内の値に１を加える。それはＮＣＮ６０からのホップの数をＩＮＩＴパケット１２０の送り元に与え、その結果を受けるノードがネットワーク制御ノード（ＮＣＮ）６０から離れるホップの数として保存する。その後で受けるノードはＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０を作成して（２４４）、それをＮＣＮ６０へ送り（２４６）、ＩＮＩＴパケット１２０を送ったノード（すなわち、親ノード）の直接通信範囲内に受けるノードがあることをＮＣＮ６０に知らせる。ＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０は前記親経路指定法を用いて経路指定される。したがって、まず初めに、各ＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０は、そのパケットを作成したモードの親ノードの物理的ＩＤと、応答パケット１３０を送るノードの物理的ＩＤと、ＮＣＮ６０から離れるホップの数とを含む。その後でノードはこのパケットを放送するが、パケット中に現れるＩＤを有する親ノードのみが、それのＩＤをそれ自体の親ノードのＩＤと置き換えた後でパケットを再送信する。したがって、ＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０が、パケット１３０を発生させた初期化パケット１２０の送り元により最初に送られる。ＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０を受けると、ＮＣＮ６０はグラフにエントリを作成してＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０を送った発信元ノードを表す。パケット１３０の送り元を表すエントリと、パケット１３０を送らせたパケット１２０を有するノードとを接続するために、グラフに弧が形成される。その弧は実際にはリンクされたデータ構造におけるポインタである。ＮＣＮ６０からパケット１３０の送り元（発信元）のホップの数も保存される。
パケット１２０を初めて受けるノードは、パケット１３０をＮＣＮへ送る（２４６）ことに加えて、ホップカウント１を有するＩＮＩＴパケット１２０と、ｆｆｆｆ（ｈｅｘ）のＩＤを作成し（２４８）（第１２図参照）、聴取する全ての中間ノードへそれを放送する（２５０）。
最初のパケットに続いてＩＮＩＴパケット１２０を受けるノードは、パケット１２０の送り元の物理的ＩＤを親としては保存しない。それは初期化パケット１２０を作成および放送することも止める。しかし、ノードはＨＥＡＲ＿ＩＮＩＴパケット２６０を作成する（２５２）。このパケット２６０の構造と目的はＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０に類似し、第１３図に示されている。しかし、ＨＥＡＲ＿ＩＮＩＴパケット２６０は、ＨＥＡＲ＿ＩＮＩＴパケット２６０を送り出すノードからＮＣＮ６０の到達するためにＲＥＳＰＯＮＳＥ＿ＩＮＩＴパケット１３０がたどった経路と同じ経路をたどる。パケット２６０はＮＣＮ６０に弧をグラフに挿入もさせて、パケット２６０の送り元と、パケット２６０を発生させたパケット１２０の送り元とを接続する。
受けられるパケットがこのノードのために設定すべきアドレスであると判定されると（２５４）（第１２図）、論理アドレスを保存し（２５６）、ネットワーク通信と、第１２図を参照して説明する制御段階とに入る。グラフを作成するプロセス２１８（第９図参照）を第１４図に一層詳しく示す。ＮＣＮ６０がパケットを受けると（２７０）、そのパケットを検査してパケットのタイプを判定し（２７２）、それが誤ったタイプであればそれを捨てる（２７４）。正しいタイプのパケットを受けたら、送り元と親とのアドレスを取り出し（２７６）、第１５図（ａ）と第１５図（ｂ）を参照して後で説明するリンクされたデータ構造リストエントリを作成する（２７８）。そのエントリにデータを挿入する（２８０）。その後でＮＣＮ６０は、親に対するリンクされたリストにエントリが存在するかどうかを判定する（２８２）。その判定が否定であればその親に対するエントリを作成する（２８４）。次に、エントリの間のポインタをエントリに挿入する（２８６）。その後で、第９図を参照して既に説明したステップ２２０と２２２を行う。
ネットワーク中の資源に乏しい各ノード６２〜７６からＮＣＮ６０が応答パケット（１３０／２６０）を受けるまで、グラフ作成プロセスは継続する。したがって、それはネットワーク中のあらゆるノードおよびリンクを表すことができる。結果としてのグラフは第２図のそれに類似し、第１５ａ図と第１５ｂ図に示すリンクされたリストなどのリストとしてメモリ内で表される。第１５ａ図は、物理的識別子（ＩＤ）３ａｂｃと７６９を有するノードと通信できるＮＣＮ３００を示す。ノード３ａｂｃはＩＤ２０９、１５２、６２２を有するノードと、ノード７６９およびＮＣＮ３００と通信できる。ノード７６９はＩＤ１５２、６２２を有するノードと、ノード３ａｂｃおよびＮＣＮ３００と通信できるが、ＩＤ２０９を有するノードとは通信しない。ＩＤ２０９、１５２、６２２を有するノードは聴取でき、グラフ接続で示されているようにノードへ送る。この構成は、第１５ｂ図のポインタを向けられたリンクされたリストデータ構造内に反映される。図から分かるように、リスト３１０内の各項目すなわちエントリ３１２は、対応するノードの物理的ＩＤを含んでいるブロックＩＤフィールド３１４と、親ノードを識別する親ＩＤフィールド３１６と、根ノードすなわちＮＣＮへのホップの数のカウントを含むホップカウント・フィールド３１８と、現在のノードが聴取でき、かつ通信でき、更にパケット２６０を送るネットワーク中の更に下流のノードを識別する１つまたは複数の子ポインターフィールド３２０と、現在のノードに初期化パケット１２０を送った最初のノードを識別する親ポインター３２２とを含む。各エントリ３１２はＰＡＳＴアドレスを保存するフィールド３２４も含む。そのＰＡＳＴアドレスは対応するノードに割当てられる。この種のグラフは初期化の次の段階でネットワーク制御ノード（ＮＣＮ）により使用されてスパンニングツリーを構成し、アドレスをスパンニングツリーのノードに割当てる。
ネットワークの初期化における次の段階は、別々のスパンニングツリーデータ構造（グラフ）をＮＣＮのメモリに組み込まれている元のグラフから得ることより成る。スパンニングツリーグラフは別々のグラフ（リンクされたリストデータ構造）として構成され、将来のネットワーク変更および追加のために元のグラフが維持される。このプロセスは図のグラフの修正した深さの最初のサーチを含む。深さの最初のサーチでは、子の１つ（最も右）が選択されるような子をあるノードが有するならばそのノード（最も右）が選択され、そのノードが子を有するならばそれが選択される、等、葉に遭遇するまでその操作を繰り返す。その点で葉ノードの親のきょうだい深さを最初にサーチされる。このタイプのサーチでは、プロセスは、他の経路が処理される前に、１つの経路に沿ってできるだけ深く進む。ある幅の最初のサーチでは、ネットワーク中の各レベルにおける全てのノード（きょうだい）を、より深いレベルにあるノードを処理する前に、処理する。本発明の修正した深さの最初のサーチでは、レベルを２つのレベルに分割できる操作により各レベルの幅が最小にされて、結果としてのアドレスの長さを最適にすることを支援する。この説明では第２図を元のグラフすなわちソースグラフとして使用する。この段階では資源に乏しいノードは含まれず、この段階全体はＮＣＮのメモリ内で起きる。これは、その中でいくつかの物事が起きる（スパンニングツリーの作成およびアドレス割当て）のような回帰動作であって、かつ流れ図では容易には表されない。ＮＣＮ６０は、スパンニングツリーの根をそれ自体で考察することによりスタートし、グラフ中の付近のノードの実際の数に１を加えることにより付近のノードの数を計算する。たとえば、ＮＣＮ６０は２つの付近ノードを有するから、計算した付近ノードの数が存在する。付近ノードの計算した数が２の累乗であるとすると、各付近ノードは子ノードとしてスパンニングツリーに入れられる。現在の例ではそれは入れられない。付近ノードの計算した数が２の累乗でないとすると、付近ノードのいくつかをスパンニングツリー内の子ノードから除外でき、または除外できない。これを判定するために、ＮＣＮ６０は、付近のノードの数より小さい、↓２で示す、２の最大累乗を計算し、かつ、付近のノードの数より大きい、↑２で示す、２の最小累乗を計算する。付近ノードの数が↓２より↑２に近いとすると、全ての付近ノードは子ノードとしてスパンニングツリーに入れられる。しかし、付近ノードの数が↓２に近いとすると、グラフ中のどの付近ノードをスパンニングツリー内の子モードであることから排除できるかを判定しようとする。↑２と↓２への近さが同じ場合には、ＮＣＮ６０はいくつかの付近ノードを除外することを判定する。この判定のために、ＮＣＮはグラフの弧をたどって、他の付近のどの１つからいずれかの付近ノードに到達できるかを調べる。この例では、ノード６２にノード６４から到達できる。他の任意の付近ノードから到達できる任意の付近ノードは子ノードとしてスパンニングツリーに入れられず、付近ノードの数が１だけ減少させられる。付近ノードの数が↑２に到達すると、現在のノードの付近ノードに対して除外プロセスが直ちに停止する。それらの除外された付近ノードは将来スパンニングツリーに入れられる。スパンニングツリー内の子ノードとして考えることから付近ノードを除外できない、とＮＣＮ６０が判定したとすると、全ての付近ノードはツリーに入れられる。スパンニングツリーに入れられる各付近ノードは訪ねさせられたものとマークされ、入れられた各付近ノードにおいて上記手順をスタートして再び実行され、したがって、付近ノードに根を生やしたスパンニングサブツリー(spnning sub-tree)を構成する。付近ノードが訪ねさせられたものとマークされたことが判明したとすると、それは、訪ねさせられたノードに根を生やしたスパンニングサブツリーが既に存在することを指示する。このプロセスは、まだ訪ねさせられていない次の付近ノードで更に進む。
付近ノードの数が↑２に近くないとすると、いくつかの付近ノードをスパンニングツリー内の子ノードであることから除外使用とする特別な努力の背後の理由は、スパンニングツリーの幅を最小に保つことである。これは、論理ＰＡＳＴアドレスを割当てるプロセスを以下に説明するとにより良く理解される。
この段階が終ると、元のグラフとは別の、（第２図参照）、すなわち、ＮＣＮ６０に根を生やし、かつその中に、第１５図に示すように、ＮＣＮ６０からネットワーク中のあらゆるノードまで、およびその逆、の単一の経路が存在するようなスパンニングツリー３３０がＮＣＮのメモリに存在する。このグラフは第１５ｂ図に示すデータ構造に類似するデータ構造により表されることに注目されたい。ＮＣＮ６０を除く、全てのノード（６２〜７６）は、ＮＣＮ６０に１ホップ近い親ノードを有する。葉ノード（６６、７０、７４および７６）を除く全てのノードは、ＮＣＮ６０から１ホップ離れた子ノードを有する。ノードは、親を共通に持つきょうだいノードを持つことができ、または持たないことができる。第２図の他のスパンニングツリーはもちろん可能である。
論理区分されたスパンニングツリー（ＰＡＳＴ）のネットワーク初期化プロセスの最後の段階では識別子がネットワークの各ノードに割当てられる。更に詳しくいえば、アドレスを各ノードに割当てることができる。この文書の残りではアドレスという用語を用いる。この割当て法では、各子はそれの親のアドレスを引き継ぐ。そのアドレスは、それのレベルにおけるそれ自体の独特のアドレスに組合わされる。このために、ＮＣＮ６０は、全部０ビットより成るアドレスをそれ自体に割当てられることによりスタートする（このアドレスの長さは、資源に乏しいノードへのアドレスの割当てを基にしており、長さはスパンニングツリーの葉ノード６６、７０、７４および７６のアドレスの長さと同じである）。
その後でＮＣＮ６０は、ＮＣＮ６０のスパンニングツリー内の子ノードの実際の数に１を加えることにより子の数を計算する。この例ではこれは２である。その後で、各子ノードを一意にアドレスするために要するビットの最小数、たとえばｎを計算する。スパンニングツリーの作成中に任意の付近ノードが子として除外されたとすると、↑２は、ここで計算したビットの数まで増加した２の累乗でなければならない。付近ノードが除外されないとすると、ビットの数は↓２まで、またはグラフ中の付近ノードの数に正確に等しい２の累乗まで進むべきである。第１６図の例ではこれは１ビットである。各子ノードに割当てられる論理ＰＡＳＴアドレスは、それを他の全ての子ノードから区別する独特のｎビットパターンで構成される。それらのｎビットは独特の子部分と呼ばれる。第１７図に示す例では、ｎビットはアドレスの最上位ビットを構成するから、最上位ＰＡＳＴビットとも呼ばれる。アドレスビットへの独特の部分の他の割当てが可能であることがわかるであろう。
ＮＣＮ６０のスパンニングツリー内のそれの子にＰＡＳＴアドレスを割当てた後で、ＮＣＮ６０は各子ノードに根を生やしたサブツリーで上記手順を続行する。スパンニングツリー内の任意のノードのアドレスの独特の部分（第１７図の例では、独特の部分はｋ個の最上位ＰＡＳＴビットにより構成される）はツリー内のそれの親ビットの、独特の子部分（この例では、独特のｍビットパターン、ｍは各きょうだいを独特にアドレスするために必要なビットの再小数である）に連結された独特の部分を備える。したがって、この例では、きょうだいのアドレスはｍ個の最下位ビットだけ異なる。あらゆるノードのアドレスを同じ長さで出現させるために、ｋビットＰＡＳＴアドレスの右に０ビットが付加ビットとして用いられる。
この手順の結果を第１７図に示す。この図では最上位のＰＡＳＴビットに実線下線を施している。各ＰＡＳＴアドレスに付加して同じ長さにするために用いる０ビットには下線を引いていない。第１７図で、葉ノード７６はそれのアドレスのために６ビットを要するから、全てのノードアドレスに０を付加して６ビットアドレスを得る。第１７図を調べてわかるように、各子ノードは子の親の最上位ビットを含む。
前記したように、各ノードがアドレスを持つと、アドレスはネットワーク制御ノード（ＮＣＮ）６０により資源に乏しいノード６２〜７６に送られて、それのＰＲＯＭに保存される。これで初期化段階は終る。
第１８図に示すように、初期化段階と制御段階中はＮＣＮ６０はユーザーからの入力を待つ。特定の動作などの動作を実行することをノードに命令（指令）するため、またはノードに質問してなんらかの情報を戻すことをそのノードに頼むために、ＮＣＮ６０は、適切なコマンドを中に持つ第１９図に示すＳＥＮＤ＿ＶＡＬＵＥパケット３６０を作成する（３４２）。パケット３６０を送り（３４４）、ＮＣＮ６０は戻りパケットを待つ（３４６）。受けるノードは、動作が実行されるか、質問が終るかすると、第２０図に示すＲＥＳＰＯＮＳＥ＿ＳＥＮＤ＿ＶＡＬＵＥパケット３６２を用いて結果を戻す。このパケットがＰＡＳＴプロトコルを用いて経路指定されたパケットであるかどうかを調べ（３４８）、もしそうでなければＮＣＮ６０はそのパケットを捨てる（３５０）。ＮＣＮ６０は、パケットが応答パケット３６２であるかどうかも判定し（３５２）、もしそうであれば、表示または装置状態を更新するなどにより、パケット３６２をそれに応じて処理する（３５４）。
初期化段階が終った時に論理ＰＡＳＴアドレスを受信および保存した後では、各ノード（６２〜７６）は、パケットを区分したスパンニングツリー（ＰＡＳＴ）プロトコルを用いて経路指定すべきであることをフラグバイトが指示するようなパケットを経路指定できる。ＮＣＮ６０から下流へ進んでいるパケットのモニタおよび制御段階中は、ＰＡＳＴを用いて各パケットを経路指定し、かつ各パケットは宛先ノードのＰＡＳＴアドレス、たとえば、ノード７０が宛先ノードである時は１１０１１１を含む。ＮＣＮまで上流に進むパケットは送り元ノードのＰＡＳＴアドレス、たとえば、ノードが発信元ノードであれば１１１０００を含む。第２１図に示す中間ノードは、パケットを受けると（３７０）、そのパケットが正しいプロトコルを用いて経路指定されたかどうかを判定する（３７２）。プロトコルが正確であれば、パケットアドレスをノードアドレスと比較する（３７６）。もし一致しなければノードはそれ自体のＰＡＳＴアドレスの最上位ｋ個のビットをパケット内のＰＡＳＴアドレス（下流パケットのための宛先ノードのＰＡＳＴアドレス、または上流パケットのための送り元ノードのＰＡＳＴアドレス）と比較する（３７８）。ｋビットの全てが２つのアドレスで一致したとすると、中間ノードはＮＣＮ６０から宛先／送り元ノードまでの直接経路に明確に存在する。したがって、中間ノードはそれに送られたパケットを再送信する（３８０）。パケットのアドレスのｋビットと一致しないｋビットを有するＰＡＳＴアドレスを持つパケットを受信しても、その受信した全てのパケットの再送信は止められて、そのパケットを捨てる（３８２）。宛先アドレスがノードアドレスに一致したとすると、パケットを処理し、それの内部コマンドを実行する（３８４）。実行された特定のプロセスを基にして、結果をＲＥＳＰＯＮＳＥ＿ＳＥＮＤ＿ＶＡＬＵＥパケット３６２（第２０図参照）に置き（３８６）、このパケットを送る（３６２）。経路指定プロトコルがＰＡＳＴプロトコルでないとすると、ノードはそのプロトコルがホップカウントでのフラッディング（ＦＨＣ）・プロトコルであるかどうかを判定し（３９０）、もしそうでなければパケットを捨てる（３９１）。パケットがＦＨＣパケットであれば、そのパケットがＩＮＳＥＲＴパケット（第２２図参照）であるかどうかについて判定する（３９２）。それがＩＮＳＥＲＴパケットでなければ、そのパケットがＩＮＩＴパケット１２０（第５図参照）であるかどうかについて判定する（３９４）。それがＩＮＩＴパケットであれば、ノードは初期化段階に入る（３９６）。パケットがＩＮＳＥＲＴパケットであれば、ノードはＨＥＡＲ＿ＩＮＩＴパケット４０１（第２５図参照）を作成する（３９８）。その後でそのパケットを送る（３８０）。
ネットワークを初期化した後で、すなわち、資源に乏しいノードがそれの論理ＰＡＳＴアドレスを受けた後で、新しい資源に乏しいノードをネットワークに付加する必要があるかもしれない。最も簡単な解決策は全ネットワークを上記のようにして再初期化することである。しかし、多くの環境ではこれは望ましくないことがある。代わりの解決策として、資源に乏しい各新しいノードはＩＮＳＥＲＴパケット４００を放送できる（第２２図参照）。このパケットはそれの付近ノード（既に初期化されている）により聴取される。付近ノードはＨＥＡＲ＿ＩＮＩＴパケット４０１（第２３図参照）を作成し、ＰＡＳＴプロトコルを用いてそれをＮＣＮ６０へ送る。ＨＥＡＲ＿ＩＮＩＴパケットは新しいノードの物理的ＩＤと、そのパケットを作成したノードのＩＤとを、ＮＣＮ６０までのそれのホップカウントと一緒に含む。ＮＣＮ６０は、新しいノードの多数の付近ノードからＨＥＡＲ＿ＩＮＩＴパケットを集めた後で、スパンニングツリー内の新しいノードのための最良の場所を選択しようと試みる。良い場所というのは、ＰＡＳＴアドレスまたは他のノードのＰＡＳＴアドレスの長さをほとんどまたは全く変更することなしに、論理ＰＡＳＴアドレスを新しいノードに割当てることができるような場所のことである。第１７図の例では、新しいノードを、物理的ＩＤが２であるノード（ノード６４）の子としてスパンニングツリー内に容易に挿入できる。他のどのような配置も他のノードの論理ＰＡＳＴアドレスを変更することを要する。したがって、新しいコードをノード６４の付近に挿入することを要するものとすると、ＮＣＮは論理ＰＡＳＴアドレス１０１０００をこの新しいノードに割当てる。しかし、新しいノードをノード６４の付近の外側に挿入することを求められたとすると、新しいノードのＰＡＳＴアドレスに適合させるために、論理ＰＡＳＴアドレスのいくらかを変更することが求められる。ＮＣＮ６０は、新しいＰＡＳＴアドレスをノードの全てまたは多くに再び割当てることを必要とすることがある。ノードの変更されたＰＡＳＴアドレスと、新しいノードの新しいＰＡＳＴアドレスとを、ＳＥＴ＿ＡＤＤＲＳパケットを用いて広め、ＦＨＣ経路指定を用いて送る。要求があれば、ＮＣＮ６０は初期化手順全体をスタートさせることができる。
ノードの障害を検出するために、本発明では端から端までの肯定応答を用いる。ＮＣＮ６０が情報についての要求または質問をあるノードに送り、応答を受けなかったとすると、宛先までの経路中のノードが障害を起こしたかもしれないとそのＮＣＮは仮定する。その後でＮＣＮは宛先ノードまで導くスパンニングツリー内の経路に沿う横断を開始し、それに続いてＥＣＨＯ（第２４図参照）パケット４０２をＰＡＳＴプロトコルを用いて経路中の各ノードまで送り、ＰＡＳＴプロトコル応答を待つ。ＥＣＨＯパケット４０２を受けるノードは、それを単にコピーしてＮＣＮ６０へ送り返すことにより、ノードが正しい動作状態にあることをＮＣＮ６０に知らせる。ＥＣＨＯパケット４０２が受けられないと、ＥＣＨＯパケット４０２によりアドレスされたノードが故障したことをＮＣＮ６０に指示する。そうすると、ＮＣＮ６０はスパンニングツリーを再構成して、故障したノードに根を生やしているスパンニングツリーをネットワークの異なる部分に接続して、サブツリーの新しい親が全ての新しい子の聴取範囲内にあるようにする。元のグラフ内の親ノードから下流ノードまでの弧を無くし、前記したスパンニングツリーおよびアドレス割当て動作をを行うことにより、この再構成は行われる。ＮＣＮ６０は、サブツリーの全てのノードをスパンニングツリーの他の部分に確実に再接続するために、サブツリーの部分を分解しなければならないことがある。その後でＮＣＮ６０は新しい論理ＰＡＳＴアドレスをスパンニングツリーの再構成された部分に割当てパケット２４０を送り出して、影響を受けたノードにそれのＰＡＳＴアドレスの変更について知らせる。また、故障したノードがネットワークの重要な部分にあるものとすると、ネットワークの完全な再初期化を必要とすることがある。
本発明で用いる暗黙のホップ−バイ−ホップ肯定応答（ＩＨＢＨ）法も、ノードの故障を検出することを支援する。パケットを送る各発信元ノードまたは中間ノードは、それの付近ノード（スパンニングツリー内の同じ経路にあるノード）により送られているパケットを聴取することを予測する。指定された時間内に、再送信が聴取されないとすると、発信元ノードまたは中間ノードは、ノードの障害がそれのパケットがスパンニングツリーの経路をたどることを阻止するものと仮定する。その後で、発信元ノードまたは中間ノードが、ＦＬＡＧバイト中の放送ビットが適切にセットされているＳＱＵＥＡＬパケット４０４（第２５図参照）を送り出す。ＳＱＵＥＡＬパケット４０４は送りノードのＰＡＳＴアドレスを含み、かつそれはホップカウントでのフラッディング・プロトコルを用いてＮＣＮ６０へ経路指定される。その後でＮＣＮ６０は、障害を訴えているノードまでの経路に沿うどのノードが故障したかを発見するためのそれの手順を開始する。それに、ネットワークの一部または全ての再構成が続く。
本発明の多くの特徴および利点が詳細な説明から明らかであり、したがって、本発明の範囲に含まれる本発明のそのような特徴および利点の全てを請求の範囲により包含することを意図するものである。更に、数多くの修正および変更が当業者には容易に浮かぶから、図示し、説明した構造および動作そのものに本発明を限定することを希望せず、したがって、本発明の範囲内に含まれる全ての適当な修正および均等物に頼ることができる。たとえば、各パケット内のデータ要素の機能性が新しいパケットフォーマットの類似の他のフィールドにより提供される限り、上記パケット構造を変更できる。ＮＣＮにおいて実行され、各ノードの子ノードを一意に識別するビットフィールドを有するＰＡＳＴアドレスを新しいアルゴリズムが発生できる限り、ノードのためのＰＡＳＴアドレスを発生するために使用されるアルゴリズムを変更できる。全てのノードはメモリおよび処理能力に関して資源に乏しくする必要はなく、プロトコルはどのようなタイプのノードに対しても働く。ＰＡＳＴプロトコルはネットワークをＮＣＮのみと各ノードの間、およびバック、のみに限定しないが、非ＮＣＮノードの間の通信のために使用することもできる。２つの非ＮＣＮノードの間の通信はパケットをＮＣＮへ最初に送ることにより達成できる。それはそれらを適切な宛先へ送ることができる。この説明は２の累乗を用いるスパンニングツリーの幅の最小化を記述する。この最小化は実行する必要はなく、ＰＡＳＴアドレスの長さを最適にするために設けられているものである。ＮＣＮにおいてグラフで表すために用いるリンクされたリストデータ構造を、他の任意のタイプのデータ構造（たとえば、アレイ）で置き換えることができ、リンクされたリストデータ構造の各要素の機能性が新しい要素または新たな順序にされた要素で満たされる限り、それらの要素の順序を変更できる。
【図１】
0003821847.tif 000002
【図２】
0003821847.tif 000003
【図３】
0003821847.tif 000004
【図４】
0003821847.tif 000005
【図５】
0003821847.tif 000006
【図６】
0003821847.tif 000007
【図７】
0003821847.tif 000008
【図８】
0003821847.tif 000009
【図９】
0003821847.tif 000010
【図１０】
0003821847.tif 000011
【図１１】
0003821847.tif 000012
【図１２】
0003821847.tif 000013
【図１３】
0003821847.tif 000014
【図１４】
0003821847.tif 000015
【図１５ａ】
0003821847.tif 000016
【図１５ｂ】
0003821847.tif 000017
【図１６】
0003821847.tif 000018
【図１７】
0003821847.tif 000019
【図１８】
0003821847.tif 000020
【図１９】
0003821847.tif 000021
【図２０】
0003821847.tif 000022
【図２１】
0003821847.tif 000023
【図２２】
0003821847.tif 000024
【図２３】
0003821847.tif 000025
【図２４】
0003821847.tif 000026
【図２５】
0003821847.tif 000027