(57)【要約】【課題】ルーティングテーブルに登録されているゲートウェイ装置を、他のゲートウェイ装置と入れ替え可能な状態に遷移させることを可能とするノード装置、経路入れ替え方法、及び、プログラムを提供する。【解決手段】通信部１０がハローフレームを受信すると、リンク管理部３２は、ＧＷ用ルーティングテーブルＴ１を参照し、受信したハローフレームの送信元が、自装置１における主ゲートウェイ装置宛の第１経路となる隣接ノード装置１であり、送信元のＧＷ用ルーティングテーブルＴ１に登録されているゲートウェイ装置から送信元における主ゲートウェイ装置を除いた中で、自装置１における主ゲートウェイ装置の経路品質が最も悪い場合に、自装置１における主ゲートウェイ装置をＧＷ用ルーティングテーブルＴ１に登録されている他のゲートウェイ装置に変更する。【選択図】図２
2015095722.tif 000002
【特許請求の範囲】
【請求項１】
他のネットワークに接続するための複数のゲートウェイ装置への経路を、それぞれ、管理するテーブルであって、前記ゲートウェイ装置ごとに、当該ゲートウェイ装置宛にデータフレームを送信する際に、リンクが存在する複数の隣接するノード装置の内で前記データフレームの最初の送信先となる隣接するノード装置を示す第１経路情報と、当該ゲートウェイ装置までの経路品質を示す経路品質情報と、前記他のネットワークを構成するノード装置と通信する際に自装置が使用するゲートウェイ装置である主ゲートウェイ装置を特定するための特定情報と、を対応付けているテーブルを格納する記憶手段と、
所定のタイミングで、前記テーブルを参照して、登録されている前記ゲートウェイ装置を一意に識別可能なゲートウェイ装置識別情報と対応する前記経路品質情報との組みを前記テーブルのエントリ分含むゲートウェイ装置情報と、自装置を一意に識別可能な装置識別情報と、を含み、自装置における前記主ゲートウェイ装置を特定可能なハローフレームを生成するハローフレーム生成手段と、
前記ハローフレーム生成手段により生成された前記ハローフレームを前記複数の隣接するノード装置へ送信する送信手段と、
前記複数の隣接するノード装置の内のいずれかの一つから前記ハローフレームを受信する受信手段と、
前記テーブルを参照し、前記受信手段により受信された前記ハローフレームに含まれる前記装置識別情報に基づいて、前記ハローフレームの送信元が、自装置における前記主ゲートウェイ装置宛にデータフレームを送信する際に当該データフレームの最初の送信先となる隣接するノード装置か否かを判定する第１の判定手段と、
前記第１の判定手段により、前記ハローフレームの送信元は、前記最初の送信先となる隣接するノード装置であると判定された場合に、受信された前記ハローフレームに含まれる前記経路品質情報に基づいて、前記送信元における前記主ゲートウェイ装置を除いた中で、自装置における前記主ゲートウェイ装置の経路品質が最も悪いか否かを判定する第２の判定手段と、
前記第２の判定手段により、自装置における前記主ゲートウェイ装置の経路品質が最も悪いと判定された場合に、前記特定情報を変更して、自装置における前記主ゲートウェイ装置を、受信された前記ハローフレームに含まれる前記ゲートウェイ装置識別情報により特定される前記ゲートウェイ装置であって、前記テーブルに登録されている他のゲートウェイ装置に変更する変更手段と、
を備える、
ことを特徴とするノード装置。
【請求項２】
前記テーブルには、ゲートウェイ装置宛に前記データフレームを送信した頻度を示す頻度情報が、更に、対応付けられており、
所定のタイミングで、前記頻度情報を更新する第１の更新手段と、
自装置が属するネットワークに新たなゲートウェイ装置が追加された際に、前記テーブルにエントリの空きが有れば、前記新たなゲートウェイ装置を前記テーブルに追加登録し、前記テーブルにエントリの空きが無く、且つ、前記頻度情報が、ゲートウェイ装置宛の前記データフレームを所定期間以上送信していないことを示す状態となっているエントリが存在すれば、当該エントリを削除した上で、前記新たなゲートウェイ装置を前記テーブルに追加登録する登録手段と、
を、更に、備える、
ことを特徴とする請求項１に記載のノード装置。
【請求項３】
前記登録手段は、前記新たなゲートウェイ装置の経路品質が、前記頻度情報が、ゲートウェイ装置宛の前記データフレームを所定期間以上送信していないことを示す状態となっているエントリの前記ゲートウェイ装置より良い場合に、当該エントリを削除した上で、前記新たなゲートウェイ装置を前記テーブルに追加登録する、
ことを特徴とする請求項２に記載のノード装置。
【請求項４】
前記変更手段は、前記他のゲートウェイ装置の内で、受信された前記ハローフレームに含まれる前記経路品質情報が示す経路品質が最も良いゲートウェイ装置に変更する、
ことを特徴とする請求項１乃至３のいずれか一に記載のノード装置。
【請求項５】
前記第１の判定手段は、前記ハローフレームの送信元が、前記テーブルに登録されている主ゲートウェイ装置に対応する前記第１経路情報が示す前記隣接するゲートウェイ装置と一致するか否かを判定することで、前記最初の送信先となる隣接するノード装置であるか否かを判定する、
ことを特徴とする請求項１乃至４のいずれか一に記載のノード装置。
【請求項６】
前記ハローフレーム生成手段は、自装置における前記主ゲートウェイ装置に対応する前記ゲートウェイ装置識別情報と対応する前記経路品質情報との組みを、当該主ゲートウェイ装置以外のゲートウェイ装置に対応する前記組みより前に配置することで、自装置における前記主ゲートウェイ装置を特定可能とする前記ハローフレームを生成する、
ことを特徴とする請求項１乃至５のいずれか一に記載のノード装置。
【請求項７】
前記テーブルには、エントリの有効性を示す有効性情報が、更に、対応付けられており、
所定のタイミングで、前記有効性情報を更新する第２の更新手段と、
前記有効性情報が、エントリが無効になったことを示す状態になると、対応するエントリを削除する削除手段と、
を、更に、備える、
ことを特徴とする請求項１乃至６のいずれか一に記載のノード装置。
【請求項８】
他のネットワークに接続するための複数のゲートウェイ装置への経路を、それぞれ、管理するテーブルであって、前記ゲートウェイ装置ごとに、当該ゲートウェイ装置宛にデータフレームを送信する際に、リンクが存在する複数の隣接するノード装置の内で前記データフレームの最初の送信先となる隣接するノード装置を示す第１経路情報と、当該ゲートウェイ装置までの経路品質を示す経路品質情報と、前記他のネットワークを構成するノード装置と通信する際に自装置が使用するゲートウェイ装置である主ゲートウェイ装置を特定するための特定情報と、を対応付けているテーブルを参照し、
登録されている前記ゲートウェイ装置を一意に識別可能なゲートウェイ装置識別情報と対応する前記経路品質情報との組みを前記テーブルのエントリ分含むゲートウェイ装置情報と、自装置を一意に識別可能な装置識別情報と、を含み、自装置における前記主ゲートウェイ装置を特定可能なハローフレームを、所定のタイミングで、生成し、
生成した前記ハローフレームを前記複数の隣接するノード装置へ送信し、
前記複数の隣接するノード装置の内のいずれかの一つから前記ハローフレームを受信すると、前記テーブルを参照し、受信した前記ハローフレームに含まれる前記装置識別情報に基づいて、前記ハローフレームの送信元が、自装置における前記主ゲートウェイ装置宛にデータフレームを送信する際に当該データフレームの最初の送信先となる隣接するノード装置か否かを判定し、
受信した前記ハローフレームの送信元は、前記最初の送信先となる隣接するノード装置であると判定した場合に、受信した前記ハローフレームに含まれる前記経路品質情報に基づいて、前記送信元における前記主ゲートウェイ装置を除いた中で、自装置における前記主ゲートウェイ装置の経路品質が最も悪いか否かを判定し、
自装置における前記主ゲートウェイ装置の経路品質が最も悪いと判定した場合に、前記特定情報を変更して、自装置における前記主ゲートウェイ装置を、受信した前記ハローフレームに含まれる前記ゲートウェイ装置識別情報により特定される前記ゲートウェイ装置であって、前記テーブルに登録されている他のゲートウェイ装置に変更する、
ことを特徴とする経路入れ替え方法。
【請求項９】
ノード装置のコンピュータに、
他のネットワークに接続するための複数のゲートウェイ装置への経路を、それぞれ、管理するテーブルであって、前記ゲートウェイ装置ごとに、当該ゲートウェイ装置宛にデータフレームを送信する際に、リンクが存在する複数の隣接するノード装置の内で前記データフレームの最初の送信先となる隣接するノード装置を示す第１経路情報と、当該ゲートウェイ装置までの経路品質を示す経路品質情報と、前記他のネットワークを構成するノード装置と通信する際に自装置が使用するゲートウェイ装置である主ゲートウェイ装置を特定するための特定情報と、を対応付けているテーブルを参照し、
登録されている前記ゲートウェイ装置を一意に識別可能なゲートウェイ装置識別情報と対応する前記経路品質情報との組みを前記テーブルのエントリ分含むゲートウェイ装置情報と、自装置を一意に識別可能な装置識別情報と、を含み、自装置における前記主ゲートウェイ装置を特定可能なハローフレームを、所定のタイミングで、生成し、
生成した前記ハローフレームを前記複数の隣接するノード装置へ送信し、
前記複数の隣接するノード装置の内のいずれかの一つから前記ハローフレームを受信すると、前記テーブルを参照し、受信した前記ハローフレームに含まれる前記装置識別情報に基づいて、前記ハローフレームの送信元が、自装置における前記主ゲートウェイ装置宛にデータフレームを送信する際に当該データフレームの最初の送信先となる隣接するノード装置か否かを判定し、
受信した前記ハローフレームの送信元は、前記最初の送信先となる隣接するノード装置であると判定した場合に、受信した前記ハローフレームに含まれる前記経路品質情報に基づいて、前記送信元における前記主ゲートウェイ装置を除いた中で、自装置における前記主ゲートウェイ装置の経路品質が最も悪いか否かを判定し、
自装置における前記主ゲートウェイ装置の経路品質が最も悪いと判定した場合に、前記特定情報を変更して、自装置における前記主ゲートウェイ装置を、受信した前記ハローフレームに含まれる前記ゲートウェイ装置識別情報により特定される前記ゲートウェイ装置であって、前記テーブルに登録されている他のゲートウェイ装置に変更する、
処理を実行させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ノード装置、経路入れ替え方法、及び、プログラムに関する。
【背景技術】
【０００２】
近年、複数の通信装置（以下、ノード装置という）が自律分散的に相互接続するアドホックネットワークの研究が進められている。アドホックネットワークの各ノード装置は、通信環境に応じて自立的にネットワークを構築する。
【０００３】
例えば、アドホックネットワーク内のノード装置が、本アドホックネットワークとは異なるネットワーク内のノード装置と通信を行う場合には、両ネットワークを接続できるゲートウェイ装置を介して行う必要がある。
【０００４】
この場合、アドホックネットワークの各ノード装置は、隣接するノード装置（以下、隣接ノード装置という）から受信したデータフレームをネットワークトポロジ（ルーティングテーブル）に基づいて、他の隣接ノード装置に中継することで、データフレームを宛先のゲートウェイ装置に伝送する。この際、各ノード装置は、伝送品質のより良い経路を選択してデータフレームを送信する（例えば、特許文献１を参照）。
【０００５】
ルーティングテーブルは、ハローフレームを交換することで構築され、最適な経路を選択できるように更新される。ルーティングテーブルの各エントリには、使用頻度を示す値が含まれており、エントリが示す経路を使用した場合に、使用頻度を示す値がリセットされる。また、使用頻度を示す値は、エントリが示す経路を所定期間使用しないと、“０”となり、その経路が未使用であることを示す状態となる。
【０００６】
メモリの消費を抑えるために、ルーティングテーブルのエントリ数は、通常、制限されており、ゲートウェイ装置のエントリが上限に達している場合、従来では、使用頻度を示す値が“０”のエントリを入れ替え対象としている。
【０００７】
つまり、ゲートウェイ装置のエントリが上限に達している状態では、経路品質がより良いゲートウェイ装置がネットワークに追加されたとしても、使用頻度を示す値が“０”のエントリが無い場合には、経路品質がより良いゲートウェイ装置をルーティングテーブルに登録することができない。
【０００８】
特に、複数のゲートウェイ装置宛の経路として使われるノード装置は、エントリに含まれる使用頻度を示す値が頻繁にリセットされるため、ルーティングテーブルのエントリの入れ替えが困難となる。そのため、最適な経路の構築ができない。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００９−０８１８５４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
一つの側面では、本発明は、ルーティングテーブルに登録されているゲートウェイ装置を、他のゲートウェイ装置と入れ替え可能な状態に遷移させることを可能とするノード装置、経路入れ替え方法、及び、プログラムを提供することを課題とする。
【課題を解決するための手段】
【００１１】
一態様に係るノード装置は、他のネットワークに接続するための複数のゲートウェイ装置への経路を、それぞれ、管理するテーブルであって、前記ゲートウェイ装置ごとに、当該ゲートウェイ装置宛にデータフレームを送信する際に、リンクが存在する複数の隣接するノード装置の内で前記データフレームの最初の送信先となる隣接するノード装置を示す第１経路情報と、当該ゲートウェイ装置までの経路品質を示す経路品質情報と、前記他のネットワークを構成するノード装置と通信する際に自装置が使用するゲートウェイ装置である主ゲートウェイ装置を特定するための特定情報と、を対応付けているテーブルを格納する記憶手段と、所定のタイミングで、前記テーブルを参照して、登録されている前記ゲートウェイ装置を一意に識別可能なゲートウェイ装置識別情報と対応する前記経路品質情報との組みを前記テーブルのエントリ分含むゲートウェイ装置情報と、自装置を一意に識別可能な装置識別情報と、を含み、自装置における前記主ゲートウェイ装置を特定可能なハローフレームを生成するハローフレーム生成手段と、前記ハローフレーム生成手段により生成された前記ハローフレームを前記複数の隣接するノード装置へ送信する送信手段と、前記複数の隣接するノード装置の内のいずれかの一つから前記ハローフレームを受信する受信手段と、前記テーブルを参照し、前記受信手段により受信された前記ハローフレームに含まれる前記装置識別情報に基づいて、前記ハローフレームの送信元が、自装置における前記主ゲートウェイ装置宛にデータフレームを送信する際に当該データフレームの最初の送信先となる隣接するノード装置か否かを判定する第１の判定手段と、前記第１の判定手段により、前記ハローフレームの送信元は、前記最初の送信先となる隣接するノード装置であると判定された場合に、受信された前記ハローフレームに含まれる前記経路品質情報に基づいて、前記送信元における前記主ゲートウェイ装置を除いた中で、自装置における前記主ゲートウェイ装置の経路品質が最も悪いか否かを判定する第２の判定手段と、前記第２の判定手段により、自装置における前記主ゲートウェイ装置の経路品質が最も悪いと判定された場合に、前記特定情報を変更して、自装置における前記主ゲートウェイ装置を、受信された前記ハローフレームに含まれる前記ゲートウェイ装置識別情報により特定される前記ゲートウェイ装置であって、前記テーブルに登録されている他のゲートウェイ装置に変更する変更手段と、を備える。
【発明の効果】
【００１２】
ルーティングテーブルに登録されているゲートウェイ装置を、他のゲートウェイ装置と入れ替え可能な状態に遷移させることで、ネットワークにゲートウェイ装置が追加された場合に、ルーティングテーブルへの登録が可能となる。
【図面の簡単な説明】
【００１３】
【図１】実施形態におけるネットワークの構成例を示す図である。
【図２】実施形態におけるネットワークを構成するノード装置の構成例を示す機能ブロック図である。
【図３】（Ａ）は、実施形態におけるＧＷ用ルーティングテーブルの構成例を示す図であり、（Ｂ）は、（Ａ）に例示するＧＷ用ルーティングテーブルにおける各フィールドの説明である。
【図４】（Ａ）は、実施形態におけるデータフレームのヘッダのフォーマット例を示す図であり、（Ｂ）は、（Ａ）に例示するフォーマットにおける各フィールドの説明である。
【図５】実施形態におけるハローフレームのフォーマット例を示す図である。
【図６】実施形態におけるフレーム種別特定処理のフローを説明するためのフローチャートの例である。
【図７】実施形態における転送処理のフローを説明するためのフローチャートの例である。
【図８】実施形態における主ＧＷ変更処理のフローを説明するためのフローチャートの例の一部である。
【図９】実施形態における主ＧＷ変更処理のフローを説明するためのフローチャートの例の他の一部である。
【図１０】実施形態におけるタイマ処理のフローを説明するためのフローチャートの例である。
【図１１】実施形態におけるハローフレーム生成処理のフローを説明するためのフローチャートの例である。
【図１２】図１に例示するネットワークを構成するノード装置（ノード装置Ｎ１〜Ｎ５）が有するＧＷ用ルーティングテーブルの例を示す図である。
【図１３】図１に例示するネットワークを構成するノード装置（ノード装置Ｎ６〜Ｎ９）が有するＧＷ用ルーティングテーブルの例を示す図である。
【図１４】図１に例示するネットワークを構成するノード装置Ｎ９がハローフレームを送信した状態を示す図である。
【図１５】図１４に例示するハローフレームを受信した後のノード装置Ｎ７のＧＷ用ルーティングテーブルの例を示す図である。
【図１６】図１に例示するネットワークを構成するノード装置Ｎ７がハローフレームを送信した状態を示す図である。
【図１７】図１に例示するネットワークを構成するノード装置Ｎ５がハローフレームを送信した状態を示す図である。
【図１８】図１７に例示するハローフレームを受信した後のノード装置Ｎ１のＧＷ用ルーティングテーブルの例を示す図である。
【図１９】図１に例示するネットワークを構成するノード装置Ｎ８がハローフレームを送信した状態を示す図である。
【図２０】図１に例示するネットワークを構成するノード装置Ｎ６がハローフレームを送信した状態を示す図である。
【図２１】ノード装置Ｎ６がハローフレームを送信した後のノード装置（ノード装置Ｎ１〜Ｎ５）のＧＷ用ルーティングテーブルの例を示す図である。
【図２２】ノード装置Ｎ６がハローフレームを送信した後のノード装置（ノード装置Ｎ６〜Ｎ９）のＧＷ用ルーティングテーブルの例を示す図である。
【図２３】ノード装置Ｎ９のＧＷ用ルーティングテーブルにおける経路利用エージングタイマが“０”になった状態を示す図である。
【図２４】図１に例示するネットワークにＧＷ５が追加され、ＧＷ５がハローフレームを送信した状態を示す図である。
【図２５】図２４に例示するハローフレームを受信した後のノード装置Ｎ９のＧＷ用ルーティングテーブルの例を示す図である。
【図２６】実施形態におけるノード装置のハードウェア構成の例を示す図である。
【発明を実施するための形態】
【００１４】
以下に本発明の実施の形態について図面を参照しながら詳細に説明する。
まず、図１を参照して、本実施形態におけるアドホックネットワークについて説明する。図１は、本実施形態におけるネットワーク１００の構成例を示す図である。
【００１５】
ネットワーク１００は、アドホックネットワークの一例であり、ネットワーク１００とは異なるネットワークに接続する複数のゲートウェイ装置（以下、ＧＷという）と、複数のノード装置１と、を含んで構成されている。ネットワーク１００を構成する装置間には、リンクが存在しており、図１では、リンクを実線で表している。
【００１６】
ノード装置１は、図１においては、「Ｎｉ」（ｉ＝１，・・，１２）として示されている。「Ｎｉ」は、ノード装置１を一意に識別可能な装置ＩＤ（IDentification）である。同様に、ＧＷは、図１においては、「ＧＷｊ」（ｊ＝１，・・，４）として示されており、「ＧＷｊ」は、ＧＷを一意に識別可能な装置ＩＤである。なお、以下において、特定のノード装置１を表す場合には、例えば、ノード装置Ｎ１のように称することとする。ここで、ノード装置Ｎ１は、装置ＩＤがＮ１のノード装置１を示している。
【００１７】
リンクは、無線リンクでもよく、有線リンクでもよい。例えば、図１を参照して、ノード装置Ｎ１とノード装置Ｎ５とが、他のノード装置１による中継を経ることなく、直接、通信可能な場合に、「ノード装置Ｎ１とノード装置Ｎ５との間にリンクが存在する」という。
【００１８】
リンクは、動的に変化し、例えば、天候や遮蔽物などの影響で、ノード装置１間にリンクが新たに確立されたり、今まで確立されていたリンクが消滅したりすることがある。また、例えば、ノード装置１が可動式であれば、ノード装置１間の距離の変動によってリンクの有無が変化することもある。また、例えば、ケーブルの接続替えにより、新たなリンクが確立されたり、今まで存在していたリンクが消滅したり、ケーブルの切断等の障害によってリンクが消滅することもある。
【００１９】
図２は、本実施形態におけるネットワーク１００を構成するノード装置１の構成例を示す機能ブロック図である。
【００２０】
ノード装置１は、図２に示すように、通信部１０と、記憶部２０と、制御部３０と、を備えて構成されている。
【００２１】
通信部１０は、通信モジュールなどで構成され、他のノード装置１との間で通信を行う。例えば、通信部１０は、データフレームなどのフレームを送受信する。
【００２２】
記憶部２０は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、フラッシュメモリなどで構成されている。記憶部２０は、制御部３０を構成する、例えば、ＭＰＵ（Micro-Processing Unit）のワークエリア、ノード装置１全体を制御するための動作プログラムなどの各種プログラムを格納するプログラムエリア、詳しくは後述のＧＷ用ルーティングテーブルＴ１などの各種データを格納するデータエリアとして機能する。また、データエリアには、自ノード装置１のアドレスなども格納されている。
【００２３】
ここで、図３を参照して、記憶部２０のデータエリアに格納されているＧＷ用ルーティングテーブルＴ１について説明する。図３（Ａ）は、本実施形態におけるＧＷ用ルーティングテーブルＴ１の例を示す図であり、図３（Ｂ）は、図３（Ａ）に例示するＧＷ用ルーティングテーブルＴ１における各フィールドの説明である。
【００２４】
ＧＷ用ルーティングテーブルＴ１は、リンク管理部３２（詳しくは後述）などにより管理されており、データフレームをＧＷ宛に送信する際に、データフレームを送信する隣接ノード装置１を特定するために必要となる情報を管理しているテーブルである。本実施形態におけるＧＷ用ルーティングテーブルＴ１は、図３（Ａ）に示すように、ＧＤ（Global Destination）ごとに、主ＧＷフラグと、ＬＤ（Local Destination）１と、経路利用エージングタイマと、評価値と、ＴＴＬ（Time To Live）とが対応付けられているテーブルであり、エントリ数が制限されている。
【００２５】
ＧＤは、ＧＷ用ルーティングテーブルＴ１においては、宛先となるＧＷのアドレス（例えば、ＩＰ（Internet Protocol）アドレス）である。
【００２６】
主ＧＷフラグは、自ノード装置１における主ＧＷを示すフラグであり、本実施形態においては、フラグ値“１”は、主ＧＷであることを示し、フラグ値“０”は、主ＧＷではないことを示している。
【００２７】
ここで、主ＧＷは、ネットワーク１００とは異なるネットワークのノード装置との通信時に使用されるＧＷであり、通常、初期状態においては、ＧＷ用ルーティングテーブルＴ１に最初に登録されたＧＷ、すなわち、最初にハローフレームを受信したＧＷである。主ＧＷは、経路品質がより良いＧＷへと変更されるが、すなわち、評価値に基づいて、変更されるが、本実施形態においては、主ＧＷが頻繁に変更されるのを防ぐためにヒステリシスを設け、主ＧＷの評価値との差が所定値以上にならないと、主ＧＷが変更されないように構成する。
【００２８】
ＬＤ１は、リンクが存在する隣接ノード装置１の内で、ＧＤ宛にデータフレームを送信する際にデータフレームを最初に転送する隣接ノード装置１、すなわち、第１経路の隣接ノード装置１のアドレスである。
【００２９】
経路利用エージングタイマは、ＧＤ（ＧＷ）宛のデータフレームが送信されたか否かを管理するタイマであり、データフレーム処理部３３（詳しくは後述）とタイマ処理部３４（詳しくは後述）により制御されている。例えば、対応するＧＤ（ＧＷ）宛にデータフレームを自ノード装置１が送信すると、経路利用エージングタイマは、データフレーム処理部３３によりリセットされる。すなわち、送信頻度が高い程、経路利用エージングタイマは初期値に近い値で推移する。また、経路利用エージングタイマは、所定時間経過するごとに、タイマ処理部３４によりデクリメントされる。なお、本実施形態における経路利用エージングタイの初期値は、“１００”とする。
【００３０】
評価値は、対応するＧＤ（ＧＷ）までの経路の品質を表わす値であり、本実施形態においては、評価値が小さい程、経路の品質が良いものとする。
【００３１】
ＴＴＬは、エントリの有効性を管理するタイマであり、リンク管理部３２とタイマ処理部３４により制御されている。例えば、対応するＬＤ１から送信され、対応するＧＷアドレスを含むハローフレームを自ノード装置１が受信すると、ＴＴＬは、リンク管理部３２によりリセットされる。また、ＴＴＬは、所定時間経過するごとに、タイマ処理部３４によりデクリメントされる。なお、本実施形態におけるＴＴＬの初期値は、“１００”とする。また、ＴＴＬの値が“０”とは、対応するエントリが無効であることを意味する。
【００３２】
次に、図４を参照して、データフレーム処理部３３により生成されるデータフレームのヘッダについて説明する。図４（Ａ）は、本実施形態におけるデータフレームのヘッダのフォーマット例を示す図であり、図４（Ｂ）は、図４（Ａ）に示すフォーマット例における各フィールドの説明である。
【００３３】
本実施形態におけるデータフレームのヘッダは、図４（Ａ）に示すように、ＬＤと、ＬＳ（Local Source）と、ＧＤと、ＧＳ（Global Source）と、フレームタイプと、を含む。
【００３４】
ＬＤは、送信先となる隣接ノード装置１のアドレスであり、ＬＳとなるノード装置１のデータフレーム処理部３３が、ＧＷ用ルーティングテーブルＴ１などのルーティングテーブルを参照して、ＧＤに対応するＬＤを特定する。例えば、図１を参照して、ノード装置Ｎ１によりノード装置Ｎ５へ送信されるデータフレームの「ＬＤ」フィールドには、ノード装置Ｎ５のアドレスが格納される。
【００３５】
ＬＳは、送信元の隣接ノード装置１のアドレスであり、ＬＳとなるノード装置１のデータフレーム処理部３３が、「ＬＳ」フィールドに自ノード装置１のアドレスを格納する。例えば、図１を参照して、ノード装置Ｎ１によりノード装置Ｎ５へ送信されるデータフレームの「ＬＳ」フィールドには、ノード装置Ｎ１のアドレスが格納される。
【００３６】
ＧＤは、最終的な宛先となるノード装置１のアドレスである。ＧＳは、データフレームの発行元のノード装置（以下、発行元ノード装置ともいう）１のアドレスである。例えば、図１を参照して、ノード装置Ｎ１により発行されたデータフレームが、ノード装置Ｎ５、ノード装置Ｎ７、ノード装置Ｎ９、ノード装置Ｎ１１、ノード装置Ｎ１２の順番で中継され、最終的にＧＷ４へと送信される場合、該データフレームの「ＧＤ」フィールドには、ＧＷ４のアドレスが格納され、「ＧＳ」フィールドには、ノード装置Ｎ１のアドレスが格納される。
【００３７】
フレームタイプは、フレームの種別を示す情報であり、データフレームにおいては、フレームの種別がデータフレームであることを示す情報が、「フレームタイプ」フィールドに格納される。フレームの種別としては、本実施形態においては、少なくとも、データフレームと、ハローフレームの２つが存在する。
【００３８】
データフレームは、発行元ノード装置１（ＧＳ）が最終的な宛先となるノード装置１（ＧＤ）に伝達しようとしている情報を、ペイロードとして含むフレームである。
【００３９】
ハローフレームは、ハローフレーム生成部３５（詳しくは後述）により生成され、自ノード装置１の存在を他のノード装置１に対して通知するためのフレームであり、経路作成に必要な情報を含んでいる。
【００４０】
図５は、本実施形態におけるハローフレームのフォーマット例を示す図である。本実施形態におけるハローフレームは、図５に示すように、自ノードアドレス（ハローフレーム生成元のノード装置１のアドレス）と、フレームタイプと、ＧＷ情報とを含んでいる。
【００４１】
ＧＷ情報は、図５に示すように、少なくとも、自ノード装置１が有するＧＷ用ルーティングテーブルＴ１に登録されているＧＷのアドレスであるＧＷアドレスと、当該ＧＷの評価値とを含んでいる。例えば、ＧＷ用ルーティングテーブルＴ１にＮ個（本実施形態においては、Ｎ≦４とする）のＧＷが登録されている場合には、Ｎ個のＧＷ情報がハローフレームに格納される。この際、ハローフレーム送信元のノード装置１の主ＧＷを特定可能な識別子が付加される。なお、本実施形態においては、主ＧＷのアドレスを含むＧＷ情報を先頭に配置することで、主ＧＷを特定可能とするように構成する。
【００４２】
図２に戻り、制御部３０は、例えば、ＭＰＵなどで構成され、記憶部２０のプログラムエリアに格納されている動作プログラムを実行して、図２に示すように、フレーム種別特定部３１と、リンク管理部３２と、データフレーム処理部３３と、タイマ処理部３４と、ハローフレーム生成部３５としての機能を実現すると共に、ノード装置１全体を制御する制御処理や詳しくは後述のフレーム種別特定処理などの処理を実行する。
【００４３】
フレーム種別特定部３１は、通信部１０で受信したフレームの種別を特定する。具体的には、通信部１０は、フレームを受信すると、受信したフレームをフレーム種別特定部３１へ出力する。そして、フレーム種別特定部３１は、受信したフレームのヘッダを解析して、フレームタイプに基づいて、フレームの種別を特定する。
【００４４】
そして、フレーム種別特定部３１は、特定したフレームの種別がハローフレームの場合には、受信したフレームをリンク管理部３２へ出力し、特定したフレームの種別がデータフレームの場合には、受信したフレームをデータフレーム処理部３３へ出力する。
【００４５】
リンク管理部３２は、ＧＷ用ルーティングテーブルＴ１の管理を行う。より具体的には、リンク管理部３２は、受信したフレームがハローフレームの場合に、受信したハローフレームを解析し、解析結果に基づいて、ＧＷ用ルーティングテーブルＴ１の登録と更新を行う。
【００４６】
受信したハローフレームにＧＷ情報が含まれる場合には、リンク管理部３２は、ＧＷ用ルーティングテーブルＴ１のエントリを取得する。そして、処理対象のＧＷ情報に含まれるＧＷアドレスに対応するＧＷ（以下、処理対象のＧＷという）が登録されており、且つ、受信したハローフレームの送信元の隣接ノード装置１のアドレス（以下、送信元アドレスという）が処理対象のＧＷのＬＤ１である場合には、リンク管理部３２は、処理対象のＧＷのエントリの登録更新を行う。より具体的には、リンク管理部３２は、処理対象のＧＷに対応するＴＴＬをリセットすると共に、対応する評価値を従来の方法に基づいて更新する。
【００４７】
処理対象のＧＷが登録されておらず、ＧＷ用ルーティングテーブルＴ１に空きが有る場合には、リンク管理部３２は、処理対象のＧＷの新規登録を行う。より具体的には、リンク管理部３２は、エントリを追加し、「ＧＤ」フィールドに処理対象のＧＷのアドレスを格納し、「ＬＤ１」フィールドに受信したハローフレームの送信元アドレスを格納すると共に、「主ＧＷフラグ」のフラグ値を“０”とする。なお、ＧＷ用ルーティングテーブルＴ１の最初の登録である場合には、「主ＧＷフラグ」のフラグ値を“１”とする。また、リンク管理部３２は、処理対象のＧＷに対応する経路利用エージングタイマとＴＴＬを初期値設定すると共に、対応する評価値を従来の方法に基づいて設定する。
【００４８】
処理対象のＧＷが登録されておらず、ＧＷ用ルーティングテーブルＴ１にエントリの空きが無い場合であって、経路利用エージングタイマが“０”のエントリが有り、且つ、処理対象のＧＷの評価値が、経路利用エージングタイマが“０”のエントリの評価値より小さい、すなわち、処理対象のＧＷが経路品質のより良い未登録のＧＷである場合には、リンク管理部３２は、処理対象のＧＷの入れ替え登録を行う。この際、入れ替え可能なエントリが複数存在する場合には、例えば、評価値がより大きいエントリから順に入れ替え対象とする。
【００４９】
より具体的には、リンク管理部３２は、経路利用エージングタイマが“０”のエントリを削除した上で、エントリを追加し、「ＧＤ」フィールドに処理対象のＧＷのアドレスを格納し、「ＬＤ１」フィールドに受信したハローフレームの送信元アドレスを格納すると共に、「主ＧＷフラグ」のフラグ値を“０”とする。また、リンク管理部３２は、処理対象のＧＷに対応する経路利用エージングタイマとＴＴＬを初期値設定すると共に、対応する評価値を従来の方法に基づいて設定する。
【００５０】
そして、受信したハローフレームの送信元アドレスが、自ノード装置１の主ＧＷのＬＤ１であり、且つ、ハローフレームに含まれるＧＷアドレスにより特定されるＧＷからハローフレーム送信元の隣接ノード装置１における主ＧＷを除いたＧＷの中で、自ノード装置１の主ＧＷの評価値が最も大きい場合には、リンク管理部３２は、自ノード装置１の主ＧＷを変更する。
【００５１】
より具体的には、リンク管理部３２は、ＧＷ用ルーティングテーブルＴ１に登録されている主ＧＷを除くＧＷの内で、受信したハローフレームにアドレスが含まれるＧＷのいずれかを主ＧＷとして設定（主ＧＷフラグのフラグ値を“１”に変更）する。この際、ＧＷ用ルーティングテーブルＴ１に登録されている主ＧＷを除くＧＷの内で、受信したハローフレームにアドレスが含まれるＧＷが存在しない場合には、リンク管理部３２は、主ＧＷの変更を行わない。
【００５２】
なお、本実施形態においては、ＧＷ用ルーティングテーブルＴ１に登録されている主ＧＷを除くＧＷの内で、受信したハローフレームにアドレスが含まれるＧＷが複数存在する場合には、リンク管理部３２は、最も評価値が小さいＧＷ、すなわち、経路品質が最も良いＧＷを主ＧＷとして設定する。
【００５３】
また、リンク管理部３２は、タイマ処理部３４により送信されるＴＴＬ情報（詳しくは後述）を受信すると、ＴＴＬ情報に基づいて、ＧＷ用ルーティングテーブルＴ１のエントリを削除する。
【００５４】
データフレーム処理部３３は、受信したデータフレームの処理を行う。より具体的には、データフレーム処理部３３は、データフレームを受信すると、受信したデータフレームのヘッダを解析し、ＧＤが自ノード装置１のアドレスと一致するか否かを判定する。すなわち、データフレーム処理部３３は、受信したデータフレームの最終的な宛先が自ノード装置１か否かを判定する。
【００５５】
受信したデータフレームの最終的な宛先が自ノード装置１の場合には、データフレーム処理部３３は、受信したデータフレームを上位層へ出力する。データフレームの入力に応答して、上位層は、受信したデータフレームの処理を行う。
【００５６】
一方、受信したデータフレームの最終的な宛先が他のノード装置１の場合には、データフレーム処理部３３は、データフレームの転送処理を行う。より具体的には、データフレーム処理部３３は、受信したデータフレームのＧＤ（ＧＷ）に対応する経路利用エージングタイマをリセットする。そして、データフレーム処理部３３は、受信したデータフレームのＧＤ（ＧＷ）をキーとして、ＧＷ用ルーティングテーブルＴ１を検索し、受信したデータフレームのＧＤ（ＧＷ）に対応するＬＤ１を特定する。
【００５７】
そして、データフレーム処理部３３は、転送対象のデータフレームのヘッダを設定する。より具体的には、データフレーム処理部３３は、ヘッダのＬＳに自ノード装置１のアドレスを設定すると共に、ヘッダのＬＤに特定したＬＤ１を設定する。そして、データフレーム処理部３３は、通信部１０を介して、転送対象のデータフレームを、特定したＬＤ１が示す隣接ノード装置１へ送信する。
【００５８】
更に、データフレーム処理部３３は、上位層の要求に応答して、図３（Ａ）に例示するヘッダのデータフレームを生成し、通信部１０を介して、生成したデータフレームを他のノード装置１へ送信する。
【００５９】
タイマ処理部３４は、所定時間経過するごとに、所定の処理を実行する。例えば、タイマ処理部３４は、所定時間ｔ１が経過するごとに、ハローフレームの生成指示をハローフレーム生成部３５に送信する。
【００６０】
また、タイマ処理部３４は、所定時間ｔ２が経過するごとに、ＧＷ用ルーティングテーブルＴ１の経路利用エージングタイマとＴＴＬのエージング処理を実行する。より具体的には、経路利用エージングタイマが“１”以上の場合には、タイマ処理部３４は、経路利用エージングタイマをデクリメントすると共に、ＴＴＬをデクリメントする。一方、経路利用エージングタイマが“０”の場合には、タイマ処理部３４は、ＴＴＬのみをデクリメントする。なお、経路利用エージングタイマとＴＴＬのエージングのタイミングが異なるように構成してもよい。
【００６１】
そして、タイマ処理部３４は、デクリメント後のＴＴＬの値が“０”の場合、すなわち、対応するエントリが無効になった場合に、ＴＴＬの値が“０”となったことを示すＴＴＬ情報をリンク管理部３２に送信する。ＴＴＬ情報には、値が“０”となったＴＴＬに対応するＧＤが含まれており、ＴＴＬ情報を受信したリンク管理部３２は、ＴＴＬ情報に含まれるＧＤに対応するエントリをＧＷ用ルーティングテーブルＴ１から削除する。
【００６２】
ハローフレーム生成部３５は、タイマ処理部３４により送信されたハローフレームの生成指示を受信すると、図５に例示するハローフレームを生成し、通信部１０を介して、生成したハローフレームを隣接ノード装置１へ送信する。
【００６３】
より具体的には、ハローフレーム生成部３５は、ＧＷ用ルーティングテーブルＴ１のエントリを取得し、エントリが無い場合、すなわち、ＧＷが登録されていない場合には、ＧＷ情報を含まないハローフレームを生成し、エントリが有る場合には、エントリ分のＧＷ情報を含むハローフレームを生成する。
【００６４】
例えば、ＧＷ用ルーティングテーブルＴ１にＧＷ１〜ＧＷ４が登録されており、ＧＷ１が自ノード装置１の主ＧＷ、それぞれの評価値がＨ１〜Ｈ４とする。但し、Ｈ１＜Ｈ３＜Ｈ２＜Ｈ４とする。この場合、ハローフレーム生成部３５は、主ＧＷであるＧＷ１のアドレスとＧＷ１の評価値Ｈ１とを含むＧＷ情報を先頭として、例えば、ＧＷ２〜ＧＷ４の中で評価値の小さい順（つまり、経路品位が良い順）に、ＧＷのアドレスと評価値とを含むＧＷ情報を配置する。
【００６５】
この例では、ハローフレーム生成部３５は、ＧＷ１のアドレスとＧＷ１の評価値Ｈ１とを含むＧＷ情報、ＧＷ３のアドレスとＧＷ３の評価値Ｈ３とを含むＧＷ情報、ＧＷ２のアドレスとＧＷ２の評価値Ｈ２とを含むＧＷ情報、ＧＷ４のアドレスとＧＷ４の評価値Ｈ４とを含むＧＷ情報、の順に配置したハローフレームを生成する。以下において、このような順番でＧＷ情報が配置されているハローフレームを、ハローフレーム{ＧＷ１，ＧＷ３，ＧＷ２，ＧＷ４}と称することとする。
【００６６】
次に、図６を参照して、本実施形態におけるフレーム種別特定処理の流れについて説明する。図６は、本実施形態におけるフレーム種別特定処理のフローを説明するためのフローチャートの例である。本フレーム種別特定処理は、フレームの受信をトリガとして開始される。
【００６７】
フレーム種別特定部３１は、フレームを受信したか否かを判定する（ステップＳ００１）。フレーム種別特定部３１によりフレームを受信していないと判定された場合には（ステップＳ００１；ＮＯ）、処理はステップＳ００１の処理を繰り返し、フレームの受信を待つ。
【００６８】
一方、フレームを受信したと判定した場合には（ステップＳ００１；ＹＥＳ）、フレーム種別特定部３１は、受信したフレームの種別を特定し（ステップＳ００２）、特定した種別がハローフレームか否かを判定する（ステップＳ００３）。
【００６９】
ハローフレームではないと判定した場合には（ステップＳ００３；ＮＯ）、フレーム種別特定部３１は、更に、特定した種別がデータフレームか否かを判定する（ステップＳ００４）。
【００７０】
フレーム種別特定部３１によりデータフレームでもないと判定された場合には（ステップＳ００４；ＮＯ）、処理はステップＳ００１の処理へと戻り、前述の処理を繰り返す。一方、データフレームであると判定した場合には（ステップＳ００４；ＹＥＳ）、フレーム種別特定部３１は、受信したフレームをデータフレーム処理部３３に出力する（ステップＳ００５）。
【００７１】
そして、データフレーム処理部３３は、受信したデータフレームが他のノード装置１宛か否かを判定する（ステップＳ００６）。受信したデータフレームは自ノード装置１宛であると判定した場合には（ステップＳ００６；ＮＯ）、データフレーム処理部３３は、受信したデータフレームを上位層へ出力し、上位層は、データフレームの入力に応答して、受信したデータフレームの処理を行う（ステップＳ００７）。そして、処理はステップＳ００１の処理へと戻り、前述の処理を繰り返す。
【００７２】
一方、受信したデータフレームが他のノード装置１宛であると判定した場合には（ステップＳ００６；ＹＥＳ）、データフレーム処理部３３は、受信したデータフレームの転送処理を行う（ステップＳ００８）。そして、処理はステップＳ００１の処理へと戻り、前述の処理を繰り返す。
【００７３】
ここで、ステップＳ００３の処理において、ハローフレームであると判定した場合には（ステップＳ００３；ＹＥＳ）、フレーム種別特定部３１は、受信したフレームをリンク管理部３２に出力する（ステップＳ００９）。
【００７４】
そして、リンク管理部３２は、主ＧＷ変更処理を行い（ステップＳ０１０）、処理はステップＳ００１の処理へと戻り、前述の処理を繰り返す。
【００７５】
次に、図７を参照して、本実施形態における転送処理の流れについて説明する。図７は、本実施形態における転送処理のフローを説明するためのフローチャートの例である。本転送処理は、上述のフレーム種別特定処理のステップＳ００８の処理に対応する処理である。
【００７６】
データフレーム処理部３３は、受信したデータフレームのＧＤに対応する経路利用エージングタイマをリセットすると共に（ステップＳ１０１）、ＧＷ用ルーティングテーブルＴ１を参照して、受信したデータフレームのＧＤに対応するＬＤ１を特定する（ステップＳ１０２）。
【００７７】
そして、データフレーム処理部３３は、転送対象のデータフレームのヘッダを設定し（ステップＳ１０３）、通信部１０を介して、転送対象のデータフレームを、特定したＬＤ１が示す隣接ノード装置１へ送信する（ステップＳ１０４）。そして、本処理は終了する。
【００７８】
次に、図８と図９を参照して、本実施形態における主ＧＷ変更処理の流れについて説明する。図８と図９は、それぞれ、本実施形態における主ＧＷ変更処理のフローを説明するためのフローチャートの例の一部と、他の一部である。本主ＧＷ変更処理は、上述のフレーム種別特定処理のステップＳ０１０の処理に対応する処理である。
【００７９】
リンク管理部３２は、受信したハローフレームを解析し、ＧＷ情報が含まれているか否かを判定する（ステップＳ２０１）。リンク管理部３２によりＧＷ情報が含まれていないと判定された場合には（ステップＳ２０１；ＮＯ）、本処理は終了する。
【００８０】
一方、ＧＷ情報が含まれていると判定した場合には（ステップＳ２０１；ＹＥＳ）、リンク管理部３２は、ＧＷ用ルーティングテーブルＴ１のエントリを取得し（ステップＳ２０２）、処理対象のＧＷが登録されているか否かを判定する（ステップＳ２０３）。
【００８１】
処理対象のＧＷが登録されていると判定した場合には（ステップＳ２０３；ＹＥＳ）、リンク管理部３２は、更に、受信したハローフレームの送信元アドレスが処理対象のＧＷのＬＤ１であるか否かを判定する（ステップＳ２０４）。
【００８２】
リンク管理部３２により、送信元アドレスが処理対象のＧＷのＬＤ１とは異なると判定された場合には（ステップＳ２０４；ＮＯ）、処理は後述のステップＳ２１１の処理へと進む。一方、送信元アドレスが処理対象のＧＷのＬＤ１と一致すると判定した場合には（ステップＳ２０４；ＹＥＳ）、リンク管理部３２は、処理対象のＧＷのエントリの登録更新を行い（ステップＳ２０５）、処理は後述のステップＳ２１１の処理へと進む。
【００８３】
ステップＳ２０３の処理において、処理対象のＧＷは未登録であると判定した場合には（ステップＳ２０３；ＮＯ）、リンク管理部３２は、更に、ＧＷ用ルーティングテーブルＴ１に空きエントリが有るか否かを判定する（ステップＳ２０６）。
【００８４】
空きエントリが有ると判定した場合には（ステップＳ２０６；ＹＥＳ）、リンク管理部３２は、処理対象のＧＷの新規登録を行い（ステップＳ２０７）、処理は後述のステップＳ２１１の処理へと進む。
【００８５】
一方、空きエントリは無いと判定した場合には（ステップＳ２０６；ＮＯ）、リンク管理部３２は、更に、経路利用エージングタイマが“０”のエントリが有るか否かを判定する（ステップＳ２０８）。リンク管理部３２により、経路利用エージングタイマが“０”のエントリは無いと判定された場合には（ステップＳ２０８；ＮＯ）、処理は後述のステップＳ２１１の処理へと進む。
【００８６】
一方、経路利用エージングタイマが“０”のエントリが有ると判定した場合には（ステップＳ２０８；ＹＥＳ）、リンク管理部３２は、更に、処理対象のＧＷの評価値が、経路利用エージングタイマが“０”のエントリの評価値より小さいか否かを判定する（ステップＳ２０９）。すなわち、リンク管理部３２は、処理対象のＧＷが経路品質のより良い未登録のＧＷであるか否かを判定する。
【００８７】
リンク管理部３２により、経路利用エージングタイマが“０”のエントリの評価値以上であると判定された場合には（ステップＳ２０９；ＮＯ）、処理は後述のステップＳ２１１の処理へと進む。一方、経路利用エージングタイマが“０”のエントリの評価値より小さいと判定した場合には（ステップＳ２０９；ＹＥＳ）、リンク管理部３２は、処理対象のＧＷの入れ替え登録を行う（ステップＳ２１０）。この際、入れ替え可能なエントリが複数存在する場合には、例えば、評価値がより大きいエントリから順に入れ替え対象とする。
【００８８】
そして、リンク管理部３２は、受信したハローフレームに含まれる全ＧＷ情報の処理を行ったか否かを判定する（ステップＳ２１１）。リンク管理部３２により、まだ、未処理のＧＷ情報が有ると判定された場合には（ステップＳ２１１；ＮＯ）、処理はステップＳ２０３の処理へと戻り、受信したハローフレームに含まれる全ＧＷ情報の処理が完了するまで前述の処理を繰り返す。
【００８９】
一方、全ＧＷ情報の処理を行ったと判定した場合には（ステップＳ２１１；ＹＥＳ）、リンク管理部３２は、更に、受信したハローフレームの送信元アドレスが、自ノード装置１の主ＧＷのＬＤ１か否かを判定する（ステップＳ２１２）。リンク管理部３２により、送信元アドレスは自ノード装置１の主ＧＷのＬＤ１とは異なると判定された場合には（ステップＳ２１２；ＮＯ）、本処理は、主ＧＷを変更することなく終了する。
【００９０】
一方、送信元アドレスが自ノード装置１の主ＧＷのＬＤ１と一致すると判定した場合には（ステップＳ２１２；ＹＥＳ）、リンク管理部３２は、更に、ハローフレームに含まれるＧＷアドレスにより特定されるＧＷからハローフレーム送信元の隣接ノード装置１における主ＧＷを除いたＧＷの中で、自ノード装置１の主ＧＷの評価値が最も大きいか否かを判定する（ステップＳ２１３）。
【００９１】
リンク管理部３２により、自ノード装置１の主ＧＷの評価値は最も大きくないと判定された場合には（ステップＳ２１３；ＮＯ）、本処理は、主ＧＷを変更することなく終了する。一方、自ノード装置１の主ＧＷの評価値が最も大きいと判定した場合には（ステップＳ２１３；ＹＥＳ）、リンク管理部３２は、自ノード装置１の主ＧＷを変更する（ステップＳ２１４）。この際、ＧＷ用ルーティングテーブルＴ１に登録されている主ＧＷを除くＧＷの内で、受信したハローフレームにアドレスが含まれるＧＷが複数存在する場合には、リンク管理部３２は、最も評価値が小さいＧＷ、すなわち、経路品質が最も良いＧＷを主ＧＷとして設定する。そして、本処理は終了する。
【００９２】
次に、図１０を参照して、本実施形態におけるタイマ処理の流れについて説明する。図１０は、本実施形態におけるタイマ処理のフローを説明するためのフローチャートの例である。
【００９３】
タイマ処理部３４は、ハローフレーム送信のタイミングが到来したか否かを判定する（ステップＳ３０１）。タイマ処理部３４により、ハローフレーム送信のタイミングはまだ到来していないと判定された場合には（ステップＳ３０１；ＮＯ）、処理は後述のステップＳ３０４の処理へと進む。
【００９４】
一方、ハローフレーム送信のタイミングが到来したと判定した場合には（ステップＳ３０１；ＹＥＳ）、タイマ処理部３４は、ハローフレームの生成指示をハローフレーム生成部３５に送信し（ステップＳ３０２）、ハローフレーム生成部３５は、ハローフレームの生成処理を行う（ステップＳ３０３）。
【００９５】
そして、タイマ処理部３４は、ＧＷ用ルーティングテーブルＴ１のエージングのタイミングが到来したか否かを判定する（ステップＳ３０４）。タイマ処理部３４により、エージングのタイミングはまだ到来していないと判定された場合には（ステップＳ３０４；ＮＯ）、処理はステップＳ３０１の処理へと戻り、前述の処理を繰り返す。
【００９６】
一方、エージングのタイミングが到来したと判定した場合には（ステップＳ３０４；ＹＥＳ）、タイマ処理部３４は、ＧＷ用ルーティングテーブルＴ１の未処理エントリを取得し（ステップＳ３０５）、未処理エントリが有るか否かを判定する（ステップＳ３０６）。
【００９７】
タイマ処理部３４により、未処理エントリは無いと判定された場合には（ステップＳ３０６；ＮＯ）、処理はステップＳ３０１の処理へと戻り、前述の処理を繰り返す。一方、未処理エントリが有ると判定した場合には（ステップＳ３０６；ＹＥＳ）、タイマ処理部３４は、更に、処理対象のエントリにおける経路利用エージングタイマの値が“１”以上か否かを判定する（ステップＳ３０７）。
【００９８】
経路利用エージングタイマの値が“１”以上であると判定した場合には（ステップＳ３０７；ＹＥＳ）、タイマ処理部３４は、経路利用エージングタイマをデクリメントする（ステップＳ３０８）。一方、タイマ処理部３４により、経路利用エージングタイマの値が“０”であると判定された場合には（ステップＳ３０７；ＮＯ）、ステップＳ３０８の処理をスキップしてステップＳ３０９の処理へと進む。
【００９９】
タイマ処理部３４は、処理対象のエントリにおけるＴＴＬをデクリメントし（ステップＳ３０９）、デクリメント後のＴＴＬが“０”か否かを判定する（ステップＳ３１０）。タイマ処理部３４により、デクリメント後のＴＴＬは“０”ではないと判定された場合には（ステップＳ３１０；ＮＯ）、処理はステップＳ３０５の処理へと戻り、前述の処理を繰り返す。
【０１００】
一方、デクリメント後のＴＴＬが“０”であると判定した場合には（ステップＳ３１０；ＹＥＳ）、タイマ処理部３４は、ＴＴＬが“０”であることを示すＴＴＬ情報をリンク管理部３２へ送信する（ステップＳ３１１）。
【０１０１】
そして、リンク管理部３２は、ＴＴＬ情報に含まれるＧＤに対応するエントリをＧＷ用ルーティングテーブルＴ１から削除する（ステップＳ３１２）。そして、処理はステップＳ３０５の処理へと戻り、前述の処理を繰り返す。
【０１０２】
次に、図１１を参照して、本実施形態におけるハローフレーム生成処理の流れについて説明する。図１１は、本実施形態におけるハローフレーム生成処理のフローを説明するためのフローチャートの例である。本ハローフレーム生成処理は、上述のタイマ処理のステップＳ３０３の処理に対応する処理である。
【０１０３】
ハローフレーム生成部３５は、ＧＷ用ルーティングテーブルＴ１のエントリを取得し（ステップＳ４０１）、エントリが有るか否かを判定する（ステップＳ４０２）。
【０１０４】
エントリが有ると判定した場合には（ステップＳ４０２；ＹＥＳ）、ハローフレーム生成部３５は、エントリ分のＧＷ情報を含むハローフレームを生成する（ステップＳ４０３）。この際、ハローフレーム生成部３５は、主ＧＷのＧＷ情報を先頭として、他のＧＷについては、評価値の小さい順（つまり、経路品位が良い順）にＧＷ情報を配置する。
【０１０５】
一方、エントリが無いと判定した場合には（ステップＳ４０２；ＮＯ）、すなわち、ＧＷが登録されていない場合には、ハローフレーム生成部３５は、ＧＷ情報を含まないハローフレームを生成する（ステップＳ４０４）。そして、ハローフレーム生成部３５は、通信部１０を介して、生成したハローフレームを隣接ノード装置１へ送信する（ステップＳ４０５）。
【０１０６】
次に、図１、図８、図９、図１２〜図２５を参照して、具体例に従って、本実施形態における処理を説明する。図１２は、図１に例示するネットワーク１００を構成するノード装置１（ノード装置Ｎ１〜Ｎ５）が有するＧＷ用ルーティングテーブルＴ１の例を示す図である。図１３は、図１に例示するネットワーク１００を構成するノード装置１（ノード装置Ｎ６〜Ｎ９）が有するＧＷ用ルーティングテーブルＴ１の例を示す図である。
【０１０７】
なお、本具体例においては、ハローフレームの受信により評価値が変更されることはないものとする。また、図１２と図１３に示す、ノード装置Ｎ１〜Ｎ９のＧＷ用ルーティングテーブルＴ１は、本具体例における最初の状態を示しているものとする。また、本具体例おいては、ノード装置Ｎ９が、図１に示すように、複数のＧＷ宛の経路となる中継ノードの役割を果たしているものとする。
【０１０８】
まず、図１４に示すように、ノード装置Ｎ９が隣接ノード装置１（ノード装置Ｎ７、Ｎ８、Ｎ１０、Ｎ１１）へハローフレームを送信する。図１３に示すノード装置Ｎ９のＧＷ用ルーティングテーブルＴ１を参照すると、ＧＷ１が主ＧＷであり、他のＧＷの評価値は、ＧＷ３＜ＧＷ２＜ＧＷ４である。従って、ノード装置Ｎ９が送信するハローフレームには、図１４に示すように、{ＧＷ１，ＧＷ３，ＧＷ２，ＧＷ４}の順にＧＷ情報が配置されている。なお、図１４は、図１に例示するネットワーク１００を構成するノード装置Ｎ９がハローフレームを送信した状態を示す図である。
【０１０９】
この場合、図１と図９を参照して、ノード装置Ｎ１０とノード装置Ｎ１１については、ハローフレームの送信元ノード装置Ｎ９は自ノード装置１の主ＧＷのＬＤ１ではないので（ステップＳ２１２；ＮＯ）、主ＧＷの変更を行わない。
【０１１０】
図９と図１３を参照して、ノード装置Ｎ７については、主ＧＷであるＧＷ４のＬＤ１はノード装置Ｎ９であり（ステップＳ２１２；ＹＥＳ）、ＧＷ４のＧＷ情報は最後に配置されているので、ＧＷ４の評価値が最も大きい（ステップＳ２１３；ＹＥＳ）。したがって、ノード装置Ｎ７のリンク管理部３２は、図１５に示すように、主ＧＷを変更する。本実施形態においては、ＧＷ１〜ＧＷ４の中で、ＧＷ１の評価値が最も小さいことから主ＧＷとしてＧＷ１を設定する。なお、図１５は、図１４に例示するハローフレームを受信した後のノード装置Ｎ７のＧＷ用ルーティングテーブルＴ１の例を示す図である。
【０１１１】
図９と図１３を参照して、ノード装置Ｎ８については、主ＧＷであるＧＷ２のＬＤ１はノード装置Ｎ９であるが（ステップＳ２１２；ＹＥＳ）、ＧＷ２のＧＷ情報は最後に配置されていないので（ステップＳ２１３；ＮＯ）、主ＧＷの変更を行わない。
【０１１２】
次に、図１６に示すように、ノード装置Ｎ７が隣接ノード装置１（ノード装置Ｎ５、Ｎ８、Ｎ９）へハローフレームを送信する。図１５に示すノード装置Ｎ７のＧＷ用ルーティングテーブルＴ１を参照すると、ＧＷ１が主ＧＷであり、他のＧＷの評価値は、ＧＷ３＜ＧＷ２＜ＧＷ４である。従って、ノード装置Ｎ７が送信するハローフレームには、図１６に示すように、{ＧＷ１，ＧＷ３，ＧＷ２，ＧＷ４}の順にＧＷ情報が配置されている。なお、図１６は、図１に例示するネットワーク１００を構成するノード装置Ｎ７がハローフレームを送信した状態を示す図である。
【０１１３】
この場合、図９と図１２を参照して、ノード装置Ｎ５については、主ＧＷであるＧＷ３のＬＤ１はノード装置Ｎ７であるが（ステップＳ２１２；ＹＥＳ）、ＧＷ３のＧＷ情報は最後に配置されていないので（ステップＳ２１３；ＮＯ）、主ＧＷの変更を行わない。
【０１１４】
図９と図１３を参照して、ノード装置Ｎ８については、主ＧＷであるＧＷ２のＬＤ１はノード装置Ｎ９であることから（ステップＳ２１２；ＮＯ）、主ＧＷの変更を行わない。同様に、ノード装置Ｎ９については、主ＧＷであるＧＷ１のＬＤ１はノード装置Ｎ１１であることから（ステップＳ２１２；ＮＯ）、主ＧＷの変更を行わない。
【０１１５】
次に、図１７に示すように、ノード装置Ｎ５が隣接ノード装置１（ノード装置Ｎ１、Ｎ２、Ｎ６、Ｎ７）へハローフレームを送信する。図１２に示すノード装置Ｎ５のＧＷ用ルーティングテーブルＴ１を参照すると、ＧＷ３が主ＧＷであり、他のＧＷの評価値は、ＧＷ１＜ＧＷ２＜ＧＷ４である。従って、ノード装置Ｎ５が送信するハローフレームには、図１７に示すように、{ＧＷ３，ＧＷ１，ＧＷ２，ＧＷ４}の順にＧＷ情報が配置されている。なお、図１７は、図１に例示するネットワーク１００を構成するノード装置Ｎ５がハローフレームを送信した状態を示す図である。
【０１１６】
この場合、図９と図１５を参照して、ノード装置Ｎ７については、主ＧＷであるＧＷ１のＬＤ１はノード装置Ｎ９であることから（ステップＳ２１２；ＮＯ）、主ＧＷの変更を行わない。同様に、図９と図１３を参照して、ノード装置Ｎ６については、主ＧＷであるＧＷ２のＬＤ１はノード装置Ｎ８であることから（ステップＳ２１２；ＮＯ）、主ＧＷの変更を行わない。
【０１１７】
図９と図１２を参照して、ノード装置Ｎ２については、主ＧＷであるＧＷ３のＬＤ１はノード装置Ｎ５であるが（ステップＳ２１２；ＹＥＳ）、ノード装置Ｎ２の主ＧＷであるＧＷ３は、ハローフレームの送信元ノード装置Ｎ５の主ＧＷであることから（ステップＳ２１３；ＮＯ）、主ＧＷの変更を行わない。
【０１１８】
図９と図１２を参照して、ノード装置Ｎ１については、主ＧＷであるＧＷ４のＬＤ１はノード装置Ｎ５であり（ステップＳ２１２；ＹＥＳ）、ＧＷ４のＧＷ情報は最後に配置されているので、ＧＷ４の評価値が最も大きい（ステップＳ２１３；ＹＥＳ）。したがって、ノード装置Ｎ１のリンク管理部３２は、図１８に示すように、主ＧＷを変更する。本実施形態においては、ＧＷ１〜ＧＷ４の中で、ＧＷ１の評価値が最も小さいことから主ＧＷとしてＧＷ１を設定する。なお、図１８は、図１７に例示するハローフレームを受信した後のノード装置Ｎ１のＧＷ用ルーティングテーブルＴ１の例を示す図である。
【０１１９】
次に、図１９に示すように、ノード装置Ｎ８が隣接ノード装置１（ノード装置Ｎ４、Ｎ６、Ｎ７、Ｎ９）へハローフレームを送信する。図１３に示すノード装置Ｎ８のＧＷ用ルーティングテーブルＴ１を参照すると、ＧＷ２が主ＧＷであり、他のＧＷの評価値は、ＧＷ１＜ＧＷ３＜ＧＷ４である。従って、ノード装置Ｎ８が送信するハローフレームには、図１９に示すように、{ＧＷ２，ＧＷ１，ＧＷ３，ＧＷ４}の順にＧＷ情報が配置されている。なお、図１９は、図１に例示するネットワーク１００を構成するノード装置Ｎ８がハローフレームを送信した状態を示す図である。
【０１２０】
この場合、図９と図１３を参照して、ノード装置Ｎ９については、主ＧＷであるＧＷ１のＬＤ１はノード装置Ｎ１１であることから（ステップＳ２１２；ＮＯ）、主ＧＷの変更を行わない。同様に、図９と図１５を参照して、ノード装置Ｎ７については、主ＧＷであるＧＷ１のＬＤ１はノード装置Ｎ９であることから（ステップＳ２１２；ＮＯ）、主ＧＷの変更を行わない。
【０１２１】
図９と図１３を参照して、ノード装置Ｎ６については、主ＧＷであるＧＷ２のＬＤ１はノード装置Ｎ８であるが（ステップＳ２１２；ＹＥＳ）、ノード装置Ｎ６の主ＧＷであるＧＷ２は、ハローフレームの送信元ノード装置Ｎ８の主ＧＷであることから（ステップＳ２１３；ＮＯ）、主ＧＷの変更を行わない。
【０１２２】
図９と図１２を参照して、ノード装置Ｎ４については、主ＧＷであるＧＷ１のＬＤ１はノード装置Ｎ８であるが（ステップＳ２１２；ＹＥＳ）、ＧＷ１のＧＷ情報は最後に配置されていないので（ステップＳ２１３；ＮＯ）、主ＧＷの変更を行わない。
【０１２３】
次に、図２０に示すように、ノード装置Ｎ６が隣接ノード装置１（ノード装置Ｎ３、Ｎ５、Ｎ８）へハローフレームを送信する。図１３に示すノード装置Ｎ６のＧＷ用ルーティングテーブルＴ１を参照すると、ＧＷ２が主ＧＷであり、他のＧＷの評価値は、ＧＷ１＜ＧＷ３＜ＧＷ４である。従って、ノード装置Ｎ６が送信するハローフレームには、図２０に示すように、{ＧＷ２，ＧＷ１，ＧＷ３，ＧＷ４}の順にＧＷ情報が配置されている。なお、図２０は、図１に例示するネットワーク１００を構成するノード装置Ｎ６がハローフレームを送信した状態を示す図である。
【０１２４】
この場合、図９と図１３を参照して、ノード装置Ｎ８については、主ＧＷであるＧＷ２のＬＤ１はノード装置Ｎ９であることから（ステップＳ２１２；ＮＯ）、主ＧＷの変更を行わない。同様に、図９と図１２を参照して、ノード装置Ｎ５については、主ＧＷであるＧＷ３のＬＤ１はノード装置Ｎ７であることから（ステップＳ２１２；ＮＯ）、主ＧＷの変更を行わない。
【０１２５】
図９と図１２を参照して、ノード装置Ｎ３については、主ＧＷであるＧＷ２のＬＤ１はノード装置Ｎ６であるが（ステップＳ２１２；ＹＥＳ）、ノード装置Ｎ３の主ＧＷであるＧＷ２は、ハローフレームの送信元ノード装置Ｎ６の主ＧＷであることから（ステップＳ２１３；ＮＯ）、主ＧＷの変更を行わない。
【０１２６】
ここで、図２１と図２２は、本具体例におけるこの時点でのノード装置Ｎ１〜Ｎ９のＧＷ用ルーティングテーブルＴ１の状態を示している。図２１と図２２に示すように、ノード装置Ｎ９のＧＷ用ルーティングテーブルＴ１に登録されているＧＷの中で、最も評価値が大きい、すなわち、経路品質が最も悪いＧＷ４を主ＧＷとするノード装置１は存在しなくなっている。
【０１２７】
したがって、ノード装置Ｎ９より下流のノード装置１（配下のノード装置１）からＧＷ４宛にデータフレームが送信されることはなくなるため、図２３に示すように、時間が経過すれば、ノード装置Ｎ９のＧＷ用ルーティングテーブルＴ１において、ＧＷ４に対応する経路利用エージングタイマの値が“０”となる。なお、図２３は、ノード装置Ｎ９のＧＷ用ルーティングテーブルＴ１における経路利用エージングタイマが“０”になった状態を示す図である。
【０１２８】
この状態の時に、図２４に示すように、ＧＷ５がネットワーク１００に追加され、ノード装置Ｎ９に対して、ハローフレームを送信し、ＧＷ５の評価値がＧＷ４の評価値より小さい（図８のステップＳ２０９；ＹＥＳ）、すなわち、経路品質がより良いとすると、ノード装置Ｎ９のリンク管理部３２は、図２５に示すように、ＧＷ４とＧＷ５を入れ替える処理を行う（図８のステップＳ２１０）。なお、図２４は、図１に例示するネットワーク１００にＧＷ５が追加され、ＧＷ５がハローフレームを送信した状態を示す図であり、図２５は、図２４に例示するハローフレームを受信した後のノード装置Ｎ９のＧＷ用ルーティングテーブルＴ１の例を示す図である。
【０１２９】
上記実施形態によれば、ノード装置１は、ＧＷごとに、ＬＤ１と、評価値と、主ＧＷフラグと、を対応付けているＧＷ用ルーティングテーブルＴ１を保持し、所定のタイミングで、ＧＷ用ルーティングテーブルＴ１を参照して、登録されているＧＷのＧＷアドレスと対応する評価値とを含むエントリ分のＧＷ情報と、自ノードアドレス（自ノード装置１のアドレス）と、を含み、自ノード装置１における主ＧＷを特定可能なハローフレームを生成し、生成したハローフレームを複数の隣接するノード装置１へ送信する。そして、ノード装置１は、複数の隣接するノード装置１の内のいずれかの一つから受信したハローフレームの送信元が、自ノード装置１における主ＧＷのＬＤ１であり、受信したハローフレームに含まれる送信元の主ＧＷの評価値を除いた評価値の中で、自ノード装置１における主ＧＷの評価値が最も大きい場合に、自ノード装置１における主ＧＷを、受信したハローフレームに含まれるＧＷアドレスにより特定されるＧＷであって、ＧＷ用ルーティングテーブルＴ１に登録されている主ＧＷ以外のＧＷに変更する。
【０１３０】
このように構成することで、ＧＷ用ルーティングテーブルＴ１に登録されている経路品質が悪いＧＷを、自ノード装置１より下流のノード装置１（配下のノード装置１）が主ＧＷとして選択している状態を回避することが可能となる。これにより、経路品質が悪いＧＷは使用されなくなるため、ＧＷ用ルーティングテーブルＴ１を他のＧＷと入れ替え可能な状態に遷移させることが可能となる。
【０１３１】
したがって、経路品質がより良いＧＷがネットワーク１００に追加された場合に、追加された経路品質がより良いＧＷをＧＷ用ルーティングテーブルＴ１に登録することが可能となる。
【０１３２】
図２６は、本実施形態におけるノード装置１のハードウェア構成の例を示す図である。図２に示すノード装置１は、例えば、図２６に示す各種ハードウェアにより実現されてもよい。図２６の例では、ノード装置１は、ＭＰＵ２０１、ＰＨＹ（PHYsical layer）チップ２０２、およびタイマＩＣ（Integrated Circuit）２０３を備える。また、ノード装置１は、ＤＲＡＭ（Dynamic Random Access Memory）２０４、フラッシュメモリ２０５、無線通信モジュール２０６、および読取装置２０７を備える。
【０１３３】
ＭＰＵ２０１とＰＨＹチップ２０２の間を接続する通信インタフェースは、ＭＩＩ／ＭＤＩＯ（Media Independent Interface or Management Data Input/Output）２０９である。ＭＩＩとＭＤＩＯはいずれも、物理層とＭＡＣ（Media Access Control sublayer）副層との間のインタフェースである。また、ＭＰＵ２０１とタイマＩＣ２０３は、Ｉ２Ｃ／ＰＩＯ（Inter-Integrated Circuit or Parallel Input/Output）バス２１０を介して、接続されている。そして、ＤＲＡＭ２０４とフラッシュメモリ２０５と無線通信モジュール２０６と読取装置２０７は、ＰＣＩ（Peripheral Component Interconnect）バス２１１を介して、ＭＰＵ２０１に接続されている。
【０１３４】
ＭＰＵ２０１は、不揮発性記憶装置の一種であるフラッシュメモリ２０５に格納された動作プログラムをＤＲＡＭ２０４にロードし、ＤＲＡＭ２０４をワーキングメモリとして使いながら各種処理を実行する。ＭＰＵ２０１は、動作プログラムを実行することで、図２に示す制御部３０の各機能部を実現することができる。
【０１３５】
なお、上記動作を実行するための動作プログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk-Read Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magnet Optical disk）などのコンピュータで読み取り可能な記録媒体２０８に記憶して配布し、これをノード装置１の読取装置２０７で読み取ってコンピュータにインストールすることにより、上述の処理を実行するように構成してもよい。さらに、インターネット上のサーバ装置が有するディスク装置等に動作プログラムを記憶しておき、ＰＨＹチップ２０２もしくは無線通信モジュール２０６を介して、ノード装置１のコンピュータに動作プログラムをダウンロード等するものとしてもよい。
【０１３６】
なお、実施形態に応じて、ＤＲＡＭ２０４やフラッシュメモリ２０５以外の他の種類の記憶装置が利用されてもよい。例えば、ノード装置１は、ＣＡＭ（Content Addressable Memory）、ＳＲＡＭ（Static Random Access Memory）、ＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）などの記憶装置を有してもよい。
【０１３７】
図２などに示すＧＷ用ルーティングテーブルＴ１は、ＤＲＡＭ２０４、フラッシュメモリ２０５、あるいは不図示のその他の記憶装置により実現される。また、フラッシュメモリ２０５は、動作プログラムだけでなく、自ノード装置１のアドレスなども記憶している。
【０１３８】
ＰＨＹチップ２０２は、有線接続における物理層の処理を行う回路である。ネットワーク１００が無線ネットワークの場合には、ノード装置１はＰＨＹチップ２０２を備えなくてもよい。しかし、ノード装置１と外部ネットワークとの接続のために、ノード装置１はＰＨＹチップ２０２を備えていてもよい。
【０１３９】
例えば、ノード装置１は、イーサネット（登録商標）規格にしたがった有線ＬＡＮポートを備え、有線ＬＡＮポートに接続されたケーブルを介して外部ネットワークのゲートウェイ装置などに接続されていてもよい。
【０１４０】
その場合、ＭＰＵ２０１は、イーサネットフレームを生成し、ＭＩＩ／ＭＤＩＯ２０９を介してＰＨＹチップ２０２に出力することができる。そして、ＰＨＹチップ２０２は、ＭＰＵ２０１からの出力（すなわちイーサネットフレームを表す論理信号）を、ケーブルの種類に応じた信号（つまり電気信号または光信号）に変換し、ケーブルに出力する。こうして、ノード装置１はＰＨＹチップ２０２を用いて外部ネットワークにデータ（例えば、フレーム）を送信することができる。
【０１４１】
また、ＰＨＹチップ２０２は、ケーブルと有線ＬＡＮポートを介して外部ネットワークから入力される電気信号または光信号を、論理信号に変換し、ＭＩＩ／ＭＤＩＯ２０９を介してＭＰＵ２０１に出力することもできる。こうして、ノード装置１はＰＨＹチップ２０２を用いて外部ネットワークからデータ（例えば、フレーム）を受信することができる。
【０１４２】
タイマＩＣ２０３は、設定された時間が経過するまでカウントアップ動作を行い、設定された時間が経過すると割り込み信号を出力する回路である。
【０１４３】
無線通信モジュール２０６は、無線接続における物理層の処理を行うハードウェアである。無線通信モジュール２０６は、例えば、アンテナ、ＡＤＣ（Analog-to-Digital Converter）、ＤＡＣ（Digital-to-Analog Converter）、変調器、復調器、符号化器、復号器などを含む。
【０１４４】
なお、実施形態に応じて、ノード装置１のハードウェア構成は図２６とは異なっていてもよく、図２６に例示した規格・種類以外のその他のハードウェアをノード装置１に適用することもできる。
【０１４５】
例えば、図２に示す制御部３０の各機能部は、ハードウェア回路により実現されてもよい。具体的には、ＭＰＵ２０１の代わりに、ＦＰＧＡ（Field Programmable Gate Array）などのリコンフィギュラブル回路や、ＡＳＩＣ（Application Specific Integrated Circuit）などにより、これら図２に示す制御部３０の各機能部が実現されてもよい。もちろん、ＭＰＵ２０１とハードウェア回路の双方により、これらの機能部が実現されてもよい。
【０１４６】
以上において、いくつかの実施形態について説明した。しかしながら、実施形態は上記の実施形態に限定されるものではなく、上述の実施形態の各種変形形態及び代替形態を包含するものとして理解されるべきである。例えば、各種実施形態は、その趣旨及び範囲を逸脱しない範囲で構成要素を変形して具体化できることが理解されよう。また、前述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態を成すことができることが理解されよう。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して又は置換して、或いは実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が実施され得ることが当業者には理解されよう。
【０１４７】
以上の実施形態を含む実施形態に関し、さらに以下の付記を開示する。
（付記１）
他のネットワークに接続するための複数のゲートウェイ装置への経路を、それぞれ、管理するテーブルであって、前記ゲートウェイ装置ごとに、当該ゲートウェイ装置宛にデータフレームを送信する際に、リンクが存在する複数の隣接するノード装置の内で前記データフレームの最初の送信先となる隣接するノード装置を示す第１経路情報と、当該ゲートウェイ装置までの経路品質を示す経路品質情報と、前記他のネットワークを構成するノード装置と通信する際に自装置が使用するゲートウェイ装置である主ゲートウェイ装置を特定するための特定情報と、を対応付けているテーブルを格納する記憶手段と、
所定のタイミングで、前記テーブルを参照して、登録されている前記ゲートウェイ装置を一意に識別可能なゲートウェイ装置識別情報と対応する前記経路品質情報との組みを前記テーブルのエントリ分含むゲートウェイ装置情報と、自装置を一意に識別可能な装置識別情報と、を含み、自装置における前記主ゲートウェイ装置を特定可能なハローフレームを生成するハローフレーム生成手段と、
前記ハローフレーム生成手段により生成された前記ハローフレームを前記複数の隣接するノード装置へ送信する送信手段と、
前記複数の隣接するノード装置の内のいずれかの一つから前記ハローフレームを受信する受信手段と、
前記テーブルを参照し、前記受信手段により受信された前記ハローフレームに含まれる前記装置識別情報に基づいて、前記ハローフレームの送信元が、自装置における前記主ゲートウェイ装置宛にデータフレームを送信する際に当該データフレームの最初の送信先となる隣接するノード装置か否かを判定する第１の判定手段と、
前記第１の判定手段により、前記ハローフレームの送信元は、前記最初の送信先となる隣接するノード装置であると判定された場合に、受信された前記ハローフレームに含まれる前記経路品質情報に基づいて、前記送信元における前記主ゲートウェイ装置を除いた中で、自装置における前記主ゲートウェイ装置の経路品質が最も悪いか否かを判定する第２の判定手段と、
前記第２の判定手段により、自装置における前記主ゲートウェイ装置の経路品質が最も悪いと判定された場合に、前記特定情報を変更して、自装置における前記主ゲートウェイ装置を、受信された前記ハローフレームに含まれる前記ゲートウェイ装置識別情報により特定される前記ゲートウェイ装置であって、前記テーブルに登録されている他のゲートウェイ装置に変更する変更手段と、
を備える、
ことを特徴とするノード装置。
（付記２）
前記テーブルには、ゲートウェイ装置宛に前記データフレームを送信した頻度を示す頻度情報が、更に、対応付けられており、
所定のタイミングで、前記頻度情報を更新する第１の更新手段と、
自装置が属するネットワークに新たなゲートウェイ装置が追加された際に、前記テーブルにエントリの空きが有れば、前記新たなゲートウェイ装置を前記テーブルに追加登録し、前記テーブルにエントリの空きが無く、且つ、前記頻度情報が、ゲートウェイ装置宛の前記データフレームを所定期間以上送信していないことを示す状態となっているエントリが存在すれば、当該エントリを削除した上で、前記新たなゲートウェイ装置を前記テーブルに追加登録する登録手段と、
を、更に、備える、
ことを特徴とする付記１に記載のノード装置。
（付記３）
前記登録手段は、前記新たなゲートウェイ装置の経路品質が、前記頻度情報が、ゲートウェイ装置宛の前記データフレームを所定期間以上送信していないことを示す状態となっているエントリの前記ゲートウェイ装置より良い場合に、当該エントリを削除した上で、前記新たなゲートウェイ装置を前記テーブルに追加登録する、
ことを特徴とする付記２に記載のノード装置。
（付記４）
前記変更手段は、前記他のゲートウェイ装置の内で、受信された前記ハローフレームに含まれる前記経路品質情報が示す経路品質が最も良いゲートウェイ装置に変更する、
ことを特徴とする付記１乃至３のいずれか一に記載のノード装置。
（付記５）
前記第１の判定手段は、前記ハローフレームの送信元が、前記テーブルに登録されている主ゲートウェイ装置に対応する前記第１経路情報が示す前記隣接するゲートウェイ装置と一致するか否かを判定することで、前記最初の送信先となる隣接するノード装置であるか否かを判定する、
ことを特徴とする付記１乃至４のいずれか一に記載のノード装置。
（付記６）
前記ハローフレーム生成手段は、自装置における前記主ゲートウェイ装置に対応する前記ゲートウェイ装置識別情報と対応する前記経路品質情報との組みを、当該主ゲートウェイ装置以外のゲートウェイ装置に対応する前記組みより前に配置することで、自装置における前記主ゲートウェイ装置を特定可能とする前記ハローフレームを生成する、
ことを特徴とする付記１乃至５のいずれか一に記載のノード装置。
（付記７）
前記テーブルには、エントリの有効性を示す有効性情報が、更に、対応付けられており、
所定のタイミングで、前記有効性情報を更新する第２の更新手段と、
前記有効性情報が、エントリが無効になったことを示す状態になると、対応するエントリを削除する削除手段と、
を、更に、備える、
ことを特徴とする付記１乃至６のいずれか一に記載のノード装置。
（付記８）
他のネットワークに接続するための複数のゲートウェイ装置への経路を、それぞれ、管理するテーブルであって、前記ゲートウェイ装置ごとに、当該ゲートウェイ装置宛にデータフレームを送信する際に、リンクが存在する複数の隣接するノード装置の内で前記データフレームの最初の送信先となる隣接するノード装置を示す第１経路情報と、当該ゲートウェイ装置までの経路品質を示す経路品質情報と、前記他のネットワークを構成するノード装置と通信する際に自装置が使用するゲートウェイ装置である主ゲートウェイ装置を特定するための特定情報と、を対応付けているテーブルを参照し、
登録されている前記ゲートウェイ装置を一意に識別可能なゲートウェイ装置識別情報と対応する前記経路品質情報との組みを前記テーブルのエントリ分含むゲートウェイ装置情報と、自装置を一意に識別可能な装置識別情報と、を含み、自装置における前記主ゲートウェイ装置を特定可能なハローフレームを、所定のタイミングで、生成し、
生成した前記ハローフレームを前記複数の隣接するノード装置へ送信し、
前記複数の隣接するノード装置の内のいずれかの一つから前記ハローフレームを受信すると、前記テーブルを参照し、受信した前記ハローフレームに含まれる前記装置識別情報に基づいて、前記ハローフレームの送信元が、自装置における前記主ゲートウェイ装置宛にデータフレームを送信する際に当該データフレームの最初の送信先となる隣接するノード装置か否かを判定し、
受信した前記ハローフレームの送信元は、前記最初の送信先となる隣接するノード装置であると判定した場合に、受信した前記ハローフレームに含まれる前記経路品質情報に基づいて、前記送信元における前記主ゲートウェイ装置を除いた中で、自装置における前記主ゲートウェイ装置の経路品質が最も悪いか否かを判定し、
自装置における前記主ゲートウェイ装置の経路品質が最も悪いと判定した場合に、前記特定情報を変更して、自装置における前記主ゲートウェイ装置を、受信した前記ハローフレームに含まれる前記ゲートウェイ装置識別情報により特定される前記ゲートウェイ装置であって、前記テーブルに登録されている他のゲートウェイ装置に変更する、
ことを特徴とする経路入れ替え方法。
（付記９）
ノード装置のコンピュータに、
他のネットワークに接続するための複数のゲートウェイ装置への経路を、それぞれ、管理するテーブルであって、前記ゲートウェイ装置ごとに、当該ゲートウェイ装置宛にデータフレームを送信する際に、リンクが存在する複数の隣接するノード装置の内で前記データフレームの最初の送信先となる隣接するノード装置を示す第１経路情報と、当該ゲートウェイ装置までの経路品質を示す経路品質情報と、前記他のネットワークを構成するノード装置と通信する際に自装置が使用するゲートウェイ装置である主ゲートウェイ装置を特定するための特定情報と、を対応付けているテーブルを参照し、
登録されている前記ゲートウェイ装置を一意に識別可能なゲートウェイ装置識別情報と対応する前記経路品質情報との組みを前記テーブルのエントリ分含むゲートウェイ装置情報と、自装置を一意に識別可能な装置識別情報と、を含み、自装置における前記主ゲートウェイ装置を特定可能なハローフレームを、所定のタイミングで、生成し、
生成した前記ハローフレームを前記複数の隣接するノード装置へ送信し、
前記複数の隣接するノード装置の内のいずれかの一つから前記ハローフレームを受信すると、前記テーブルを参照し、受信した前記ハローフレームに含まれる前記装置識別情報に基づいて、前記ハローフレームの送信元が、自装置における前記主ゲートウェイ装置宛にデータフレームを送信する際に当該データフレームの最初の送信先となる隣接するノード装置か否かを判定し、
受信した前記ハローフレームの送信元は、前記最初の送信先となる隣接するノード装置であると判定した場合に、受信した前記ハローフレームに含まれる前記経路品質情報に基づいて、前記送信元における前記主ゲートウェイ装置を除いた中で、自装置における前記主ゲートウェイ装置の経路品質が最も悪いか否かを判定し、
自装置における前記主ゲートウェイ装置の経路品質が最も悪いと判定した場合に、前記特定情報を変更して、自装置における前記主ゲートウェイ装置を、受信した前記ハローフレームに含まれる前記ゲートウェイ装置識別情報により特定される前記ゲートウェイ装置であって、前記テーブルに登録されている他のゲートウェイ装置に変更する、
処理を実行させる、
ことを特徴とするプログラム。
（付記１０）
ノード装置のコンピュータに、
他のネットワークに接続するための複数のゲートウェイ装置への経路を、それぞれ、管理するテーブルであって、前記ゲートウェイ装置ごとに、当該ゲートウェイ装置宛にデータフレームを送信する際に、リンクが存在する複数の隣接するノード装置の内で前記データフレームの最初の送信先となる隣接するノード装置を示す第１経路情報と、当該ゲートウェイ装置までの経路品質を示す経路品質情報と、前記他のネットワークを構成するノード装置と通信する際に自装置が使用するゲートウェイ装置である主ゲートウェイ装置を特定するための特定情報と、を対応付けているテーブルを参照し、
登録されている前記ゲートウェイ装置を一意に識別可能なゲートウェイ装置識別情報と対応する前記経路品質情報との組みを前記テーブルのエントリ分含むゲートウェイ装置情報と、自装置を一意に識別可能な装置識別情報と、を含み、自装置における前記主ゲートウェイ装置を特定可能なハローフレームを、所定のタイミングで、生成し、
生成した前記ハローフレームを前記複数の隣接するノード装置へ送信し、
前記複数の隣接するノード装置の内のいずれかの一つから前記ハローフレームを受信すると、前記テーブルを参照し、受信した前記ハローフレームに含まれる前記装置識別情報に基づいて、前記ハローフレームの送信元が、自装置における前記主ゲートウェイ装置宛にデータフレームを送信する際に当該データフレームの最初の送信先となる隣接するノード装置か否かを判定し、
受信した前記ハローフレームの送信元は、前記最初の送信先となる隣接するノード装置であると判定した場合に、受信した前記ハローフレームに含まれる前記経路品質情報に基づいて、前記送信元における前記主ゲートウェイ装置を除いた中で、自装置における前記主ゲートウェイ装置の経路品質が最も悪いか否かを判定し、
自装置における前記主ゲートウェイ装置の経路品質が最も悪いと判定した場合に、前記特定情報を変更して、自装置における前記主ゲートウェイ装置を、受信した前記ハローフレームに含まれる前記ゲートウェイ装置識別情報により特定される前記ゲートウェイ装置であって、前記テーブルに登録されている他のゲートウェイ装置に変更する、
処理を実行させるプログラムを記憶した記録媒体。
【符号の説明】
【０１４８】
１００    ネットワーク
Ｎｉ      ノード装置の装置ＩＤ
ＧＷｊ    ゲートウェイ装置の装置ＩＤ
１        ノード装置
１０      通信部
２０      記憶部
Ｔ１      ＧＷ用ルーティングテーブル
３０      制御部
３１      フレーム種別特定部
３２      リンク管理部
３３      データフレーム処理部
３４      タイマ処理部
３５      ハローフレーム生成部
２０１    ＭＰＵ
２０２    ＰＨＹチップ
２０３    タイマＩＣ
２０４    ＤＲＡＭ
２０５    フラッシュメモリ
２０６    無線通信モジュール
２０７    読取装置
２０８    記録媒体
２０９    ＭＩＩ／ＭＤＩＯ
２１０    Ｉ２Ｃ／ＰＩＯバス
２１１    ＰＣＩバス
【図１】
2015095722.tif 000003
【図２】
2015095722.tif 000004
【図３】
2015095722.tif 000005
【図４】
2015095722.tif 000006
【図５】
2015095722.tif 000007
【図６】
2015095722.tif 000008
【図７】
2015095722.tif 000009
【図８】
2015095722.tif 000010
【図９】
2015095722.tif 000011
【図１０】
2015095722.tif 000012
【図１１】
2015095722.tif 000013
【図１２】
2015095722.tif 000014
【図１３】
2015095722.tif 000015
【図１４】
2015095722.tif 000016
【図１５】
2015095722.tif 000017
【図１６】
2015095722.tif 000018
【図１７】
2015095722.tif 000019
【図１８】
2015095722.tif 000020
【図１９】
2015095722.tif 000021
【図２０】
2015095722.tif 000022
【図２１】
2015095722.tif 000023
【図２２】
2015095722.tif 000024
【図２３】
2015095722.tif 000025
【図２４】
2015095722.tif 000026
【図２５】
2015095722.tif 000027
【図２６】
2015095722.tif 000028