(57)【要約】【課題】  ＭＡＮＥＴ環境でＩＰアドレスの重複を検出するための多数のパケットフォーマットとテーブルを定義し、これによる端末間の通信メカニズムを提供することにより、効率的なＩＰアドレス割当及びＩＰアドレス重複の検出方法を提供すること。  【解決手段】  本発明によるモバイルアドホックネットワーク環境で重複したＩＰアドレスを検出するためのネットワーク装置は、各々の端末に関する装置情報及び該装置情報に対応するＩＰアドレスを保存するデータベース部と、前記装置情報及び前記ＩＰアドレスを用いて前記モバイルアドホックネットワークを区別する識別子を生成し、ＩＰアドレスの重複を検出すめための所定のパケットを処理するＩＰアドレス重複検出部と、前記識別子を含むＨｅｌｌｏパケットまたは前記ＩＰアドレスの重複検出のための所定のパケットを送受信するパケット送受信部とを備える。【選択図】  図５
2005012761.tif 000002
【特許請求の範囲】
【請求項１】
モバイルアドホックネットワーク環境で重複したＩＰアドレスを検出するためのネットワーク装置において、
各々の端末に関する装置情報及び該装置情報に対応するＩＰアドレスを保存するデータベース部と、
前記装置情報及び前記ＩＰアドレスを用いて前記モバイルアドホックネットワークを区別する識別子を生成し、ＩＰアドレスの重複を検出するための所定のパケットを処理するＩＰアドレス重複検出部と、
前記識別子を含むＨｅｌｌｏパケットまたは前記ＩＰアドレスの重複を検出するための所定のパケットを送受信するパケット送受信部とを備えることを特徴とするネットワーク装置。
【請求項２】
前記装置情報は、各々の端末に付与されたＭＡＣアドレスを含むことを特徴とする請求項1に記載のネットワーク装置。
【請求項３】
前記所定のパケットは、既形成の網の情報を要求する網情報要求パケットを含むことを特徴とする 請求項1に記載のネットワーク装置。
【請求項４】
前記所定のパケットは、既形成の網の情報を提供する網情報提供パケットを含むことを特徴とする請求項1に記載のネットワーク装置。
【請求項５】
前記所定のパケットは、前記識別子が変更された場合、変更された識別子情報を提供するパケットを含むことを特徴とする請求項1に記載のネットワーク装置。
【請求項６】
前記ＩＰアドレス重複検出部は、前記識別子が二つ以上存在するか、または前記データベース部から削除された場合、前記データベース部に含まれた情報に基づいて所定の条件による前記装置情報を新しい識別子として再選定することを含むことを特徴とする請求項1に記載のネットワーク装置。
【請求項７】
モバイルアドホックネットワーク環境でＩＰアドレス重複の検出方法において、
各々の端末に対する装置情報及び該装置情報に対応するＩＰアドレスを保存するステップと、
前記装置情報及び前記ＩＰアドレスを用いて前記モバイルアドホックネットワークを区別する識別子を生成し、ＩＰアドレスの重複を検出するための所定のパケットを処理するステップと、
前記識別子を含むＨｅｌｌｏパケットまたは前記ＩＰアドレスの重複を検出するための所定のパケットを送受信するステップとを含むことを特徴とするＩＰアドレス重複の検出方法。
【請求項８】
前記装置情報は、各々の端末に付与されたＭＡＣアドレスを含むことを特徴とする請求項7に記載のＩＰアドレス重複の検出方法。
【請求項９】
前記所定のパケットは、既形成の網の情報を要求する網情報要求パケットを含むことを特徴とする請求項7に記載のＩＰアドレス重複の検出方法。
【請求項１０】
前記所定のパケットは、既形成の網の情報を提供する網情報提供パケットを含むことを特徴とする請求項7に記載のＩＰアドレス重複の検出方法。
【請求項１１】
前記所定のパケットは、前記識別子が変更された場合、変更された識別子情報を提供するパケットを含むことを特徴とする請求項7に記載のＩＰアドレス重複の検出方法。
【請求項１２】
前記識別子が二つ以上存在するか、または削除された場合、前記装置情報及び該装置情報に対応するＩＰアドレスに基づいて所定の条件による前記装置情報を新しい識別子に再選定し、ＩＰアドレスの重複を検出するための所定のパケットを処理するステップを含むことを特徴とする請求項7に記載のＩＰアドレス重複の検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モバイルアドホックネットワーク（Mobile Ad-hoc Network；以下、ＭＡＮＥＴという）環境で重複したＩＰアドレスを検出するための装置及びＩＰアドレス重複の検出方法に関し、より詳しくは、各々のＭＡＮＥＴを識別する識別子を含むＨｅｌｌｏパケットを送受信しながら単一の端末が既存に形成されたＭＡＮＥＴに参加したり、既存に形成されたＭＡＮＥＴの分離または結合によるＩＰアドレス割当及び重複したＩＰアドレスを検出するための方法に関する。
【背景技術】
【０００２】
ＭＡＮＥＴ環境では、インフラストラクチャ（infrastructure）を使用することなくネットワークを構成するので、有線ネットワークのＤＨＣＰのようなＩＰアドレス自動割当プロトコルを使用しがたいという問題があるため、各々の端末が自らＩＰアドレスを割り当て、重複を検出しなければならない。
【０００３】
従来の技術動作は、図１の（ａ）及び（ｂ）に示されているが、図１の（ａ）は、モバイルアドホックネットワークの構成及びＩＰアドレスの検出方法を示す例示図であり、図１の（ｂ）は、従来の端末のＩＰ割当及び重複検出順序を示す例示図である。
【０００４】
端末Ｂ、端末Ｃ、端末ＤからなるＭＡＮＥＴに接続するために、端末Ａは、自分が使用しようとするＩＰアドレスを選定した後、図1の（ｂ）に示すように、重複検出要求メッセージをブロードキャスト方法で転送するようになる。また、端末Ｂ、端末Ｃ、端末Ｄは、自分のＩＰアドレスと衝突があるかを検査し、もし衝突がなければ、何らのメッセージも転送せず、重複があれば、重複検出メッセージを、ＩＰアドレス重複検出を要求した端末Ａに転送するようになる。この際、前記端末Ａは、重複検出要求メッセージを転送した後、一定の時間何らの重複メッセージを受信しないと、重複がないと判断し、既存に存在したＭＡＮＥＴに接続するようになる。
【０００５】
インフラストラクチャを使用せずに構成されるＭＡＮＥＴは、未だ商用化されていないので、特別に標準として定められたＩＰアドレス自動割当機能がない。従って、簡単に初期に周辺の端末に自分のＩＰアドレスを転送し、周辺端末の応答によってＩＰアドレスの重複を検出する。しかし、このような方式は、初めて割り当てられたＩＰアドレスが重複する場合、さらにメッセージをやり取りしなければならないので、網の負荷を増加させる。また、全ての端末は、移動性があるので、網と網を移動し、網も網間の併合や分離が生じるようになるが、前記のような方法では、網の併合や分離による重複検出が難しい。そして、無線パケットは、有線よりもパケット損失が発生しやすいが、一旦重複検出パケットを失ってＩＰアドレスが割り当てられる場合、以後にこれに対する検出が難しい。もし検出されても、重複に関連したＩＰアドレスがルーティング構成情報に影響を与えるようになるので、誤ったルーティングテーブルが形成され、既存の連結が断絶されることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、前記問題点に鑑みなされたものであり、ＭＡＮＥＴ環境でＩＰアドレスの重複を検出するための多数のパケットフォーマットとテーブルを定義し、これによる端末間の通信メカニズムを提供することにより、効率的なＩＰアドレス割当及びＩＰアドレス重複の検出方法を提供することを目的とする。  
【課題を解決するための手段】
【０００７】
前記目的を達成するために、本発明によるモバイルアドホックネットワーク環境で重複したＩＰアドレスを検出するためのネットワーク装置は、各々の端末に関する装置情報及び該装置情報に対応するＩＰアドレスを保存するデータベース部と、前記装置情報及び前記ＩＰアドレスを用いて前記モバイルアドホックネットワークを区別する識別子を生成し、ＩＰアドレスの重複を検出するための所定のパケットを処理するＩＰアドレス重複検出部と、前記識別子を含むＨｅｌｌｏパケットまたは前記ＩＰアドレスの重複を検出するための所定のパケットを送受信するパケット送受信部とを備える。また、前記装置情報は、各々の端末に付与されたＭＡＣアドレスを含むことが好ましい。
【０００８】
さらに、本発明によるＭＡＮＥＴ環境で重複したＩＰアドレスを検出するための方法は、各々の端末に対する装置情報及び該装置情報に対応するＩＰアドレスを保存するステップと、前記装置情報及び前記ＩＰアドレスを用いて前記モバイルアドホックネットワークを区別する識別子を生成し、ＩＰアドレスの重複を検出するための所定のパケットを処理するステップと、前記識別子を含むＨｅｌｌｏパケットまたは前記ＩＰアドレスの重複を検出するための所定のパケットを送受信するステップとを含む。また、前記装置情報は、各々の端末に付与されたＭＡＣアドレスを含み、前記所定のパケットは、既形成の網の情報を要求する網情報要求パケットを含み、前記所定のパケットは、前記識別子が変更された場合、変更された識別子情報を提供するパケットを含むことが好ましい。
【発明の効果】
【０００９】
本発明によれば、端末の移動性による網の分離または結合のようなＭＡＮＥＴの多様な変化において、ＩＰアドレス割当と重複可否に対する検査を效率的に行い、パケット損失による網の分離が発生した場合、效率的に網を復旧できる効果を得ることができる。
【発明を実施するための最良の形態】
【００１０】
以下、添付の図面を参照して本発明の一実施形態によるＭＡＮＥＴ環境で重複したＩＰアドレスを検出するための装置及びＩＰアドレス重複の検出方法について具体的に説明する。
【００１１】
図２は、本発明によるＭＡＮＥＴ環境での端末装置を示す例示図である。前記端末装置２００は、各々の端末に対する装置情報及び該装置情報に対応するＩＰアドレスを保存するデータベース部２２０と、前記装置情報及び前記ＩＰアドレスを用いて前記モバイルアドホックネットワークを区別する識別子を生成し、ＩＰアドレスの重複を検出するための所定のパケットを処理するＩＰアドレス重複検出部２１０と、前記識別子を含むＨｅｌｌｏパケットまたは前記ＩＰアドレスの重複を検出するための所定のパケットを送受信するパケット送受信部２３０とを備える。この際、前記装置情報は、各々の端末に固有なＭＡＣアドレスを利用でき、前記データベース部２２０には、該当網に対するルーティング情報が含まれることができる。他の端末とのパケット送受信によるＩＰアドレス重複検出過程は後述する。
【００１２】
図３ａ〜図３ｆは、前記目的を達成するために、本発明によるパケットフォーマットを示す例示図であり、図３ａは、”Ｈｅｌｌｏ”パケットフォーマットを、図３ｂは、”ＤＡＤ_Ｒｅｑｕｅｓｔ”パケットフォーマットを、図３ｃは、”ＤＡＤ_Ｒｅｓｐｏｎｓｅ”パケットフォーマットを、図３ｄは、”ＤＡＤ_Ｃｏｍｐｌｅｔｅ”パケットフォーマットを、図３ｅは、”ＤＡＤ_Ｄｅｌｅｔｅ”パケットフォーマットを、図３ｆは、”Ｃ_ＩＤ_Ｃｈａｎｇｅ”パケットフォーマットを示す。
【００１３】
図３ａに示す”Ｈｅｌｌｏ”パケットフォーマットは、所定の周期毎にブロードキャスト方式で伝達されるが、”Ｈｅｌｌｏ”パケットを介して各々の端末が相互の存在を認識できるようになる。本発明による”Ｈｅｌｌｏ”パケットは、送信者のサブネットとネットワークアドレスなどのルーティング情報を含んでいる”Ｈｅｌｌｏ_ｉｎｆｏ”フィールドと、各々のＭＡＮＥＴを識別する現在の網識別子（Connection Identifier；以下、”Ｃ_ＩＤ”という）を示す”Ｃ_ＩＤ”フィールドと、以前の網識別子（Previous Identifier；以下、”Ｐｒｅ_Ｃ_ＩＤ”という）を示す”Ｐｒｅ_Ｃ_ＩＤ”フィールドとで構成される。
【００１４】
図３ｂに示す”ＤＡＤ_Ｒｅｑｕｅｓｔ”パケットフォーマットは、特定のＭＡＮＥＴに属する各々の端末に対する情報を含んでいる重複アドレス検出テーブル（Duplicate Address Detection Table；以下、”ＤＡＤテーブル”という）を要求するパケットフォーマットであって、送信者のＩＰアドレスを示す”Ｓ_ＩＰ_Ａｄｄｒｅｓｓ”フィールドと、送信者端末の固有番号を示す”Ｓ_Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”フィールドと、受信者のＩＰアドレスを示す”Ｄ_ＩＰ_Ａｄｄｒｅｓｓ”フィールドとで構成される。この際、前記端末の固有番号（unique number；以下、”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”という）は、端末のＭＡＣアドレスとランダム数を所定の方法で組み合わせて各々の端末を区別する識別番号であって、本発明では、特定のＭＡＮＥＴに属する最も大きいＩＰアドレスを有する端末の”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”値を前記”Ｃ_ＩＤ”値とする。一方、端末が最初に起動する場合には、まだ網が形成されない状態であるから、”Ｃ_ＩＤ”値は、ランダム数（ｒａｎｄｏｍ  ｎｕｍｂｅｒ）をいずれも”１”に設定し、これに４８ビットのＭＡＣアドレスを結合して、”ＦＦＦＦ／４８”の値を有するようになる。
【００１５】
図３ｃに示す”ＤＡＤ_Ｒｅｓｐｏｎｓｅ”パケットフォーマットは、前記ＤＡＤテーブルを提供するパケットフォーマットであって、送信者のＩＰアドレスを示す”Ｓ_ＩＰ_Ａｄｄｒｅｓｓ”フィールドと、送信者端末の固有番号を示す”Ｓ_Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”フィールドと、受信者のＩＰアドレスを示す”Ｄ_ＩＰ_Ａｄｄｒｅｓｓ”フィールドと、受信者端末の固有番号を示す”Ｄ_Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”フィールドと、送信者が有しているＤＡＤテーブル情報を示す”ＤＡＤ_Ｔａｂｌｅ”フィールドとで構成される。
【００１６】
図３ｄに示す”ＤＡＤ_Ｃｏｍｐｌｅｔｅ”パケットフォーマットは、端末間に相手方のＤＡＤテーブルを受信し、前記受信したＤＡＤテーブルと自分のＤＡＤテーブルとの間に重複した部分がなければ、自分のＤＡＤテーブルを更新した後、ＩＰアドレスの重複検出が終了したことを知らせるパケットであって、送信者端末の固有番号（ｕｎｉｑｕｅ  ｎｕｍｂｅｒ）を示す”Ｓ_Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”フィールドと、送信者のＩＰアドレスを示す”Ｓ_ＩＰ_Ａｄｄｒｅｓｓ”フィールドと、受信者のＩＰアドレスを示す”Ｄ_ＩＰ_Ａｄｄｒｅｓｓ”フィールドとで構成される。
【００１７】
図３ｅに示す”ＤＡＤ_Ｄｅｌｅｔｅ”パケットフォーマットは、相手方端末のＤＡＤテーブルと自分のＤＡＤテーブルとを比較し、重複がある場合に転送されるパケットであって、受信者端末の固有番号を示す”Ｄ_Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”フィールドと、受信者のＩＰアドレスを示す”Ｄ_ＩＰ_Ａｄｄｒｅｓｓ”フィールドとで構成される。
【００１８】
図３ｆに示す”Ｃ_ＩＤ_Ｃｈａｎｇｅ”パケットフォーマットは、所定の端末が属しているＭＡＮＥＴの”Ｃ_ＩＤ”情報が変わったことを示すパケットフォーマットであって、新しい”Ｃ_ＩＤ”を示す”Ｎｅｗ_Ｃ_ＩＤ”フィールドと、以前の”Ｃ_ＩＤ”を示す”Ｏｌｄ_Ｃ_ＩＤ”フィールドと、送信者のＩＰアドレスを示す”Ｓ_ＩＰ_Ａｄｄｒｅｓｓ”フィールドとで構成される。
一方、表１は、前記パケットの転送方法のタイプと、これに対応する設定値を示している。
【００１９】
【表１】
2005012761.tif 000003
【００２０】
図４ａ〜図４ｃは、前記目的を達成するために、本発明によるいろいろなテーブルフォーマットを示す例示図である。図４ａは、特定のＭＡＮＥＴに属している各々の端末の固有番号を示す”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”フィールドと、前記各々の端末のＩＰアドレスを示す”ＩＰ_Ａｄｄｒｅｓｓ”フィールドとで構成されたＤＡＤテーブルである。図４ｂは、端末が前記”ＤＡＤ_Ｒｅｑｕｅｓｔ”パケットを受信する場合、送信者が属しているＭＡＮＥＴを識別する”Ｃ_ＩＤ”フィールドと、送信者のＩＰアドレスを示す”ＩＰ_Ａｄｄｒｅｓｓ”フィールドと、前記”Ｃ_ＩＤ”及び”ＩＰ_Ａｄｄｒｅｓｓ”情報を有する送信者からＤＡＤ_Ｒｅｑｕｅｓｔパケットを受信した回数を示す”カウント”フィールドとで構成されたＤＡＤ_Ｒｅｑｕｅｓｔテーブルである。図４ｃは、端末に付与されたＩＰアドレスの履歴を格納している既使用のＩＰアドレステーブルである。前記既使用のＩＰアドレステーブルは、端末にＩＰアドレスを再び割り付けられる場合、優先的に参照される。したがって、暫くＭＡＮＥＴを離脱したり、リセットによる端末のＩＰアドレス再割当においてＩＰアドレスが変わる確率を低くすることにより、全体ＭＡＮＥＴの混乱を少なくする。
【００２１】
図５は、２端末間に最初にＭＡＮＥＴを形成する過程を示す例示図である。端末Ａ５１０は、”１６９.２５４.０.１２６”をＩＰアドレスとして有し、ランダム数”１Ｆ４Ａ”と端末Ａ５１０に対する４８ビットのＭＡＣアドレスとで構成される”１Ｆ４Ａ／４８”を”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”として有し、また、端末Ｂ５２０は、”１６９.２５４.０.１１６”をＩＰアドレスとして有し、ランダム数”１Ｆ３Ａ”と端末Ｂ５２０に対する４８ビットのＭＡＣアドレスとで構成される”１Ｆ３Ａ／４８”を”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”として有すると仮定する。端末Ａ５１０と端末Ｂ５２０は、各々網を構成しない状態であるから、先ず、図３ａに示すＨｅｌｌｏパケットフォーマットの”Ｃ_ＩＤ”フィールドは、”ＦＦＦＦ／４８”に設定し、”Ｐｒｅ_Ｃ_ＩＤ”フィールドは、いずれも”０”に設定し、”Ｈｅｌｌｏ”フィールドは、前記各々の端末が有しているルーティング情報を含む内容として設定される。
【００２２】
前記端末Ａ５１０と端末Ｂ５２０との間にＭＡＮＥＴを形成する過程は、互いにＨｅｌｌｏパケットをやり取りしながら相互の存在を認識し（５３０）、ＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを用いて相手方のＤＡＤテーブルを受信し（５４０）、前記受信したＤＡＤテーブルと自分のＤＡＤテーブルとを比較し、重複アドレスが検出されないと、ＤＡＤ_Ｃｏｍｐｌｅｔｅパケットを送受信することにより（５５０）、共通のＭＡＮＥＴを形成するようになる。
【００２３】
一方、図６は、何らの網にも接続されずに初めて網を構成する過程をより詳細に示す一実施形態の処理フローチャートである。先ず、端末の電源がオンになると（Ｓ６００）、自分のＭＡＣアドレスとランダム数の組合で発生する”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”及び自分のＩＰアドレスを設定する（Ｓ６０２）。また、”Ｃ_ＩＤ”及び”Ｐｒｅ_Ｃ_ＩＤ”値を設定し（Ｓ６０４）、前記設定された”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”とＩＰアドレスとで構成される初期ＤＡＤテーブルを形成するようになる（Ｓ６０６）。この際、前記”Ｃ_ＩＤ”値は、”ＦＦＦＦ／４８”に設定され、”Ｐｒｅ_Ｃ_ＩＤ”値は、いずれも”０”に設定される。前記端末は、自分の存在を知らせるために、Ｈｅｌｌｏパケットをブロードキャスト方法により送信したり（Ｓ６０８）、または周囲の他の端末から所定のパケットを受信するようになる（Ｓ６１０）。
【００２４】
それから、前記端末は、パケットの種類を検査する。もし受信したパケットの”Ｃ_ＩＤ”値が”ＦＦＦＦ／４８”である場合には、前記パケットを送信した端末がまだ網を構成しないことを意味するが、前記受信したパケットから”Ｃ_ＩＤ”及びＩＰアドレスを抽出して、ＤＡＤ_Ｒｅｑｕｅｓｔテーブルに格納し（Ｓ６１４）、所定の時間前記”Ｃ_ＩＤ”情報及びＩＰアドレスを含んでいるパケットが受信されれば、前記パケットを送信した送信端末に前記図３ｃに示されたＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを転送する（Ｓ６１６）。前記ＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを受信すれば、受信した端末は、前記ＤＡＤ_Ｒｅｓｐｏｎｓｅパケット内の送信者のＤＡＤテーブル情報と自分のＤＡＤテーブルとを比較し（Ｓ６２８）、重複したＩＰアドレスがあるか否かを検査し（Ｓ６３０）、重複したＩＰアドレスが存在しなければ、自分のＤＡＤテーブルに前記送信者のＤＡＤテーブル情報を追加することにより、自分のＤＡＤテーブルを再構成し、再構成されたＤＡＤテーブルの最も大きいＩＰアドレスを有する端末の”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”フィールド値を”Ｃ_ＩＤ”に設定し（Ｓ６３２）、以後のＨｅｌｌｏパケットは、新しい”Ｃ_ＩＤ”値として”Ｃ_ＩＤ”フィールド値が設定され、”Ｐｒｅ_Ｃ_ＩＤ”フィールドは、以前の”Ｃ_ＩＤ”値として設定され転送される。前記ステップＳ６３２を完了すれば、図３ｄに示された”ＤＡＤ_Ｃｏｍｐｌｅｔｅ”パケットを表１に示した”１-ｈｏｐブロードキャスト”タイプとして転送するようになる（Ｓ６３４）。
【００２５】
もし前記ステップＳ６３０で重複したＩＰアドレスが存在すれば、自分のＤＡＤテーブルにない他のＩＰアドレスをさらに選定し（Ｓ６３８）、ＤＡＤテーブルを構成するようになる（Ｓ６０６）。
【００２６】
一方、前記ステップＳ６１０で受信したパケットの”Ｃ_ＩＤ”値が”ＦＦＦＦ／４８”でないＨｅｌｌｏパケットなら、これは、既にＭＡＮＥＴが形成された端末から受信されたことを意味するが、この場合、前記ＨｅｌｌｏパケットからＩＰアドレスを抽出し格納し（Ｓ６２０）、相手方のＤＡＤテーブル情報を要求するＤＡＤ_Ｒｅｑｕｅｓｔパケットを転送し（Ｓ６２４）、もし同じＣ_ＩＤを有する他のＩＰアドレスが受信されれば、任意にＩＰアドレスを選択し（Ｓ６２２）、ＤＡＤ_Ｒｅｑｕｅｓｔパケットを転送する（Ｓ６２４）。
【００２７】
前記図５及び図６のように、何らの網にも接続されない端末が既存に存在するＭＡＮＥＴに接続するためのステップを初期モードとすれば、既存の網に接続された状態で動作するステップを正常モードと言えるが、図７乃至図１２では、前記正常モードで動作する端末が前記表１のＩＰアドレスの重複を検出するための多様なタイプのパケット受信による動作過程を示している。
【００２８】
図７は、前記正常モードで動作する端末がＨｅｌｌｏパケット受信による動作過程を示す一実施形態の処理フローチャートである。前記端末は、Ｈｅｌｌｏパケットを受信する（Ｓ７０５）。前記端末は、受信したＨｅｌｌｏパケットのＣ_ＩＤ”フィールド値が”ＦＦＦＦ／４８”に設定されたか否かを判断する（Ｓ７１０）。もし受信したＨｅｌｌｏパケットの”Ｃ_ＩＤ”フィールド値が”ＦＦＦＦ／４８”に設定されている場合には、受信したＨｅｌｌｏパケットを廃棄する（Ｓ７１５）。”Ｃ_ＩＤ”フィールド値が”ＦＦＦＦ／４８”に設定されていないが、自分の”Ｃ_ＩＤ”値とは異なる場合には、前記受信されたＨｅｌｌｏパケットから送信者のＩＰアドレス情報を抽出し、図４ｂに示すＤＡＤ_Ｒｅｑｕｅｓｔテーブルに格納する（Ｓ７１０、Ｓ７２０、Ｓ７２５）。一方、ＤＡＤ_Ｒｅｑｕｅｓｔテーブルには、”カウント”フィールドを設定して、所定の時間同じＨｅｌｌｏパケットが既設定の”カウント”フィールド値以上受信されれば、前記Ｈｅｌｌｏパケットを送信した端末のＩＰアドレスにＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを転送する（Ｓ７３０、Ｓ７３５）。この際、所定の時間同じＨｅｌｌｏパケットがＮ回以上受信されないか、ＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを転送した後には、該当”Ｃ_ＩＤ”及び”ＩＰ_Ａｄｄｒｅｓｓ”に対応する情報をＤＡＤ_Ｒｅｑｕｅｓｔテーブルから削除する（Ｓ７４０）。
【００２９】
図８は、前記正常モードで動作する端末のＤＡＤ_Ｒｅｑｕｅｓｔパケット受信による動作過程を示す一実施形態の処理フローチャートである。前記端末は、ＤＡＤ_Ｒｅｑｕｅｓｔパケットを受信し（Ｓ８０５）、受信したＤＡＤ_Ｒｅｑｕｅｓｔパケットが自分に来たパケットであるかを検査し（Ｓ８１０）、もし自分に来たパケットなら、ユニキャスト方法で受信されたか、又は１-ｈｏｐブロードキャスト方法で受信されたかを検査する（Ｓ８１５）。もしユニキャスト方法で受信されたとすれば、ＤＡＤ_Ｒｅｓｐｏｎｓｅパケットをユニキャスト方法で転送し（Ｓ８２０）、１-ｈｏｐブロードキャスト方法で受信されたとすれば、ＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを１-ｈｏｐブロードキャスト方法で転送する（Ｓ８２５）。一方、前記ステップＳ８１０ で自分に来たパケットでなければ、受信したパケットを廃棄する（Ｓ８３０）。
【００３０】
図９は、前記正常モードで動作する端末がＤＡＤ_Ｒｅｓｐｏｎｓｅパケット受信による動作過程を示す一実施形態の処理フローチャートである。前記端末は、ＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを受信し（Ｓ９０５）、受信したＤＡＤ_Ｒｅｓｐｏｎｓｅパケットが自分と同じ網から送ったものであるかを確認する（Ｓ９１０）。同じ網で送ったものなら自分のＤＡＤ_Ｒｅｑｕｅｓｔテーブルを更新する（Ｓ９１０、Ｓ９１５）。これは、同じ目的のＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを2回送らないためである。もし自分が属した網と異なる網から来たパケットである場合には、自分に送られたものでなければ、前記受信したパケットを廃棄し（Ｓ９１０、Ｓ９２０、Ｓ９２５）、自分に送られたものなら、送信端末に１-ｈｏｐ  ＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを送信した後、自分と同じＣ_ＩＤを有する他の端末に前記受信したＤＡＤ_Ｒｅｓｐｏｎｓｅパケットをブロードキャストし、ＩＰアドレスが重複するか否かを検査する（Ｓ９１０、Ｓ９２０、Ｓ９３０、Ｓ９３５）。この際、重複する場合、ＤＡＤテーブルにないＩＰアドレスを再選定するＩＰアドレス再割当過程を行い（Ｓ９４５）、１-ｈｏｐ  ＤＡＤ_Ｃｏｍｐｌｅｔｅパケットを転送する（Ｓ９５０）。もし重複しない場合、ＤＡＤテーブルで最も大きいＩＰアドレスを有する端末の”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”値を”Ｃ_ＩＤ”に更新し、ＤＡＤテーブルを再構成する（Ｓ９４０）。この際、Ｈｅｌｌｏパケットの”Ｐｒｅ_Ｃ_ＩＤ”には、以前に使用した”Ｃ_ＩＤ”を入れ、”Ｃ_ＩＤ”には、新しく選ばれた”Ｃ_ＩＤ”の値を入れる。以前の”Ｃ_ＩＤ”を共に転送することにより、パケットの損失により”Ｃ_ＩＤ”が変わらなくても、後にＨｅｌｌｏパケットの”Ｐｒｅ_Ｃ_ＩＤ”の値を見て”Ｃ_ＩＤ”を修正できるので、端末が既存の網から分離されることを防止できる。
【００３１】
図１０は、前記正常モードで動作する端末がＤＡＤ_Ｃｏｍｌｅｔｅパケット受信による動作過程を示す一実施形態の処理フローチャートである。端末がＤＡＤ_Ｃｏｍｐｌｅｔｅパケットを受信すれば（Ｓ１００５）、１-ｈｏｐ  ＤＡＤ_Ｃｏｍｐｌｅｔｅパケットであるか否かを検査する（Ｓ１０１０）。もし１-ｈｏｐ  ＤＡＤ_Ｃｏｍｐｌｅｔｅパケットなら、自分に来たパケットであるか否かを検査し（Ｓ１０３０）、 自分に来たパケットなら、自分のＤＡＤテーブルと比較し（Ｓ１０４０）、重複したＩＰアドレスがあれば、前記受信したパケットを廃棄し（Ｓ１０５０）、ＤＡＤ_Ｄｅｌｅｔｅパケットを転送する（Ｓ１０５５）。もし重複したＩＰアドレスがなければ、ＤＡＤ_Ｃｏｍｐｌｅｔｅパケットを転送する（Ｓ１０４５）。一方、前記ステップＳ１０３０で前記受信した１ＤＡＤ_Ｃｏｍｐｌｅｔｅパケットが自分に来たものでなければ、前記パケットを廃棄する（Ｓ１０３５）。前記ステップＳ１０１０で受信したパケットが１-ｈｏｐ  ＤＡＤ_Ｃｏｍｐｌｅｔｅパケットでなければ、自分のＤＡＤテーブルと比較し（Ｓ１０１５）、重複したＩＰアドレスがあれば、ＩＰアドレスを再割当し（Ｓ１０２５）、それともＤＡＤテーブルを更新する（Ｓ１０２０）。
【００３２】
図１１は、前記正常モードで動作する端末がＤＡＤ_Ｄｅｌｅｔｅパケット受信による動作過程を示す一実施形態の処理フローチャートである。端末がＤＡＤ_Ｄｅｌｅｔｅパケットを受信すれば（Ｓ１１０５）、現在使用しているＩＰアドレスが重複したという意味であるから、ＤＡＤテーブルをベースにして自分のＩＰアドレスを再び割り当てる（Ｓ１１１０）。その後、前記ＤＡＤ_Ｄｅｌｅｔｅパケットを送った端末が存在すれば、その端末にさらにＤＡＤ_Ｃｏｍｐｌｅｔｅパケットを転送し（Ｓ１１１５、Ｓ１１２５）、存在しなければ、他の端末にさらにＤＡＤ_Ｃｏｍｐｌｅｔｅパケットを転送する（Ｓ１１１５、Ｓ１１２０）。
【００３３】
図１２は、前記正常モードで動作する端末がＣ_ＩＤ_Ｃｈａｎｇｅパケット受信による動作過程を示す一実施形態の処理フローチャートである。端末がＣ_ＩＤ_Ｃｈａｎｇｅパケットを受信すれば（Ｓ１２０５）、自分の”Ｃ_ＩＤ”を変更する（Ｓ１２１０）。この際、以前の”Ｃ_ＩＤ”値は、”Ｐｒｅ_Ｃ_ＩＤ”に変更される。
【００３４】
図１３は、前記正常モードで端末の周期的なＤＡＤ_Ｒｅｑｅｕｓｔテーブル及びＤＡＤテーブル管理方法を示す一実施形態の処理フローチャートである。各端末は、ＤＡＤテーブルを検査し（Ｓ１３５０）、自分のルーティング情報と比較して、変更された事項によってＤＡＤテーブルを再構成する（Ｓ１３５５）。その後、”Ｃ_ＩＤ’が変更されたか否かを検査し（Ｓ１３６０）、もし変更されたとすれば、ＤＡＤテーブルで最も大きいＩＰアドレスを有する端末の”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”を”Ｃ_ＩＤ”に再選定し（Ｓ１３６５）、前記”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”に該当する端末がＣ_ＩＤ_Ｃｈａｎｇｅパケットを転送した後（Ｓ１３７０）、所定の時間が過ぎれば（Ｓ１３７５）、さらに前記”Ｓ１３５０”過程を繰り返す。この際、前記ステップＳ１３６０で”Ｃ_ＩＤ”値が変更されていないとすれば、所定の時間が過ぎた後（Ｓ１３７５）、前記”Ｓ１３５０”過程を繰り返す。一方、前記ステップＳ１３５５のようなＤＡＤテーブル再構成でパケットの損失等によって端末のＩＰアドレスはあるが、”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”値がない場合は、該当ＩＰアドレスにＤＡＤ_Ｒｅｑｕｅｓｔパケットを転送する。もし周辺の端末が1つもない場合は、自分のモードを初期状態にしてＣ_ＩＤをＦＦＦＦ／４８に設定する。他の端末が新しく入れば、一旦図４ｃに示された既使用のＩＰアドレステーブルを用いて以前に使用したＩＰアドレスを優先的に使用する。一方、各端末は、ＤＡＤ_Ｒｅｑｕｅｓｔテーブルも検査するが（Ｓ１３１０）、この際、ＤＡＤ_Ｒｅｑｕｅｓｔテーブルに転送すべき値があるか否かを検査し（Ｓ１３１５）、もし転送すべき値があれば、ＤＡＤ_ＲｅｑｕｅｓｔパケットまたはＤＡＤ_Ｒｅｓｐｏｎｓｅパケットを転送し（Ｓ１３２５）、所定の時間が過ぎた後（Ｓ１３３０）、前記ステップＳ１３１０を繰り返す。一方、前記ステップＳ１３１５で転送すべき値がなければ、所定の時間が過ぎた後（Ｓ１３３０）、前記”Ｓ１３１０”ステップを繰り返す。
【００３５】
一方、Ｃ_ＩＤの選定は、初期に最も大きいＩＰアドレスを有する端末の”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”値として定められ、網と網の接続の場合、さらに変わるようになる。既存に形成された網の”Ｃ_ＩＤ”値と同じ”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”を有する端末のＩＰアドレスより大きいＩＰアドレスの端末が初期モードで入る場合、前記既存に形成された網は、既存の”Ｃ_ＩＤ”を維持する。しかし、自分の”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”値を”Ｃ_ＩＤ”として使用する端末は、周期的にＤＡＤテーブルの更新中に自分のＩＰアドレスより大きい端末がある場合は、最も大きいＩＰアドレスを記憶し、所定のインデックス値を１とする。次の周期的な更新においてもそのＩＰアドレスがあるかを検査し、そのＩＰアドレスがあれば、前記インデックス値を１だけ増加させ、そのＩＰアドレスがなければ削除する。他のより大きいＩＰアドレスが入れば、以前のＩＰアドレスと前記インデックス値を削除した後、新しいＩＰアドレスを記憶し、前記インデックス値を１に設定する。前記インデックス値が所定の設定値Ｎ以上になれば、Ｃ_ＩＤ_Ｃｈａｎｇｅパケットを転送することにより、自分より大きいＩＰアドレスの”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”値に”Ｃ_ＩＤ”を変えるようになる。
【００３６】
図１４は、別個のＭＡＮＥＴが連動する場合の動作を示す例示図であり、端末Ａ、端末Ｂ、端末Ｃで構成され、”Ｃ_ＩＤ”は、最も大きいＩＰアドレスを有する端末ＣのＵｎｉｑｕｅ_Ｎｕｍｂｅｒに該当する”１Ｆ４Ａ／４８”を有する網１４００と、端末Ｄ、端末Ｅ、端末Ｆで構成され、”Ｃ_ＩＤ”は、最も大きいＩＰアドレスを有する端末ＦのＵｎｉｑｕｅ_Ｎｕｍｂｅｒに該当する”２Ｆ４Ａ／４８”を有する網１４１０が互いにＨｅｌｌｏパケットを交換することにより、相互間の存在を認識するようになる（１４２０）。その後、前記本発明で提示している重複検出のためのパケットを交換することにより、各々自分のＤＡＤテーブルを交換するようになる（１４３０）。この際、端末Ｂと端末ＥのＩＰアドレスが同一で、互いに衝突が発生するようになる。この場合、Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ値を相互比較し、大きい値を有する端末Ｅの”２Ｆ４Ａ／４８”値が”Ｃ_ＩＤ”値として再選定される。以後、端末Ａ、端末Ｂ、端末Ｃは、前記”２Ｆ４Ａ／４８”値を”Ｃ_ＩＤ”フィールド値とし、以前の”Ｃ_ＩＤ”である”１Ｆ４Ａ／４８”を”Ｐｒｅ_Ｃ_ＩＤ”フィールド値として、Ｈｅｌｌｏパケット１４４０を転送する。また、端末Ｄ、端末Ｅ、端末Ｆは、前記”２Ｆ４Ａ／４８”値を”Ｃ_ＩＤ”フィールド値とし、以前の”Ｃ_ＩＤ”である”２Ｆ４Ａ／４８”、は”Ｐｒｅ_Ｃ_ＩＤ”フィールド値として、Ｈｅｌｌｏパケット１４５０を転送する。
【００３７】
一方、Ｃ_ＩＤを有する端末がＤＡＤテーブルから削除された場合は、網が分離されることを意味するので、新しいＣ_ＩＤを選定する必要がある。まず、自分のＩＰアドレスが網の構成端末のうち最も大きいＩＰアドレスである場合は、自分の”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”値を”Ｃ_ＩＤ”値として使用してＣ_ＩＤ_Ｃｈａｎｇｅパケットを転送するようになる。自分のＩＰアドレスが最も大きいＩＰアドレスでない場合は、一旦Ｃ_ＩＤ_Ｃｈａｎｇｅパケットを受信したり、ＨｅｌｌｏパケットのＣ_ＩＤが変わることを確認し、自分のＣ_ＩＤを変えるようになる。
【００３８】
図１５は、一つのＭＡＮＥＴが移動性または他の状況により分離される場合の動作を示す例示図である。端末Ａ乃至端末Ｆは、最も大きいＩＰアドレスを有する端末Ｆの”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”値である”２Ｆ４Ａ／４８’を”Ｃ_ＩＤ”値として有し、一つのＭＡＮＥＴを形成している（１５００）。この際、端末Ｄの電源がオフになると、各端末のパケット転送距離制限によって、端末Ａ、端末Ｂ及び端末Ｃで構成される第１のＭＡＮＥＴ１５１０と、端末Ｅ及び端末Ｆで構成される第２のＭＡＮＥＴ１５２０とに分離される。この場合、”Ｃ_ＩＤ”値を再選定しなければならないので、前記第１のＭＡＮＥＴ１５１０では、ＩＰアドレスが最も大きい端末Ｂの”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”である”２Ｅ３Ａ／４８”値が新しい”Ｃ_ＩＤ”値となり、前記第２のＭＡＮＥＴ１５２０では、ＩＰアドレスが最も大きい端末Ｆの”Ｕｎｉｑｕｅ_Ｎｕｍｂｅｒ”である”２Ｆ４Ａ／４８”値が新しい”Ｃ_ＩＤ”値となる。
【００３９】
本発明は、本発明の技術的思想から逸脱することなく、他の種々の形態で実施することができる。前述の実施形態は、あくまでも、本発明の技術内容を明らかにするものであって、そのような具体例のみに限定して狭義に解釈されるべきものではなく、本発明の趣旨と特許請求の範囲内で、いろいろと変更して実施することができるものである。
【図面の簡単な説明】
【００４０】
【図１】（ａ）及び（ｂ）は、モバイルアドホックネットワークの構成及びＩＰアドレスの検出順序を示す例示図である。
【図２】本発明によるモバイルアドホックネットワーク環境での端末装置を示す例示図である。
【図３ａ】本発明によるパケットフォーマットを示す例示図である。
【図３ｂ】本発明によるパケットフォーマットを示す例示図である。
【図３ｃ】本発明によるパケットフォーマットを示す例示図である。
【図３ｄ】本発明によるパケットフォーマットを示す例示図である。
【図３ｅ】本発明によるパケットフォーマットを示す例示図である。
【図３ｆ】本発明によるパケットフォーマットを示す例示図である。
【図４ａ】本発明による多数のテーブルフォーマットを示す例示図である。
【図４ｂ】本発明による多数のテーブルフォーマットを示す例示図である。
【図４ｃ】本発明による多数のテーブルフォーマットを示す例示図である。
【図５】二つ端末間に最初にＭＡＮＥＴを形成する過程を示す例示図である。
【図６】何らの網にも接続されずに初めて網を構成する過程を示す一実施形態の処理フローチャートである。
【図７】正常モードで動作する端末のＨｅｌｌｏパケット受信による動作過程を示す一実施形態の処理フローチャートである。
【図８】正常モードで動作する端末のＤＡＤ_Ｒｅｑｕｅｓｔパケット受信による動作過程を示す一実施形態の処理フローチャートである。
【図９】正常モードで動作する端末のＤＡＤ_Ｒｅｓｐｏｎｓｅパケット受信による動作過程を示す一実施形態の処理フローチャートである。
【図１０】正常モードで動作する端末のＤＡＤ_Ｃｏｍｌｅｔｅパケット受信による動作過程を示す一実施形態の処理フローチャートである。
【図１１】正常モードで動作する端末のＤＡＤ_Ｄｅｌｅｔｅパケット受信による動作過程を示す一実施形態の処理フローチャートである。
【図１２】正常モードで動作する端末のＣ_ＩＤ_Ｃｈａｎｇｅパケット受信による動作過程を示す一実施形態の処理フローチャートである。
【図１３】正常モードで端末の周期的なＤＡＤ_Ｒｅｑｅｕｓｔテーブル及びＤＡＤテーブル管理方法を示す一実施形態の処理フローチャートである。
【図１４】別個のＭＡＮＥＴが連動する場合の動作を示す例示図である。
【図１５】単一のＭＡＮＥＴが分離される場合の動作を示す例示図である。
【符号の説明】
【００４１】
２００  モバイルアドホックネットワーク装置
２１０  ＩＰアドレス重複検出部
２２０  データベース部
２３０  パケット送受信部
５１０  端末Ａ
５２０  端末Ｂ
【図１】
2005012761.tif 000004
【図２】
2005012761.tif 000005
【図３ａ】
2005012761.tif 000006
【図３ｂ】
2005012761.tif 000007
【図３ｃ】
2005012761.tif 000008
【図３ｄ】
2005012761.tif 000009
【図３ｅ】
2005012761.tif 000010
【図３ｆ】
2005012761.tif 000011
【図４ａ】
2005012761.tif 000012
【図４ｂ】
2005012761.tif 000013
【図４ｃ】
2005012761.tif 000014
【図５】
2005012761.tif 000015
【図６】
2005012761.tif 000016
【図７】
2005012761.tif 000017
【図８】
2005012761.tif 000018
【図９】
2005012761.tif 000019
【図１０】
2005012761.tif 000020
【図１１】
2005012761.tif 000021
【図１２】
2005012761.tif 000022
【図１３】
2005012761.tif 000023
【図１４】
2005012761.tif 000024
【図１５】
2005012761.tif 000025