(57)【要約】【課題】アドホックネットワークにおける効率的で確実なアドレス割り当てを可能とした装置、方法を提供する。【解決手段】アドホックネットワークにおけるホストに対するアドレス設定処理において、フラッディングを行なうことなく唯一性を保証したアドレスの割り当てを可能とした。ホストは、自己の設定アドレスと異なる１以上のアドレスを他のホストに対する割り当て用アドレスとした貯蔵アドレスデータを記憶部に格納し、アドレス要求ホストからのアドレス要求に基づいて、貯蔵アドレスの一部を提供する。例えば、アドレス要求ホスト用のアドレス、およびアドレス要求ホストに設定する貯蔵アドレスを含む複数のアドレスを提供する。【選択図】　図１
2004146988.tif 000002
【特許請求の範囲】
【請求項１】
アドホックネットワークでのデータ通信を実行する通信処理装置であり、
自己の設定アドレスと異なる１以上のアドレスをアドホックネットワーク内の他のホストに対する割り当て用アドレスとした貯蔵アドレスデータを記憶部に格納し、
アドレス要求ホストからのアドレス要求パケットの受領に基づいて、前記貯蔵アドレスの一部を前記アドレス要求ホストに提供する処理を実行する構成を有することを特徴とする通信処理装置。
【請求項２】
前記通信処理装置は、
前記アドレス要求ホスト用のアドレス、および前記アドレス要求ホストに設定する貯蔵アドレスを含む複数のアドレスを、自己の保有する貯蔵アドレスから選択して前記アドレス要求ホストに提供する処理を実行する構成であることを特徴とする請求項１に記載の通信処理装置。
【請求項３】
前記通信処理装置は、
前記アドレス要求ホスト用のアドレスのみを自己の保有する貯蔵アドレスから選択して前記アドレス要求ホストに提供する処理を実行する構成であることを特徴とする請求項１に記載の通信処理装置。
【請求項４】
前記通信処理装置は、
アドレス利用期限としてのライフタイムを設定して、自己の保有する貯蔵アドレスから選択したアドレスを前記アドレス要求ホストに提供する処理を実行する構成であることを特徴とする請求項１に記載の通信処理装置。
【請求項５】
前記ライフタイムは、更新可能なデータであり、
前記通信処理装置は、前記アドレス要求ホストからの、前記ライフタイムの更新要求に基づいてライフタイム更新処理を実行する構成であることを特徴とする請求項４に記載の通信処理装置。
【請求項６】
前記通信処理装置は、
アドホックネットワーク内のアドレス解放要求ホストからのアドレス解放要求の受信を条件として、前記アドレス解放要求ホストの保有するアドレスを自己の貯蔵アドレスとして設定する処理を実行する構成を有することを特徴とする請求項１に記載の通信処理装置。
【請求項７】
前記通信処理装置は、
ライフタイムを設定してアドホックネットワーク内の他のホストに提供したアドレスについて、ライフタイムの経過を条件として、該提供アドレスを自己の貯蔵アドレスとして設定する処理を実行する構成を有することを特徴とする請求項１に記載の通信処理装置。
【請求項８】
アドホックネットワークでのデータ通信を実行する通信処理装置に対するアドレス設定方法であり、
アドレス要求ホストからのアドレス要求パケットを受信する受信処理ステップと、
アドホックネットワーク内の他のホストに対する割り当て用アドレスとして記憶部に格納した貯蔵アドレスデータから、前記アドレス要求ホストに提供する一部の貯蔵アドレスを選択する選択処理ステップと、
選択した前記一部の貯蔵アドレスを前記アドレス要求ホストに提供する処理を実行する送信処理ステップと、
を有することを特徴とするアドレス設定方法。
【請求項９】
前記選択処理ステップは、
前記アドレス要求ホスト用のアドレス、および前記アドレス要求ホストに設定する貯蔵アドレスを含む複数のアドレスを、自己の保有する貯蔵アドレスから選択するステップとして実行され、
前記送信処理ステップは、
前記アドレス要求ホストに前記アドレス要求ホスト用のアドレス、および前記アドレス要求ホストに設定する貯蔵アドレスを含む複数のアドレスを提供する処理として実行することを特徴とする請求項８に記載のアドレス設定方法。
【請求項１０】
前記選択処理ステップは、
前記アドレス要求ホスト用のアドレスのみを自己の保有する貯蔵アドレスから選択するステップであり、
前記送信処理ステップは、
前記アドレス要求ホストに前記アドレス要求ホスト用のアドレスのみを提供する処理として実行することを特徴とする請求項８に記載のアドレス設定方法。
【請求項１１】
前記アドレス設定方法は、さらに、
アドレス利用期限としてのライフタイムを設定して、自己の保有する貯蔵アドレスから選択したアドレスを前記アドレス要求ホストに提供する処理を実行することを特徴とする請求項８に記載のアドレス設定方法。
【請求項１２】
前記ライフタイムは、更新可能なデータであり、
前記アドレス設定方法は、さらに、
前記アドレス要求ホストからの、前記ライフタイムの更新要求に基づいてライフタイム更新処理を実行するステップを含むことを特徴とする請求項１１に記載のアドレス設定方法。
【請求項１３】
前記アドレス設定方法は、さらに、
アドホックネットワーク内のアドレス解放要求ホストからのアドレス解放要求の受信を条件として、前記アドレス解放要求ホストの保有するアドレスを自己の貯蔵アドレスとして設定する処理を実行するステップを含むことを特徴とする請求項８に記載のアドレス設定方法。
【請求項１４】
前記アドレス設定方法は、さらに、
ライフタイムを設定してアドホックネットワーク内の他のホストに提供したアドレスについて、ライフタイムの経過を条件として、該提供アドレスを自己の貯蔵アドレスとして設定する処理を実行するステップを含むことを特徴とする請求項８に記載のアドレス設定方法。
【請求項１５】
アドホックネットワークにおける通信処理装置に対するアドレス設定処理を実行するアドレス設定方法であり、
アドレス割り当て要求を行なうアドレス要求ホストと、アドレス割り当て処理を行なうアドレス割り当てホストとを有し、
前記アドレス要求ホストは、アドレス要求パケットしてのディスカバーパケットを送信し、
前記アドレス割り当てホストは、前記ディスカバーパケットの受信に基づいて自己の保有する割り当て可能なアドレスデータとしての貯蔵アドレス情報を格納したオファーパケットを前記アドレス要求ホストに送信し、
前記アドレス要求ホストは、１以上の前記オファーパケットの受信に基づいて、アドレス割り当て処理の実行要求としてのリクエストパケットを前記アドレス割り当てホストに送信し、
前記アドレス割り当てホストは、前記リクエストパケットの受信に基づいて前記貯蔵アドレスを格納したアクノレッジパケットを前記アドレス要求ホストに送信し、
前記前記アドレス要求ホストは、前記アクノレッジパケットに格納されたアドレスを自己のアドレスとして設定する構成を有することを特徴とするアドレス設定方法。
【請求項１６】
アドホックネットワークでのデータ通信を実行する通信処理装置に対するアドレス設定処理を実行するコンピュータ・プログラムであって、
アドレス要求ホストからのアドレス要求パケットを受信する受信処理ステップと、
アドホックネットワーク内の他のホストに対する割り当て用アドレスとして記憶部に格納した貯蔵アドレスデータから、前記アドレス要求ホストに提供する一部の貯蔵アドレスを選択する選択処理ステップと、
選択した前記一部の貯蔵アドレスを前記アドレス要求ホストに提供する処理を実行する送信処理ステップと、
を有することを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信処理装置、およびアドレス設定方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、ユビキタスあるいはアドホックネットワーク環境における効率的なアドレス設定処理を実現する通信処理装置、およびアドレス設定方法、並びにコンピュータ・プログラムに関する。
【０００２】
【従来の技術】
インターネットの普及により我々は、情報共有、資源共有などのネットワーク化の恩恵を受けている。ネットワーク化の波はコンピュータの世界だけに留まらず、家庭内の家電機器相互間での通信処理、携帯電話のインターネット接続による通信、さらには、冷蔵庫、電子レンジ等に通信手段を設け、インターネットを介した通信を可能とした構成が提案され、実用化されつつある。
【０００３】
いつでも、どこでも、誰とでもそしてどんな物でも、ネットワークを通じてコミュニケーションを可能とする環境、いわゆるユビキタス環境を実現するには、現在の通信プロトコルとしてのＴＣＰ／ＩＰをはじめとした既存のインターネット技術だけでは十分ではなく、新しいネットワークの仕組みが必要となる。ＩＥＴＦ（Ｉｎｔｅｒｎｅｔ　Ｅｎｇｉｎｅｅｒｉｎｇ　Ｔａｓｋ　Ｆｏｒｃｅ）ではこのような新しいネットワークの１つとしてＭＡＮＥＴ（モバイルアドホックネットワーク）を既存のＩＰの枠組で実現しようと試みている。
【０００４】
ＭＡＮＥＴ（モバイルアドホックネットワーク）は、モバイル通信端末を適用したアドホックネットワークである。アドホックネットワークは、いわゆる基地局等の固定の通信中継処理装置を持たず、通信処理装置同士が動的に構成するネットワークであり、ＭＡＮＥＴ（モバイルアドホックネットワーク）は、モバイル通信端末により構成されるアドホックネットワークである。
【０００５】
例えばブルートゥース、無線ＬＡＮの技術を利用して、特定の制限された空間領域にある複数のモバイル通信端末にそれぞれアドレスを動的に割り当てることでＭＡＮＥＴ（モバイルアドホックネットワーク）が構成され、構成されたネットワーク内で割り当てられたアドレスに従ってモバイル通信端末間で通信が実行される。
【０００６】
ＩＰを利用した通信では、新規ホストがネットワークに接続する際、そのホストに対してネットワーク内で一意の識別子であるＩＰアドレスを割り当てる必要がある。特に問題となるのは、一時的にネットワークに接続したいホストの扱いである。一意のアドレスを一時的にネットワークに加わるホストの要求に応じて手動で設定することはネットワーク管理者にとって大変な負担である。また、人間を介した処理はトラブルの原因にもなり得る。また、アドレスを重複して割り当ててしまうとルーティングプロトコルやアドレス解決プロトコル（ＡＲＰ：Ａｄｄｒｅｓｓ　Ｒｅｓｏｌｕｔｉｏｎ　Ｐｒｏｔｏｃｏｌ）の誤動作を発生させることとなり、最悪の場合ネットワーク全体を麻痺させてしまう危険性もある。
【０００７】
ＩＰアドレスを動的に割り当てる方式としては、例えばＭＡＣアドレスからＩＰアドレスに対応させるＲＡＲＰ（Ｒｅｖｅｒｓｅ　Ａｄｄｒｅｓｓ　Ｒｅｓｏｌｕｔｉｏｎ　Ｐｒｏｔｏｃｏｌ）（参考文献：　Ｒ．　Ｆｉｎｌａｙｓｏｎ，　Ｔ．　Ｍａｎｎ，　Ｊ．　Ｍｏｇｕｌ，　ａｎｄ　Ｍ．　Ｔｈｅｉｍｅｒ．　Ａ　Ｒｅｖｅｒｓｅ　Ａｄｄｒｅｓｓ　Ｒｅｓｏｌｕｔｉｏｎ　Ｐｒｏｔｏｃｏｌ．　ＲＦＣ　９０３，Ｊｕｎｅ　１９８４．）、あるいは、ＢＯＯＴＰ（Ｂｏｏｔｓｔｒａｐ　Ｐｒｏｔｏｃｏｌ）（参考文献：　Ｂ．　Ｃｒｏｆｔ　ａｎｄ　Ｊ．　Ｇｉｌｍｏｒｅ．　Ｂｏｏｔｓｔｒａｐ　Ｐｒｏｔｏｃｏｌ　（ＢＯＯＴＰ）．　ＲＦＣ　９５１，　Ｓｅｐｔｅｍｂｅｒ　１９８５．）がある。ＢＯＯＴＰを拡張し、ネットマスク、ゲトウェイアドレス、ＤＮＳサーバアドレスなどの一連の情報を提供するＤＨＣＰ（Ｄｙｎａｍｉｃ　Ｈｏｓｔ　Ｃｏｎｆｉｇｕｒａｔｉｏｎ　Ｐｒｏｔｏｃｏｌ）（参考文献：Ｒ．　Ｄｒｏｍｓ．　Ｄｙｎａｍｉｃ　Ｈｏｓｔ　Ｃｏｎｆｉｇｕｒａｔｉｏｎ　Ｐｒｏｔｏｃｏｌ．　ＲＦＣ　２１３１，　Ｍａｒｃｈ　１９９７．）は現在の通信処理システムにおいて、動的なアドレス割当方式の事実上の標準となっており広く利用されている。
【０００８】
しかしこれらの動的アドレス設定技術はイーサネットのような有線通信を前提として設計されているのが現状である。従って、通信を実行するホスト（通信処理装置）の移動が想定されている上述したＭＡＮＥＴ（モバイルアドホックネットワーク）のような通信ネットワーク環境ではＤＨＣＰのようなアドレスの集中管理システムは利用できない。これは、アドレス設定処理を実行するＤＨＣＰサーバとアドレスの設定を要求する通信端末としてのホストとの接続性を保証することができないからである。従って、ＭＡＮＥＴ環境では、すべてのホストが同等に不安定であるため、特定のホストに依存したシステム設計をするべきではない。
【０００９】
ＩＥＴＦのワーキンググループ（Ｚｅｒｏｃｏｎｆ）では、サーバのないネットワークにおけるホスト設定の技術に関する議論が行なわれている。これはＭＡＮＥＴとは異なり、すべてのホストがリンク層のブロードキャスト、マルチキャストメッセージを受信可能であり、１つのルータに接続された形態のネットワークを想定したものである。ここではいわゆる重複アドレス検出（ＤＡＤ：Ｄｕｐｌｉｃａｔｅ　Ａｄｄｒｅｓｓ　Ｄｅｔｅｃｔｉｏｎ）を適用してホストのアドレス設定を行なう構成としている。しかし、ＭＡＮＥＴのようにすべてのホストがリンク層で接続されていることが保証されないネットワーク構成では、重複アドレス検出（ＤＡＤ）を利用したアドレス設定は利用できない。なぜなら、重複アドレス検出（ＤＡＤ）では、アドレスの使用可否を問い合わせるためのメッセージをリンク層においてブロードキャストし、その応答に基づいてアドレス設定を行なうからである。
【００１０】
Ｃ．Ｐｅｒｋｉｎｓは、上述のＩＥＴＦのワーキンググループ（Ｚｅｒｏｃｏｎｆ）の手法に類似する仕組みをＭＡＮＥＴに適応させるための構成を提案している（参考文献：Ｃ．Ｅ．　Ｐｅｒｋｉｎｓ　ｅｔ　ａｌ．　”ＩＰ　Ａｄｄｒｅｓｓ　Ａｕｔｏ−ｃｏｎｆｉｇｕｒａｔｉｏｎ　ｆｏｒ　Ａｄ　Ｈｏｃ　Ｎｅｔｗｏｒｋｓ．”　ＩＮＴＥＲＮＥＴ　ＤＲＡＦＴ，　Ｎｏｖｅｍｂｅｒ　２００１）。この構成は、新規にＭＡＮＥＴに参加するホストがランダムに利用候補のアドレスを決定し、そのアドレスの利用可否の問い合わせとしてのアドレス要求（ＡＲＥＱ：Ａｄｄｒｅｓｓ　Ｒｅｑｕｅｓｔ）をＭＡＮＥＴ全体にフラッディングするものである。フラッディングとは、ネットワークのすべての通信ノードにデータを伝送する技術であり、あるノードが新規パケットを受信すると近隣ノードにそのパケットをブロードキャストすることによりネットワーク内のノード全体にパケットを配信する技術である。
【００１１】
問い合わせパケットを受信したネットワーク内のノードにおいて、問い合わせに含まれるアドレスと同一のアドレスを使用している場合は、問い合わせを行なった新規参入ノードに対してアドレス返答（ＡＲＥＰ：Ａｄｄｒｅｓｓ　Ｒｅｐｌｙ）を送信してアドレスが使用中であることを通知する。新規参入ノードがＡＲＥＱを送信後、一定期間ＡＲＥＰを受信しない場合には、利用予定のアドレスを使用しているノードがネットワークには存在しないと判断し、そのアドレスを自己のアドレスとして設定する。
【００１２】
しかしながら、このフラッディングを利用したアドレス利用可否問い合わせにおいては、問い合わせパケット（ＡＲＥＱ）が到達可能なノードとのアドレス重複を避けることができるのみであり、例えば一時的にネットワークを離れていたノードが問い合わせアドレスと同一アドレスを利用していた場合には、アドホックネットワーク内で同一のアドレスが複数のノードに設定されてしまうといったことが発生し得る。このような事態を避けるために、重複アドレス検出（ＤＡＤ）を利用することが推奨されているが、その具体的手法については明らかにされておらず、また、定期的なＤＡＤのフラッディング処理は、処理のオーバーヘッド、アドレス重複によるルーティングプロトコルの誤動作等を考慮すると、実際のＭＡＮＥＴ環境での利用は困難である。
【００１３】
また、ＭＡＮＥＴにおけるアドレス設定技術として以下のような処理方式も提案されている。（Ｓ．　Ｎｅｓａｒｇｉ　ａｎｄ　Ｒ．　Ｐｒａｋａｓｈ．　ＭＡＮＥＴｃｏｎｆ：　Ｃｏｎｆｉｇｕｒａｔｉｏｎ　ｏｆ　Ｈｏｓｔｓ　ｉｎ　ａ　Ｍｏｂｉｌｅ　Ａｄ　Ｈｏｃ　Ｎｅｔｗｏｒｋ．　Ｉｎ　Ｐｒｏｃｅｅｄｉｎｇｓ　ｏｆ　ＩＥＥＥ　ＩＮＦＯＣＯＭ’０２，　Ｊｕｎｅ２００２．）。これは、ＭＡＮＥＴに参加する新規ホストが、近隣クエリをブロードキャストで送信し、既にＭＡＮＥＴに参加しているホストから近隣応答を受け取り、新規ホストが近隣応答を返信したホストの中から一つを選択し、選択されたホストが現在利用されていないアドレスの候補を挙げて、一旦、ＭＡＮＥＴ全体にフラッディングする。この処理により、このアドレスはＭＡＮＥＴ内で割当未決定の状態になる。ＭＡＮＥＴ内のホストは現在利用されているすべてのＩＰアドレスを知っているため、他のホストからの否定確認がなければ、候補アドレスを新規ホストに割り当てる。さらに決定したという情報をフラッディングすることで、このアドレスは割当決定の状態になる。
【００１４】
上述の処理では、アドレスを１つ割当てるのにフラッディングを２回行なうことが必要となる。フラッディングはＭＡＮＥＴ内のすべてのホストにメッセージを送信するため、ネットワーク規模が大きくなればなるほど負荷が高くなる。また、アドレスの再利用のためのクリーンアップメッセージにもフラッディングを利用しているが、ＭＡＮＥＴ環境ですべてのホストにメッセージが届く保証はないため、エントリ削除機能が動作しない可能性がある。
【００１５】
さらに、別の方式としてハードウェアアドレスを基にアドレス割当を行なう方式が提案されている。これは、次世代インターネットプロトコルであるＩＰｖ６におけるＩＰｖ６　Ｓｔａｔｅｌｅｓｓ　Ａｕｔｏｃｏｎｆｉｇｕｒａｔｉｏｎ（Ｓ．　Ｔｈｏｍｓｏｎ　ａｎｄ　Ｔ．　Ｎａｒｔｅｎ．　ＩＰｖ６　Ｓｔａｔｅｌｅｓｓ　Ａｄｄｒｅｓｓ　Ａｕｔｏｃｏｎｆｉｇｕｒａｔｉｏｎ．　ＲＦＣ　２４６２，　Ｄｅｃｅｍｂｅｒ　１９９８．）と呼ばれる処理であり、ＤＡＤを組み合わせることでアドレスの唯一性を保証する。ＭＡＮＥＴでのＤＡＤの利用は前述したようにすべてのホストへの到達性を保証できないため正しく動作しない。またＥｔｈｅｒｎｅｔのようにＭＡＣアドレスが唯一であることを前提とした手法も考えられるが、ハードウェアの情報に依存したＩＰ層でのアドレス割当は階層化の利点を損なわせると同時に、将来開発されるハードウェアのアドレスの唯一性まで保証できるものではない。
【００１６】
【発明が解決しようとする課題】
本発明は、上述した問題点に鑑みてなされたものであり、動的にノードとしてのホストの入れ替わりが想定されるＭＡＮＥＴ等のアドホックネットワーク環境において、アドレス唯一性を保証した確実で効率的なアドレス設定処理を可能とする通信処理装置、およびアドレス設定方法、並びにコンピュータ・プログラムを提供することを目的とする。
【００１７】
より具体的には、本発明は、アドレスを分散管理して割当処理を実行することにより、重複アドレス検出（ＤＡＤ）等の重複確認処理を行なうことなく、ネットワーク内でのアドレスのユニーク性を保証することを可能とした通信処理装置、およびアドレス設定方法、並びにコンピュータ・プログラムを提供するものである。
【００１８】
【課題を解決するための手段】
本発明の第１の側面は、
アドホックネットワークでのデータ通信を実行する通信処理装置であり、
自己の設定アドレスと異なる１以上のアドレスをアドホックネットワーク内の他のホストに対する割り当て用アドレスとした貯蔵アドレスデータを記憶部に格納し、
アドレス要求ホストからのアドレス要求パケットの受領に基づいて、前記貯蔵アドレスの一部を前記アドレス要求ホストに提供する処理を実行する構成を有することを特徴とする通信処理装置にある。
【００１９】
さらに、本発明の通信処理装置の一実施態様において、前記通信処理装置は、前記アドレス要求ホスト用のアドレス、および前記アドレス要求ホストに設定する貯蔵アドレスを含む複数のアドレスを、自己の保有する貯蔵アドレスから選択して前記アドレス要求ホストに提供する処理を実行する構成であることを特徴とする。
【００２０】
さらに、本発明の通信処理装置の一実施態様において、前記通信処理装置は、前記アドレス要求ホスト用のアドレスのみを自己の保有する貯蔵アドレスから選択して前記アドレス要求ホストに提供する処理を実行する構成であることを特徴とする。
【００２１】
さらに、本発明の通信処理装置の一実施態様において、前記通信処理装置は、アドレス利用期限としてのライフタイムを設定して、自己の保有する貯蔵アドレスから選択したアドレスを前記アドレス要求ホストに提供する処理を実行する構成であることを特徴とする。
【００２２】
さらに、本発明の通信処理装置の一実施態様において、前記ライフタイムは、更新可能なデータであり、前記通信処理装置は、前記アドレス要求ホストからの、前記ライフタイムの更新要求に基づいてライフタイム更新処理を実行する構成であることを特徴とする。
【００２３】
さらに、本発明の通信処理装置の一実施態様において、前記通信処理装置は、アドホックネットワーク内のアドレス解放要求ホストからのアドレス解放要求の受信を条件として、前記アドレス解放要求ホストの保有するアドレスを自己の貯蔵アドレスとして設定する処理を実行する構成を有することを特徴とする。
【００２４】
さらに、本発明の通信処理装置の一実施態様において、前記通信処理装置は、ライフタイムを設定してアドホックネットワーク内の他のホストに提供したアドレスについて、ライフタイムの経過を条件として、該提供アドレスを自己の貯蔵アドレスとして設定する処理を実行する構成を有することを特徴とする。
【００２５】
さらに、本発明の第２の側面は、
アドホックネットワークでのデータ通信を実行する通信処理装置に対するアドレス設定方法であり、
アドレス要求ホストからのアドレス要求パケットを受信する受信処理ステップと、
アドホックネットワーク内の他のホストに対する割り当て用アドレスとして記憶部に格納した貯蔵アドレスデータから、前記アドレス要求ホストに提供する一部の貯蔵アドレスを選択する選択処理ステップと、
選択した前記一部の貯蔵アドレスを前記アドレス要求ホストに提供する処理を実行する送信処理ステップと、
を有することを特徴とするアドレス設定方法にある。
【００２６】
さらに、本発明のアドレス設定方法の一実施態様において、前記選択処理ステップは、前記アドレス要求ホスト用のアドレス、および前記アドレス要求ホストに設定する貯蔵アドレスを含む複数のアドレスを、自己の保有する貯蔵アドレスから選択するステップとして実行され、前記送信処理ステップは、前記アドレス要求ホストに前記アドレス要求ホスト用のアドレス、および前記アドレス要求ホストに設定する貯蔵アドレスを含む複数のアドレスを提供する処理として実行することを特徴とする。
【００２７】
さらに、本発明のアドレス設定方法の一実施態様において、前記選択処理ステップは、前記アドレス要求ホスト用のアドレスのみを自己の保有する貯蔵アドレスから選択するステップであり、前記送信処理ステップは、前記アドレス要求ホストに前記アドレス要求ホスト用のアドレスのみを提供する処理として実行することを特徴とする。
【００２８】
さらに、本発明のアドレス設定方法の一実施態様において、前記アドレス設定方法は、さらに、アドレス利用期限としてのライフタイムを設定して、自己の保有する貯蔵アドレスから選択したアドレスを前記アドレス要求ホストに提供する処理を実行することを特徴とする。
【００２９】
さらに、本発明のアドレス設定方法の一実施態様において、前記ライフタイムは、更新可能なデータであり、前記アドレス設定方法は、さらに、前記アドレス要求ホストからの、前記ライフタイムの更新要求に基づいてライフタイム更新処理を実行するステップを含むことを特徴とする。
【００３０】
さらに、本発明のアドレス設定方法の一実施態様において、前記アドレス設定方法は、さらに、アドホックネットワーク内のアドレス解放要求ホストからのアドレス解放要求の受信を条件として、前記アドレス解放要求ホストの保有するアドレスを自己の貯蔵アドレスとして設定する処理を実行するステップを含むことを特徴とする。
【００３１】
さらに、本発明のアドレス設定方法の一実施態様において、前記アドレス設定方法は、さらに、ライフタイムを設定してアドホックネットワーク内の他のホストに提供したアドレスについて、ライフタイムの経過を条件として、該提供アドレスを自己の貯蔵アドレスとして設定する処理を実行するステップを含むことを特徴とする。
【００３２】
さらに、本発明の第３の側面は、
アドホックネットワークにおける通信処理装置に対するアドレス設定処理を実行するアドレス設定方法であり、
アドレス割り当て要求を行なうアドレス要求ホストと、アドレス割り当て処理を行なうアドレス割り当てホストとを有し、
前記アドレス要求ホストは、アドレス要求パケットしてのディスカバーパケットを送信し、
前記アドレス割り当てホストは、前記ディスカバーパケットの受信に基づいて自己の保有する割り当て可能なアドレスデータとしての貯蔵アドレス情報を格納したオファーパケットを前記アドレス要求ホストに送信し、
前記アドレス要求ホストは、１以上の前記オファーパケットの受信に基づいて、アドレス割り当て処理の実行要求としてのリクエストパケットを前記アドレス割り当てホストに送信し、
前記アドレス割り当てホストは、前記リクエストパケットの受信に基づいて前記貯蔵アドレスを格納したアクノレッジパケットを前記アドレス要求ホストに送信し、
前記前記アドレス要求ホストは、前記アクノレッジパケットに格納されたアドレスを自己のアドレスとして設定する構成を有することを特徴とするアドレス設定方法にある。
【００３３】
さらに、本発明の第４の側面は、
アドホックネットワークでのデータ通信を実行する通信処理装置に対するアドレス設定処理を実行するコンピュータ・プログラムであって、
アドレス要求ホストからのアドレス要求パケットを受信する受信処理ステップと、
アドホックネットワーク内の他のホストに対する割り当て用アドレスとして記憶部に格納した貯蔵アドレスデータから、前記アドレス要求ホストに提供する一部の貯蔵アドレスを選択する選択処理ステップと、
選択した前記一部の貯蔵アドレスを前記アドレス要求ホストに提供する処理を実行する送信処理ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００３４】
【作用】
本発明の構成によれば、従来方式の多くがアドレスの唯一性を確認するために必要とするフラッディングを行なうことなく、アドレスの割り当てた時点でアドレスの唯一性を保証できるため、ネットワーク内てＤＡＤ等のアドレスの重複確認処理を実行する必要がなく、効率的で確実なアドレス割り当てが可能となる。
【００３５】
さらに、本発明の構成によれば、ブロック分割によるアドレス割り当てを行なう際、割当先のホストに貯蔵アドレスを提供する形態としたので、アドレスの唯一性が保証されるばかりでなく、貯蔵アドレスが各ホストに分散格納され、新規ホストに対するアドレス割り当て処理を多数のホストが実行可能となり、特定のホストに負荷が集中することなくアドレス割り当て処理の負荷分散が可能となる。
【００３６】
さらに、本発明の構成によれば、割り当てアドレスに対するライフタイムを設定し、ライフタイム経過後にアドレスを解放し、再利用することを可能としたので、限られたアドレス空間を利用したアドレス設定を行なった場合においてもアドレスの枯渇という問題を発生させることがない。
【００３７】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、ＣＤやＦＤ、ＭＯなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００３８】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【００３９】
【発明の実施の形態】
以下、図面を参照して、本発明の通信処理装置、およびアドレス設定方法について詳細に説明する。なお、説明は以下の項目に従って行なう。
１．本発明のアドレス設定処理の概要
２．アドレス割り当て態様
３．メッセージフォーマット
４．初期ホストの設定
５．アドレス割り当ておよび解放処理
６．各ホストにおける処理
７．本発明のアドレス設定処理の検証
８．通信処理装置のハードウェア構成例
【００４０】
［１．本発明のアドレス設定処理の概要］
まず、本発明の構成におけるアドレス設定処理の特徴について、その概略を説明する。本発明の構成を適用したアドレス設定処理の特徴として、以下に説明する（１）〜（３）の特徴をあげることができる。なお、本発明のアドレス割り当てを実行する通信処理装置（ホスト＝Ｉｎｉｔｉａｔｏｒ）、およびアドレス割り当てを受ける通信処理装置（ホスト＝Ｒｅｑｕｅｓｔｏｒ）によって構成されるネットワークは、動的にノードとしてのホストの入れ替わりが想定されるＭＡＮＥＴ等のアドホックネットワーク環境である。
【００４１】
（１）分散型アドレス割当
本発明のアドレス設定処理を実行するＭＡＮＥＴ環境では、ホストはネットワーク内で利用できるアドレス空間を貯蔵アドレスとして記憶部に格納して保有する。貯蔵アドレスを持つホストは他のホストに対してアドレスを割り当てることが可能となる。アドレスを割り当てる際には、自己の貯蔵アドレスから選択した一部の貯蔵アドレスを提供（割り当て）する。この貯蔵アドレス割り当て処理により、アドホックネットワークでの分散したアドレス管理を実現する。本発明のアドレス設定処理では、ネットワーク内の利用アドレスを特定のサーバにおいて管理することをしないため、サーバを持たないＭＡＮＥＴ環境での利用が可能となる。
【００４２】
（２）制御パケットのフラッディング回避
ネットワークでの制御パケットの通信はすべて１ホップの通信として実行される。全ホストで共通した制御パケットを伝達する必要がないため、フラッディングは一切行なわない。その為、ネットワークの規模が大きくなっても効率的に動作する。またこのことによりホストの送受信パケット数が大きく減少するため消費電力も低下させることができる。
【００４３】
（３）アドレスの唯一性の保証
本発明のアドレス設定処理においては、サーバや特定のホストでのアドレス集中管理を行なわず、また、ＤＡＤのようなアドレス重複の検知処理も行なわずにアドレスの唯一性を保証する。また、ネットワーク内のアドレスの割り当てを階層的に行なう構成とすることで、アドレス割り当てにおいて重複した割り当てを行なうことを回避する。また、アドレスの唯一性を保証し、かつアドレスの再利用を可能とする構成についても提案する。
【００４４】
［２．アドレス割り当て態様］
次に、本発明のアドレス設定処理におけるアドレス割り当て態様について説明する。ＭＡＮＥＴ等のアドホックネットワークに属し、通信を実行する通信処理装置としてのホストは、自ホスト用として設定されたアドレスの他に貯蔵アドレスと呼ぶ複数のアドレスを記憶部に格納し所有することができる。貯蔵アドレスを持つホストは、例えばネットワークに新規に参入し、アドレスの要求を行なうアドレス要求ホストに対して貯蔵アドレスを割り当てることができる。
【００４５】
アドレス割り当て方式はブロック割り当て、動的割り当て、自動割り当ての３種類がある。割り当て手法の選択はアプリケーションやホストの役割などを考慮して割り当てホストもしくはアドレス要求ホストが選択する。以下、ブロック割り当て、動的割り当て、自動割り当てについて説明する。
【００４６】
（ａ）ブロック割り当て
ブロック割り当ては、他のホスト（アドレス要求ホスト）からアドレス要求を受信し、アドレス設定を実行するホストが、アドレス要求ホストに対してアドレスを割り当てる処理を行なうとともに、自己の保有する貯蔵アドレスも、アドレス要求ホストに対して提供し、割り当てる方式である。貯蔵アドレスを受け取ったホストは別のホストからのアドレス要求を受領した際に、その貯蔵アドレスをさらに割り当てることが可能となる。
【００４７】
図１を参照してアドレスのブロック割り当て処理について説明する。ホストＡ１０１は、ＭＡＮＥＴ（モバイルアドホックネットワーク）に属し、通信を実行する通信処理装置としてのホストであり、既に自己のアドレス［１］、貯蔵アドレス［２〜１６］を保有している。
【００４８】
図１は、貯蔵アドレスを持ったホストＡ１０１が、ＭＡＮＥＴに新規に参入したホストＢ１０２、ホストＣ１０３に対して順番にブロック割り当てを行なった際の貯蔵アドレスの空間の推移を示している。ブロック割り当てでは貯蔵アドレスの後半部を要求ホストにすべて割り当てる。後半部の先頭のアドレスはアドレス要求ホストのアドレスとして割り当てられる。
【００４９】
具体的には、まず、ホストＡ１０１が、ホストＢ１０２に対してアドレスを割り当てる際、ホストＡ１０１の有する貯蔵アドレス［２〜１６］の後半の貯蔵アドレス［９〜１６］をホストＢ１０２に対する割り当てアドレスとし、割り当てアドレス中の先頭アドレス［９］をホストＢ１０２の自己アドレスとして設定する。さらに、割り当てアドレス中のアドレス［１０〜１６］をホストＢ１０２の貯蔵アドレスとする。この処理の結果、ホストＡ１０１’の貯蔵アドレスは図に示すように［２〜８］に半減することになる。
【００５０】
次に、ホストＡ１０１’は、ホストＣ１０３に対してアドレスを割り当てる。ホストＡ１０１’は、この時点で保有する貯蔵アドレス［２〜８］の後半の貯蔵アドレス［５〜８］をホストＣ１０３に対する割り当てアドレスとし、割り当てアドレス中の先頭アドレス［５］をホストＣ１０３の自己アドレスとして設定する。さらに、割り当てアドレス中のアドレス［６〜８］をホストＣ１０３の貯蔵アドレスとする。この処理の結果、ホストＡ１０１”の貯蔵アドレスは図に示すように［２〜４］に半減することになる。
【００５１】
貯蔵アドレスを持つホストＢ１０２、ホストＣ１０３も、さらに、新たなホストからのアドレス要求があった場合には、自己の貯蔵アドレスを割り当てることができる。
【００５２】
（ｂ）動的割り当て
次にアドレスの動的割り当て処理について説明する。動的割り当ては、アドレス設定を実行するホストがリース期限付きのアドレスをアドレス要求ホストに提供し、リース期限内にアドレス更新を行なうことによってアドレスを利用し続けることを可能としたアドレス割り当て方式である。ＤＨＣＰのアドレス動的割り当ての手法と基本的に同一の機能を提供する。しかしＭＡＮＥＴ環境では、アドレス要求ホストとアドレス割り当てホストとの接続性が保証されていないため、アドレス割り当てホストとのみ一時的に通信できる状況や、お互いが常時接続可能な範囲にいるような状況でのみ利用することが好ましい。
【００５３】
動的割り当て処理において、アドレス割り当てホストは、前述のブロック割り当て処理において説明した貯蔵アドレスの先頭のアドレスから順次、アドレス要求ホストに対して割り当てる処理を実行する。なお、動的割り当てにおいて、割り当て中のアドレスは貯蔵アドレスとしては扱わない。
【００５４】
割り当てるアドレスにはリース期限が設定され、リース期限が切れたアドレスはホストでは利用できなくなり、割り当てホストは、そのアドレスを貯蔵アドレスとして他のホストに割り当てることが可能となる。
【００５５】
（ｃ）自動割り当て
次にアドレスの自動割り当て処理について説明する。自動割り当ては、アドレス設定を実行するホストがリース期限なしのアドレスをアドレス要求ホストに提供するものであり、アドレス更新を行なうことなくアドレスを利用し続けることを可能としたアドレス割り当て方式である。ＤＨＣＰのアドレス動的割り当ての手法と基本的に同一の機能を提供する。
【００５６】
自動割り当て処理において、アドレス割り当てホストは、前述のブロック割り当て処理において説明した貯蔵アドレスの最後尾のアドレスから順次、アドレス要求ホストに対して割り当てる処理を実行する。なお、自動割り当てにより割り当てられたアドレスは返還されないため、貯蔵アドレスが１つ減少することになる。
【００５７】
図２を参照してアドレスの動的割り当て処理および自動割り当て処理について説明する。図２は、貯蔵アドレスを持ったホストＡ２０１が、ＭＡＮＥＴに新規に参入したホストＢ２０２、ホストＣ２０３に対して順番に動的割り当て処理および自動割り当て処理を行なった例を示している。
【００５８】
まず、ホストＡ２０１が、ホストＢ２０２に対してアドレスの動的割り当て処理を実行する場合には、ホストＡ２０１の有する貯蔵アドレス［２〜８］の先頭アドレス［２］をホストＢ２０２の自己アドレスとしてリース期限を付けて設定する。ホストＢ２０２はホストＡ２０１に対して、リース期限内にアドレス更新を行なうことによってアドレスを利用し続けることができる。ホストＢ２０２がリース期限内に更新処理を実行しない場合は、アドレス［２］はホストＢ２０２では利用できなくなり、ホストＡ２０１は、そのアドレス［２］を再度、貯蔵アドレスに再設定して他のホストに割り当てることが可能となる。
【００５９】
次に、ホストＡ２０１が、ホストＣ２０３に対してアドレスの自動割り当て処理を実行する場合には、ホストＡ２０１の有する貯蔵アドレス［３〜８］の最後尾アドレス［８］をホストＣ２０３の自己アドレスとしてリース期限を付けずに提供する。ホストＣ２０３はホストＡ２０１に対してアドレス更新を行なうことなくアドレスを利用し続けることができる。自動割り当てにより割り当てられたアドレスは返還されないため、ホストＡ２０１の有する貯蔵アドレスが１つ減少することになる。
【００６０】
上述したように、本発明のアドレス設定処理構成には、ブロック割り当て、動的割り当て、自動割り当ての３態様があるが、ネットワークにおいて利用可能なアドレスの範囲は制限があり、ホストがネットワークから離脱した場合など、不要なアドレスを解放するこ処理を考慮することが必要となる。
【００６１】
本発明の構成では、アドレス解放手法として手動によるアドレス解放の仕組みを提供する。上述のブロック割り当てや自動割り当てによってアドレスの割り当てのなされたホストがネットワークを離れてしまう現象が続いた場合、ネットワーク内のアドレスが枯渇してしまうことが起こり得る。特に大量の貯蔵アドレスを持ったホストがネットワーク内からいなくなることは致命的となる。このような事態を防止するため、ネットワーク全体でアドレスの有効期限としの絶対期限を設け、アドレスの枯渇を回避する。この処理については後述する。
【００６２】
ネットワークを離脱するホストは近隣ホストに自分の貯蔵アドレスの数と、自分の貯蔵アドレスの連続したアドレスの先頭の値を通知する。離脱ホストの貯蔵アドレスに連続する貯蔵アドレスを持つ近隣ホスト、もしくは、離脱ホストが持つアドレスの数よりも少ない数の貯蔵アドレスを持っている近隣ホストは、通知に対する返答を行なう。離脱ホストの貯蔵アドレスに連続する貯蔵アドレスを持つ近隣ホストがいた場合は、無条件にその離脱ホストがもつすべてのアドレスがそのホストに譲渡される。このような近隣ホストが見つからない場合には、貯蔵アドレスの最も少ない近隣ホストが選択されて離脱ホストの貯蔵アドレスが譲渡される。
【００６３】
［３．メッセージフォーマット］
次に、本発明の構成におけるアドレス設定あるいは解放処理において、ホスト間で送受信される各種のメッセージのフォーマットについて説明する。
【００６４】
本発明を適用したアドレス設定あるいは解放処理においてホスト間で送受信するメッセージパケットは、同一フォーマットのパケットを利用した構成を持つ。図３に、そのフォーマットを示す。図中の括弧内の数字は各領域の大きさをオクテットで表している。
【００６５】
メッセージタイプ［Ｍｅｓｓａｇｅ　Ｔｙｐｅ（ＭＴｙｐｅ）］領域はパケットのタイプを示す。図４にメッセージタイプの種類を示す。メッセージタイプには大きく分けて４種類、すなわちディスカバー（Ｄｉｓｃｏｖｅｒ）、オファー（Ｏｆｆｅｒ）、リクエスト（Ｒｅｑｕｅｓｔ）、アクノレッジ（Ａｃｋ）が存在し、これらの４種類がアドレスを割り当てる際のメッセージと、解放（Ｒｅｌｅａｓｅ）する際に利用するメッセージ（Ｒ＿ｘｘｘ）として定義される。ＲはＲｅｌｅａｓｅを意味する。さらに動的割り当てのアドレス更新時にのみ利用されるメッセージタイプとしてリース（Ｌｅａｓｅ）存在する。
【００６６】
図４に示すように、各メッセージタイプは、以下のように設定される。
ディスカバー（Ｄｉｓｃｏｖｅｒ）：新規ホストがアドレス割当てホストを探すためのブロードキャストパケット。
オファー（Ｏｆｆｅｒ）：Ｄｉｓｃｏｖｅｒの応答として、設定情報を含めて新規ホストに送信するパケット。
リクエスト（Ｒｅｑｕｅｓｔ）：Ｏｆｆｅｒを返信したホストから１つを選択して送信するパケット。
アクノレッジ（Ａｃｋ）：Ｒｅｑｕｅｓｔの応答として選択されたホストが送信するパケット。
【００６７】
リース（Ｌｅａｓｅ）：動的割り当てで受信したアドレスを更新する際に利用するパケット。
【００６８】
Ｒ＿ディスカバー（Ｒ＿Ｄｉｓｃｏｖｅｒ）：アドレスを解放するホストを探すためのブロードキャストパケット。
Ｒ＿オファー（Ｒ＿Ｏｆｆｅｒ）：Ｒ＿Ｄｉｓｃｏｖｅｒの応答として、自らの貯蔵アドレスの情報を通知するパケット。
Ｒ＿リクエスト（Ｒ＿Ｒｅｑｕｅｓｔ）：最適なアドレス譲渡先を選択してブロードキャストするパケット。
Ｒ＿アクノレッジ（Ｒ＿Ａｃｋ）：選択されたホストが返信するパケット。
【００６９】
なお、メッセージタイプによって、図３に示すフォーマットの使用領域は異なり、図３に示す領域が常時すべて利用される訳ではない。図３のフォーマットについての説明を続ける。
【００７０】
リクエストタイプ（Ｒｅｑｕｅｓｔ　Ｔｙｐｅ　（ＲＴｙｐｅ））領域はメッセージタイプ（ＭＴｙｐｅ）がディスカバー（Ｄｉｓｃｏｖｅｒ）の時にだけ有効となり、前述した３種類のアドレス割当方式をアドレス要求ホストが選択し、ブロック分割、動的、自動の識別子のいずれかを設定する。
【００７１】
トランザクションＩＤ（Ｔｒａｎｓａｃｔｉｏｎ　ＩＤ（Ｔｉｄ））領域はアドレス割り当て処理の一連のパケットの送受信の際に、自らの要求パケットに対する応答かどうかを識別するためのＩＤとして利用される。この値はランダムに生成する。
【００７２】
ライフタイム（Ｌｉｆｅ　Ｔｉｍｅ（ＬＴｉｍｅ））領域はアドレスの有効時間を定義する。単位は例えば分（ｍｉｎｕｔｅ）であり相対的な時間で示される。各ホストはアドレスを割り当てられた際のローカル時間とライフタイム（ＬＴｉｍｅ）とをホスト内の記憶手段に記憶しておき、ＬＴｉｍｅが経過した時にアドレスは期限切れとしてアドレス喪失処理を自動実行する。
【００７３】
なお、前述したように、アドレス割り当ての態様としては、ブロック割り当て方式、動的割り当て方式、自動割り当て方式の３種類があり、このうち、動的割り当て方式は、リース期限が設定され、このリース期限がライフタイム（Ｌｉｆｅ　Ｔｉｍｅ（ＬＴｉｍｅ））領域にライフタイムとして設定される。ブロック割り当て方式、自動割り当て方式には、動的割り当て方式のようなリース期限はないが、割り当てたアドレスの永久使用を許容すると、そのホストにおいて、アドレスの使用が行われなくなってもそのアドレスの再利用が妨げられることになり、限られたアドレス空間でのアドレス設定を行なう構成においてはアドレスの枯渇を招くことになる。従って、アドレス設定方式に拘わらず、絶対的なアドレス利用期限を設定し、これをライフタイム（Ｌｉｆｅ　Ｔｉｍｅ（ＬＴｉｍｅ））領域に設定する。
【００７４】
サーバアドレス（Ｓｅｒｖｅｒ　Ａｄｄｒｅｓｓ（Ｓａｄｄｒ））領域はアドレスを割り当てるホストのアドレスを格納する。このアドレスは動的割り当てなどにおいてアドレス更新を行なう際に利用される。
【００７５】
割り当てアドレス（Ａｌｌｏｃａｔｅｄ　Ａｄｄｒｅｓｓ（Ａａｄｄｒ））領域はサーバ（アドレス割り当てホスト）が割り当てるアドレスを格納する。
【００７６】
ローアドレス（Ｌｏｗ　Ａｄｄｒｅｓｓ（Ｌｏｗａｄｄｒ））領域とハイアドレス（Ｈｉｇｈ　Ａｄｄｒｅｓｓ（Ｈｉｇｈａｄｄｒ））領域は、ブロック割り当てにおいて、それぞれ割り当てる貯蔵アドレスの先頭と最後のアドレス値を格納する。自動割り当てと動的割り当てではアドレス割り当ての際に割り当てアドレス（Ａａｄｄｒ）領域にのみアドレスが格納され、ＬｏｗａｄｄｒとＨｉｇｈａｄｄｒの領域は空白となる。
【００７７】
リンクローカルアドレス（Ｌｉｎｋ　Ｌｏｃａｌ　Ａｄｄｒｅｓｓ（ＬＬＡｄｄｒ））領域には、パケット送信時に自らのリンクローカルアドレスを格納する。このアドレスを利用することにより要求ホストとアドレス割り当てホストが直接通信することが可能となる。
【００７８】
［４．初期ホストの設定］
本発明を適用したアドレス設定処理を実行するためには、まず、初期ホストが、ＭＡＮＥＴ全体で利用可能なアドレス空間の大きさと、各ホストに対して設定されるアドレスの絶対的な有効時間を決めておく必要がある。上述したように、アドレス割り当て方式には、ブロック割り当て、動的割り当て、自動割り当ての３種類があり、これらの３種類のいずれかをアドレス要求ホストが、ディスカバー（Ｄｉｓｃｏｂｅｒ）パケットをブロードキャスト送信する際にリクエストタイプ領域に設定してアドレス要求を行なうことになる。
【００７９】
前述したように動的割り当てを実行する場合には、リース期限が設定されるため、リース期限切れ後、所定時間経過時にアドレスが解放され、アドレスの再利用が可能となるが、ブロック割り当て、自動割り当ての場合には、アドレス解放処理が行なわれない限り、再利用は出来ないこととするとアドレスの枯渇の問題が発生する。従って、ブロック割り当て、動的割り当て、自動割り当ての割り当ての種類に拘わらず、各ホストに対して設定されるアドレスの絶対的な有効時間が設定される。
【００８０】
初期ホストの決定するＭＡＮＥＴ全体で利用可能なアドレス空間は連続的なアドレス空間である必要がある。例えば、１９２．１６８．１００．１から１９２．１６８．１００．２５５までのアドレス空間を利用する場合、ネットワーク内で設定可能なアドレスは１９２．１６８．１００．１〜１９２．１６８．１００．２５５の２５５個の連続的なアドレス空間内のアドレスとなる。
【００８１】
ＭＡＮＥＴ等のネットワークにおける初期ホスト設定は、手動によるネットワークの開始と自動による開始に分けられる。手動による設定の場合、特定ホストにネットワークで利用するアドレスを貯蔵アドレスとして設定すれば良い。なお、ＭＡＮＥＴが既に存在していれば、そのネットワークに加わり、存在していなければ自らが初期ホストとなりネットワークを構築することが可能である。
【００８２】
ネットワークに参加したいホストは、ディスカバー（Ｄｉｓｃｏｖｅｒ）パケットをブロードキャスト送信する。ＭＡＮＥＴが存在していない場合、どのホストからも返信を受けることはない。このような現象は一時的に自らがネットワークから離れている可能性も考えられるため、パケット送信処理は一定回数、繰り返して実効する。それでも返信を得られなかった場合、自らが初期ホストとして動作する。
【００８３】
［５．アドレス割り当ておよび解放処理］
次に、ＭＡＮＥＴ等のネットワークに新たに参加する新規ホストに対するアドレス割り当て処理およびアドレスの解放処理について説明する。
【００８４】
まず、新規ホストに対するアドレス割り当て処理について、図５に示すシーケンス図を参照しながら説明する。なお、図５のシーケンス図は、新規にネットワークに参加したホスト（Ｒｅｑｕｅｓｔｅｒ）がアドレスを設定する処理と、アドレスを持つホスト（Ｒｅｑｕｅｓｔｅｒ）がアドレスを解放する処理とを併せて示している。いずれの場合も、デイスカバー（ＤｉｓｃｏｖｅｒまたはＲ＿Ｄｉｓｃｏｖｅｒ）パケットのブロードキャスト送信により処理が開始される。これらのブロードキャストパケットを受信するホストとして、図５には、２つのホスト（Ｉｎｉｔｉａｔｏｒ）を示している。アドレス割り当て処理または、アドレス解放対応処理を実行するのが、選択ホスト（Ｉｎｉｔｉａｔｏｒ（ｓｅｌｅｃｔｅｄ））である。
【００８５】
なお、ブロードキャストされるデイスカバー（ＤｉｓｃｏｖｅｒまたはＲ＿Ｄｉｓｃｏｖｅｒ）パケットを受信するホストは図５に示す例では２つとして示しているが、このパケットを受信するホスト数は２つに限らず任意の数のホストである。ただし、アドレス割り当てまたは解放処理を実行するのは唯一の選択されたホスト（Ｉｎｉｔｉａｔｏｒ（ｓｅｌｅｃｔｅｄ））となる。
【００８６】
まず、アドレス割り当て処理のシーケンスについて説明する。ＭＡＮＥＴに加わる新規ホストは、ステップＳ１０１において、ランダムに生成したトランザクションＩＤ（Ｔｉｄ）を含むディスカバー（Ｄｉｓｃｏｖｅｒ）パケットをブロードキャストで送信する。この時、宛先のＩＰアドレスは０にして送信先のアドレスはすべて１にする。
【００８７】
なお、ディスカバー（Ｄｉｓｃｏｖｅｒ）パケットのリクエストタイプ（Ｒｅｑｕｅｓｔ　Ｔｙｐｅ　（ＲＴｙｐｅ））領域には前述した３種類のアドレス割当方式、すなわち、ブロック分割、動的、自動のいずれかの設定情報が格納される。
【００８８】
このブロードキャストパケットを受信し、かつ割り当てる貯蔵アドレスを保持するホスト（Ｉｎｉｔｉａｔｏｒ）は、ステップＳ１０２において、自らがアドレスを割り当てられた時に受け取ったライフタイム（ＬＴｉｍｅ）から現在までの経過時間を引いた値をライフタイム（ＬＴｉｍｅ）として、割り当て可能な貯蔵アドレス空間と新規ホスト（Ｒｅｑｕｅｓｔｏｒ）のトランザクションＩＤ（Ｔｉｄ）を含んだオファー（Ｏｆｆｅｒ）パケットをリンクローカルアドレス（ＬＬａｄｄｒ）に向けて送信する。
【００８９】
なお、この時点では、新規ホスト（Ｒｅｑｕｅｓｔｏｒ）はまだ、ＩＰアドレスを割り当てられていないため、オファー（Ｏｆｆｅｒ）パケットの宛先アドレスは２５５．２５５．２５５．２５５で送信する。
【００９０】
なお、新規ホスト（Ｒｅｑｕｅｓｔｏｒ）は、複数のオファー（Ｏｆｆｅｒ）パケットを受信する可能性がある。新規ホスト（Ｒｅｑｕｅｓｔｏｒ）は、ステップＳ１０３において、アドレス空間が最も大きいホスト（Ｉｎｉｔｉａｔｏｒ）、もしくは一定期間内で最初にパケットが届いたホスト（Ｉｎｉｔｉａｔｏｒ）を選択してリクエスト（Ｒｅｑｕｅｓｔ）パケットを送信する。
【００９１】
リクエスト（Ｒｅｑｕｅｓｔ）パケットを受信した選択されたホスト（Ｉｎｉｔｉａｔｏｒ（ｓｅｌｅｃｔｅｄ））は、ステップＳ１０４において、自分の保持する貯蔵アドレスの一部を割り当てリクエスト（Ｒｅｑｕｅｓｔ）パケットに対応するアクノレッジ（Ａｃｋ）パケットに格納して、新規ホスト（Ｒｅｑｕｅｓｔｏｒ）に対して返答する。
【００９２】
なお、割り当てアドレスは、ディスカバー（Ｄｉｓｃｏｖｅｒ）パケットのリクエストタイプ（Ｒｅｑｕｅｓｔ　Ｔｙｐｅ　（ＲＴｙｐｅ））領域に設定されたアドレス割当方式がブロック分割方式であれば、アドレス要求ホストの自己設定アドレスと、貯蔵アドレスの組み合わせを割り当てアドレスとして設定し、アドレス割当方式が動的、自動のいずれかの設定である場合には、アドレス要求ホストの自己設定アドレスのみを割り当てアドレスとしてアクノレッジ（Ａｃｋ）パケットに格納して、新規ホスト（Ｒｅｑｕｅｓｔｏｒ）に対して返答する。
【００９３】
新規ホスト（Ｒｅｑｕｅｓｔｏｒ）は、受信したアクノレッジ（Ａｃｋ）パケットに格納されたアドレスを自己設定アドレスとして設定し、アドレス割当方式がブロック分割方式であれば、貯蔵アドレスを記憶部に格納する。
【００９４】
アドレスの設定を受けたホストがアドレスを解放する場合にも、図５に示すシーケンス図に従った処理が実行されることになる。
【００９５】
アドレス解放処理のシーケンスについて説明する。ＭＡＮＥＴから離脱するホストは、ステップＳ１０１において、ランダムに生成したトランザクションＩＤ（Ｔｉｄ）を含み、自分の貯蔵アドレスの数と、自分の貯蔵アドレスの連続したアドレスの先頭の値を格納したＲディスカバー（Ｒ＿Ｄｉｓｃｏｖｅｒ）パケットをブロードキャストで送信する。この時、宛先のＩＰアドレスは０にして送信先のアドレスはすべて１にする。
【００９６】
このブロードキャストパケットを受信し、離脱ホストの貯蔵アドレスに連続する貯蔵アドレスを持つホスト、もしくは、離脱ホストが持つアドレスの数よりも少ない数の貯蔵アドレスを持っているホストは、ステップＳ１０２において、Ｒディスカバー（Ｒ＿Ｄｉｓｃｏｖｅｒ）パケットに対する返答としてアドレス解放処理手続きを実行可能であることを示し、かつアドレス解放要求ホスト（Ｒｅｑｕｅｓｔｏｒ）の設定したトランザクションＩＤ（Ｔｉｄ）を含んだオファー（Ｏｆｆｅｒ）パケットをアドレス解放要求ホスト（Ｒｅｑｕｅｓｔｏｒ）に向けて送信する。
【００９７】
なお、アドレス解放要求ホスト（Ｒｅｑｕｅｓｔｏｒ）は、複数のオファー（Ｏｆｆｅｒ）パケットを受信する可能性がある。アドレス解放要求ホスト（Ｒｅｑｕｅｓｔｏｒ）は、ステップＳ１０３において、離脱ホストの貯蔵アドレスに連続する貯蔵アドレスを持つホストがいた場合は、そのホストを選択し、このような近隣ホストが見つからない場合には、貯蔵アドレスの最も少ないホストを選択して、アドレス解放要求パケットとしてのリクエスト（Ｒｅｑｕｅｓｔ）パケットを送信する。
【００９８】
リクエスト（Ｒｅｑｕｅｓｔ）パケットを受信した選択されたホスト（Ｉｎｉｔｉａｔｏｒ（ｓｅｌｅｃｔｅｄ））は、ステップＳ１０４において、アドレス解放要求ホスト（Ｒｅｑｕｅｓｔｏｒ）の保持していたアドレスを自分の保持する貯蔵アドレスとして再設定し、処理終了を示すアクノレッジ（Ａｃｋ）パケットに格納して、ホスト（Ｒｅｑｕｅｓｔｏｒ）に対して返答する。
【００９９】
なお、解放アドレスは、解放要求ホストに設定されたアドレス割当方式がブロック分割方式であれば、アドレス要求ホストの自己設定アドレスと、貯蔵アドレスとを含む複数のアドレスであり、アドレス割当方式が動的、自動のいずれかの設定である場合には、アドレス解放要求ホストの自己設定アドレスのみとなる。それぞれの方式に従って、アドレス要求ホストの自己設定アドレスと貯蔵アドレス、あるいは自己設定アドレスのみがアドレス解放対応ホスト（Ｉｎｉｔｉａｔｏｒ（ｓｅｌｅｃｔｅｄ））の貯蔵アドレスとされ、再利用可能な状態に設定される。
【０１００】
［６．各ホストにおける処理］
次に、図６以下のフローを参照しながら、アドレス割り当ての各態様、すなわちブロック割り当て、動的割り当て、自動割り当ての各処理において、アドレス割り当てを実行するホスト（Ｉｎｉｔｉａｔｏｒ）の具体的な処理手順について説明する。
【０１０１】
まず、図６のフローを参照してブロック割り当て処理について説明する。ステップＳ２１１において、ＭＡＮＥＴ等のアドホックネットワークに対して新規参入したアドレス要求ホスト（Ｒｅｑｕｅｓｔｏｒ）からディスカバーパケットを受信すると、ステップＳ２１２において、割り当て可能な貯蔵アドレスを有するか否かを判定する。なお、アドレス要求ホストから受信したディスカバーパケットのリクエストタイプ（ＲＴｙｐｅ）にはアドレスリクエストがブロック割り当てであることを示す識別子が格納されているものとする。
【０１０２】
ステップＳ２１２の判定で、割り当て可能な貯蔵アドレスを有すると判定した場合は、ステップＳ２１３において、割り当て対象の貯蔵アドレスの１つをアドレス要求ホスト自身のアドレスとし、その他の割り当て対象の貯蔵アドレスをアドレス要求ホストの貯蔵アドレスとして設定する。
【０１０３】
ステップＳ２１４では、ステップＳ２１３で設定した割り当てアドレスを含むオファー（Ｏｆｆｅｒ）パケットを生成してアドレス要求ホストに対して送信する。
【０１０４】
ステップＳ２１５で、アドレス要求ホストからリクエストパケットを受信したか否かを判定する。所定時間、タイムアウト（Ｓ２１９）まで、リクエストパケットを受信しなかった場合は、選択ホスト（Ｉｎｉｔｉａｔｏｒ（Ｓｅｌｅｃｔｅｄ））として設定されなかったことを意味し、処理は、終了、すなわち、ディスカバーパケットの待機状態に移行する。
【０１０５】
アドレス要求ホストからリクエストパケットを受信した場合は、選択ホスト（Ｉｎｉｔｉａｔｏｒ（Ｓｅｌｅｃｔｅｄ））として設定されたことを意味し、ステップＳ２１６に進み、割り当てアドレスの絶対的有効時間の設定処理を行なう。これは、アドレス有効期限時刻から現在時刻を減算して、割り当てアドレスの有効時間を算出して、アクノレッジ（Ａｃｋ）パケットのライフタイム（ＬＴｉｍｅ）情報フィールドに格納する。
【０１０６】
ステップＳ２１７では、アドレス要求ホスト自身の割り当てアドレスと、アドレス要求ホストに譲渡する貯蔵アドレスと、これらのアドレスのライフタイムとを格納したアクノレッジ（Ａｃｋ）パケットをアドレス要求ホストに送信する。
【０１０７】
ステップＳ２１８において、アドレス割り当てを実行したホストは、貯蔵アドレスの更新、すなわち、アドレス要求ホストに提供した貯蔵アドレスを削除する処理を実行する。
【０１０８】
なお、アドレス要求ホストは、アクノレッジ（Ａｃｋ）パケットを受信すると、アドレス要求ホスト自身の割り当てアドレスを自己のアドレスとして設定し、譲渡対象の貯蔵アドレスを自己の貯蔵アドレスとして設定する。また、Ａｃｋパケットに格納されたライフタイム情報をメモリに格納する。自己のアドレス、貯蔵アドレスとも、ライフタイムの経過とともに無効化される。
【０１０９】
次に、図７のフローを参照して動的割り当てにおける処理について説明する。ステップＳ２３１において、ＭＡＮＥＴ等のアドホックネットワークにおいてホスト（Ｒｅｑｕｅｓｔｏｒ）からパケットを受信すると、パケット種別がデイスカバーパケットであるか、アドレス更新要求としてのリースパケットであるかを判別し、ディスカバーパケットであれば、アドレス取得要求であると判定し、ステップＳ２３２以下の処理を実行し、パケット種別がリースパケットであれば、アドレス更新要求であると判定し、ステップＳ２４１以下の処理を実行する。
【０１１０】
まず、ディスカバーパケットであるときのステップＳ２３２以下の処理について説明する。ディスカバーパケットを受信したホスト（ｉｎｉｔｉａｔｏｒ）は、ステップＳ２３２において自身が、割り当て可能な貯蔵アドレスを有するか否かを判定する。なお、アドレス要求ホストから受信したディスカバーパケットのリクエストタイプ（ＲＴｙｐｅ）にはアドレスリクエストが動的割り当てであることを示す識別子が格納されているものとする。
【０１１１】
ステップＳ２３２の判定で、割り当て可能な貯蔵アドレスを有すると判定した場合は、ステップＳ２３３において、貯蔵アドレスの先頭の１つをアドレス要求ホスト自身のアドレスとして選択する。
【０１１２】
ステップＳ２３４では、ステップＳ２３３で選択した割り当てアドレスを含むオファー（Ｏｆｆｅｒ）パケットを生成してアドレス要求ホストに対して送信する。
【０１１３】
ステップＳ２３５で、アドレス要求ホストからリクエストパケットを受信したか否かを判定する。所定時間、タイムアウト（Ｓ２４３）まで、リクエストパケットを受信しなかった場合は、選択ホスト（Ｉｎｉｔｉａｔｏｒ（Ｓｅｌｅｃｔｅｄ））として設定されなかったことを意味し、処理は、終了、すなわち、パケットの待機状態に移行する。
【０１１４】
アドレス要求ホストからリクエストパケットを受信した場合は、選択ホスト（Ｉｎｉｔｉａｔｏｒ（Ｓｅｌｅｃｔｅｄ））として設定されたことを意味し、ステップＳ２３６に進み、割り当てアドレスの有効時間の設定処理を行なう。ここでの有効時間は、リース時間であり、リースパケットに基づいて更新可能な時間である。しかし、動的割り当てアドレスにおいても上限値としての絶対的な有効時間があり、設定するリース時間は、この上限値を超えない範囲で設定され、アクノレッジ（Ａｃｋ）パケットのライフタイム（ＬＴｉｍｅ）情報フィールドに格納する。
【０１１５】
ステップＳ２３７では、割り当て処理を実行したアドレスに対応するリース期限と、割り当てアドレスとの対応情報をメモリに格納する。
【０１１６】
ステップＳ２３８では、アドレス要求ホスト自身の割り当てアドレスと、アドレスのライフタイムとを格納したアクノレッジ（Ａｃｋ）パケットをアドレス要求ホストに送信する。
【０１１７】
ステップＳ２３９において、アドレス割り当てを実行したホストは、貯蔵アドレスの更新、すなわち、アドレス要求ホストに提供した貯蔵アドレスを削除する処理を実行する。
【０１１８】
なお、アドレス要求ホストは、アクノレッジ（Ａｃｋ）パケットを受信すると、アドレス要求ホスト自身の割り当てアドレスを自己のアドレスとして設定し、Ａｃｋパケットに格納されたライフタイム情報をメモリに格納する。自己のアドレスの更新を実行する場合は、ライフタイムの経過以前にリースパケットを、アドレスを提供したホスト（Ｉｎｉｔｉａｔｏｒ）に送信して更新処理を実行する。
【０１１９】
リースパケットを受信したホストにおける処理は、ステップＳ２４１以下の処理となる。ステップＳ２４１では、リースパケットを受信したホストは、現在時刻のチェックを実行し、ステップＳ２４２において、更新対象のアドレスがリース期限および待機時間を経過していないかを判定する。これは、先にステップＳ２３７の処理として説明した提供アドレスと、リース期限の対応データに基づいて判定することが可能である。
【０１２０】
リースパケットに基づく更新対象のアドレスが、リース期限および待機時間を経過している場合には、更新処理は実行されず、処理は終了する。なお、この際にリースパケットを送信したホストにエラーメッセージを応答として送信する処理を実行してもよい。
【０１２１】
リースパケットに基づく更新対象のアドレスが、リース期限および待機時間を経過していない場合には、ステップＳ２３６に進み、割り当てアドレスの有効時間の再設定処理を行なう。ここでの有効時間は、再設定されたリース時間であり、再度リースパケットに基づいて更新可能な時間である。この場合も上限値としての絶対的な有効時間内でリース時間が設定され、アクノレッジ（Ａｃｋ）パケットのライフタイム（ＬＴｉｍｅ）情報フィールドに格納される。ステップＳ２３７では、割り当てアドレスと再設定リース期限との対応情報をメモリに格納する。
【０１２２】
ステップＳ２３８では、割り当てアドレスと、アドレスの再設定ライフタイムとを格納したアクノレッジ（Ａｃｋ）パケットをアドレス要求ホストに送信する。
【０１２３】
ステップＳ２３９において、アドレス割り当てを実行したホストは、貯蔵アドレスの更新、すなわち、アドレス要求ホストに再提供した貯蔵アドレスを削除する処理を実行する。なお、削除済みである場合には、削除処理は実行しない。
【０１２４】
次に、図８のフローを参照して自動割り当て処理について説明する。ステップＳ２５１において、ＭＡＮＥＴ等のアドホックネットワークに対して新規参入したアドレス要求ホスト（Ｒｅｑｕｅｓｔｏｒ）からディスカバーパケットを受信すると、ステップＳ２５２において、割り当て可能な貯蔵アドレスを有するか否かを判定する。なお、アドレス要求ホストから受信したディスカバーパケットのリクエストタイプ（ＲＴｙｐｅ）にはアドレスリクエストが自動割り当てであることを示す識別子が格納されているものとする。
【０１２５】
ステップＳ２５２の判定で、割り当て可能な貯蔵アドレスを有すると判定した場合は、ステップＳ２５３において、割り当て対象の貯蔵アドレスの最後尾のアドレスをアドレス要求ホスト自身のアドレスとして選択する。
【０１２６】
ステップＳ２５４では、ステップＳ２５３で選択した割り当てアドレスを含むオファー（Ｏｆｆｅｒ）パケットを生成してアドレス要求ホストに対して送信する。
【０１２７】
ステップＳ２５５で、アドレス要求ホストからリクエストパケットを受信したか否かを判定する。所定時間、タイムアウト（Ｓ２５９）まで、リクエストパケットを受信しなかった場合は、選択ホスト（Ｉｎｉｔｉａｔｏｒ（Ｓｅｌｅｃｔｅｄ））として設定されなかったことを意味し、処理は、終了、すなわち、ディスカバーパケットの待機状態に移行する。
【０１２８】
アドレス要求ホストからリクエストパケットを受信した場合は、選択ホスト（Ｉｎｉｔｉａｔｏｒ（Ｓｅｌｅｃｔｅｄ））として設定されたことを意味し、ステップＳ２５６に進み、割り当てアドレスの絶対的有効時間の設定処理を行なう。これは、アドレス有効期限時刻から現在時刻を減算して、割り当てアドレスの有効時間を算出して、アクノレッジ（Ａｃｋ）パケットのライフタイム（ＬＴｉｍｅ）情報フィールドに格納する。
【０１２９】
ステップＳ２５７では、アドレス要求ホスト自身の割り当てアドレスと、アドレス要求ホストに譲渡する貯蔵アドレスと、これらのアドレスのライフタイムとを格納したアクノレッジ（Ａｃｋ）パケットをアドレス要求ホストに送信する。
【０１３０】
ステップＳ２５８において、アドレス割り当てを実行したホストは、貯蔵アドレスの更新、すなわち、アドレス要求ホストに提供した貯蔵アドレスを削除する処理を実行する。
【０１３１】
なお、アドレス要求ホストは、アクノレッジ（Ａｃｋ）パケットを受信すると、アドレス要求ホスト自身の割り当てアドレスを自己のアドレスとして設定し、Ａｃｋパケットに格納されたライフタイム情報をメモリに格納する。自己のアドレスはライフタイムの経過とともに無効化される。
【０１３２】
次に、ＭＡＮＥＴ等のアドホックネットワークに新規に参入し、アドレスを取得しようとするホスト（Ｒｅｑｕｅｓｔｏｒ）の処理手順について、図９のフローを参照して説明する。
【０１３３】
まず、アドレスを取得しようとするホスト（Ｒｅｑｕｅｓｔｏｒ）は、ディスカバーパケットをブロードキャストする。この際、リクエストタイプには、ブロック割り当て、動的割り当て、自動割り当ての種別を格納する。
【０１３４】
ステップＳ３１２において、送信したディスカバーパケットに対するオファーパケットの待機を行ない、予め設定したタイムアウト時間が経過したら、ステップＳ３１４において、オファーパケットを１つ以上受信しているかを判定し、受信している場合は、さらにステップＳ３１５において、オファーパケットを複数受信しているかを判定する。受信したオファーパケットが１つの場合は、ステップＳ３１７で、オファーパケットの送信ホストをアドレス割り当てホストとして設定する。オファーパケットが複数ある場合は、ステップＳ３１６で、受信したオファーパケットに含まれる送信ホストの貯蔵アドレス数を比較し、最大の貯蔵アドレスを持つホストをアドレス割り当てホストとして設定する。
【０１３５】
次にステップＳ３１８において、設定したアドレス割り当てホストに対してリクエストパケットを送信し、ステップＳ３１９でアクノレッジ（Ａｃｋ）パケットの受信を判定し、タイムアウト以前にアクノレッジ（Ａｃｋ）パケットを受信すると、ステップＳ３２０において、アドレス割り当てが動的アドレスであるか否かに応じて、動的あどれすである場合には、ステップＳ３２１において、アドレス割り当てホスト（Ｉｎｉｔｉａｔｏｒ）のアドレスをメモリに格納し保持する。これは、アドレス更新処理においてリースパケットを送信する宛先としての情報として利用するためである。
【０１３６】
ステップＳ３２２では、アクノレッジ（Ａｃｋ）パケットに格納されたライフタイム（ＬＴｉｍｅ）をメモリに格納し、割り当てアドレスを自己アドレスとして設定し、貯蔵アドレス（ブロック割り当ての場合）をメモリに格納する。
【０１３７】
割り当てアドレスが動的アドレスの場合には、リースパケットの送信により更新が可能であり、その他のアドレスの場合は、ライフタイムの経過とともに無効とされる。
【０１３８】
次に、図１０のフローを参照してアドレスの時間管理処理について説明する。ＭＡＮＥＴ等のアドホックネットワークに属して通信を行なうホストは、自己がアドレス要求ホスト（Ｒｅｑｕｅｓｔｏｒ）になることもあり、また、アドレス割り当てホスト（Ｉｎｉｔｉａｔｏｒ）になる場合もある。これらの自己アドレス、貯蔵アドレス、割り当てアドレス等については、各ホストの持つ有効期限管理モジュールにおいてアドレスの有効期限管理が実行される。図１０に示すフローに従って、有効期限管理モジュールにおいて実行されるアドレスの有効期限管理処理について説明する。
【０１３９】
ホストは、ステップＳ５１１において、定期的に現在時刻チェック処理を行なう。さらに、ステップＳ５１２において、自己が保有するアドレス、および自己が他のホストに動的割り当てを行なったアドレスが有効期限（ライフタイム）を経過していないかを判定する。
【０１４０】
自己の保有アドレスについて、有効期限を経過している場合は、ステップＳ５１３以下の処理を実行し、自己が他のホストに動的割り当てを行なったアドレスが有効期限を経過している場合は、ステップＳ５２１以下の処理を実行する。
【０１４１】
まず、自己の保有アドレスについて、有効期限を経過している場合のステップＳ５１３以下の処理について説明する。ステップＳ５１３では、自己のアドレスが他のホストから動的割り当て、すなわちリース期限をライフタイムとして設定して割り当てられたアドレスであるかを判定し、動的割り当て以外、すなわち、ブロック割り当て、または、自動割り当ての場合には、ステップＳ５１８に進み、アドレスの解放を行なう。この後は、割り当てアドレスを適用した通信はできないことになる。
【０１４２】
一方、自己のアドレスが他のホストから動的割り当てされたアドレスである場合は、ステップＳ５１４において、割り当てホスト（Ｉｎｉｔｉａｔｏｒ）に対してリースパケットを送信する。ただし、アドレス更新を行なわない場合はリースパケットを送信する必要はない。ステップＳ５１５において、タイムアウト以前にリースパケットに対するアクノレッジ（Ａｃｋ）パケットを受信すると、ステップＳ５１６において、アクノレッジ（Ａｃｋ）パケットに格納されたライフタイムに基づいて自己アドレスに対応する新たな有効期限を設定する。
【０１４３】
タイムアウト以前にリースパケットに対するアクノレッジ（Ａｃｋ）パケットを受信できなかった場合は、ステップＳ５１８において、アドレスの解放処理を実行する。この場合、新たにアドレスを取得する場合には、ディスカバーパケットの送信処理を実行することになる。
【０１４４】
一方、ステップＳ５１２の判定において、自己が動的割り当てを実行したアドレスの有効期限が経過していると判定した場合は、ステップＳ５２１において、タイマを設定し、予め定めるられたタイムアウト時間の経過後、ステップＳ５２３において、リースパケットの受信の有無を判定し、リースパケットを受信した場合には、ステップＳ５２５において、先に図７のフローで説明したリース期限の更新を行なったＡｃｋパケットをリースパケット送信ホストに対して送信し、リース期限の再設定を行なって処理を終了する。
【０１４５】
リースパケットを受信せず、タイムアウトした場合は、ステップＳ５２４において、リースしていたアドレスを貯蔵アドレスとして回収して処理を終了する。
【０１４６】
［７．本発明のアドレス設定処理の検証］
次に、上述した本発明のアドレス設定処理の検証として、従来のフラッディング方式によるアドレス設定処理等との比較検討結果について説明する。
【０１４７】
上述したように、本発明のアドレス割り当て処理においては、フラッディングを用いずに一意のアドレスを割り当てることが可能である。シミュレーションを用いて本発明のアドレス割り当て方式と、従来のフラッディング方式とを比較しながら性能を評価する。
【０１４８】
（１）制御パケット数の解析
本発明のアドレス割り当て方式とフラッディング方式においてＭＡＮＥＴ内でアドレスを割り当てる際に利用されるパケット数の差を理論的に計算する。想定条件として、すべてのホストはマルチホップで到達可能な環境とする。ホストの数をｎ、電波到達距離内の平均ホスト数をｋとする。また、ブロードキャストによる送信は１パケットと数える。
【０１４９】
ａ．フラッディング方式
フラッディング方式はＭＡＮＥＴ内で到達可能なすべてのホストにパケットを伝送する技術である。新規にパケットを受け取ったホストは近隣のすべてのホストに、そのパケットをブロードキャストで転送する。転送したパケットの識別子を記憶しておき、同一のパケットが再び届いた場合は転送を停止する。
【０１５０】
シミュレーションでは、アドレス未割り当てのホストはパケットを受信しても転送はしないとする。ｎのホストで構成されたＭＡＮＥＴでは、以下の回数の送信が起こる。
【０１５１】
【数１】
2004146988.tif 000003
【０１５２】
無線では電波到達距離内のホストはすべてパケットを受信するため、受信回数は送信回数にｋを掛けた回数、すなわち、（１／２）ｋｎ（ｎ＋１）となる。
【０１５３】
ｂ．本発明のアドレス割り当て方式
本発明のアドレス割り当て方式では、１回のアドレス割り当てに際し、ディスカバー、オファー、リクエスト、アクノレッジの４種類のパケットを利用する。またオファーパケットの応答がないことで無駄になるディスカバーパケットの数を考慮する必要がある。
【０１５４】
ステップ１では初期ホストの周りのｋ台のホストにアドレスが割り当てられると仮定する。さらに次のステップでは、そのｋ台のホストに対してｋ台のホストが割り当てられるとすると、ｋ２のホストがアドレスを割り当てられることになる。このように考えると最短ではステップｌｏｇｋｎにアドレス割り当てが完了すると仮定できる。
【０１５５】
１つのホストへのアドレス割り当てが終了するまでに各ホストは平均ｌｏｇｋｎ回のディスカバーパケットを送信する状況と仮定する。正確には最良の場合、ｌｏｇｋｎ回目で、すべてのアドレス割り当てが完了する。
【０１５６】
リクエストおよびアクノレッジパケットはそれぞれ一回送信される。ブロードキャストのディスカバーに対する応答のオファーを送信するホストはｋ台となる。ｎ台のＭＡＮＥＴではパケットの送信回数はｎ（２＋ｋ）＋ｌｏｇｋｎとなる。受信回数は、送信回数にｋを掛けたｋｎ（２＋ｋ）＋ｋｌｏｇｋｎとなる。
【０１５７】
以上をまとめるとＭＡＮＥＴ内で行なわれる送受信数はフラッディングを利用した場合、
（１／２）（ｋ＋１）ｎ２＋（１／２）（ｋ＋１）ｎとなり、本発明のアドレス設定処理では、（ｋ２＋３ｋ＋２）ｎ＋（ｋ＋１）ｌｏｇｋｎとなる。ここで重要であることはフラッディングはＯ（ｎ２）でネットワーク内のトラフィックが増加するのに対して、本発明のアドレス割り当て処理では、Ｏ（ｎ）でトラフィックが増加することである。
【０１５８】
また、電波到達距内のホストが非常に少なく、ホスト数が多い環境の場合、近隣との接続性がなくてもアドレスを割り当てることの可能なフラッディング方式が一見有効に見える。しかし実際には、このような環境は通信そのものに適した環境と言えなくアドレスを割り当てたとしても、上位層で通信サービス提供をすることは困難である。
【０１５９】
（２）シミュレーションによる性能解析
一辺がＭ（ブロック）の正方形の領域をＮ台のホストが動き回る環境を想定する。ホストの移動には　Ｒａｎｄｏｍ　Ｗａｙ　Ｐｏｉｎｔ　Ｍｏｄｅｌ（参照文献：Ｄ．　Ｂ．　Ｊｏｈｎｓｏｎ　ａｎｄ　Ｄ．　Ａ．　Ｍａｌｔｚ．　Ｄｙｎａｍｉｃ　Ｓｏｕｒｃｅ　Ｒｏｕｔｉｎｇ　ｉｎ　Ａｄ　Ｈｏｃ　Ｗｉｒｅｌｅｓｓ　Ｎｅｔｗｏｒｋｓ．　Ｉｎ　Ｍｏｂｉｌｅ　Ｃｏｍｐｕｔｉｎｇ，　ｅｄｉｔｅｄ　ｂｙ　Ｔｏｍａｓｚ　Ｉｍｅｉｌｉｎｓｋｉ　ａｎｄ　ＨａｎｋＫｏｒｔｈ，　ｃｈａｐｔｅｒ　５，　ｐａｇｅｓ　１５３−１８１，　Ｋｌｕｗｅｒ　Ａｃａｄｅｍｉｃ　Ｐｕｂｌｉｓｈｅｒｓ，　１９９６．　，　Ｊ．Ｂｒｏｃｈ．　ｅｔ　ａｌ．　Ａ　Ｐｅｒｆｏｒｍａｎｃｅ　Ｃｏｍｐａｒｉｓｏｎ　ｏｆ　Ｍｕｌｔｉ−Ｈｏｐ　Ｗｉｒｅｌｅｓｓ　Ａｄ　Ｈｏｃ　Ｎｅｔｗｏｒｋ　Ｒｏｕｔｉｎｇ　Ｐｒｏｔｏｃｏｌｓ．　Ｉｎ　Ｐｒｏｃｅｅｄｉｎｇｓ　ｏｆ　ＡＣＭ／ＩＥＥＥ　Ｉｎｔｅｒｎａｔｉｏｎａｌ　Ｃｏｎｆｅｒｅｎｃｅ　ｏｎ　Ｍｏｂｉｌｅ　Ｃｏｍｐｕｔｉｎｇ　ａｎｄ　Ｎｅｔｗｏｒｋｉｎｇ，　Ｏｃｔｏｂｅｒ　１９９８．）を利用した。
【０１６０】
任意に目的地を設定し３（ブロック／ティック）の速度で移動する。目的地に到着すると１０（ティック）停止して再度ランダムに目的地を設定する。この動作を、すべてのホストにアドレス付けが修了するまで繰り返す。ホストの密度としてＮＤ（Ｎｏｄｅ　Ｄｅｎｓｉｔｙ）（参考文献：Ｍ．　Ｍｉｎｅｍａｔｓｕ，　ｅｔ　ａｌ．　ＨｏＷＬ：　Ａｎ　Ｅｆｆｉｃｉｅｎｔ　Ｒｏｕｔｅ　Ｄｉｓｃｏｖｅｒｙ　Ｓｃｈｅｍｅ　Ｕｓｉｎｇ　Ｒｏｕｔｉｎｇ　Ｈｉｓｔｏｒｙ　ｉｎ　Ａｄ　Ｈｏｃ　Ｎｅｔｗｏｒｋｓ．　Ｉｎ　Ｐｒｏｃｅｅｄｉｎｇｓ　ｏｆ　ＩＥＥＥ　Ｌｏｃａｌ　Ｃｏｍｐｕｔｅｒ　Ｎｅｔｗｏｒｋ．　２００２．）を４（ホスト）に設定した。ＮＤは１台の電波到達距離に存在するホストの平均値である。電波到達距離は５０ブロックに固定し、ホストの数Ｎに合わせてシミュレーション領域Ｍを変更させた。
【０１６１】
無線デバイスにはＩＥＥＥ８０２．１１を想定している。ＩＥＥＥ８０２．１１では、アドホックモードと基地局モードの２通りが用意されている。シミュレーションでは基地局を用いずにホスト間が直接通信を行なうアドホックモードを利用した。ＩＥＥＥ８０２．１１で送受信されるパケットは次の７種類に分類することができる。ユニキャスト（Ｕｎｉｃａｓｔ）の送信／受信パケット、ブロードキャスト（Ｂｒｏａｄｃａｓｔ）の送信／受信パケットの４種類と、宛先以外のホストがユニキャストの通信時に受け取る受信パケットである。
【０１６２】
これはホストの位置により図１１で示すようにホスト位置（１）〜（３）の３種類に分けることができる。すなわち、（１）ソース（Ｓｏｕｒｃｅ）からのパケットを受信できる。（２）ソース（Ｓｏｕｒｃｅ）とディステネーション（Ｄｅｓｔｉｎａｔｉｏｎ）両方からのパケットを受信できる。（３）ディステネーション（Ｄｅｓｔｉｎａｔｉｏｎ）からのパケットを受信できる。の３種類である。本発明のアドレス割り当て処理におけるディスカバーパケットの送信にはブロードキャストを用いている。その他のリクエスト、オファー、アクノレッジパケットにはユニキャスト通信を用いている。
【０１６３】
（３）送受信パケット数の比較
（３ー１）フラッディング方式の性能解析
現在提案されているアドレス割り当て方式では、最初にアドレス割り当てを行なってからＭＡＮＥＴ内のホストにアドレスが重複されていないかどうかＤＡＤを利用して検査する。ＤＡＤではＭＡＮＥＴ内すべてのホストにアドレス重複の確認をする必要があるためフラッディングしなければならない。またアドレスが重複した際の処理やアドレスの一意性を高める実用的な仕組みを採り入れるとすると、１度のフラッディングでは充分ではなく、１個のアドレス割り当てに対して２度のフラッディングを利用する必要がある。
【０１６４】
シミュレーションでは純粋にフラッディングのオーバーヘッドを解析するため、ホストがアドレスを任意に選択してＭＡＮＥＴ内にＤＡＤによりフラッディングで問い合わせをする状況を想定したシミュレーションを行なった。アドレスの衝突は起こらないものとして、問い合わせのフラッディングで送受信されるパケット数を調べた。
【０１６５】
図１２は、ホスト数（＃　ｏｆ　ｎｏｄｅｓ）を１０台から５００台まで１０台間隔で増加させ、１台のホストが送受信したパケットの数（＃　ｏｆ　ｐａｃｋｅｔｓ／ｎｏｄｅ）、すなわち、ブロードキャスト送信パケットと、ブロードキャスト受信パケットの数をシミュレーションを５０００回繰り返した平均値で示している。ｒｃｖが受信、ｓｎｄが送信を示す。シミュレーションではホストの位置は任意に決定されるため、任意のホスト間が通信到達可能であるという保証はない。そのためフラッディングはＭＡＮＥＴ内すべてのホストに届かない場合があり、先に説明した計算式で計算した理論値よりも送受信パケットは実際には少ない値となる。フラッディングでは各ホストが同一のパケットを転送するのは１度であるが、受信する可能性は何度もあるため、送信パケット数にくらべて受信パケット数が多くなる。ホストの数が多くなるにつれてホスト１台当たりのパケット数がリニアに増加している。このことは、ＭＡＮＥＴ内において指数的にパケット数が増加することを示している。
【０１６６】
（３ー２）本発明のアドレス割り当て方式の性能解析
本発明のアドレス割り当て方式を利用し同様にアドレス割り当てのシミュレーションを行なった。初期設定ホストは１０２４個の貯蔵アドレスを保持し、新規ホストは５０ティック毎にディスカバー（Ｄｉｓｃｏｖｅｒ）パケットを送信する。結果を図１３に示す。ホスト数（＃　ｏｆ　ｎｏｄｅｓ）を１０台から５００台まで１０台間隔で増加させ、１台のホストが送受信したパケットの数（＃　ｏｆ　ｐａｃｋｅｔｓ／ｎｏｄｅ）、すなわち、ブロードキャストパケットの送受信、ユニキャストパケットの送受信、ユニキャストパケットのオーバーヒアパケットの数である。
【０１６７】
図１２とは縦軸の粒度が６分の１になっていることに注意して欲しい。明らかに本発明のアドレス割り当てを利用した方がパケット数が少なくなっていることが分かる。またホスト数が増加してもパケット数は、ほぼリニアに増加しているため、指数的に増加するフラッディング方式と比べてスケーラビリティがあるといえる。
【０１６８】
さらにアドレス割り当ての性能に関して図１２のシミュレーションとの単純な比較はできない。フラッディングを使ったの手法ではＤＡＤパケット送信時にネットワークの接続性を一時的に失ったホストがいた場合、そのホストへはＤＡＤパケットが届かない。そのホストが仮に同一のアドレスを利用していた場合、アドレスの重複が起こってしまう。アドレスの唯一性を保証する場合は、例えば２回フラッディングを行なう必要があり、単純に計算しても２倍パケット量が増加することとになる。
【０１６９】
（４）消費電力の比較
図１２と図１３の結果を、Ｌ．Ｍ．Ｆｅｅｎｅｙ等が計測したＩＥＥＥ８０２．１１の消費電力のモデルに当てはめて、本発明のアドレス割り当て処理の性能を消費電力の観点で評価する。消費電力は　Ｅｎｅｒｇｙ＝ｍＸｓｉｚｅ＋ｂの一次方程式で表される。ここで、ｍは一次係数、ｓｉｚｅはパケットの大きさ、ｂは定数である。（参考文献：Ｌ．　Ｆｅｅｎｅｙ，　ａｎｄ　Ｍ．　Ｎｉｌｓｓｏｎ．　Ｉｎｖｅｓｔｉｇａｔｉｎｇ　ｔｈｅＥｎｅｒｇｙＣｏｎｓｕｍｐｔｉｏｎ　ｏｆ　ａ　Ｗｉｒｅｌｅｓｓ　Ｎｅｔｗｏｒｋ　Ｉｎｔｅｒｆａｃｅ　ｉｎ　ａｎ　Ａｄ　Ｈｏｃ　ＮｅｔｗｏｒｋｉｎｇＥｎｖｉｒｏｎｍｅｎｔ，　Ｉｎ　Ｐｒｏｃｅｅｄｉｎｇｓ　ｏｆ　ＩＥＥＥ　ＩＮＦＯＣＯＭ’０１．　Ａｐｒｉｌ　２００１．）
【０１７０】
２．４ＧＨｚ　ＩＥＥＥ８０２．１１　１１Ｍｂｐｓ　ＷａｖｅＬＡＮ　ＰＣ　Ｃａｒｄの測定結果を利用して本発明のアドレス割り当て処理を利用した場合とフラッディングを利用した場合の全体消費電力を図１４に示す。パケットの大きさは双方１０８バイト（３６バイトヘッダ、８バイトＵＤＰヘッダ、２０バイトＩＰヘッダ、２４バイトＰＬＣＰヘッダ、２０バイトＭＡＣヘッダ）として計算した。ホスト数が２０台を越える当たりから本発明のアドレス割り当て処理方式の消費電力がフラッディングの消費電力よりも小さくなっていっていることがわかる。全体のホスト数が増加しても、本発明のアドレス割り当て処理を利用した場合は、各ホストの消費電力は一定であり、全消費電力も全体のホスト数に対してリニアに増加する。一方、フラッディングを使った場合、全体のホスト数が増加すると全消費電力が指数的に増加することが分かる。
【０１７１】
電力容量に制限がある無線端末で構成されるアドホックネットワークでは、送受信パケット数を最小限にして電力消費を抑えることが重要である。本発明のアドレス割り当て方式は消費電力の点でも、従来のフラッディングを利用した方式よりも効率的であると言える。
【０１７２】
（６）結論
ユビキタスネットワーク時代において、柔軟に不特定の機器との通信環境を提供するアドホックネットワークは必須技術である。アドホックネットワークで利用されるフラッディングではネットワーク内すべてのホストにパケットが届く。フラッディングで利用するパケットはホスト数に対して指数的に増加するため、ネットワークが大規模になればなる程、利用が困難になる。特にユビキタス環境で想定されている携帯端末は貯蓄電力量に限りのあるため、不必要にパケットの送受信を行なうことは電力消費の観点でも問題となる。
【０１７３】
しかし従来方式の多くはアドレス割り当てにおいて唯一性を確認するためにフラッディングの技術を利用している。本発明のアドレス割り当て方式はアドレスを割り当てた時点でアドレスの唯一性を保証できるため、ネットワーク内にアドレスの重複確認をする必要がない。またフラッディングは到達可能なホストにしか届かないため、完全な唯一性を保証することはできない。
【０１７４】
シミュレーション実験によりフラッディングを利用した方式と比べて、本発明のアドレス割り当て方式は唯一性を保証するだけでなく、ノード数が多いネットワークにおいてアドレス割り当ての際に利用するパケットを大幅に減少し、その結果、消費電力量を減少することが分かった。重要な点としてはホスト数に対して本発明のアドレス割り当て方式は、Ｏ（ｎ）でパケット数が増加するため、Ｏ（ｎ２）でパケット数が増加するフラッディングと比べてスケラビリティの点で優れている。
【０１７５】
［８．通信処理装置のハードウェア構成例］
次に、上述の実施例において説明した通信処理装置のハードウェア構成例について説明する。
【０１７６】
図１５に、制御手段としてＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）を備えた通信処理装置例を示す。なお、図１５に示す構成例は１つの例であり、本発明に適用する通信処理装置は、図１５に示す構成に限らず、さらに様々な付加的機能を備える構成としてもよい。
【０１７７】
図１８に示す構成について説明する。ＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）９０１は、各種プログラムを実行するプロセッサである。ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ−Ｍｅｍｏｒｙ）９０２は、ＣＰＵ９０１が実行するプログラム、あるいは演算パラメータとしての固定データを格納する。ＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）９０３は、ＣＰＵ９０１の処理において実行されるプログラム、およびプログラム処理において適宜変化するパラメータの格納エリア、ワーク領域として使用される。ＨＤＤ９０４はハードディスクの制御を実行し、ハードディスクに対する各種データ、プログラムの格納処理および読み出し処理を実行する。
【０１７８】
バス９２１はＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ　Ｃｏｍｐｏｎｅｎｔ　Ｉｎｔｅｒｎｅｔ／Ｉｎｔｅｒｆａｃｅ）バス等により構成され、各モジュール、入出力インタフェース８２２を介した各入出力装置とのデータ転送を可能にしている。
【０１７９】
入力部９１１は、例えば各種スイッチ、ボタン、キーボード、ポインティングデバイスを含む入力部である。ボタン等を介して入力部９１１が操作された場合、あるいは、通信部９１３からのデータを受信した場合などにＣＰＵ９０１に指令が入力され、ＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）９０２に格納されているプログラムを実行する。出力部９１２は、例えばＣＲＴ、液晶ディスプレイ等であり、各種情報をテキストまたはイメージ等により表示する。
【０１８０】
通信部９１３はアドホックネットワーク内の他の通信処理装置（ホスト）との通信、あるいは、その他のエンティテイとの通信処理を実行し、ＣＰＵ９０１の制御の下に、各記憶部から供給されたデータ、あるいはＣＰＵ９０１によって処理されたデータを送信したり、他エンティテイからのデータを受信する処理を実行する。
【０１８１】
ドライブ９１４は、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ　Ｄｉｓｃ　ＲｅａｄＯｎｌｙ　Ｍｅｍｏｒｙ），ＭＯ（Ｍａｇｎｅｔｏ　ｏｐｔｉｃａｌ）ディスク，ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｃ）、磁気ディスク、半導体メモリなどのリムーバブル記録媒体９１５の記録再生を実行するドライブであり、各リムーバブル記録媒体９１５からのプログラムまたはデータ再生、リムーバブル記録媒体９１５に対するプログラムまたはデータ格納を実行する。
【０１８２】
各記憶媒体に記録されたプログラムまたはデータを読み出してＣＰＵ９０１において実行または処理を行なう場合は、読み出したプログラム、データは入出力インタフェース９２２、バス９２１を介して例えば接続されているＲＡＭ９０３に供給される。
【０１８３】
なお、明細書中において説明した各処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが専用のハードウェアに組み込まれているコンピュータ、又は各種のプログラムをインストールすることで各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、フレキシブルディスクやＣＤ−ＲＯＭ等のプログラム読み取り可能な記録媒体にプログラムを格納して提供してもよいし、インターネットなどの通信網を介してプログラムをダウンロードしてもよい。
【０１８４】
具体的には、プログラムは記録媒体としてのハードディスクやＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ　Ｄｉｓｃ　Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ），ＭＯ（Ｍａｇｎｅｔｏ　ｏｐｔｉｃａｌ）ディスク，ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｃ）、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【０１８５】
また、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、ＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１８６】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【０１８７】
また、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【０１８８】
【発明の効果】
以上、説明したように、本発明のアドレス設定処理においては、従来方式の多くがアドレスの唯一性を確認するために必要とするフラッディングを行なうことなく、アドレスの割り当てた時点でアドレスの唯一性を保証できるため、ネットワーク内てＤＡＤ等のアドレスの重複確認処理を実行する必要がなく、効率的で確実なアドレス割り当てが可能となる。
【０１８９】
さらに、本発明の構成によれば、ブロック分割によるアドレス割り当てを行なう際、割当先のホストに貯蔵アドレスを提供する形態としたので、アドレスの唯一性が保証されるばかりでなく、貯蔵アドレスが各ホストに分散格納され、新規ホストに対するアドレス割り当て処理を多数のホストが実行可能となり、特定のホストに負荷が集中することなくアドレス割り当て処理の負荷分散が可能となる。
【０１９０】
さらに、本発明の構成によれば、割り当てアドレスに対するライフタイムを設定し、ライフタイム経過後にアドレスを解放し、再利用することを可能としたので、限られたアドレス空間を利用したアドレス設定を行なった場合においてもアドレスの枯渇という問題を発生させることがない。
【０１９１】
さらに、本発明のアドレス設定処理によれば、ノード数が多いネットワークにおいてアドレス割り当ての際に利用するパケットをフラッディングを利用した方式と比べて大幅に減少することが可能であり、その結果、消費電力量の減少が実現され、フラッディングと比べてスケラビリティの点で優れている。
【図面の簡単な説明】
【図１】アドレスのブロック割り当て処理について説明する図である。
【図２】アドレスの動的割り当ておよび自動割り当て処理について説明する図である。
【図３】本発明に係るアドレス設定、解放等の処理において適用するパケットフォーマットについて説明する図である。
【図４】送受信パケットのメッセージ種別について説明する図である。
【図５】アドレス設定処理および解放処理における処理シーケンスを示す図である。
【図６】ブロック割り当て処理によるアドレス設定処理を説明するフロー図である。
【図７】動的割り当て処理によるアドレス設定処理を説明するフロー図である。
【図８】自動割り当て処理によるアドレス設定処理を説明するフロー図である。
【図９】アドレス割り当て処理における割り当て要求ホストにおける処理を説明するフロー図である。
【図１０】アドレスの時間管理について説明するフロー図である。
【図１１】本発明のアドレス設定の評価におけるホスト位置の種別を説明する図である。
【図１２】フラッディング処理によるアドレス設定シミュレーションにおける全ホスト数に対する１ホストで利用する送受信パケット数推移を示す図である。
【図１３】本発明のアドレス設定処理のシミュレーションにおける全ホスト数に対する１ホストで利用する送受信パケット数推移を示す図である。
【図１４】本発明のアドレス設定処理とフラッディング処理のアドレス設定シミュレーションにおける全ホスト数に対する１ホストで利用する消費電力比較を示す図である。
【図１５】本発明のアドレス設定、解放等の処理を実行可能な通信処理装置のハードウェア構成例を示す図である。
【符号の説明】
１０１　ホストＡ
１０２　ホストＢ
１０３　ホストＣ
２０１　ホストＡ
２０２　ホストＢ
２０３　ホストＣ
９０１　ＣＰＵ
９０２　ＲＯＭ
９０３　ＲＡＭ
９０４　ＨＤＤ
９１１　入力部
９１２　出力部
９１３　通信部
９１４　ドライブ
９１５　リムーバブル記憶媒体
９２１　バス
９２２　入出力インタフェース
【図１】
2004146988.tif 000004
【図２】
2004146988.tif 000005
【図３】
2004146988.tif 000006
【図４】
2004146988.tif 000007
【図５】
2004146988.tif 000008
【図６】
2004146988.tif 000009
【図７】
2004146988.tif 000010
【図８】
2004146988.tif 000011
【図９】
2004146988.tif 000012
【図１０】
2004146988.tif 000013
【図１１】
2004146988.tif 000014
【図１２】
2004146988.tif 000015
【図１３】
2004146988.tif 000016
【図１４】
2004146988.tif 000017
【図１５】
2004146988.tif 000018