(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-14
(45)【発行日】2022-07-25
(54)【発明の名称】通信システム、通信システムの制御方法、および、通信装置
(51)【国際特許分類】
H04L 12/437 20060101AFI20220715BHJP
【FI】
H04L12/437 Z
(21)【出願番号】P 2019097297
(22)【出願日】2019-05-24
【審査請求日】2021-01-21
(73)【特許権者】
【識別番号】000005290
【氏名又は名称】古河電気工業株式会社
(74)【代理人】
【識別番号】100205659
【氏名又は名称】齋藤 拓也
(74)【代理人】
【識別番号】100114292
【氏名又は名称】来間 清志
(74)【代理人】
【識別番号】100130247
【氏名又は名称】江村 美彦
(74)【代理人】
【識別番号】100167863
【氏名又は名称】大久保 恵
(72)【発明者】
【氏名】横山 卓弘
(72)【発明者】
【氏名】服部 伸彦
(72)【発明者】
【氏名】濱田 浩樹
(72)【発明者】
【氏名】有馬 康弘
(72)【発明者】
【氏名】熊谷 篤
【審査官】佐々木 洋
(56)【参考文献】
【文献】特開平06-232908(JP,A)
【文献】国際公開第2011/052729(WO,A1)
【文献】特開2017-143466(JP,A)
【文献】特開2013-128250(JP,A)
【文献】特開2012-044384(JP,A)
【文献】国際公開第2014/112616(WO,A1)
【文献】特開2013-176021(JP,A)
【文献】国際公開第2004/066569(WO,A1)
【文献】特開平02-032643(JP,A)
【文献】特開2011-166466(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/437
(57)【特許請求の範囲】
【請求項1】
複数の通信装置が接続されて構成される通信システムにおいて、
前記通信装置は、
前記通信システムに所定の宛先を有するパケットが周回するループが生じていることを検出する検出手段と、
前記検出手段によってループが検出された場合には、前記宛先に係る経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する通知手段と、を有し、
前記検出手段は、受信したパケットを転送する場合において、パケットを受信したポートと経路テーブルに基づいて前記パケットを送信しようとするポートとが同一である場合にはルートエラーの発生を検出する、
ことを特徴とする通信システム。
【請求項2】
複数の通信装置が接続されて構成される通信システムの制御方法において、
前記通信装置は、
前記通信システムに所定の宛先を有するパケットが周回するループが生じていることを検出する検出ステップと、
前記検出ステップにおいてループが検出された場合には、前記宛先に係る経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する通知ステップと、を有し、
前記検出ステップでは、受信したパケットを転送する場合において、パケットを受信したポートと経路テーブルに基づいて前記パケットを送信しようとするポートとが同一である場合にはルートエラーの発生を検出する、
ことを特徴とする通信システムの制御方法。
【請求項3】
複数の通信装置が接続されて構成される通信システムの前記通信装置において、
前記通信システムに所定の宛先を有するパケットが周回するループが生じていることを検出する検出手段と、
前記検出手段によってループが検出された場合には、前記宛先に係る経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する通知手段と、を有し、
前記検出手段は、受信したパケットを転送する場合において、パケットを受信したポートと経路テーブルに基づいて前記パケットを送信しようとするポートとが同一である場合にはルートエラーの発生を検出する、
ことを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信システム、通信システムの制御方法、および、通信装置に関するものである。
【背景技術】
【0002】
ツリー構造やリング構造を基本構造とし、基本構造を多段化あるいは変形するようなネットワークを構築する場合には、データ信号が周回して際限なく転送され続けないように何らかの仕組みを組み込む必要があり、そのような仕組みがないと運用上の支障が生じる。
【0003】
そこで、例えば、OSI参照モデルのネットワーク層におけるルーティング(経路選択)を活用し、データ信号をネットワーク機器間で中継転送すれば、そのような支障は回避できる。このようなルーティングを実施するためには、ルーティングプロトコルの規定に従って、機器それぞれが自身に必要な特定宛先機器に至るための経路情報を所持し、その情報をもとにデータ信号の中継転送を行う事になる。
【0004】
ここで、非特許文献1のようなメッシュ接続に対応しているルーティングプロトコルを採用していれば、頻繁に迂回接続を構築するような、変化に強いネットワーク構造を得る事が可能となる。
【先行技術文献】
【特許文献】
【0005】
【文献】IETF RFC3561 「Ad hoc On-Demand Distance Vector (AODV) Routing」
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、非特許文献1に記載された技術では、何らかの異常によって、パケットがループする場合がある。このような場合、代替経路が無い場合にはTTLが尽きるまでパケットがループ経路内で回ってしまうという問題点がある。
【0007】
そこで、本発明は、パケットのループを防ぐことが可能な通信システム、通信システムの制御方法、および、通信装置を提供することを目的としている。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明は、複数の通信装置が接続されて構成される通信システムにおいて、前記通信装置は、前記通信システムに所定の宛先を有するパケットが周回するループが生じていることを検出する検出手段と、前記検出手段によってループが検出された場合には、前記宛先に係る経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する通知手段と、を有する、ことを特徴とする。
このような構成によれば、パケットのループを防ぐことが可能になる。
【0009】
また、本発明は、前記検出手段は、受信したパケットを転送する場合において、パケットを受信したポートと前記パケットを送信するポートとが同一である場合にはルートエラーの発生を検出し、前記通知手段は、前記パケットの宛先に係る経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する、ことを特徴とする。
このような構成によれば、送受信ポートに基づいて、経路の異常を簡易に検出することができる。
【0010】
また、本発明は、前記検出手段は、経路テーブルを参照し、所定の宛先に関する次の転送先であるNext Hopと、前の転送元であるPrevious Hopが一致する経路情報が存在する場合にはルートエラーの発生を検出し、前記通知手段は、前記経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する、ことを特徴とする。
このような構成によれば、経路情報に基づいて、経路の異常を簡易に検出することができる。
【0011】
また、本発明は、前記検出手段は、パケットを受信した場合において、当該パケットに格納されているTTL(Time to Live)の方が、当該パケットの宛先に対応する経路情報に格納されているHop数よりも値が小さく場合にはルートエラーの発生を検出し、前記通知手段は、前記経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する、ことを特徴とする。
このような構成によれば、TTLとHop数を比較することで、経路の異常を簡易に検出することができる。
【0012】
また、本発明は、前記検出手段は、前記通信システムを構成する特定の通信装置に対してパケットを送信し、当該パケットが自分自身に戻ってきた場合にはルートエラーの発生を検出し、前記通知手段は、前記通信装置に係る経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する、ことを特徴とする。
このような構成によれば、経路の異常を能動的に検出することが可能になる。
【0013】
また、本発明は、複数の通信装置が接続されて構成される通信システムの制御方法において、前記通信装置は、前記通信システムに所定の宛先を有するパケットが周回するループが生じていることを検出する検出ステップと、前記検出ステップにおいてループが検出された場合には、前記宛先に係る経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する通知ステップと、を有する、ことを特徴とする。
このような方法によれば、パケットのループを防ぐことが可能になる。
【0014】
また、本発明は、複数の通信装置が接続されて構成される通信システムの前記通信装置において、前記通信システムに所定の宛先を有するパケットが周回するループが生じていることを検出する検出手段と、前記検出手段によってループが検出された場合には、前記宛先に係る経路情報に関してルートエラーが発生したことを、前記通信システムを構成する各通信装置に対して通知する通知手段と、を有する、ことを特徴とする。
このような構成によれば、パケットのループを防ぐことが可能になる。
【発明の効果】
【0015】
本発明によれば、パケットのループを防ぐことが可能な通信システム、通信システムの制御方法、および、通信装置を提供することができる。
【図面の簡単な説明】
【0016】
【
図1】本発明の第1実施形態の通信システムの構成例を示す図である。
【
図2】
図1に示す通信装置の詳細な構成例を示す図である。
【
図3】第1実施形態の動作を説明するための図である。
【
図4】第1実施形態において実行される処理の一例を説明するためのフローチャートである。
【
図5】本発明の第2実施形態の通信システムの構成例を示す図である。
【
図6】第2実施形態の動作を説明するための図である。
【
図7】第2実施形態において実行される処理の一例を説明するためのフローチャートである。
【
図8】本発明の第3実施形態の動作を説明するための図である。
【
図9】第3実施形態において実行される処理の一例を説明するためのフローチャートである。
【
図10】第4実施形態において実行される処理の一例を説明するためのフローチャートである。
【発明を実施するための形態】
【0017】
次に、本発明の実施形態について説明する。
【0018】
(A)本発明の第1実施形態の構成の説明
図1は、本発明の第1実施形態に係る通信システムの構成の一例を示す図である。
図1に示すように、通信システムは、通信装置10-1~10-8、および、GW(Gate Way)20が接続されて構成される。なお、
図1に示す通信システムでは、各通信装置は、AODV(Ad hoc On-Demand Distance Vector)プロトコルまたはDSR(Dynamic Source Routing)に基づいて動作する。
【0019】
図1の例では、通信装置10-1~10-8およびGW20がリング状に接続されて通信システムを構成する。なお、GW20には、通信システム全体を管理するための管理装置(不図示)が接続されている。
【0020】
図1において、各通信装置に付与された数字“1”~“3”はポートを示している。ここで、“1”,“2”はメインポートを示し、“3”はサブポートを示す。
図1の例では、メインポート同士が相互に接続されてリング状のネットワークを形成している。
【0021】
GW20は、ネットワーク全体を管理する管理装置と、リング状のネットワークとを相互に接続するための接続装置である。
【0022】
図2は、
図1に示す通信装置10-1~10-8の構成例を示す図である。なお、通信装置10-1~10-8は同様の構成とされているので、以下では、これらを通信装置10として説明する。
【0023】
図2に示すように、通信装置10は、パケット中継処理部11、制御部12、記憶部13、および、受信部14-1~14-3、および、送信部15-1~15-3を有している。
【0024】
ここで、パケット中継処理部11は、受信部14-1~14-3によって受信されたパケットを、そのヘッダに格納されている情報と、記憶部13に記憶された経路情報13aを参照し、対応する送信部15-1~15-3から送出する。なお、パケット中継処理部11は、ハードウエアによって構成され、パケットの転送動作については、制御部12によるソフトウエアによる制御を必要としない構成とされている。
【0025】
制御部12は、ループ等の経路異常が発生した場合には、記憶部13に記憶されている経路情報13aを抹消するとともに、ルートエラーが発生したことを通信システム全体に通知する。
【0026】
記憶部13は、例えば、半導体メモリによって構成され、パケットを転送するための情報である経路情報13aを記憶するとともに、後述する処理を実行するためのプログラムやデータを格納している。
【0027】
受信部14-1~14-3は、他の通信装置からパケットを受信する。送信部15-1~15-3は、他の通信装置に対してパケットを送信する。なお、受信部14-1および送信部15-1によってメインポート1が構成され、受信部14-2および送信部15-2によってメインポート2が構成され、受信部14-3および送信部15-3によってサブポート3が構成される。
【0028】
(B)本発明の第1実施形態の動作の説明
つぎに、本発明の第1実施形態の動作について説明する。以下では、
図1~
図3を参照して、本発明の第1実施形態の動作の概要について説明した後、
図4を参照して詳細な動作について説明する。
【0029】
第1実施形態では、パケットを転送する際に、受信したパケットを入力したポートと、当該パケットを転送する際に出力するポートを比較し、これらが一致する場合には、パケットがループしていると判定し、エラーの発生を他の通信装置に通知するためのRERR(Route Error)をブロードキャストする。
【0030】
より詳細には、例えば、
図1に示す通信装置10-8からGW20に向けて送信したパケットが、何らかの理由によって、GW20に届かずに、通信装置10-1に戻ってきたとする。
【0031】
この場合、
図3(B)に示すように、通信装置10-1が受信するパケットの送信先(Destination)は、「GW」(GW20)であり、パケットの送信元(Source)は、「10-8」(通信装置10-8)である。また、受信するポートは、
図1にも示すように、「2」(ポート2)である。
【0032】
このようなパケットを受信した場合、パケット中継処理部11は、記憶部13に記憶されている経路情報13aを参照し、送信ポートを特定する。すなわち、所有者が「10-1」(通信装置10-1)である経路テーブルに記憶されている送信先(Destination)が「GW」(GW20)である送信ポートは、
図3(A)に示すように、「2」である。このため、受信ポートと、送信ポートが一致することから、パケット中継処理部11は、経路異常が発生していると判定し、制御部12に通知する。
【0033】
この結果、制御部12は、
図3(A)に示す経路情報を削除するとともに、不達な送信先であるGW20を示す情報(例えば、IPアドレス)を含むRERRを各通信装置に向けてブロードキャストする。この結果、各通信装置では、RERRを受信し、GW20に不達であることを認識し、GW20への経路を再確立する。これにより、ルートの異常が解消される。
【0034】
つぎに、
図4を参照して、第1実施形態において、各通信装置で実行される処理の詳細について説明する。
図4に示すフローチャートが開始されると、以下のステップが実行される。
【0035】
ステップS10では、パケット中継処理部11は、パケットを受信したか否かを判定し、受信したと判定した場合(ステップS10:Y)にはステップS11に進み、それ以外の場合(ステップS10:N)にはステップS20に進む。例えば、
図1の例では、通信装置10-1のパケット中継処理部11は、通信装置10-2から送信されたパケット受信し、ステップS11に進む。
【0036】
ステップS11では、パケット中継処理部11は、ステップS10で受信したパケットを入力した受信ポートを特定する。いまの例では、ポート2が特定される。
【0037】
ステップS12では、パケット中継処理部11は、受信したパケットのヘッダを参照し、パケットの送信先(Destination)を特定する。いまの例では、送信先としてGW20が特定される。
【0038】
ステップS13では、パケット中継処理部11は、経路テーブルから送信先が同一の経路情報を特定する。いまの例では、送信先がGW20である
図3(A)に示す経路情報が特定される。
【0039】
ステップS14では、パケット中継処理部11は、ステップS13で特定した経路情報の送信ポートを特定する。いまの例では、
図3(A)に示す経路情報示すポート2が特定される。
【0040】
ステップS15では、パケット中継処理部11は、ステップS14で特定した送信ポートと、ステップS11で特定した受信ポートが同じか否かを判定し、同じである場合(ステップS15:Y)にはステップS16に進み、それ以外の場合(ステップS15:N)には、ステップS20に進む。いまの例では、送信ポートは、
図3(A)に示すようにポート2であり、受信ポートもポート2であるので、Yと判定してステップS16に進む。
【0041】
ステップS16では、パケット中継処理部11は、制御部12に対して、経路の異常が発生したことを、送信先を示す情報とともに制御部12に通知する。いまの例では、異常を示す情報とともに、送信先であるGW20を示す情報が制御部12に通知される。
【0042】
ステップS17では、制御部12は、記憶部13に記憶されている該当する経路情報を削除する。いまの例では、
図3(A)に示す送信先がGW20である経路情報が削除される。
【0043】
ステップS18では、制御部12は、不達の送信先を示す情報を含むRERRを全ての通信装置に対してブロードキャストする。いまの例では、不達の送信先としてGW20を示す情報を含むRERRがブロードキャストされる。
【0044】
ステップS19では、制御部12は、不達の送信先に関する経路の再探索を行い、経路を再確立する。いまの例では、GW20を送信先とする経路の再探索が実行される。なお、同様の処理は、他の通信装置においても実行されるので、GW20を送信先とする経路の異常が解消され、GW20への経路が確立される。
【0045】
ステップS20では、制御部12は、処理を継続するか否かを判定し、処理を継続する場合(ステップS20:Y)にはステップS10に戻って同様の処理を繰り返し、それ以外の場合(ステップS20:N)には処理を終了する。
【0046】
以上の処理によれば、前述した第1実施形態の動作を実現することができる。
【0047】
(C)本発明の第2実施形態の構成の説明
つぎに、本発明の第2実施形態について説明する。
図5は、本発明の第2実施形態の構成例を示す図である。
図5に示す例では、通信装置10-1~10-13およびGW20が接続されて通信システムが形成されている。
【0048】
ここで、通信装置10-1~10-8およびGW20がリング状に接続され、メインリングR1を形成する。また、通信装置10-6~10-11がリング状に接続され、サブリングR2を形成する。また、通信装置10-9~10-13がリング状に接続され、サブリングR3を形成する。
【0049】
なお、通信装置10-1~10-13は、
図2と同様の構成とされている。
【0050】
(D)本発明の第2実施形態の動作の説明
つぎに、
図6を参照して本発明の第2実施形態の動作の概略について説明した後に、
図7を参照して詳細な動作について説明する。
【0051】
図6は、通信装置10-1~10-3および通信装置10-8が有する送信先をGW20とする経路情報を示している。例えば、所有者が通信装置10-1である経路情報は、送信先(Destination)がGW20であり、転送先(Next)が通信装置10-2であり、転送元(Previous)が通信装置10-8であることを示している。
【0052】
ところで、
図6の例では、所有者が通信装置10-2である経路情報は、送信先(Destination)がGW20であり、転送先(Next)が通信装置10-1であり、転送元(Previous)が通信装置10-1であることを示している。転送先と転送元が一致することはあり得ないので、所有者が通信装置10-2である経路情報は異常であり、もし、この経路情報に従ってパケットを転送するとパケットがループしてしまう。
【0053】
そこで、第2実施形態では、経路テーブルに格納された経路情報を参照し、転送元(Previous)と転送先(Next)が一致する経路情報は異常であると判定し、RERRをブロードキャストし、当該経路についての経路の再探索を実行する。これにより、
図6の所有者が通信装置10-2である経路情報の異常が解消されることとなる。
【0054】
つぎに、
図7を参照して、第2実施形態の動作について説明する。
図7に示すフローチャートの処理が開始されると、以下のステップが実行される。
【0055】
ステップS30では、制御部12は、記憶部13に格納されている経路情報13aを取得する。
【0056】
ステップS31では、制御部12は、Nex HopとPrevous Hopが同じ経路が存在するか否かを判定し、存在する場合(ステップS31:Y)にはステップS32に進み、それ以外の場合にはステップS35に進む。例えば、
図6に示すように、Nex HopとPrevous Hopが同じ経路が存在する場合にはYと判定してステップS32に進む。
【0057】
ステップS32では、制御部12は、記憶部13に記憶されている該当する経路情報を削除する。いまの例では、
図6に示す所有者が通信装置10-2であり、送信先がGW20である経路情報が削除される。
【0058】
ステップS33では、制御部12は、経路異常が生じている送信先を示す情報を含むRERRを全ての通信装置に対してブロードキャストする。いまの例では、経路異常が生じている送信先としてGW20を示す情報を含むRERRがブロードキャストされる。
【0059】
ステップS34では、制御部12は、経路異常が生じている送信先に関する経路の再探索を行い、経路を再確立する。いまの例では、GW20を送信先とする経路の再探索が実行される。なお、同様の処理は、他の通信装置においても実行されるので、GW20を送信先とする経路の異常が解消され、GW20への経路が確立される。
【0060】
ステップS35では、制御部12は、処理を継続するか否かを判定し、処理を継続する場合(ステップS35:Y)にはステップS30に戻って同様の処理を繰り返し、それ以外の場合(ステップS35:N)には処理を終了する。
【0061】
以上の処理によれば、前述した第2実施形態の動作を実現することができる。
【0062】
(E)本発明の第3実施形態の構成の説明
つぎに、本発明の第3実施形態について説明する。なお、第3実施形態の通信システムの構成は、
図1と同様であり、また、通信装置の構成も
図2と同様であるので、その詳細な説明は省略する。
【0063】
(F)本発明の第3実施形態の動作の説明
つぎに、
図8を参照して、第3実施形態の動作の概略について説明した後、
図9を参照して詳細な動作について説明する。
【0064】
第3実施形態では、例えば、通信装置10-1が通信装置10-8から
図8(B)に示すようなパケットを受信したとする。
図8(B)の例では、当該パケットは送信先がGW20であり、送信元が通信装置10-8であり、TTL(Time to Live)が2であったとする。なお、TTLは、送信先に到着しない場合に、当該パケットを削除するまでの寿命を示す。TTLは、送信元において初期値が設定され、通信装置を1台経由するごとにその値が1ずつデクリメントされる。そして、TTL=0となった場合には、そのパケットは廃棄される。
【0065】
図8(A)は、通信装置10-1の経路テーブルに格納されているGW20を送信先とするパケットに関する経路情報を示している。
図8(A)の例では、送信先はGW20であり、Hop数は3とされている。なお、Hop数とは、送信先までに経由する通信装置の数を示している。
【0066】
ところで、送信先であるGW20までのHop数が3であるにも関わらず、GW20を送信先とするパケットのTTLは2となっているため、当該パケットはGW20に到着する前に廃棄されてしまう。これは、経路の異常が生じてパケットがループしていることが想定される。
【0067】
そこで、第3実施形態では、受信したパケットのTTLが、当該パケットの送信先までのHop数よりも値が小さい場合には、経路の異常と判定してRERRをブロードキャストする。これにより、経路の異常か解消される。
【0068】
つぎに、
図9を参照して、第3実施形態の詳細な動作について説明する。
図9に示すフローチャートの処理が開始されると、以下のステップが実行される。
【0069】
ステップS50では、パケット中継処理部11は、パケットを受信したか否かを判定し、パケットを受信したと判定した場合(ステップS50:Y)にはステップS51に進み、それ以外の場合(ステップS50:N)にはステップS60に進む。例えば、通信装置10-1が通信装置10-8からパケットを受信した場合にはYと判定してステップS51に進む。
【0070】
ステップS51では、パケット中継処理部11は、パケットに格納されているTTLを取得する。いまの例では、
図8(B)に示すTTLとして2が取得される。
【0071】
ステップS52では、パケット中継処理部11は、パケットに格納されている送信先(Destination)を取得する。いまの例では、
図8(B)に示す送信先としてGW20が取得される。
【0072】
ステップS53では、パケット中継処理部11は、ステップS52で取得した送信先と同一の送信先の経路情報を経路テーブルから特定する。いまの例では、
図8(A)に示す経路情報が特定される。
【0073】
ステップS54では、パケット中継処理部11は、ステップS53で特定された経路情報を参照し、送信先までのHop数を特定する。いまの例では、
図8(A)に示すHop数として“3”が特定される。
【0074】
ステップS55では、パケット中継処理部11はTTL<Hop数であるか否かを判定し、TTL<Hop数であると判定した場合(ステップS55:Y)にはステップS56に進み、それ以外の場合(ステップS55:N)には60に進む。いまの例では、
図8に示すように、TTL=2であり、Hop数=3であるので、Yと判定してステップS56に進む。
【0075】
ステップS56では、パケット中継処理部11は、制御部12に対して、経路の異常が発生したことを、送信先を示す情報とともに通知する。いまの例では、異常を示す情報とともに、送信先であるGW20を示す情報が制御部12に通知される。
【0076】
ステップS57では、制御部12は、記憶部13に記憶されている該当する経路情報を削除する。いまの例では、
図8(A)に示す送信先がGW20である経路情報が削除される。
【0077】
ステップS58では、制御部12は、異常な送信先を示す情報を含むRERRを全ての通信装置に対してブロードキャストする。いまの例では、不達の送信先としてGW20を示す情報を含むRERRがブロードキャストされる。
【0078】
ステップS59では、制御部12は、異常な送信先に関する経路の再探索を行い、経路を再確立する。いまの例では、GW20を送信先とする経路の再探索が実行される。なお、同様の処理は、他の通信装置においても実行されるので、GW20を送信先とする経路の異常が解消され、GW20への経路が確立される。
【0079】
ステップS60では、制御部12は、処理を継続するか否かを判定し、処理を継続する場合(ステップS60:Y)にはステップS50に戻って同様の処理を繰り返し、それ以外の場合(ステップS60:N)には処理を終了する。
【0080】
以上の処理によれば、前述した第3実施形態の動作を実現することができる。
【0081】
(G)本発明の第4実施形態の構成の説明
つぎに、本発明の第4実施形態について説明する。なお、第4実施形態の通信システムの構成は、
図1または
図5と同様であり、また、通信装置の構成も
図2と同様であるので、その詳細な説明は省略する。
【0082】
(H)本発明の第4実施形態の動作の説明
つぎに、
図5を参照して、第4実施形態の動作の概略について説明した後、
図10を参照して詳細な動作について説明する。
【0083】
第4実施形態では、通信システムを構成する所定の通信装置または全ての通信装置が、例えば、定期的に特定の送信先(例えば、GW20)に対して、経路が正常か否かを判定するための診断用のパケットを送信する。そして、当該パケットが自分自身に返ってきた場合には経路が異常であるとしてRERRをブロードキャストする。これにより、経路の異常が解消される。
【0084】
つぎに、
図10を参照して、第4実施形態の詳細な動作について説明する。
図10に示すフローチャートの処理が開始されると、以下のステップが実行される。
【0085】
ステップS70では、制御部12は、前回、診断用のパケットを送信してから所定の時間が経過したか否かを判定し、所定の時間が経過してと判定した場合(ステップS70:Y)にはステップS71に進み、それ以外の場合(ステップS70:N)にはステップS77に進む。
【0086】
ステップS71では、制御部12は、GW20向けの診断用のパケットを生成する。より詳細には、送信先がGW20であり、送信元が自身であるパケットを生成する。
【0087】
ステップS72では、制御部12は、ステップS71で生成した診断用のパケットを送信する。
【0088】
ステップS73では、制御部12は、ステップS72で送信したパケットが帰ってきたか否かを判定し、同じパケットが帰ってきたと判定した場合(ステップS73:Y)にはステップS74に進み、それ以外の場合(ステップS73:N)にはステップS77に進む。
【0089】
ステップS74では、制御部12は、記憶部13に記憶されている該当する経路情報を削除する。いまの例では、送信先がGW20である経路情報が削除される。
【0090】
ステップS75では、制御部12は、異常な送信先を示す情報を含むRERRを全ての通信装置に対してブロードキャストする。いまの例では、不達の送信先としてGW20を示す情報を含むRERRがブロードキャストされる。
【0091】
ステップS76では、制御部12は、異常な送信先に関する経路の再探索を行い、経路を再確立する。いまの例では、GW20を送信先とする経路の再探索が実行される。なお、同様の処理は、他の通信装置においても実行されるので、GW20を送信先とする経路の異常が解消され、GW20への経路が確立される。
【0092】
ステップS77では、制御部12は、処理を継続するか否かを判定し、処理を継続する場合(ステップS77:Y)にはステップS70に戻って同様の処理を繰り返し、それ以外の場合(ステップS77:N)には処理を終了する。
【0093】
以上の処理によれば、前述した第4実施形態の動作を実現することができる。
【0094】
(C)変形実施形態の説明
以上の実施形態は一例であって、本発明が上述したような場合のみに限定されるものでないことはいうまでもない。例えば、以上の各実施形態では、
図1および
図5に示す通信システムは、AODVプロトコルまたはDSRプロトコルに基づいて動作するようにしたが、これら以外のプロトコルに基づいて動作するようにしてもよい。
【0095】
また、
図2に示す構成は一例であって、本発明が
図2に示す構成に限定されるものではない。例えば、
図2の例では、3つの受信部14-1~14-3および3つの送信部15-1~15-3を有するようにしたが、3つ以外の数の受信部および送信部を有するようにしてもよい。
【0096】
また、
図1および
図5に示す通信装置の接続形態は、一例であって、本発明がこれらのような接続形態のみに限定されるものではない。
【0097】
また、
図4、
図7、
図9、および、
図10に示すフローチャートは一例であって、これ以外のフローチャートを用いるようにしてもよい。
【符号の説明】
【0098】
10-1~10-13 通信装置
11 パケット中継処理部
12 制御部
13 記憶部
13a 経路情報
14-1~14-3 受信部
15-1~15-3 送信部