アドレス指定とルーティング
アドレス指定とは、制御ネットワークのトポロジが一意のアドレスにマップされることを意味します。
ノードアドレスは階層的に構成されています。
ネットワーク接続ごとに、関連付けられたブロックドライバーがローカルアドレスを決定します。これにより、ローカルネットワーク内のノードが一意に識別されます。完全なノードアドレスは次のように形成されます。ローカルアドレスは、親によって割り当てられたローカルネットワークのサブネットインデックスの前に付加されます。次に、サブネットインデックスは、親のノードアドレスの前に配置されます。
これにより、サブネットインデックスの長さ(ビット単位)がデバイスによって決定されます。逆に、ローカルアドレスの長さは、ネットワークのタイプによって決まります。
メインネットワークのないノードは、アドレス0のトップレベルノードです。親を含まないメインネットワークのあるノードも、同様にトップレベルノードです。メインネットワークのローカルアドレスが与えられます。
ここで制御ネットワークの例を参照してください。

この例では、ノードのアドレスは16進表記で表されています。最初の4桁は、メインネットワーク内のそれぞれの親のアドレスを表します。たとえば、 0x007A=122
にとって PLC1
。次のバイト(青色のフォント)はサブネットインデックス用に予約されており、その後にローカルアドレスが続きます(例: C=12
ノードIDの場合 12
)。アドレスの構造化により、無駄のないルーティングアルゴリズムが可能になります。したがって、たとえばルーティングテーブルは不要です。情報はローカルでのみ照会されます。つまり、独自のアドレスと親ノードのアドレスを介して照会されます。これに基づいて、ノードはデータパッケージを正しく処理できます。
宛先アドレスが現在のノードのアドレスに対応している場合、これは受信者であることを意味します。
宛先アドレスが現在のノードのアドレスで始まる場合、データパッケージはノードの子または子孫を直接対象としているため、転送する必要があります。
他のすべての場合、レシーバーは現在のノードの子孫ではなく、データパッケージはそれ自体の親に転送される必要があります。
相対アドレス指定 は特殊なケースです。相対アドレスには受信者のノード番号は含まれていませんが、送信者から受信者へのパスを直接記述しています。原則は、ファイルシステムの相対パスに似ています。アドレスは、パッケージを上向きに転送する必要のあるステップ数で構成されます。これらは、対応する親へのステップであり、後続のパスから宛先ノードまでのステップです。
相対アドレス指定の利点は、サブツリー全体がネットワーク全体の別の場所に移動された場合でも、同じサブツリー内の2つのノードが通信を継続できることです。このシフトのために絶対ノードアドレス指定を変更する必要がありますが、相対アドレス指定は引き続き有効です。
アドレス決定
ノードが自身のアドレスを知るには、その親ノードのアドレスを知っているか、それが最上位ノードであることを知っている必要があります。この目的のために、ノードは起動中にアドレス決定のためにすべてのネットワークデバイスにメッセージをディスパッチします。このメッセージへの応答を受信しない限り、ノードはそれ自体を最上位ノードと見なしますが、可能な親の検索を続行します。親ノードは、そのアドレスをアナウンスすることで応答します。したがって、ノードは独立してそのアドレスを完成させ、サブネットにアナウンスします。
アドレスの決定は、起動中またはプログラミングに使用されるPCの要求に応じて実行できます。