(57)【特許請求の範囲】
【請求項１】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおいて、
前記サーバは、
各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、負荷が高い集約局がある場合、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示し、探索を指示されたノードが負荷の低い集約局を検出したときは、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示し、さらに、前記負荷が高い集約局に接続する他ノードに対して、前記基点ノードの変更タイミングより所定の時間だけ遅延させた前記負荷が低い集約局への変更タイミングを指示し、
前記サーバから変更タイミングを指示された各ノードは、
前記サーバから指示された変更タイミングに従って、接続先の集約局を変更する、
ことを特徴とする通信システム。
【請求項２】
前記サーバは、
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多いノードである下流ノードに対して負荷が低い集約局の探索を指示し、
前記通信経路において前記下流ノードより中継数が少ない上流ノードを前記他ノードとして、変更タイミングを指示する、
ことを特徴とする請求項１に記載の通信システム。
【請求項３】
前記サーバは、
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が少ないノードである上流ノードに対して負荷が低い集約局の探索を指示し、
前記通信経路において前記上流ノードより中継数が多い下流ノードを前記他ノードとして、変更タイミングを指示する、
ことを特徴とする請求項１に記載の通信システム。
【請求項４】
前記サーバは、
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多い下流ノードと最も中継数が少ない上流ノードとの中間にある中間ノードに対して負荷が低い集約局の探索を指示し、
前記通信経路において前記中間ノードより中継数が少ない上流ノードおよび前記中間ノードより中継数が多い下流ノードを前記他ノードとして、変更タイミングを指示する、
ことを特徴とする請求項１に記載の通信システム。
【請求項５】
前記サーバから変更タイミングを指示された前記上流ノードにおいて、前記探索を指示されたノードを含まない下流ノードで形成される別の通信経路がある場合、
前記サーバは、さらに、
前記別の通信経路を形成するノードを前記他ノードとして、変更タイミングを指示する、
ことを特徴とする請求項４に記載の通信システム。
【請求項６】
前記基点ノードは、前記サーバからの指示に従って負荷が低い集約局の探索を行い、前記サーバからの変更タイミングに従って、自身が探索した前記負荷が低い集約局へ接続先を変更する、
ことを特徴とする請求項１〜５のいずれか１つに記載の通信システム。
【請求項７】
前記他ノードは、前記サーバからの変更タイミングに従って、前記基点ノードが探索した負荷が低い集約局へ接続先を変更する、
ことを特徴とする請求項１〜６のいずれか１つに記載の通信システム。
【請求項８】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおいて、
前記サーバは、
各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、負荷が高い集約局がある場合、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示し、探索を指示されたノードが負荷の低い集約局を検出したときは、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示し、
前記基点ノードは、
前記負荷が高い集約局に接続する他ノードに対して、自ノードの集約局変更情報および他ノードの集約局変更タイミング情報を通知し、
前記他ノードは、
前記集約局変更情報を受けたときは前記負荷が低い集約局へ接続先を変更するかどうかを判断し、前記集約局変更タイミング情報を受けたときは通知されたタイミングに従って前記負荷が低い集約局へ接続先を変更する場合に、
前記サーバは、
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多いノードである下流ノードに対して負荷が低い集約局の探索を指示し、
前記基点ノードは、
前記通信経路において前記下流ノードより中継数が少ない上流ノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報を通知し、
他ノードとして情報の通知を受けた上流ノードは、
通知された情報に基づいて接続先の集約局を変更するかどうかを判断し、変更する場合、通知された変更タイミングより所定の時間だけ遅延させた自ノードの変更タイミングを決定する、
ことを特徴とする通信システム。
【請求項９】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおいて、
前記サーバは、
各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、負荷が高い集約局がある場合、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示し、探索を指示されたノードが負荷の低い集約局を検出したときは、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示し、
前記基点ノードは、
前記負荷が高い集約局に接続する他ノードに対して、自ノードの集約局変更情報および他ノードの集約局変更タイミング情報を通知し、
前記他ノードは、
前記集約局変更情報を受けたときは前記負荷が低い集約局へ接続先を変更するかどうかを判断し、前記集約局変更タイミング情報を受けたときは通知されたタイミングに従って前記負荷が低い集約局へ接続先を変更する場合に、
前記サーバは、
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多いノードである下流ノードに対して負荷が低い集約局の探索を指示し、
前記基点ノードは、
前記負荷が高い集約局に接続するノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報をブロードキャストで通知し、
他ノードとして情報の通知を受けたノードは、
通知された情報に基づいて接続先の集約局を変更するかどうかを判断し、変更する場合、通知された変更タイミングより所定の時間だけ遅延させた自ノードの変更タイミングを決定する、
ことを特徴とする通信システム。
【請求項１０】
さらに、接続先の集約局を変更するノードは、
前記負荷が高い集約局に接続するノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報をブロードキャストで通知する、
ことを特徴とする請求項９に記載の通信システム。
【請求項１１】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおいて、
前記サーバは、
各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、負荷が高い集約局がある場合、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示し、探索を指示されたノードが負荷の低い集約局を検出したときは、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示し、
前記基点ノードは、
前記負荷が高い集約局に接続する他ノードに対して、自ノードの集約局変更情報および他ノードの集約局変更タイミング情報を通知し、
前記他ノードは、
前記集約局変更情報を受けたときは前記負荷が低い集約局へ接続先を変更するかどうかを判断し、前記集約局変更タイミング情報を受けたときは通知されたタイミングに従って前記負荷が低い集約局へ接続先を変更する場合に、
前記サーバは、
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が少ないノードである上流ノードに対して負荷が低い集約局の探索を指示し、
前記基点ノードは、
前記通信経路において前記上流ノードより中継数が多い下流ノードを前記他ノードとして、前記他ノードの集約局変更タイミング情報として自ノードの変更タイミングより所定の時間だけ遅延させた変更タイミングを通知し、
他ノードとして情報の通知を受けた下流ノードは、
通知されたタイミングに従って、接続先の集約局を変更する、
ことを特徴とする通信システム。
【請求項１２】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおいて、
前記サーバは、
各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、負荷が高い集約局がある場合、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示し、探索を指示されたノードが負荷の低い集約局を検出したときは、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示し、
前記基点ノードは、
前記負荷が高い集約局に接続する他ノードに対して、自ノードの集約局変更情報および他ノードの集約局変更タイミング情報を通知し、
前記他ノードは、
前記集約局変更情報を受けたときは前記負荷が低い集約局へ接続先を変更するかどうかを判断し、前記集約局変更タイミング情報を受けたときは通知されたタイミングに従って前記負荷が低い集約局へ接続先を変更する場合に、
前記サーバは、
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多い下流ノードと最も中継数が少ない上流ノードとの中間にある中間ノードに対して負荷が低い集約局の探索を指示し、
前記基点ノードは、
前記通信経路において前記中間ノードより中継数が少ない上流ノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報を通知し、
また、前記通信経路において前記中間ノードより中継数が多い下流ノードを前記他ノードとして、前記他ノードの集約局変更タイミング情報として自ノードの変更タイミングより所定の時間だけ遅延させた変更タイミングを通知し、
他ノードとして情報の通知を受けた上流ノードは、
通知された情報に基づいて接続先の集約局を変更するかどうかを判断し、変更する場合、通知された変更タイミングより所定の時間だけ遅延させた自ノードの変更タイミングを決定し、
他ノードとして情報の通知を受けた下流ノードは、
通知された変更タイミングに従って、接続先の集約局を変更する、
ことを特徴とする通信システム。
【請求項１３】
さらに、接続先の集約局を変更する上流ノードは、
前記通信経路において自ノードより中継数が少ない上流ノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報を通知する、
ことを特徴とする請求項８または１２に記載の通信システム。
【請求項１４】
さらに、接続先の集約局を変更する下流ノードは、
前記通信経路において自ノードより中継数が多い下流ノードを前記他ノードとして、前記他ノードの集約局変更タイミング情報として自ノードの変更タイミングより所定の時間だけ遅延させた変更タイミングを通知する、
ことを特徴とする請求項１１または１２に記載の通信システム。
【請求項１５】
前記変更先の集約局の情報は、変更先の集約局から取得する接続先変更後の集約局の情報、および前記サーバから取得する変更判断情報とする、
ことを特徴とする請求項８、９、１０、１２、１３のいずれか１つに記載の通信システム。
【請求項１６】
前記サーバは、前記負荷情報として、各集約局における接続ノード数、通信エラー量、通信トラヒック量のうち少なくとも１つの情報を用いて、集約局毎の負荷の状態を判断する、
ことを特徴とする請求項１〜１５のいずれか１つに記載の通信システム。
【請求項１７】
前記サーバは、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示した結果、当該ノードにおいて負荷が低い集約局を検出できなかったときは、当該負荷が高い集約局に接続する別のノードに対して負荷が低い集約局の探索を指示する、
ことを特徴とする請求項１〜１６のいずれか１つに記載の通信システム。
【請求項１８】
前記変更タイミングを、時刻情報、または前記サーバから前記基点ノードへの変更タイミング指示からの経過時間とする、
ことを特徴とする請求項１〜１７のいずれか１つに記載の通信システム。
【請求項１９】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおける前記サーバであって、
各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、負荷が高い集約局がある場合、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示し、探索を指示されたノードが負荷の低い集約局を検出したときは、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示し、さらに、前記負荷が高い集約局に接続する他ノードに対して、前記基点ノードの変更タイミングより所定の時間だけ遅延させた前記負荷が低い集約局への変更タイミングを指示する、
ことを特徴とするサーバ。
【請求項２０】
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多いノードである下流ノードに対して負荷が低い集約局の探索を指示し、
前記通信経路において前記下流ノードより中継数が少ない上流ノードを前記他ノードとして、変更タイミングを指示する、
ことを特徴とする請求項１９に記載のサーバ。
【請求項２１】
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が少ないノードである上流ノードに対して負荷が低い集約局の探索を指示し、
前記通信経路において前記上流ノードより中継数が多い下流ノードを前記他ノードとして、変更タイミングを指示する、
ことを特徴とする請求項１９に記載のサーバ。
【請求項２２】
前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多い下流ノードと最も中継数が少ない上流ノードとの中間にある中間ノードに対して負荷が低い集約局の探索を指示し、
前記通信経路において前記中間ノードより中継数が少ない上流ノードおよび前記中間ノードより中継数が多い下流ノードを前記他ノードとして、変更タイミングを指示する、
ことを特徴とする請求項１９に記載のサーバ。
【請求項２３】
前記サーバから変更タイミングを指示された前記上流ノードにおいて、前記探索を指示されたノードを含まない下流ノードで形成される別の通信経路がある場合、
さらに、前記別の通信経路を形成するノードを前記他ノードとして、変更タイミングを指示する、
ことを特徴とする請求項２２に記載のサーバ。
【請求項２４】
前記負荷情報として、各集約局における接続ノード数、通信エラー量、通信トラヒック量のうち少なくとも１つの情報を用いて、集約局毎の負荷の状態を判断する、
ことを特徴とする請求項１９〜２３のいずれか１つに記載のサーバ。
【請求項２５】
前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示した結果、当該ノードにおいて負荷が低い集約局を検出できなかったときは、当該負荷が高い集約局に接続する別のノードに対して負荷が低い集約局の探索を指示する、
ことを特徴とする請求項１９〜２４のいずれか１つに記載のサーバ。
【請求項２６】
前記変更タイミングを、時刻情報、または前記サーバから前記基点ノードへの変更タイミング指示からの経過時間とする、
ことを特徴とする請求項１９〜２５のいずれか１つに記載のサーバ。
【請求項２７】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおける前記ノードであって、
前記サーバが、各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示した場合、
前記サーバから指示されたノードは、負荷が低い集約局の探索を行い、探索結果を前記サーバへ通知し、
前記サーバが、前記探索結果に基づいて、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示し、さらに、前記負荷が高い集約局に接続する他ノードに対して、前記基点ノードの変更タイミングより所定の時間だけ遅延させた前記負荷が低い集約局への変更タイミングを指示した場合、
前記サーバから変更タイミングを指示された各ノードは、前記サーバから指示された変更タイミングに従って、接続先の集約局を変更する、
ことを特徴とするノード。
【請求項２８】
前記基点ノードは、前記サーバからの指示に従って負荷が低い集約局の探索を行い、前記サーバからの変更タイミングに従って、自身が探索した前記負荷が低い集約局へ接続先を変更する、
ことを特徴とする請求項２７に記載のノード。
【請求項２９】
前記他ノードは、前記サーバからの変更タイミングに従って、前記基点ノードが探索した負荷が低い集約局へ接続先を変更する、
ことを特徴とする請求項２７または２８に記載のノード。
【請求項３０】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおける前記ノードであって、
前記サーバが、各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示した場合、
前記サーバから指示されたノードは、負荷が低い集約局の探索を行い、探索結果を前記サーバへ通知し、
前記サーバが、前記探索結果に基づいて、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示した場合、
前記基点ノードは、
前記負荷が高い集約局に接続する他ノードに対して、自ノードの集約局変更情報および他ノードの集約局変更タイミング情報を通知し、
前記他ノードは、
前記集約局変更情報を受けたときは前記負荷が低い集約局へ接続先を変更するかどうかを判断し、前記集約局変更タイミング情報を受けたときは通知されたタイミングに従って前記負荷が低い集約局へ接続先を変更し、さらに、
前記サーバが、前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多いノードである下流ノードに対して負荷が低い集約局の探索を指示した場合、
前記基点ノードは、
前記通信経路において前記下流ノードより中継数が少ない上流ノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報を通知し、
他ノードとして情報の通知を受けた上流ノードは、
通知された情報に基づいて接続先の集約局を変更するかどうかを判断し、変更する場合、通知された変更タイミングより所定の時間だけ遅延させた自ノードの変更タイミングを決定する、
ことを特徴とするノード。
【請求項３１】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおける前記ノードであって、
前記サーバが、各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示した場合、
前記サーバから指示されたノードは、負荷が低い集約局の探索を行い、探索結果を前記サーバへ通知し、
前記サーバが、前記探索結果に基づいて、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示した場合、
前記基点ノードは、
前記負荷が高い集約局に接続する他ノードに対して、自ノードの集約局変更情報および他ノードの集約局変更タイミング情報を通知し、
前記他ノードは、
前記集約局変更情報を受けたときは前記負荷が低い集約局へ接続先を変更するかどうかを判断し、前記集約局変更タイミング情報を受けたときは通知されたタイミングに従って前記負荷が低い集約局へ接続先を変更し、さらに、
前記サーバが、前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多いノードである下流ノードに対して負荷が低い集約局の探索を指示した場合、
前記基点ノードは、
前記負荷が高い集約局に接続するノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報をブロードキャストで通知し、
他ノードとして情報の通知を受けたノードは、
通知された情報に基づいて接続先の集約局を変更するかどうかを判断し、変更する場合、通知された変更タイミングより所定の時間だけ遅延させた自ノードの変更タイミングを決定する、
ことを特徴とするノード。
【請求項３２】
さらに、接続先の集約局を変更するノードは、
前記負荷が高い集約局に接続するノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報をブロードキャストで通知する、
ことを特徴とする請求項３１に記載のノード。
【請求項３３】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおける前記ノードであって、
前記サーバが、各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示した場合、
前記サーバから指示されたノードは、負荷が低い集約局の探索を行い、探索結果を前記サーバへ通知し、
前記サーバが、前記探索結果に基づいて、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示した場合、
前記基点ノードは、
前記負荷が高い集約局に接続する他ノードに対して、自ノードの集約局変更情報および他ノードの集約局変更タイミング情報を通知し、
前記他ノードは、
前記集約局変更情報を受けたときは前記負荷が低い集約局へ接続先を変更するかどうかを判断し、前記集約局変更タイミング情報を受けたときは通知されたタイミングに従って前記負荷が低い集約局へ接続先を変更し、さらに、
前記サーバが、前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が少ないノードである上流ノードに対して負荷が低い集約局の探索を指示した場合、
前記基点ノードは、
前記通信経路において前記上流ノードより中継数が多い下流ノードを前記他ノードとして、前記他ノードの集約局変更タイミング情報として自ノードの変更タイミングより所定の時間だけ遅延させた変更タイミングを通知し、
他ノードとして情報の通知を受けた下流ノードは、
通知されたタイミングに従って、接続先の集約局を変更する、
ことを特徴とするノード。
【請求項３４】
無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおける前記ノードであって、
前記サーバが、各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示した場合、
前記サーバから指示されたノードは、負荷が低い集約局の探索を行い、探索結果を前記サーバへ通知し、
前記サーバが、前記探索結果に基づいて、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示した場合、
前記基点ノードは、
前記負荷が高い集約局に接続する他ノードに対して、自ノードの集約局変更情報および他ノードの集約局変更タイミング情報を通知し、
前記他ノードは、
前記集約局変更情報を受けたときは前記負荷が低い集約局へ接続先を変更するかどうかを判断し、前記集約局変更タイミング情報を受けたときは通知されたタイミングに従って前記負荷が低い集約局へ接続先を変更し、さらに、
前記サーバが、前記負荷が高い集約局において、前記負荷が低い集約局へ接続先を変更する候補のノードが形成する通信経路中、最も中継数が多い下流ノードと最も中継数が少ない上流ノードとの中間にある中間ノードに対して負荷が低い集約局の探索を指示した場合、
前記基点ノードは、
前記通信経路において前記中間ノードより中継数が少ない上流ノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報を通知し、
また、前記通信経路において前記中間ノードより中継数が多い下流ノードを前記他ノードとして、前記他ノードの集約局変更タイミング情報として自ノードの変更タイミングより所定の時間だけ遅延させた変更タイミングを通知し、
他ノードとして情報の通知を受けた上流ノードは、
通知された情報に基づいて接続先の集約局を変更するかどうかを判断し、変更する場合、通知された変更タイミングより所定の時間だけ遅延させた自ノードの変更タイミングを決定し、
他ノードとして情報の通知を受けた下流ノードは、
通知された変更タイミングに従って、接続先の集約局を変更する、
ことを特徴とするノード。
【請求項３５】
さらに、接続先の集約局を変更する上流ノードは、
前記通信経路において自ノードより中継数が少ない上流ノードを前記他ノードとして、前記集約局変更情報として自ノードの変更タイミングおよび変更先の集約局の情報を通知する、
ことを特徴とする請求項３０または３４に記載のノード。
【請求項３６】
さらに、接続先の集約局を変更する下流ノードは、
前記通信経路において自ノードより中継数が多い下流ノードを前記他ノードとして、前記他ノードの集約局変更タイミング情報として自ノードの変更タイミングより所定の時間だけ遅延させた変更タイミングを通知する、
ことを特徴とする請求項３３または３４に記載のノード。
【請求項３７】
前記変更先の集約局の情報は、変更先の集約局から取得する接続先変更後の集約局の情報、および前記サーバから取得する変更判断情報とする、
ことを特徴とする請求項３０、３１、３２、３４、３５のいずれか１つに記載のノード。
【請求項３８】
前記変更タイミングを、時刻情報、または前記サーバから前記基点ノードへの変更タイミング指示からの経過時間とする、
ことを特徴とする請求項２７〜３７のいずれか１つに記載のノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アドホックネットワークを構成する通信システムに関する。
【背景技術】
【０００２】
従来、アドホックネットワーク（メッシュネットワーク）において複数の集約局（ゲートウェイ：以下、ＧＷとする）が設置され、各ＧＷに放射状に接続された複数台のノードが存在する環境において、各ＧＷにおいて、接続ノード数やトラヒック量、通信エラーなどの負荷が異なることがある。ＧＷでは、ＧＷの設置タイミングやノード（センサ、メータなど）の設置タイミングにより、周辺のＧＷと負荷が異なることが発生する。このような負荷が違う環境においては、接続ノード数が多いなど負荷の高いＧＷから負荷の低いＧＷへノードを移動することでＧＷの負荷平滑化を行うことがネットワークの構成上望ましい。この場合、通常の業務通信（例えば、センサネットワークにおけるセンサ値の取得や、メータネットワークにおけるガス、水道、電気などの検針値の収集など）に影響を与えず、短時間、かつ低トラヒックで確実なネットワーク構築（負荷平滑化）を行うことが必要となる。
【０００３】
ノードが接続するＧＷを切り替える（変更する）方法として、下記特許文献１では、集線ノードの故障等を検出した場合に、配下のノードが周辺を探索した結果に基づいて複数台のノード（サブグループ）を他の集線ノードに移動して負荷分散を行う技術が開示されている。また、下記特許文献２では、無線端末であるノードがマルチホップ通信部と直接通信部を備え、通信量に応じて無線基地局をサーチして直接無線基地局と通信することで負荷分散を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１９３４１６号公報
【特許文献２】特開２００９−０８９０４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の技術（特許文献１）によれば、複数のノードが探索を行う。そのため、トラヒック量が増える、という問題があった。
【０００６】
また、上記従来の技術（特許文献２）によれば、複数のノードが無線基地局との直接通信が可能かどうかを探索する。そのため、トラヒック量が増える、という問題があった。また、複数台のノードを同時に切り替えする手法がなく、切り替えが長時間に及ぶ可能性がある、という問題があった。また、上流ノードが移動するとＧＷは下流ノードと通信できなくなりネットワーク不形成となる、という問題があった。
【０００７】
本発明は、上記に鑑みてなされたものであって、ノードの接続先集約局を変更する場合に、低トラヒックかつ短時間での変更が可能な通信システムを得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、無線通信を行うノードと、前記ノードと接続して無線通信可能な２以上の集約局と、前記２以上の集約局と接続して集約局経由で前記ノードと通信可能なサーバと、からアドホックネットワークを構成し、前記ノードは他ノードを中継して前記集約局と接続可能であり、前記集約局は複数のノードと接続してツリー構造の通信経路を形成可能である通信システムにおいて、前記サーバは、各集約局の負荷情報に基づいて集約局毎の負荷の状態を判断し、負荷が高い集約局がある場合、前記負荷が高い集約局に接続するノードに対して負荷が低い集約局の探索を指示し、探索を指示されたノードが負荷の低い集約局を検出したときは、前記探索を指示されたノードを基点ノードとして、前記基点ノードに対して前記負荷が低い集約局へ接続先を変更する変更タイミングを指示し、さらに、前記負荷が高い集約局に接続する他ノードに対して、前記基点ノードの変更タイミングより所定の時間だけ遅延させた前記負荷が低い集約局への変更タイミングを指示し、前記サーバから変更タイミングを指示された各ノードは、前記サーバから指示された変更タイミングに従って、接続先の集約局を変更する、ことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ノードの接続先集約局を変更する場合に、低トラヒックかつ短時間での変更ができる、という効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態１におけるメッシュネットワークの構成例を示す図である。
【図２】図２は、サーバが管理するＧＷの情報の例を示す図である。
【図３】図３は、実施の形態１におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。
【図４】図４は、実施の形態２におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。
【図５】図５は、実施の形態３におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。
【図６】図６は、サーバにおける基点ノードの決定処理を示すフローチャートである。
【図７】図７は、実施の形態５におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。
【図８】図８は、切替先ＧＷ情報の例を示す図である。
【図９】図９は、実施の形態６におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。
【図１０】図１０は、実施の形態７におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。
【図１１】図１１は、実施の形態８におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。
【発明を実施するための形態】
【００１１】
以下に、本発明にかかる通信システムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態１．
図１は、本実施の形態におけるメッシュネットワークの構成例を示す図である。メッシュネットワークは、ノード１〜１４と、ノード２１〜２３と、サーバ１０１と、広域ネットワーク２０１と、集約局装置（ＧＷ）３０１、３０２と、から構成される。
【００１３】
サーバ１０１は、メッシュネットワークの経路や状態を管理するサーバである。ＧＷ３０１、３０２は、それぞれ、ノード１〜１４、ノード２１〜２３と接続するゲートウェイであり、広域ネットワーク２０１（有線）を介してサーバ１０１と通信可能な装置である。ノード１〜１４およびノード２１〜２３は、マルチホップで通信する無線通信可能なノード装置である。ノード１〜１４およびノード２１〜２３は、直接ＧＷと通信できない場合、途中のノードをホップ（中継）してＧＷと通信できる。例えば、ＧＷ３０１がノード７と通信する場合、ＧＷ３０１は、ノード１、ノード３、ノード５を中継してノード７と通信する。なお、ＧＷが２台、ノードが１７台の場合について説明するが、一例であり、それぞれ図１で示す台数に限定するものではない。
【００１４】
サーバ１０１は、ＧＷ３０１、３０２を介して各ノードと通信することができる。また、サーバ１０１は、ＧＷ３０１、３０２より各ＧＷの接続ノード数、通信エラー量、通信トラヒック量、ＧＷの位置情報、使用する周波数の情報、各ＧＷに接続しているノードの通信経路（ツリー構造）の情報を取得し、これらの情報を保持し認識している。サーバ１０１は、各ＧＷの負荷の違いを検出し、ＧＷの位置に基づいて負荷分散の基点とするノードを決定する。位置情報が存在しない場合は、上流ノードを負荷分散の基点とするノードを決定する。
【００１５】
図２は、サーバ１０１が管理するＧＷの情報の例を示す図である。サーバ１０１は、ＧＷを特定するＩＤ（ＧＷＩＤ）と、接続可能ノード数と、位置情報と、の情報を保持する。例えば、ＧＷＩＤ１のＧＷは、接続可能ノード数が１０００であり、緯度Ａ１、経度Ｂ１で特定される位置にいることを示す。なお、位置情報については、緯度・経度で示したが、これに限定するものではない。位置が特定できる情報であれば他の情報で代替可能である。
【００１６】
つづいて、図１に示すメッシュネットワークにおいて、ノードの接続先ＧＷを切り替える（変更する）処理について説明する。図３は、本実施の形態におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。ここでは、サーバ１０１においてＧＷ３０１、３０２の位置が離れていると判断した場合に、サーバ１０１からの指示により、下流ノードを基点として平準化を行う接続先ＧＷ変更処理について説明する。
【００１７】
まず、サーバ１０１は、図２に示すＧＷ情報およびＧＷ３０１、３０２から定期的に取得するネットワーク情報（接続ノード数、通信エラー量、通信トラヒック量）に基づいてＧＷ３０１、３０２の負荷の状態を比較し、接続ノード数が違う、通信エラーが多い、通信トラヒックが多いといった負荷の違いを検出した場合（ステップＳ１０１）、負荷平準化動作を行うため、負荷が高いＧＷ３０１に接続するノードから下流ノードを選択して負荷分散を開始する。ここでは、下流ノードとして、ノード３、５、７の経路において最もホップ（中継）数が多いノード７を選択する（ステップＳ１０２）。
【００１８】
サーバ１０１は、ノード７に対して、ＧＷ３０１および中継ノード（ノード１、３、５）経由で周辺のＧＷの探索を指示する（ステップＳ１０３）。具体的には、サーバ１０１は、ノード７に対して、ＧＷ３０２の探索を実施させる。
【００１９】
ノード７は、周辺ＧＷ、すなわちＧＷ３０２の探索を行う（ステップＳ１０４）。具体的に、ノード７は、ＧＷ探索を送信し、当該ＧＷ探索を受信した装置が送信した探索応答を受信する。ＧＷ３０２またはＧＷ３０２とネットワークを構築しているノードが探索の応答を返すが、ここでは、ノード２２が受信したＧＷ探索に対して探索応答を返す場合について説明する。なお、ＧＷ３０２が受信したＧＷ探索に対して探索応答を返すことも可能である。
【００２０】
ノード７は、サーバ１０１に対して、探索した結果を、中継ノード（ノード５、３、１）およびＧＷ３０１経由で通知する（ステップＳ１０５）。探索結果としては、例えば、検出したノード、検出したノードを配下にするＧＷ３０２までのホップ数、通信品質等がある。
【００２１】
サーバ１０１は、ノード７からの探索結果に基づいて通信品質・中継回数を判断し、ノード７が接続するＧＷをＧＷ３０１からＧＷ３０２へ変更したときに、通信品質・中継回数が同レベルまたは良くなると判断した場合、ノード７を基点としてＧＷの変更処理を行うことを決定する（ステップＳ１０６）。このとき、ノード７を基点ノードとする。なお、ノード７がＧＷ３０２を検出できなかった場合、またはノード７がＧＷ３０２に変更しても通信品質・中継回数が悪い経路と判断した場合、サーバ１０１は、ノード７についてＧＷの変更処理は行わず、別の下流ノードに対して周辺ＧＷの探索を指示する動作を開始する。
【００２２】
サーバ１０１は、ノード７に対して、ＧＷを変更する時刻（例えば、Ａ時Ｂ分）またはＣ分後といったタイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３、５）経由で通知する（ステップＳ１０７）。なお、Ｃ分後としているが、一例であり、単位はＣ秒後としてもよい。
【００２３】
ノード７は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード５、３、１）およびＧＷ３０１経由で通知する（ステップＳ１０８）。
【００２４】
つぎに、サーバ１０１は、ノード７からのＧＷ変更応答受信後、ノード７の上流ノード（ノード７より中継数の少ないノード）にあたるノード５に対して、ノード７に通知した時間よりＸ分遅らせたタイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３）経由で通知する（ステップＳ１０９）。具体的に、サーバ１０１は、ノード５に対して、ＧＷ変更後のノード７経由でＧＷ３０２へ接続するように要求する。なお、Ｘ分遅延としているが、一例であり、単位はＸ秒遅延としてもよい。以降において遅延させる場合についても同様とする。
【００２５】
ノード５は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード３、１）およびＧＷ３０１経由で通知する（ステップＳ１１０）。
【００２６】
ノード７は、ＧＷ変更の指定時間が経過すると、探索結果に基づいてノード２２経由でＧＷ３０２に接続を行う。そして、ノード７は、サーバ１０１に対して、ＧＷ３０２への登録を、中継ノード（ノード２２）およびＧＷ３０２経由で通知する（ステップＳ１１１）。
【００２７】
サーバ１０１は、ノード７に対して、登録応答を、ＧＷ３０２および中継ノード（ノード２２）経由で通知する（ステップＳ１１２）。
【００２８】
同様に、ノード５は、ＧＷ変更の指定時間が経過すると、ＧＷ変更要求に基づいてノード７経由でＧＷ３０２に接続を行う。そして、ノード５は、サーバ１０１に対して、ＧＷ３０２への登録を、中継ノード（ノード７、２２）およびＧＷ３０２経由で通知する（ステップＳ１１３）。
【００２９】
サーバ１０１は、ノード５に対して、登録応答を、ＧＷ３０２および中継ノード（ノード２２、７）経由で通知する（ステップＳ１１４）。
【００３０】
なお、本実施の形態では、２つのノードについて接続するＧＷを変更する場合について説明したが、これに限定するものではない。サーバ１０１では、各ＧＷに接続するノード数およびツリー構造を把握していることから、ＧＷ間の負荷に応じて、さらに上流のノードについても負荷の平準化に必要な台数のノードについて接続するＧＷを変更させることが可能である。ＧＷ３０１、３０２の位置が離れている場合、ノードが接続先のＧＷを確実に変更できるものではないので、通信経路の末端のノードから接続先のＧＷの変更を行う。接続先のＧＷの変更ができる場合、各ノードでは、指定時間まではＧＷ３０１経由で通信し、変更後はＧＷ３０２経由で通信することができ、ネットワーク不形成が発生しない。
【００３１】
このように、複数のノードが接続するＧＷを変更する場合に、全てのノードが周辺のＧＷを探索することなく１台のノードのみが周辺のＧＷを探索し、探索した結果、負荷の低いＧＷを検出した１台のノードを基点ノードとして他のノードも接続するＧＷの変更を行う。そのため、複数のノードが周辺のＧＷを探索する場合と比較して、メッシュネットワーク内における通信トラヒック量を低減することができる。また、１台の基点ノードを基点として時間指定により複数のノードについてＧＷの変更を行うため、全てのノードが探索を終えるのを待つ必要がないことから、指定時間の間隔を短くすることにより、短時間でのＧＷの変更が可能である。
【００３２】
また、送受信機を１つしか備えていないノードは、１つの周波数でしか送受信ができず、周辺のＧＷが現在接続しているＧＷと異なる周波数を使用している場合には探索（送受信）ができず、接続可否の判断が行えない。しかしながら、サーバ１０１は、探索を指示したノードに対して探索対象のＧＷの使用周波数を指示することができる。そのため、探索を指示されたノードでは、容易に探索を行うことができる。
【００３３】
以上説明したように、本実施の形態では、サーバがＧＷ間の負荷の違いを検出し、負荷の高いＧＷに接続するノードの接続先を負荷の低いＧＷに変更することを決定した場合に、サーバは、ＧＷ間の位置が離れているとき、負荷の高いＧＷに接続する下流ノードを指定して周辺のＧＷを探索させ、探索結果に基づいて下流ノードを負荷の低いＧＷに接続先を変更させ、さらに、下流ノードを基点ノードとして、変更前の通信経路において基点ノードの上流にあたる上流ノードについても、同一ＧＷへ接続先を変更させることとした。これにより、探索を行うノードが１台であることから、少ない通信トラヒック量で複数のノードの接続先ＧＷを変更でき、ＧＷ間の負荷を平準化することができる。
【００３４】
また、複数のノードが接続先のＧＷを変更する場合、各ノードは、サーバから指定された時間に従って変更することとした。これにより、指定時刻の間隔を短くすることにより、短時間でのＧＷの変更が可能である。
【００３５】
なお、ステップＳ１１３において、ノード５がサーバ１０１に対してＧＷ３０２への登録を行うとき、ノード５は、探索を行ってノード７以外にＧＷ３０２に接続する他の通信経路を検出することも可能である。探索回数は増えるが、より最適な通信経路を検出して接続することができる。
【００３６】
実施の形態２．
本実施の形態では、上流ノードを基点ノードとする。実施の形態１と異なる部分について説明する。
【００３７】
図４は、本実施の形態におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。ここでは、サーバ１０１においてＧＷ３０１、３０２の位置がほぼ同位置で近い（ＧＷ間の距離が短い）と判断した場合に、サーバ１０１からの指示により、上流ノードを基点として平準化を行う接続先ＧＷ変更処理について説明する。
【００３８】
まず、サーバ１０１は、図２に示すＧＷ情報およびＧＷ３０１、３０２から定期的に取得するネットワーク情報に基づいてＧＷ３０１、３０２の負荷の状態を比較し、負荷の違いを検出した場合（ステップＳ２０１）、負荷平準化動作を行うため、負荷が高いＧＷ３０１に接続するノードから上流ノードを選択して負荷分散を開始する。ここでは、上流ノードとして、ノード３、５、７の経路において最もホップ（中継）数が少ないノード３を選択する（ステップＳ２０２）。
【００３９】
サーバ１０１は、ノード３に対して、ＧＷ３０１および中継ノード（ノード１）経由で周辺のＧＷの探索を指示する（ステップＳ２０３）。具体的には、サーバ１０１は、ノード３に対して、ＧＷ３０２の探索を実施させる。
【００４０】
ノード３は、周辺ＧＷ、すなわちＧＷ３０２の探索を行う（ステップＳ２０４）。探索方法については、実施の形態１においてノード７が実施した内容と同じである。
【００４１】
ノード３は、サーバ１０１に対して、探索した結果を、中継ノード（ノード１）およびＧＷ３０１経由で通知する（ステップＳ２０５）。
【００４２】
サーバ１０１は、ノード３からの探索結果に基づいて通信品質・中継回数を判断し、ノード３が接続するＧＷをＧＷ３０１からＧＷ３０２へ変更したときに、通信品質・中継回数が同レベルまたは良くなると判断した場合、ノード３を基点としてＧＷの変更処理を行うことを決定する（ステップＳ２０６）。このとき、ノード３を基点ノードとする。なお、ノード３がＧＷ３０２を検出できなかった場合、またはノード３がＧＷ３０２に変更しても通信品質・中継回数が悪い経路と判断した場合、サーバ１０１は、ノード３についてＧＷの変更処理は行わず、別の上流ノードに対して周辺ＧＷの探索を指示する動作を開始する。
【００４３】
サーバ１０１は、ノード３に対して、ＧＷを変更する時刻（例えば、Ａ時Ｂ分）またはＣ分後といったタイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１）経由で通知する（ステップＳ２０７）。
【００４４】
ノード３は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード１）およびＧＷ３０１経由で通知する（ステップＳ２０８）。ここまでの処理は、実施の形態１とほぼ同じであり、対象のノード（基点ノード）がノード７からノード３に変更された点が異なる。
【００４５】
つぎに、サーバ１０１は、ノード３からのＧＷ変更応答受信後、ノード３の下流ノード（ノード３より中継数の多いノード）にあたるノード４に対して、ノード３に通知した時間よりＸ分遅らせたタイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３）経由で通知する（ステップＳ２０９）。具体的に、サーバ１０１は、ノード４に対して、ＧＷ変更後のノード３経由でＧＷ３０２へ接続するように要求する。
【００４６】
ノード４は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード３、１）およびＧＷ３０１経由で通知する（ステップＳ２１０）。
【００４７】
同様に、サーバ１０１は、ノード４からのＧＷ変更応答受信後、ノード３の下流ノード（ノード３より中継数の多いノード）にあたるノード５に対して、ノード３に通知した時間よりＸ分遅らせたタイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３）経由で通知する（ステップＳ２１１）。具体的に、サーバ１０１は、ノード５に対して、ＧＷ変更後のノード７経由でＧＷ３０２へ接続するように要求する。
【００４８】
ノード５は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード３、１）およびＧＷ３０１経由で通知する（ステップＳ２１２）。
【００４９】
また、サーバ１０１は、ノード５からのＧＷ変更応答受信後、ノード４の下流ノード（ノード４より中継数の多いノード）にあたるノード６に対して、ノード４に通知した時間よりＹ分遅らせた（ノード３に通知した時間よりＸ＋Ｙ分遅らせた）タイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３、４）経由で通知する（ステップＳ２１３）。具体的に、サーバ１０１は、ノード６に対して、ＧＷ変更後のノード４経由でＧＷ３０２へ接続するように要求する。
【００５０】
ノード６は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード４、３、１）およびＧＷ３０１経由で通知する（ステップＳ２１４）。
【００５１】
同様に、サーバ１０１は、ノード６からのＧＷ変更応答受信後、ノード５の下流ノード（ノード５より中継数の多いノード）にあたるノード７に対して、ノード５に通知した時間よりＹ分遅らせた（ノード３に通知した時間よりＸ＋Ｙ分遅らせた）タイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３、５）経由で通知する（ステップＳ２１５）。具体的に、サーバ１０１は、ノード７に対して、ＧＷ変更後のノード５経由でＧＷ３０２へ接続するように要求する。
【００５２】
ノード７は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード５、３、１）およびＧＷ３０１経由で通知する（ステップＳ２１６）。
【００５３】
以降の各ノードにおける接続先ＧＷの変更処理は、実施の形態１と同等である。
【００５４】
ノード３は、ＧＷ変更の指定時間が経過すると、探索結果に基づいてノード２２経由でＧＷ３０２に接続を行う。そして、ノード３は、サーバ１０１に対して、ＧＷ３０２への登録を、中継ノード（ノード２２）およびＧＷ３０２経由で通知する（ステップＳ２１７）。
【００５５】
サーバ１０１は、ノード３に対して、登録応答を、ＧＷ３０２および中継ノード（ノード２２）経由で通知する（ステップＳ２１８）。
【００５６】
ノード４は、ＧＷ変更の指定時間が経過すると、ＧＷ変更要求に基づいてノード３経由でＧＷ３０２に接続を行う。そして、ノード４は、サーバ１０１に対して、ＧＷ３０２への登録を、中継ノード（ノード３、２２）およびＧＷ３０２経由で通知する（ステップＳ２１９）。
【００５７】
サーバ１０１は、ノード４に対して、登録応答を、ＧＷ３０２および中継ノード（ノード２２、３）経由で通知する（ステップＳ２２０）。
【００５８】
ノード５は、ＧＷ変更の指定時間が経過すると、ＧＷ変更要求に基づいてノード３経由でＧＷ３０２に接続を行う。そして、ノード５は、サーバ１０１に対して、ＧＷ３０２への登録を、中継ノード（ノード３、２２）およびＧＷ３０２経由で通知する（ステップＳ２２１）。
【００５９】
サーバ１０１は、ノード５に対して、登録応答を、ＧＷ３０２および中継ノード（ノード２２、３）経由で通知する（ステップＳ２２２）。
【００６０】
ノード６は、ＧＷ変更の指定時間が経過すると、ＧＷ変更要求に基づいてノード４およびノード３経由でＧＷ３０２に接続を行う。そして、ノード６は、サーバ１０１に対して、ＧＷ３０２への登録を、中継ノード（ノード４、３、２２）およびＧＷ３０２経由で通知する（ステップＳ２２３）。
【００６１】
サーバ１０１は、ノード６に対して、登録応答を、ＧＷ３０２および中継ノード（ノード２２、３、４）経由で通知する（ステップＳ２２４）。
【００６２】
ノード７は、ＧＷ変更の指定時間が経過すると、ＧＷ変更要求に基づいてノード５およびノード３経由でＧＷ３０２に接続を行う。そして、ノード７は、サーバ１０１に対して、ＧＷ３０２への登録を、中継ノード（ノード５、３、２２）およびＧＷ３０２経由で通知する（ステップＳ２２５）。
【００６３】
サーバ１０１は、ノード７に対して、登録応答を、ＧＷ３０２および中継ノード（ノード２２、３、５）経由で通知する（ステップＳ２２６）。
【００６４】
実施の形態１と異なり、ＧＷ３０１、３０２の距離が短い場合、ノードが接続先のＧＷを確実に変更できるとして、通信経路の上流のノードから接続先のＧＷの変更を行うことができる。サーバ１０１では、各ＧＷに接続するノード数およびツリー構造を把握していることから、例えば、負荷の平準化に必要な台数が５台であれば、ノード３およびノード３の下流に接続するノードを対象に接続先のＧＷの変更をさせることができる。
【００６５】
以上説明したように、本実施の形態では、サーバが、ＧＷ間の距離が短いとき、負荷の高いＧＷに接続する上流ノードを指定して周辺のＧＷを探索させ、探索結果に基づいて上流ノードを負荷の低いＧＷに接続先を変更させ、さらに、上流ノードを基点ノードとして、変更前の通信経路において基点ノードの下流にあたる下流ノードについても、同一ＧＷへ接続先を変更させることとした。この場合においても、実施の形態１と同様の効果を得ることができる。
【００６６】
なお、ステップＳ２１９、Ｓ２２１、Ｓ２２３、Ｓ２２５において、各ノードがサーバ１０１に対してＧＷ３０２への登録を行うとき、各ノードは、探索を行ってノード３以外にＧＷ３０２に接続する他の通信経路を検出することも可能である。探索回数は増えるが、より最適な通信経路を検出して接続することができる。
【００６７】
実施の形態３．
本実施の形態では、下流ノードと上流ノードの中間にある中間ノードを基点ノードとする。実施の形態１、２と異なる部分について説明する。
【００６８】
図５は、本実施の形態におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。ここでは、サーバ１０１においてＧＷ３０１、３０２の位置が実施の形態１、２で示した位置の中間くらいの位置であると判断した場合に、サーバ１０１からの指示により、中間ノードを基点として平準化を行う接続先ＧＷ変更処理について説明する。
【００６９】
まず、サーバ１０１は、図２に示すＧＷ情報およびＧＷ３０１、３０２から定期的に取得するネットワーク情報に基づいてＧＷ３０１、３０２の負荷の状態を比較し、負荷の違いを検出した場合（ステップＳ３０１）、負荷平準化動作を行うため、負荷が高いＧＷ３０１の中間ノードを選択して負荷分散を開始する。ここでは、中間ノードとして、ノード３、５、７の経路において中間にあたるノード５を選択する（ステップＳ３０２）。
【００７０】
サーバ１０１は、ノード５に対して、ＧＷ３０１および中継ノード（ノード１、３）経由で周辺のＧＷの探索を指示する（ステップＳ３０３）。具体的には、サーバ１０１は、ノード５に対して、ＧＷ３０２の探索を実施させる。
【００７１】
ノード５は、周辺ＧＷ、すなわちＧＷ３０２の探索を行う（ステップＳ３０４）。探索方法については、実施の形態１においてノード７が実施した内容と同じである。
【００７２】
ノード５は、サーバ１０１に対して、探索した結果を、中継ノード（ノード３、１）およびＧＷ３０１経由で通知する（ステップＳ３０５）。
【００７３】
サーバ１０１は、ノード５からの探索結果に基づいて通信品質・中継回数を判断し、ノード５が接続するＧＷをＧＷ３０１からＧＷ３０２へ変更したときに、通信品質・中継回数が同レベルまたは良くなると判断した場合、ノード５を基点としてＧＷの変更処理を行うことを決定する（ステップＳ３０６）。このとき、ノード５を基点ノードとする。なお、ノード５がＧＷ３０２を検出できなかった場合、またはノード５がＧＷ３０２に変更しても通信品質・中継回数が悪い経路と判断した場合、サーバ１０１は、ノード５についてＧＷの変更処理は行わず、別の中間ノードに対して周辺ＧＷの探索を指示する動作を開始する。
【００７４】
サーバ１０１は、ノード５に対して、ＧＷを変更する時刻（例えば、Ａ時Ｂ分）またはＣ分後といったタイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３）経由で通知する（ステップＳ３０７）。
【００７５】
ノード５は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード３、１）およびＧＷ３０１経由で通知する（ステップＳ３０８）。ここまでの処理は、実施の形態１とほぼ同じであり、対象のノード（基点ノード）がノード７からノード５に変更された点が異なる。
【００７６】
つぎに、サーバ１０１は、ノード５からのＧＷ変更応答受信後、ノード５の下流ノード（ノード５より中継数の多いノード）にあたるノード７に対して、ノード５に通知した時間よりＸ分遅らせたタイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３、５）経由で通知する（ステップＳ３０９）。具体的に、サーバ１０１は、ノード７に対して、ＧＷ変更後のノード５経由でＧＷ３０２へ接続するように要求する。
【００７７】
ノード７は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード５、３、１）およびＧＷ３０１経由で通知する（ステップＳ３１０）。
【００７８】
また、サーバ１０１は、ノード７からのＧＷ変更応答受信後、ノード５の上流ノード（ノード５より中継数の少ないノード）にあたるノード３に対して、ノード５に通知した時間よりＸ分遅らせたタイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１）経由で通知する（ステップＳ３１１）。具体的に、サーバ１０１は、ノード３に対して、ＧＷ変更後のノード５経由でＧＷ３０２へ接続するように要求する。
【００７９】
ノード３は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード１）およびＧＷ３０１経由で通知する（ステップＳ３１２）。
【００８０】
また、サーバ１０１は、ノード３からのＧＷ変更応答受信後、ノード３の下流ノード（ノード３より中継数の多いノード）にあたるノード４に対して、ノード３に通知した時間よりＹ分遅らせた（ノード５に通知した時間よりＸ＋Ｙ分遅らせた）タイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３）経由で通知する（ステップＳ３１３）。具体的に、サーバ１０１は、ノード４に対して、ＧＷ変更後のノード３経由でＧＷ３０２へ接続するように要求する。
【００８１】
ノード４は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード３、１）およびＧＷ３０１経由で通知する（ステップＳ３１４）。
【００８２】
また、サーバ１０１は、ノード４からのＧＷ変更応答受信後、ノード４の下流ノード（ノード４より中継数の多いノード）にあたるノード６に対して、ノード４に通知した時間よりＺ分遅らせた（ノード５に通知した時間よりＸ＋Ｙ＋Ｚ分遅らせた）タイミングをＧＷ変更要求として、ＧＷ３０１および中継ノード（ノード１、３、４）経由で通知する（ステップＳ３１５）。具体的に、サーバ１０１は、ノード６に対して、ＧＷ変更後のノード４経由でＧＷ３０２へ接続するように要求する。
【００８３】
ノード６は、サーバ１０１に対して、受信したＧＷ変更要求に対する応答（ＧＷ変更応答）を、中継ノード（ノード４、３、１）およびＧＷ３０１経由で通知する（ステップＳ３１６）。
【００８４】
以降の各ノードにおける接続先ＧＷの変更処理は、実施の形態１、２と同等である。各ノードは、ＧＷ変更の指定時間が経過するとＧＷ３０２に接続を行い、サーバ１０１に対して、ＧＷ３０２への登録を通知する。サーバ１０１は、各ノードに対して、登録応答を通知する。
【００８５】
このように、ＧＷ３０１、３０２の距離が実施の形態１、２で示した距離の中間程度の場合、ノードが接続先のＧＷを確実に変更できるとして、通信経路の中間のノードから接続先のＧＷの変更を行う。サーバ１０１では、各ＧＷに接続するノード数およびツリー構造を把握していることから、例えば、負荷の平準化に必要な台数が３台であれば、ノード５およびノード５の上流および下流に接続するノードを対象に接続先のＧＷの変更をさせることができる。また、さらに、必要に応じて、ノード５の上流ノード（ノード３）においてノード５以外の別の通信経路のノード（ノード４、６）を対象に接続先のＧＷの変更をさせることができる。
【００８６】
以上説明したように、本実施の形態では、サーバが、ＧＷ間の距離が中距離のとき、負荷の高いＧＷに接続する中間ノードを指定して周辺のＧＷを探索させ、探索結果に基づいて中間ノードを負荷の低いＧＷに接続先を変更させ、さらに、中間ノードを基点ノードとして、変更前の通信経路において基点ノードの下流にあたる下流ノードおよび上流にあたる上流ノードについても、同一ＧＷへ接続先を変更させることとした。この場合においても、実施の形態１と同様の効果を得ることができる。
【００８７】
なお、各ノードがサーバ１０１に対してＧＷ３０２への登録を行うとき、各ノードは、探索を行ってノード５以外にＧＷ３０２に接続する他の通信経路を検出することも可能である。探索回数は増えるが、より最適な通信経路を検出して接続することができる。
【００８８】
実施の形態４．
本実施の形態では、実施の形態１〜３のサーバ１０１の動作について詳細に説明する。図６は、サーバ１０１における基点ノードの決定処理を示すフローチャートである。
【００８９】
まず、サーバ１０１では、図２に示すＧＷ情報およびＧＷ３０１、３０２から定期的に取得するネットワーク情報に基づいて、負荷の高いＧＷがあるかどうかを判定する。例えば、接続可能ノード数に対する接続ノード数を参入率とした場合に、参入率＞Ｍ（Ｍは負荷の高いＧＷを判定するための閾値）となるＧＷについては負荷が高いと判定する（ステップＳ１）。
【００９０】
参入率＞ＭとなるＧＷがない場合（ステップＳ１：Ｎｏ）、サーバ１０１は動作を終了する。一方、参入率＞ＭとなるＧＷがある場合（ステップＳ１：Ｙｅｓ）、サーバ１０１は、つぎに、各ＧＷの位置情報に基づいてメッシュネットワーク内において負荷が高いＧＷの近くに負荷が低いＧＷがあるか選定する。具体的に、サーバ１０１は、参入率＜Ｎ（ＮはＭよりも小さい閾値）となる他のＧＷがあるかどうかを判定する（ステップＳ２）。
【００９１】
参入率＜Ｎとなる他のＧＷがない場合（ステップＳ２：Ｎｏ）、サーバ１０１は動作を終了する。一方、参入率＜Ｎとなる他のＧＷがある場合（ステップＳ２：Ｙｅｓ）、サーバ１０１は、各ＧＷの位置関係に基づいて、負荷の高いＧＷに接続するノードから１つのノードを選択し、当該ノードに対して、周辺のＧＷから負荷の低いＧＷの探索を指示する（ステップＳ３）。
【００９２】
サーバ１０１は、ノードの探索結果から、負荷の低いＧＷが存在しない場合、または負荷の低いＧＷは存在するが通信品質や中継回数等から判断してＧＷの変更先として妥当でないと判断した場合（ステップＳ４：Ｎｏ）、サーバ１０１は、周辺のＧＷを探索させるノードを別のノードに変更する（ステップＳ５）。変更後のノードとしては、例えば、負荷の高いＧＷにおいて、元のノードに対して、他のツリーや、上流または下流に位置するノードとする。そして、サーバ１０１は、再度１つのノードを選択し、当該ノードに対して、周辺のＧＷから負荷の低いＧＷの探索を指示する（ステップＳ３）。
【００９３】
一方、サーバ１０１は、ノードの探索結果から、負荷の低いＧＷが存在し、かつ、通信品質や中継回数等から判断してＧＷの変更先として妥当なＧＷがあると判断した場合（ステップＳ４：Ｙｅｓ）、探索を実行したノードを基点ノードとして、基点ノードに対して、ＧＷの変更タイミングを含むＧＷ変更要求を行う。また、サーバ１０１は、基点ノードの上流または下流等に位置する他のノードについてもＧＷの変更を行うため、これらの上流または下流等に位置するノードに対して、基点ノードに指示した変更タイミングに所定の時間遅延した（加算した）時刻等を変更タイミングとしてＧＷ変更要求を行う（ステップＳ６）。なお、前記所定の時間は設定変更可能なパラメータであり、基点ノードからの中継回数が多いほど、大きな値とする。
【００９４】
このように、サーバ１０１では、閾値と参入率とを比較することによって、負荷の高いＧＷおよび変更先となるＧＷを決定することが可能である。なお、接続ノード数を用いた場合について説明したが、これに限定するものではない。通信エラー量や通信トラヒック量を用いることも可能である。
【００９５】
実施の形態５．
本実施の形態では、基点ノードが他のノードに対して接続先ＧＷを変更するための情報を通知する。実施の形態１と異なる部分について説明する。
【００９６】
図７は、本実施の形態におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。ここでは、サーバ１０１においてＧＷ３０１、３０２の位置が離れていると判断した場合に、サーバ１０１が選択した下流の基点ノードが、他のノードを指示することにより平準化を行う接続先ＧＷ変更処理について説明する。
【００９７】
サーバ１０１が負荷の違いを検出（ステップＳ１０１）してからノード７がＧＷ変更応答を通知する（ステップＳ１０８）までの処理は、実施の形態１（図３参照）と同じである。
【００９８】
つぎに、ノード７は、サーバ１０１へＧＷ変更応答を通知後、上流ノードであるノード５に対して、接続先ＧＷを変更することを通知するため、接続先ＧＷを変更することに関する情報としてＧＷ変更タイミングおよび接続先ＧＷを変更した場合の変更後のＧＷの情報を示す切替先ＧＷ情報を送信する（ステップＳ４０１）。
【００９９】
図８は、切替先ＧＷ情報の例を示す図である。切替先ＧＷ情報はパラメータとして、切替先ＧＷのＩＤ・切替先ＧＷのホップ数・切替先ＧＷの接続台数・切替先ＧＷの通信品質は、基点ノードであるノード７が探索した結果、ＧＷ３０２から取得する情報である。また、強制ビット・受信品質改善ビット・ホップ数ビット・通知ホップ（ＴＴＬ）は、サーバ１０１が接続先ＧＷを変更することを決定した時に基点ノードであるノード７に通知する変更判断情報である。基点ノード（ノード７）がこれらの情報を通知することにより、他のノードでは、ＧＷを切り替え（変更）するべきかどうかを判断することが可能となる。
【０１００】
なお、ノード７では、切替先ＧＷのホップ数および切替先ＧＷの接続台数については、自ノードが接続されている場合の情報を送信する。複数のノードが接続先ＧＷを変更する場合、各ノードは、切替先ＧＷのホップ数および切替先ＧＷの接続台数に自ノード分を加算して次ノードへの情報とする。
【０１０１】
ノード５は、ノード７から受信した情報に基づいて、自立的に接続先ＧＷを変更するかどうかを判断する（ステップＳ４０２）。ノード５では、接続先ＧＷを変更すると判断した場合、ＧＷ変更タイミングを決定する。決定するＧＷ変更タイミングは、ノード７から通知された時間よりＸ分遅らせたタイミングとする。
【０１０２】
そして、ノード５は、上流ノードであるノード３に対して、接続先ＧＷを変更することを通知するため、ＧＷ変更タイミングおよび接続先ＧＷを変更した場合の変更後のＧＷの情報を示す切替先ＧＷ情報を送信する（ステップＳ４０３）。
【０１０３】
ノード３は、ノード５から受信した情報に基づいて、自立的に接続先ＧＷを変更するかどうかを判断する（ステップＳ４０４）。ノード３では、接続先ＧＷを変更すると判断した場合、ＧＷ変更タイミングを決定する。決定するＧＷ変更タイミングは、ノード５から通知された時間よりＹ分遅らせた（ノード７のＧＷ変更タイミングよりＸ＋Ｙ分遅らせた）タイミングとする。なお、ノード３が接続先ＧＷを変更すると判断した場合、ノード３の別の下流にあるノード４、６も接続先ＧＷを変更することになる。
【０１０４】
ＧＷ変更の指定時間（ＧＷ変更タイミング）が経過した場合のノード７およびノード５における動作（ステップＳ１１１〜Ｓ１１４）は、実施の形態１（図３参照）と同じである。
【０１０５】
なお、本実施の形態では、２つのノードについて接続するＧＷを変更する場合について説明したが、これに限定するものではない。ＧＷ間の負荷に応じて、さらに上流のノードについても負荷の平準化に必要な台数だけ接続するＧＷを変更することが可能である。例えば、上記の場合、ノード３は、自身が接続先のＧＷを変更しなくてもＧＷ３０１、３０２の負荷が平準化されていると判断した場合は変更を行わず、平準化されていないと判断した場合は変更を行う。
【０１０６】
このように、複数のノードが接続するＧＷを変更する場合に、全てのノードが周辺のＧＷを探索することなく１台のノードのみが周辺のＧＷを検出し、探索した結果、負荷の低いＧＷを検出した１台のノードを基点ノードとし、基点ノードを基点として、基点ノードの指示により他のノードも接続するＧＷの変更を行う。そのため、複数のノードが周辺のＧＷを探索する場合と比較して、メッシュネットワーク内における通信トラヒック量を低減することができる。このとき、実施の形態１と異なり、サーバ側で接続先のＧＷを変更するノードを決定するのではなく、ノード自身が接続先のＧＷを変更するかどうかを判断する。
【０１０７】
また、１台の基点ノードを基点として時間指定により複数のノードについてＧＷの変更を行うため、全てのノードが探索を終えるのを待つ必要がないことから、指定時間の間隔を短くすることにより、短時間でのＧＷの変更が可能である。
【０１０８】
以上説明したように、本実施の形態では、サーバがＧＷ間の負荷の違いを検出し、負荷の高いＧＷに接続するノードの接続先を負荷の低いＧＷに変更することを決定した場合に、サーバは、ＧＷ間の位置が離れているとき、負荷の高いＧＷに接続する下流ノードを指定して周辺のＧＷを探索させ、探索結果に基づいて下流ノードを負荷の低いＧＷに接続するよう指示し、また、下流ノードが、基点ノードとして、変更前の通信経路において基点ノードの上流にあたる上流ノードに対して接続先ＧＷを変更することに関する情報を送信し、上流ノードが、受信した情報に基づいて、同一ＧＷへ接続先を変更するかどうかを判断することとした。この場合においても、実施の形態１と同様の効果を得ることができる。また、基点ノードである下流ノードが上流ノードへ通知を行うことから、実施の形態１と比較して、サーバとＧＷ間の通信トラヒック量を低減することができる。
【０１０９】
実施の形態６．
本実施の形態では、基点ノードが他のノードに対して接続先ＧＷを変更するための情報をブロードキャストで通知する。実施の形態５と異なる部分について説明する。
【０１１０】
図９は、本実施の形態におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。ここでは、サーバ１０１においてＧＷ３０１、３０２の位置が離れていると判断した場合に、サーバ１０１が選択した下流の基点ノードが、他のノードをブロードキャストで指示することにより平準化を行う接続先ＧＷ変更処理について説明する。
【０１１１】
サーバ１０１が負荷の違いを検出（ステップＳ１０１）してからノード７がＧＷ変更応答を通知する（ステップＳ１０８）までの処理は、実施の形態５（図７参照）と同じである。
【０１１２】
つぎに、ノード７は、サーバ１０１へＧＷ変更応答を通知後、周辺ノードに対して、接続先ＧＷを変更することを通知するため、接続先ＧＷを変更することに関する情報としてＧＷ変更タイミングおよび接続先ＧＷを変更した場合の変更後のＧＷの情報を示す切替先ＧＷ情報をブロードキャストで送信する（ステップＳ５０１）。
【０１１３】
ノード５は、ノード７から受信した情報に基づいて、自立的に接続先ＧＷを変更するかどうかを判断する（ステップＳ５０２）。ここでは、ノード５は、接続先ＧＷを変更しないと判断する。
【０１１４】
ノード６は、ノード７から受信した情報に基づいて、自立的に接続先ＧＷを変更するかどうかを判断する（ステップＳ５０３）。ノード６では、接続先ＧＷを変更すると判断した場合、ＧＷ変更タイミングを決定する。決定するＧＷ変更タイミングは、実施の形態５と同様、ノード７から通知された時間よりＸ分遅らせたタイミングとする。なお、ノード６は、接続先ＧＷを変更すると、ブロードキャスト送信元のノード７経由でＧＷ３０２と接続する。
【０１１５】
そして、ノード６は、ノード７と同様、周辺ノードに対して、接続先ＧＷを変更することを通知するため、接続先ＧＷを変更することに関する情報としてＧＷ変更タイミングおよび接続先ＧＷを変更した場合の変更後のＧＷの情報を示す切替先ＧＷ情報をブロードキャストで送信する（ステップＳ５０４）。
【０１１６】
ノード１０は、ノード６から受信した情報に基づいて、自立的に接続先ＧＷを変更するかどうかを判断する（ステップＳ５０５）。ノード１０では、接続先ＧＷを変更すると判断した場合、ＧＷ変更タイミングを決定する。決定するＧＷ変更タイミングは、実施の形態５と同様、ノード６から通知された時間よりＹ分遅らせた（ノード７のＧＷ変更タイミングよりＸ＋Ｙ分遅らせた）タイミングとする。なお、ノード１０は、接続先ＧＷを変更すると、ブロードキャスト送信元のノード６経由でＧＷ３０２と接続する。
【０１１７】
ＧＷ変更の指定時間（ＧＷ変更タイミング）が経過した場合のノード７における動作（ステップＳ１１１、Ｓ１１２）は、実施の形態５（図７参照）と同じである。
【０１１８】
ノード６は、ＧＷ変更の指定時間（ＧＷ変更タイミング）が経過すると、ブロードキャスト送信元のノード７経由でＧＷ３０２に接続を行う。そして、ノード６は、サーバ１０１に対して、ＧＷ３０２への登録を、中継ノード（ノード７、ノード２２）およびＧＷ３０２経由で通知する（ステップＳ５０６）。
【０１１９】
サーバ１０１は、ノード６に対して、登録応答を、ＧＷ３０２および中継ノード（ノード２２、ノード７）経由で通知する（ステップＳ５０７）。
【０１２０】
ノード１０は、ＧＷ変更の指定時間（ＧＷ変更タイミング）が経過すると、ブロードキャスト送信元のノード６経由でＧＷ３０２に接続を行う。そして、ノード１０は、サーバ１０１に対して、ＧＷ３０２への登録を、中継ノード（ノード６、ノード７、ノード２２）およびＧＷ３０２経由で通知する（ステップＳ５０８）。
【０１２１】
サーバ１０１は、ノード１０に対して、登録応答を、ＧＷ３０２および中継ノード（ノード２２、ノード７、ノード６）経由で通知する（ステップＳ５０９）。
【０１２２】
なお、本実施の形態では、３つのノードについて接続するＧＷを変更する場合について説明したが、これに限定するものではない。ＧＷ間の負荷に応じて、さらに周辺のノードが同様の判断をし続けることも可能である。
【０１２３】
以上説明したように、本実施の形態では、基点ノードが、周辺ノードに対して接続先ＧＷを変更することに関する情報をブロードキャストで送信し、周辺ノードが、受信した情報に基づいて、同一ＧＷへ接続先を変更するかどうかを判断することとした。この場合においても、実施の形態５と同様の効果を得ることができる。
【０１２４】
なお、ステップＳ１１１、Ｓ５０６、Ｓ５０８において、各ノードがサーバ１０１に対してＧＷ３０２への登録を行うとき、各ノードは、探索を行ってノード７以外にＧＷ３０２に接続する他の通信経路を検出することも可能である。探索回数は増えるが、より最適な通信経路を検出して接続することができる。
【０１２５】
実施の形態７．
本実施の形態では、上流ノードを基点ノードとし、基点ノードが他のノードに対して接続先ＧＷを変更するための情報を通知する。実施の形態２、５と異なる部分について説明する。
【０１２６】
図１０は、本実施の形態におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。ここでは、サーバ１０１においてＧＷ３０１、３０２の位置がほぼ同位置で近い（ＧＷ間の距離が短い）と判断した場合に、サーバ１０１が選択した上流の基点ノードが、他のノードを指示することにより平準化を行う接続先ＧＷ変更処理について説明する。
【０１２７】
サーバ１０１が負荷の違いを検出（ステップＳ２０１）してからノード３がＧＷ変更応答を通知する（ステップＳ２０８）までの処理は、実施の形態２（図４参照）と同じである。
【０１２８】
つぎに、ノード３は、サーバ１０１へＧＷ変更応答を通知後、下流ノードであるノード４に対して、サーバ１０１から指定された時間よりＸ分遅らせたタイミングをＧＷ変更通知として送信する（ステップＳ６０１）。
【０１２９】
同様に、ノード３は、ノード４へＧＷ変更通知を送信後、下流ノードであるノード５に対して、サーバ１０１から指定された時間よりＸ分遅らせたタイミングをＧＷ変更通知として送信する（ステップＳ６０２）。
【０１３０】
ノード４は、ノード３からＧＷ変更通知受信後、下流ノードであるノード６に対して、ノード３から通知された時間よりＹ分遅らせた（ノード３のＧＷ変更タイミングよりＸ＋Ｙ分遅らせた）タイミングをＧＷ変更通知として送信する（ステップＳ６０３）。
【０１３１】
同様に、ノード５は、ノード３からＧＷ変更通知受信後、下流ノードであるノード７に対して、ノード３から通知された時間よりＹ分遅らせた（ノード３のＧＷ変更タイミングよりＸ＋Ｙ分遅らせた）タイミングをＧＷ変更通知として送信する（ステップＳ６０４）。
【０１３２】
以降の各ノードにおける接続先ＧＷの変更処理（ステップＳ２１７〜Ｓ２２６）は、実施の形態２と同じである。
【０１３３】
このように、実施の形態５と異なり、本実施の形態では、上流ノード（ノード３）が接続先ＧＷを変更するため、下流ノード（ノード４〜７）は、接続先ＧＷの変更判断をせず、上流ノード（ノード３）とともに接続先ＧＷを変更する。
【０１３４】
以上説明したように、本実施の形態では、サーバが、ＧＷ間の距離が短いとき、負荷の高いＧＷに接続する上流ノードを指定して周辺のＧＷを探索させ、探索結果に基づいて上流ノードを負荷の低いＧＷに接続するよう指示し、また、上流ノードが、基点ノードとして、変更前の通信経路において基点ノードの下流にあたる下流ノードに対して接続先ＧＷを変更するタイミングの情報を送信し、下流ノードが、受信した情報に基づいて、変更タイミングを決定して同一ＧＷへ接続先を変更することとした。この場合においても、実施の形態２と同様の効果を得ることができる。また、基点ノードである上流ノードが下流ノードへ通知を行うことから、実施の形態２と比較して、サーバとＧＷ間の通信トラヒック量を低減することができる。
【０１３５】
実施の形態８．
本実施の形態では、中間ノードを基点ノードとし、基点ノードが他のノードに対して接続先ＧＷを変更するための情報を通知する。実施の形態３、５と異なる部分について説明する。
【０１３６】
図１１は、本実施の形態におけるノードの接続先ＧＷ変更処理を示すシーケンス図である。ここでは、サーバ１０１においてＧＷ３０１、３０２の位置が実施の形態１、２で示した位置の中間くらいの位置であると判断した場合に、サーバ１０１が選択した中間の基点ノードが、他のノードを指示することにより平準化を行う接続先ＧＷ変更処理について説明する。
【０１３７】
サーバ１０１が負荷の違いを検出（ステップＳ３０１）してからノード５がＧＷ変更応答を通知する（ステップＳ３０８）までの処理は、実施の形態３（図５参照）と同じである。
【０１３８】
つぎに、ノード５は、サーバ１０１へＧＷ変更応答を通知後、下流ノードであるノード７に対して、サーバ１０１から指定された時間よりＸ分遅らせたタイミングをＧＷ変更通知として送信する（ステップＳ７０１）。
【０１３９】
また、ノード５は、ノード７へＧＷ変更通知を送信後、上流ノードであるノード３に対して、接続先ＧＷを変更することを通知するため、接続先ＧＷを変更することに関する情報としてＧＷ変更タイミングおよび接続先ＧＷを変更した場合の変更後のＧＷの情報を示す切替先ＧＷ情報を送信する（ステップＳ７０２）。
【０１４０】
ノード３は、ノード５から受信した情報に基づいて、自立的に接続先ＧＷを変更するかどうかを判断する（ステップＳ７０３）。なお、ノード３では、接続先ＧＷを変更する場合、ノード５とは別の通信経路の下流にあるノード４、ノード６についても接続先ＧＷを変更させることとする。
【０１４１】
ノード３は、接続先ＧＷを変更すると判断した場合、ＧＷ変更タイミングを決定する（ステップＳ７０４）。決定するＧＷ変更タイミングは、ノード５から通知されたＧＷ変更タイミングよりＸ分遅らせたタイミングとする。
【０１４２】
そして、ノード３は、下流ノードであるノード４に対して、接続先ＧＷを変更することを通知するため、自身で決定したＧＷ変更タイミングよりＹ分遅らせた（ノード５のＧＷ変更タイミングよりＸ＋Ｙ分遅らせた）タイミングをＧＷ変更通知として送信する（ステップＳ７０５）。
【０１４３】
ノード４は、ノード３からＧＷ変更通知受信後、下流ノードであるノード６に対して、ノード３から通知された時間よりＺ分遅らせた（ノード５のＧＷ変更タイミングよりＸ＋Ｙ＋Ｚ分遅らせた）タイミングをＧＷ変更通知として送信する（ステップＳ７０６）。
【０１４４】
以降の各ノードにおける接続先ＧＷの変更処理は、実施の形態３と同等である。各ノードは、ＧＷ変更の指定時間が経過するとＧＷ３０２に接続を行い、サーバ１０１に対して、ＧＷ３０２への登録を通知する。サーバ１０１は、各ノードに対して、登録応答を通知する。
【０１４５】
なお、ノード３において、接続先ＧＷを変更しないと判断した場合は、ノード５およびノード７のみが、接続先ＧＷを変更する。
【０１４６】
以上説明したように、本実施の形態では、サーバが、ＧＷ間の距離が中距離のとき、負荷の高いＧＷに接続する中間ノードを指定して周辺のＧＷを探索させ、探索結果に基づいて中間ノードを負荷の低いＧＷに接続するよう指示し、また、中間ノードが、基点ノードとして、変更前の通信経路において基点ノードの下流にあたる下流ノードに対して接続先ＧＷを変更するタイミングの情報を送信し、変更前の通信経路において基点ノードの上流にあたる上流ノードに対して接続先ＧＷを変更することに関する情報を送信する。そして、下流ノードが、受信した情報に基づいて、変更タイミングを決定して同一ＧＷへ接続先を変更し、上流ノードが、受信した情報に基づいて、同一ＧＷへ接続先を変更するかどうかを判断する。この場合においても、実施の形態３と同様の効果を得ることができる。また、基点ノードである中間ノードが下流ノードおよび上流ノードへ通知を行うことから、実施の形態３と比較して、サーバとＧＷ間の通信トラヒック量を低減することができる。
【産業上の利用可能性】
【０１４７】
以上のように、本発明にかかる通信システムは、アドホックネットワークに有用であり、特に、集約局が複数ある場合に適している。
【符号の説明】
【０１４８】
１〜１４、２１〜２３  ノード
１０１  サーバ
２０１  広域ネットワーク
３０１、３０２  集約局装置（ＧＷ）
【図１】
0005851225.tif 000002
【図２】
0005851225.tif 000003
【図３】
0005851225.tif 000004
【図４】
0005851225.tif 000005
【図５】
0005851225.tif 000006
【図６】
0005851225.tif 000007
【図７】
0005851225.tif 000008
【図８】
0005851225.tif 000009
【図９】
0005851225.tif 000010
【図１０】
0005851225.tif 000011
【図１１】
0005851225.tif 000012