(57)【要約】本発明は、多様な装置（１２０）、特に、低電力携帯型装置が、ハンドオフ管理ポイント（ＨＭＰ）（１１０）と呼ばれる複数のネットワークアクセスポイントへの接続性を確立することにより、ビルディング内に設置されているネットワーク環境のようなネットワーク環境の中を途切れ無く移動できるようにする方法、システム、及び、コンピュータプログラムを提供する。途切れの無いネットワーク接続性は、ユーザ認証サービス、装置アドレス割当サービス、及び、ハンドオフサービスを行うため、これらのアクセスポイントをコア・サーバ（１００）と連係させることにより実現される。
2004522331.tif 000002
【特許請求の範囲】
【請求項１】
近距離無線ネットワーク環境において途切れることの無いユーザ移動を可能にする方法であって、
近距離無線ネットワーク環境における通信のため近距離無線通信機能を備えた１台以上の携帯型クライアント装置を準備する手順と、
１台以上のアプリケーション・サーバに備わっている一つ以上のアプリケーション・プログラムにアクセスできるよう、クライアント装置との通信用の近距離無線リンク及びネットワーク環境へのリンクを備えた複数のハンドオフ管理ポイント（ＨＭＰ）を準備する手順と、
ハンドオフ管理ポイントを制御するためハンドオフ・コア・サーバを準備する手順と、
を有する方法。
【請求項２】
動作状態のハンドオフ管理ポイントの導入と設定は、システム管理者の付加的な介入無しに行われる、請求項１記載の方法。
【請求項３】
選択された一つのハンドオフ管理ポイントを動的に動作状態にさせる手順を更に含み、
この手順は、
選択されたハンドオフ管理ポイントのインターネット・プロトコル（ＩＰ）アドレスを取得する手順と、
選択されたハンドオフ管理ポイントによって、ハンドオフ・コア・サーバのアイデンティティを見つける手順と、
選択されたハンドオフ管理ポイントによって、ハンドオフ・コア・サーバとハンドオフ管理ポイント・プレゼンス・プロトコル交換を開始する手順と、
を有する、
請求項１記載の方法。
【請求項４】
インターネット・プロトコル・アドレスを取得する手順は、ダイナミック・ホスト・コンフィギュレーション・プロトコル（ＤＨＣＰ）要求を発行する手順を含む、請求項３記載の方法。
【請求項５】
ハンドオフ・コア・サーバのアイデンティティを見つける手順は、ダイナミック・ホスト・コンフィギュレーション・プロトコル要求への応答を調べる手順を含む、請求項４記載の方法。
【請求項６】
ハンドオフ・コア・サーバのアイデンティティを見つける手順は、サービス・ロケーション・プロトコル（ＳＬＰ）要求を発行する手順を含む、請求項３記載の方法。
【請求項７】
ハンドオフ管理ポイント・プレゼンス・プロトコル交換を開始する手順は、
選択されたハンドオフ管理ポイントをハンドオフ・コア・サーバに登録するため、登録要求をハンドオフ・コア・サーバへ送信する手順と、
ハンドオフ・コア・サーバから登録応答を取得する手順と、
登録応答が肯定的である場合、選択されたハンドオフ管理ポイントのハンドオフ・コア・サーバへの登録を定期的に更新する手順と、
を含む、
請求項３記載の方法。
【請求項８】
クライアント装置によって生成されたダイナミック・ホスト・コンフィギュレーション・プロトコル要求は、選択されたハンドオフ管理ポイントによって受信され、選択されたハンドオフ管理ポイントによって処理のためハンドオフ・コア・サーバへ転送される、請求項１記載の方法。
【請求項９】
特定の一つの転送されたダイナミック・ホスト・コンフィギュレーション・プロトコル要求の受信に応じて、ハンドオフ・コア・サーバによって、特定のクライアント装置のインターネット・プロトコル・アドレスを選択する手順と、
ハンドオフ・コア・サーバから選択されたハンドオフ管理ポイントへ選択されたインターネット・プロトコル・アドレスを転送する手順と、
選択されたハンドオフ管理ポイントによって、ダイナミック・ホスト・コンフィギュレーション・プロトコル応答を特定のクライアント装置へ転送する手順と、
を更に有する請求項８記載の方法。
【請求項１０】
特定のクライアント装置のインターネット・プロトコル・アドレスを選択する手順は、アクティブ・ユーザ・ロケーション（ＡＵＬ）レジストリ内でテーブルルックアップを実行する手順を含む、請求項９記載の方法。
【請求項１１】
ハンドオフ・コア・サーバは各クライアント装置の現在ロケーションの記録を保持する、請求項１記載の方法。
【請求項１２】
現在ロケーションの記録は、アクティブ・ユーザ・ロケーション（ＡＵＬ）レジストリに保持される、請求項１１記載の方法。
【請求項１３】
クライアント装置が近距離無線ネットワーク環境内を移動するとき、ハンドオフ・コア・サーバは、各クライアント装置の一つ以上のロケーションの履歴記録を保持する、請求項１１記載の方法。
【請求項１４】
（１）特定のクライアント装置によって生成されたトラヒックと、（２）特定のクライアント装置を宛先とするトラヒックのうちの少なくとも一方をハンドオフ・コア・サーバで受信する手順と、
ハンドオフ・コア・サーバによって、トラヒックの宛先に応じて、受信されたトラヒックをフィルタリング処理する手順と、
を更に有する請求項１１記載の方法。
【請求項１５】
（１）特定のクライアント装置によって生成されたトラヒックと、（２）特定のクライアント装置を宛先とするトラヒックのうちの少なくとも一方をハンドオフ・コア・サーバで受信する手順と、
特定のクライアント装置の現在ロケーションに応じて、受信されたトラヒックをフィルタリング処理する手順と、
を更に有する請求項１１記載の方法。
【請求項１６】
（１）特定のクライアント装置によって生成されたトラヒックと、（２）特定のクライアント装置を宛先とするトラヒックのうちの少なくとも一方をハンドオフ・コア・サーバで受信する手順と、
特定のクライアント装置のユーザのアイデンティティに応じて、受信されたトラヒックをフィルタリング処理する手順と、
を更に有する請求項１１記載の方法。
【請求項１７】
特定のハンドオフ管理ポイントによって、選択されたクライアント装置との新しい通信チャネルの確立を検出する手順と、
新しい通信チャネルの確立を検出する手順に応じて、チャネル確立通知をハンドオフ・コア・サーバへ発行する手順と、
ハンドオフ・コア・サーバによって、チャネル確立通知の受信に応じて、アクティブ・ユーザ・ロケーション（ＡＵＬ）レジストリを更新する手順と、
を更に有する請求項１記載の方法。
【請求項１８】
通信チャネルの確立は明示的な確立である、請求項１７記載の方法。
【請求項１９】
通信チャネルの確立は暗示的な確立である、請求項１７記載の方法。
【請求項２０】
特定のハンドオフ管理ポイントによって、特定のクライアント装置との既存の通信チャネルの終了を検出する手順と、
既存の通信チャネルの終了を検出する手順に応じて、チャネル終了通知をハンドオフ・コア・サーバへ発行する手順と、
ハンドオフ・コア・サーバによって、チャネル終了通知の受信に応じて、アクティブ・ユーザ・ロケーション・レジストリを更新する手順と、
を更に有する請求項１７記載の方法。
【請求項２１】
通信チャネルの確立は明示的な確立である、請求項２０記載の方法。
【請求項２２】
通信チャネルの確立は暗示的な確立である、請求項２０記載の方法。
【請求項２３】
ハンドオフ・コア・サーバは、ハンドオフ管理ポイント・レジストリとアクティブ・ユーザ・ロケーション・レジストリのうちの少なくとも一方を保持する、請求項１記載の方法。
【請求項２４】
ハンドオフ・コア・サーバは、複数のアプリケーション・プログラミング・インタフェース（ＡＰＩ）を提供し、アプリケーション・プログラムは、アプリケーション・プログラミング・インタフェースを用いて、ハンドオフ管理ポイント・レジストリとアクティブ・ユーザ・ロケーション・レジストリのうちの少なくとも一方から情報を取得する、請求項２３記載の方法。
【請求項２５】
少なくとも一つのアプリケーション・サーバで動いている選択されたアプリケーション・プログラムは、複数のアプリケーション・プログラミング・インタフェースのうちの一つを呼び出す、請求項２４記載の方法。
【請求項２６】
選択されたアプリケーション・プログラムは、アプリケーション・プログラミング・インタフェースによって取得された情報に基づいてロケーション・ベース・サービスを提供する、請求項２５記載の方法。
【請求項２７】
選択されたアプリケーション・プログラムは、アプリケーション・プログラミング・インタフェースによって取得された情報に基づいて個人向けのサービスを提供する、請求項２５記載の方法。
【請求項２８】
選択されたアプリケーション・プログラムは、近接性ベースのプリンティングを行う、請求項２５記載の方法。
【請求項２９】
複数のハンドオフ・コア・サーバを準備する手順と、
コア管理サーバを準備する手順と、
を更に有し、
コア管理サーバは複数のハンドオフ・コア・サーバと通信をするため適合している、
請求項１記載の方法。
【請求項３０】
コア管理サーバは、複数のハンドオフ・コア・サーバへの要求を呼び出すことができる、請求項２９記載の方法。
【請求項３１】
複数のハンドオフ・コア・サーバは、コア管理サーバからのサービスを要求することができる、請求項２９記載の方法。
【請求項３２】
無線ネットワーク環境において途切れることの無いユーザ移動を可能にするシステムであって、
無線ネットワーク環境における通信のため近距離無線通信機能を備えた１台以上の携帯型ユーザ装置と、
１台以上のアプリケーション・サーバに備わっている一つ以上のアプリケーション・プログラムと、
ユーザ装置との通信用の近距離無線リンクを備え、アプリケーション・プログラム及びアプリケーション・サーバが存在するネットワーク環境へのリンクを備えた複数のハンドオフ管理ポイント（ＨＭＰ）と、
ハンドオフ管理ポイントを制御するためのハンドオフ・コア・サーバ（ＨＣＳ）と、
ハンドオフ管理ポイントが動作状態になるとき、各ハンドオフ管理ポイントをハンドオフ・コア・サーバに動的に登録する手段と、
が設けられ、
動作状態のハンドオフ管理ポイントのインストレーション及びコンフィギュレーションが人による付加的な介入を必要としないようになり、
選択されたユーザ装置が第１のハンドオフ管理ポイントとの通信レンジ内に入ったとき、選択されたユーザ装置を第１のハンドオフ管理ポイントへ知らせる手段と、
選択されたユーザ装置が第１のハンドオフ管理ポイントの通信レンジから出て第２のハンドオフ管理ポイントの通信レンジへ入ったとき、選択されたユーザ装置を第１のハンドオフ管理ポイントから第２のハンドオフ管理ポイントへ引き渡す手段と、
引き渡しの間及び引き渡しの後に、選択されたユーザ装置と一つ以上のアプリケーション・プログラムの間で動作している継続中のセッションを維持する手段と、
が設けられているシステム。
【請求項３３】
継続中のセッションを維持する手段は、
選択されたユーザ装置が第１のハンドオフ管理ポイントの通信レンジ内に存在するとき、インターネット・プロトコル（ＩＰ）アドレスを選択されたユーザ装置に割当てる手段と、
選択されたユーザ装置が第２のハンドオフ管理ポイントの通信レンジ内に存在するとき、選択されたユーザ装置に対し該インターネット・プロトコル・アドレスを使用し続ける手段と、
を含む、
請求項３２記載のシステム。
【請求項３４】
特定の期間の満了後に、動的に登録された各ハンドオフ管理ポイントを再登録する手段を更に有する請求項３２記載のシステム。
【請求項３５】
インターネット・プロトコル・アドレスを選択されたユーザ装置に割当てる手段は、選択されたユーザ装置に対するインターネット・プロトコル・アドレスをハンドオフ・コア・サーバに保存する手段を含み、
インターネット・プロトコル・アドレスを使用し続ける手段は、保存されたインターネット・プロトコル・アドレスをハンドオフ・コア・サーバから獲得する手段を含む、
請求項３３記載のシステム。
【請求項３６】
一つ以上のコンピュータ読み取り可能な媒体に格納され、コンピュータシステムに無線ネットワーク環境における途切れることの無いユーザ移動を可能にさせるためのコンピュータプログラム命令であって、
コンピュータプログラム命令は、ハンドオフ管理ポイント（ＨＭＰ）が動作状態になるとき、各ハンドオフ管理ポイントをハンドオフ・コア・サーバ（ＨＣＳ）に動的に登録する機能を実現させ、
各ハンドオフ管理ポイントは、複数のユーザ装置との通信用の近距離無線リンクを備え、アプリケーション・プログラム及びアプリケーション・サーバが存在するネットワーク環境へのリンクを備え、
各ユーザ装置は無線ネットワーク環境における通信のため近距離無線通信機能を備え、
動作状態のハンドオフ管理ポイントのインストレーション及びコンフィギュレーションは人による付加的な介入を必要とせず、
コンピュータプログラム命令は、ハンドオフ・コア・サーバにハンドオフ管理ポイントを管理する機能を実現させ、
コンピュータプログラム命令は、選択されたユーザ装置が第１のハンドオフ管理ポイントの通信レンジ内に入ったとき、選択されたユーザ装置を第１のハンドオフ管理ポイントに知らせる機能を実現させ、
コンピュータプログラム命令は、選択されたユーザ装置が第１のハンドオフ管理ポイントの通信レンジから出て第２のハンドオフ管理ポイントの通信レンジへ入ったとき、選択されたユーザ装置を第１のハンドオフ管理ポイントから第２のハンドオフ管理ポイントへ引き渡す機能を実現させ、
コンピュータプログラム命令は、引き渡しの間及び引き渡しの後に、選択されたユーザ装置と一つ以上のアプリケーション・プログラムの間で動作している継続中のセッションを維持する機能を実現させる、
コンピュータプログラム命令。
【請求項３７】
継続中のセッションを維持する機能を実現させるコンピュータプログラム命令は、
選択されたユーザ装置が第１のハンドオフ管理ポイントの通信レンジ内に存在するとき、インターネット・プロトコル（ＩＰ）アドレスを選択されたユーザ装置に割当てる機能と、
選択されたユーザ装置が第２のハンドオフ管理ポイントの通信レンジ内に存在するとき、選択されたユーザ装置に対し該インターネット・プロトコル・アドレスを使用し続ける機能と、
を実現させる、
請求項３６記載のコンピュータプログラム命令。
【請求項３８】
特定の期間の満了後に、動的に登録された各ハンドオフ管理ポイントを再登録する機能を更に実現させる請求項３６記載のコンピュータプログラム命令。
【請求項３９】
インターネット・プロトコル・アドレスを選択されたユーザ装置に割当てる機能は、選択されたユーザ装置に対するインターネット・プロトコル・アドレスをハンドオフ・コア・サーバに機能する手段を含み、
インターネット・プロトコル・アドレスを使用し続ける機能は、保存されたインターネット・プロトコル・アドレスをハンドオフ・コア・サーバから獲得する機能を含む、
請求項３７記載のコンピュータプログラム命令。
【発明の詳細な説明】
【０００１】
〔技術分野〕
本発明は、コンピュータネットワークに係り、特に、近距離無線コンピューティング装置を用いてシームレス（途切れることの無い）接続性及びローミングを可能にする方法、システム、及び、コンピュータプログラム命令に関する。
【０００２】
〔背景〕
近年、様々な近距離無線ネットワーク通信技術、特に、ＩＥＥＥ  ８０２．１１及びブルートゥース（Ｂｌｕｅｔｏｏｔｈ）が登場し、携帯型装置（例えば、ラップトップ、携帯電話、個人情報端末（即ち、ＰＤＡ）など）が相互に通信し、広域ネットワーク環境と通信できるようになっている。ＩＥＥＥ  ８０２．１１は、米国電気電子技術者協会の規格であり、１９９７年に無線ローカルエリア・ネットワーク（即ち、無線ＬＡＮ）、シグナリング、及び、プロトコルに関して承認された。８０２．１１規格は、周波数ホッピング方式拡散スペクトル無線、直接シーケンス方式拡散スペクトル無線、及び、赤外線伝送を取り扱う。Ｂｌｕｅｔｏｏｔｈは、電気通信とコンピューティングを統一することを目指した近距離無線接続性のための仕様である。これらの仕様に関するもっと詳細な情報は、それぞれ、インターネット上のｗｗｗ．ｉｅｅｅ．ｏｒｇ及びｗｗｗ．ｂｌｕｅｔｏｏｔｈ．ｃｏｍで調べることができる。
【０００３】
この通信を可能にするため、様々なブリッジ用アクセスポイントが開発されている。これらのブリッジ用アクセスポイントは、装置がローカルＬＡＮへ無線方式でプラグインできるようにする。装置によって送信された全てのパケットは、簡単にＬＡＮへ転送され、装置は、ＬＡＮ上の全てのパケットを読むことが可能である（アクセスポイントは、可能であれば、例えば、装置おｎ媒体アクセス制御アドレス、即ち、ＭＡＣアドレスに基づいて、あるレベルのフィルタリングを行う。）。市販されているブリッジ用アクセスポイントの例には、（８０２．１１用の）Ｃｉｓｃｏ ａｎｄ Ｌｕｃｅｎｔの製品や、（Ｂｌｕｅｔｏｏｔｈ用の）Ｗｉｄｃｏｍ ａｎｄ Ａｘｉｓの製品が含まれる。
【０００４】
従来の近距離無線ＬＡＮ手法（ソリューション）には、多数の制限がある。一つの重大な制限は、途切れの無いローミングが実現できないことである。即ち、装置が、あるアクセスポイントから別のアクセスポイントへ移動する間に接続性を維持することができるのは、全てのアクセスポイントが物理的に同じＬＡＮ上に存在する場合に限られる。従来の手法において、装置が一方のＬＡＮから別のＬＡＮへ途切れること無く移動できるようにするためには、非常に新しいインフラストラクチャ（基盤設備）を採用する必要がある（或いは、装置ソフトウェア自体に重大な変更を加える必要がある。）。これは、無線環境では特に問題である。なぜならば、ユーザは、ＬＡＮのトポロジーの物理的なレイアウトを知っている可能性が低く、自分が特定のＬＡＮの範囲外を物理的に移動しているときに気が付かないからである。
【０００５】
ブルートゥース環境の場合、ブリッジ用アクセスポイントを通るローミングは、特に問題が多い。一方のアクセスポイントから別のアクセスポイントへ移動するときに接続性を維持するため、装置は、自装置のインターネット・プロトコル（ＩＰ）アドレスを持ち続けなければならない。しかし、ブルートゥース方式クライアント装置は、各アクセスポイントと新しいポイント・ツー・ポイント・プロトコル（ＰＰＰ）コネクションを確立することによってＩＰ接続性を獲得し、ブルートゥース方式クライアント装置は、（ダイナミック・ホスト・コンフィギュレーション・プロトコル、即ち、ＤＨＣＰを使用して）新しいＩＰアドレスを要求する。ブリッジ用アクセスポイントを使用する場合、特定のクライアント装置が別のアクセスポイントへ移動する度に、その特定のクライアント装置のための新しいＩＰアドレスを獲得するので、装置の接続性が中断され、ローミングに気付かれてしまう。ＰＰＰは、１９９４年７月付けのリクエスト・フォー・コメント（ＲＦＣ）１６６１に文書化されている。ＤＨＣＰは、１９９７年３月のＲＦＣ  ２１３１に記載されている。どちらの文書もインターネット上のｗｗｗ．ｉｅｔｆ．ｏｒｇで入手可能である。
【０００６】
途切れの無いローミング問題に対する一つの解決手法は、モバイルＩＰを利用する。このスキーム（体系）の場合、移動装置のＩＰアドレスは、移動装置が一方のネットワークから別のネットワークへ移動しても変化しない。装置には、自装置のホームネットワーク上の固定の「ホーム・エージェント」が関連付けられる。装置が移動するとき、この装置は、異なるネットワーク上で「フォーリン・エージェント」として登録される。装置によって送信されたメッセージ、及び、この装置宛のメッセージは、フォーリン・エージェントを通り抜ける（即ち、回送される。）。ＩＰアドレスは、このコンフィギュレーション内で変化しないので、ローミングを実現することが可能である。しかし、この解決手法は、多数の欠点がある。第一に、これは、ＩＰバージョン４（ＩＰｖ４）専用に規定され、ＩＰバージョン６（ＩＰｖ６）と連携しない。ＩＰバージョン６は、次世代ＩＰと呼ばれ、ＩＰｖ４を置き換えることが予定されている。さらに、モバイルＩＰ方式の解決手法は、フォーリン・エージェントを各ＬＡＮに配置し、全てのユーザに周知のホーム・エージェントを割当て、全ての装置に固定（常駐）ＩＰアドレスを割当てるため、ＬＡＮアドミニストレータ（ＬＡＮ管理者）を必要とする。ＬＡＮ管理者を必要とする点は特に厄介である。なぜならば、ルーティング可能なＩＰアドレスは、今日のインターネット上で制限されたリソースであり、更に、セキュリティ上の理由から、殆どのシステム管理者は、プライベート（私設）アドレスを内部ホストに割当て、ネットワーク・アドレス・トランスレーション（ＮＡＴ）を実行するファイアウォールを用いて、これらのアドレスを大規模ネットワークから見えないようにする。モバイルＩＰは、動作するシステムを組み込み、構成するために、かなりの努力を必要とする。
【０００７】
ローミング問題の別の解決手法は、Ａｌｅｘ ＳｏｎｒｅｎとＨａｒｉ Ｂａｌａｋｒｉｓｈｎａｎの論文：”Ａｎ Ｅｎｄ−ｔｏ−Ｅｎｄ Ａｐｐｒｏａｃｈ ｔｏ Ｈｏｓｔ Ｍｏｂｉｌｉｔｙ”、Ｍｏｂｉｃｏｍ ２０００予稿集、２０００年８月発行に記載されている。モバイルＩＰの限界を認識したＡｌｅｘ ＳｏｎｒｅｎとＨａｒｉ Ｂａｌａｋｒｉｓｈｎａｎは、確立したコネクションをクライアントの新しいＩＰアドレスに再割当できる付加的な機構を伝送制御プロトコル（ＴＣＰ）に加えることによって途切れることの無い移動性が達成できることを提案している。このようにして、クライアントがローミングするとき、クライアントは、新しいＩＰアドレスを自由に獲得し、クライアントの空いているコネクションの全てを再割当する。しかし、この手法には多数の制限がある。この手法は、全てのクライアント及びサーバ上のＴＣＰ実施に変更を加える必要があるが、このようなことは行われる見込みがない。装置のＩＰアドレスを認識するアプリケーションは、装置がローミングするときに生じるＩＰアドレス変更を知り、かつ、取り扱う必要がある。この解決手法は、ユーザ・データグラム・プロトコル（ＵＤＰ）／ＩＰベースの通信には不都合である。最後に、このシステムは、遠隔ホストがクライアントの現在ＩＰアドレスを知るために動的ドメイン名サービス（ＤＤＮＳ）に依拠している。しかし、ＤＤＮＳは、未だ完全には配備されていない。
【０００８】
従って、従来技術における制限を受けることなく、途切れることの無いネットワーク接続性を可能にする近距離無線解決手法が必要である。
【０００９】
〔発明の概要〕
本発明は、近距離無線コンピューティング装置を用いて途切れることの無い接続性とローミングを可能にする方法、システム、及び、コンピュータプログラム命令を対象とする。ここに開示された技術は、様々な装置、特に、低電力携帯型装置が、複数のネットワークアクセスポイントへ接続性を確立することにより、（ビルディング内で見受けられるような）ネットワーク環境を途切れること無く移動できるようにする。これらのネットワークアクセスポイントは、ハンドオフ管理ポイント（ＨＭＰ）と呼ばれる。途切れることの無いネットワーク接続性は、ユーザ認証サービス、装置アドレス割当サービス、及び、ハンドオフサービスを行うため、これらのアクセスポイントをコア・サーバと連係させることにより実現される。
【００１０】
〔発明の詳細な説明〕
以下、本発明の好ましい実施例が示されている添付図面を参照して本発明を詳細に説明する。添付図面を通じて同じ番号は同じ構成要素を表す。
【００１１】
本発明は、本発明の一実施例により一つ以上のコンピュータ読み取り可能な記録媒体に具現化された方法、装置（システム）、及び、コンピュータプログラム命令のフローチャートを参照して説明される。当業者には明らかであるように、これらのフローチャートは、本願に開示された新規性のある概念から逸脱することなく、本発明の好ましい実施例が実現される方式を例示するだけであって、（例えば、一部のケースに表された操作の順序を入れ替えるおとにより、或いは、操作を結合することにより）フローチャートに示されたロジックに変更を加えてもよい。
【００１２】
図１には、本発明の実施形態に関係した４個の主要コンポーネントが示されている。これらのコンポーネントは、（１）クライアント装置と、（２）ハンドオフ・マネージメント・ポイントと、（３）ハンドオフ・コア・サーバと、（４）アプリケーション・サーバである。次に、本発明に関係している各コンポーネントを説明する。
【００１３】
本発明と共に使用される装置１２０（例えば、ラップトップコンピュータ、ハンドヘルドコンピュータ、ＰＤＡ、携帯電話など）は、各々に、近距離無線通信機能が装備されている。使用される特定の通信機能は、本発明の一部を構成するものではなく、８０２．１１方式、Ｂｌｕｅｔｏｏｔｈ方式、或いは、類似した技術（未開発の記述でもよい）のような様々な技術を含む。無線付属品（アタッチメント）は装置に内蔵してもよい。或いは、無線付属品は他の方式でも利用可能であり、例えば、プラグインカード（例えば、ＰＣＭＣＩＡ（パーソナル・コンピュータ・メモリ・カード国際協会カードのようなカード）を用いて利用され、或いは、ドングルを（即ち、ＵＳＢ（ユニバーサル・シリアル・バス）ポート、若しくは、ＲＳ２３２ポートに連結されるプラグイン装置）取り付けることによって利用されるが、これらの例には限定されない。
【００１４】
ＨＭＰ（ハンドオフ管理ポイント）１１０は、二つのネットワークインタフェースを具備する。一方は、（装置１２０と通信するため使用される）近距離無線リンクであり、他方は、ローミング中の装置１２０によってアクセスされる目標アプリケーションが存在するネットワーク環境（例えば、イントラネット又はインターネットのような環境）へのリンクである。好ましい実施例では、後者の第２のネットワークは、イーサネット（登録商標）インタフェースであるが、トークンリング（ＩＥＥＥ  ８０２．５）、８０２．１１、或いは、その他のプロトコルのような別のプロトコルを使用してもよい。装置は、ネットワーク環境との間でネットワークパケットを送受するチャネルとしてＨＭＰを使用する。
【００１５】
中央ハンドオフ・コア・サーバ１００（以下では、コアと呼ぶ）は、ネットワーク基盤設備に備わり、装置１２０のユーザが環境内をローミングするとき、ＨＭＰ１１０へサービスを提供する。
【００１６】
１台以上のアプリケーション・サーバ１３０は、装置が近距離無線ネットワークをローミングするとき、装置１２０によってアクセスされるアプリケーションを提供する。
【００１７】
コアは、好ましくは、二つのデータリポジトリ（データ集積部）を維持し、装置１２０が一方のＨＭＰ１１０から別のＨＭＰへ途切れること無くローミングできるようにするためデータリポジトリを試用する。これらのリポジトリは、ＨＭＰレジストリ（記録部）及びＡＵＬレジストリ（記録部）と呼ばれる。
【００１８】
ＨＭＰレジストリは、コアによってサポートされているローミングドメイン（領域）に関与している現在判明したＨＭＰの記録を保持する。好ましい実施例において、ＨＭＰレジストリは、特定のＨＭＰが最初にコアへ登録された時、特定のＨＭＰがその登録事項を更新した最近の時、及び、特定のＨＭＰの現在の登録が満了する時を記録する。ＨＭＰ登録事項については後で詳述する。このレジストリにおける付加フィールドは、好ましくは、ＨＭＰのＭＡＣアドレスと、ＨＭＰのＩＰアドレスと、ＨＭＰに関するオプショナル識別用情報（例えば、管理者割当名、製造者、モデル番号などの識別用情報）と、（オプション的には）ＨＭＰの現在の物理的位置（ロケーション）と、を含む。
【００１９】
ＨＭＰレジストリ２００の一例は図２に示されている。ＨＭＰのＭＡＣアドレス（列２１０）は、好ましくは、ＨＭＰレジストリ内のエントリ（記入事項）へアクセスするためのキーとして使用される。列２２０に示された例示的なＩＰアドレスはＩＰｖ４アドレスであるが、これは、例示を目的とするものであり、限定を目的とするものではない。よって、その他のアドレス形式、特に、ＩＰｖ６を代わりに指定してもよい。例示的なＨＭＰ２７０とＨＭＰ２８０に対する初期登録時が列２３０に示されている。列２４０には、各ＨＭＰが最近にリフレッシュされた更新時が示され、各ＨＭＰの登録は、列２５０に示された満了時に終了する。最後に、列２６０には、各ＨＭＰに関する様々な情報、例えば、装置のタイプや装置が実際に存在する場所のような情報が与えられる。
【００２０】
ＡＵＬレジストリは、コア・サーバのドメイン内でＨＭＰを使用している現在活動中のユーザの記録を保持する。このレジストリのフィールドは、好ましくは、各活動中ユーザの名前若しくは識別子（以下では、簡単のためユーザ名とする）と、そのユーザが使用している装置のＩＰアドレスと、装置のＭＡＣアドレスと、装置が現在通信するため経由する一つ以上のＨＭＰのＭＡＣアドレスと、を含む。
【００２１】
ＡＵＬレジストリ３００の一例は図３に示されている。装置ＭＡＣアドレス（列３３０）は、好ましくは、ＡＵＬレジストリのエントリにアクセスするためキーとして使用される。或いは、ユーザ名３１０、装置ＩＰアドレス３２０、及び／又は、装置ＭＡＣアドレス３３０のある種の組み合わせが、本発明の特定の実施形態の要求に応じて、キーとして使用されることもある。図２を参照して説明したように、列３２０に示されている例示的なＩＰアドレスは、例示の目的のため、ＩＰｖ４アドレスとされている。列３４０に示されるように、特定のユーザが使用中である装置は、この時点で、単一のＨＭＰ（ユーザ３５０の場合）、或いは、複数のＨＭＰ（ユーザ３６０の場合）と関連付けられる。
【００２２】
ＨＭＰがその存在をコアに通知し、この情報が装置をあるＨＭＰから別のＨＭＰへ途切れること無くローミングさせるためコアによって使用される方式は、図４乃至７に示されたロジックを参照して説明される。
【００２３】
ＨＭＰは、ブートし、次に、ネットワークに存在を知らされ、コアとの接続性を維持するためネットワークを介して通信する。この接続性は、ＨＭＰがユーザ装置のためのハンドオフに関してコアと協調し得ることを保証するため、並びに、各ＨＭＰが機能しているかどうか、或いは、各ＨＭＰが故障しているか、各ＨＭＰが切り離されているか、若しくは、各ＨＭＰが利用できなくなっているかどうかをコアが知ることを保証するために必要である。図４には、この処理が行われるロジックの好ましい実施例が示されている。
【００２４】
ＨＭＰがブートするとき、ＨＭＰはＩＰアドレスを取得する（ステップ４００）。好ましい実施例において、このＩＰアドレスはＤＨＣＰを使用して取得される。勿論、開示された新規性のある概念から逸脱することなく、他のアドレス判定方式（例えば、ＢＯＯＴＰ又はＲＡＲＰプロトコル）を使用しても構わない。
【００２５】
ＨＭＰは、ステップ４１０に示されるように、コアのロケーション（位置）も判定しなければならない。コアのロケーションの検出は、標準的な発見プロトコルの組の中の何れか一つの発見プロトコル、例えば、サービス・ロケーション・プロトコル（ＳＬＰ）、ＤＨＣＰ、又は、ドメイン名サービス（ＤＮＳ）を使用する。好ましい実施例では、ＤＨＣＰが使用される。従来技術で知られるように、ＤＨＣＰサーバは、クライアントに、ＩＰアドレスだけではなく、他のコンフィギュレーション情報（例えば、ＤＮＳサーバのアドレス、ローカル・ルータのアドレスなどのような情報）を与えるように設定可能である。この特徴は、ＤＨＣＰサーバがＨＭＰのＩＰアドレスの他にコア・サーバのアドレスをブート中のＨＭＰに供給するように、システム管理者にＤＨＣＰサーバを設定させることによって、本発明と共に有利に使用される。かくして、コア・サーバ・アドレスがＤＨＣＰサーバによってＨＭＰのＩＰアドレスと共に供給された場合、このコア・サーバ・アドレスは、ステップ４１０の結果として使用される。さもなければ、ＨＭＰは、（例えば、ＳＬＰ問い合わせを使用して）この情報の明示的な要求を発行する。
【００２６】
各ＨＭＰは、自分の存在（プレゼンス）をコア・サーバに通知し続ける必要があり、この存在情報は（上述の通り）コアによってそのＨＭＰレジストリに記録される。ＨＭＰプレゼンス・プロトコルは、各ブート中のＨＭＰをコアに登録するため使用される。このプロトコルは、ＨＭＰが登録要求をコア・サーバへ発行することから始まる（ステップ４２０）。登録要求は、ＨＭＰのＭＡＣアドレスとＩＰアドレスを区別し、オプションとして、他の識別用情報を区別する。図２のＨＭＰレジストリの例の列２１０、２２０、及び、２６０を参照せよ。
【００２７】
オプションとして、ＨＭＰは、特定の登録有効期間を要求する（ステップ４３０に関してより詳細に説明される。）。このオプションが使用されるとき、ＨＭＰによって要求された有効期間値は、好ましくは、登録要求メッセージにオプションフィールドとして指定される。このメッセージには、特定の実施形態の要求に応じて、多数のオプションフィールドが存在してもよく、各オプションフィールドは、好ましくは、その存在を示すために使用される既知の数値識別子を含む。ペア（オプション識別子、オプション値）は、登録要求メッセージに指定され、この場合に、オプション識別子は、これが登録有効期間として使用されるべき情報であることを示す。好ましくは、この値は、オフセットとして指定され、このオフセットは、（図２の列２５０に示されるように）実際の満了時を計算するためコアによって使用される。
【００２８】
登録要求の発行後、ＨＭＰは、コアからの応答を待機する。判定ステップ４３０に示されるように、応答が受信されると、ＨＭＰは、その応答が登録の成功を表すかどうかを判定する。この応答が否定的である場合、ステップ４９０で、ＨＰＭは、好ましくは、そのＨＭＰ自体の動作を停止させる（無効にする）。しかし、登録処理は、ステップ４００、４１０又は４２０などでロジックを再開することにより、いつでも再開することができる。
【００２９】
判定ステップ４３０への応答が肯定的である場合、これは、登録の成功を表し（即ち、図５を参照して詳述するように、登録がコアによって承認されたことを表し）、制御はステップ４４０へ進む。好ましい実施例では、コア・サーバからの応答は、このＨＭＰの登録の有効期間を示す。好ましくは、この値は、コアによってオフセットとして送信され、ＨＭＰは、実際の満了時を計算するためこのオフセットを使用する。この技術は、コアとＨＭＰの間のクロック差を考慮する。或いは、特定の日時がコアによって満了時として送信されてもよい。登録有効期間は、オプションとして、コアとＨＭＰの一方若しくは両方が予め分かっている。有効期間の長さを決める方法は、設計上の事項であり、本発明の一部を形成しない。代替的な例には、コンフィギュレーションファイル（或いは、コンフィギュレーションレジストリ、データベースなど）に固定値を指定すること、管理ツールを用いて固定値を指定すること、値をコア内にハード・コーディングすること（及び／又は、ＨＭＰが登録要求中に有効期間要求パラメータを設定する場合には、ＨＭＰ内にハード・コーディングすること）、環境又はその他の要因（登録処理、及び、特に、登録済みＨＭＰの再登録がコアに処理負荷を加える場合には、現在のコア負荷のような要因）に基づいて有効期間を動的に決定すること、などが含まれる。
【００３０】
好ましい実施例において、各ＨＭＰに対する登録有効期間の長さは同じである。或いは、本発明の一実施形態は、ＨＭＰの間で異なる有効期間を使用する。例えば、特定のＨＭＰが平均的な値よりも高い頻度で故障することが分かっている場合、又は、ＨＭＰがかなり頻繁に移動されることが分かっている場合、これらの要因を考慮した登録有効期間をＨＭＰに割当てることが望ましい。他の一例として、新たに登場したＨＭＰは短い期間が割当てられ、これに対し、かなり長期間に亘ってコアが認識しているＨＭＰには、かなり長い有効期間が割当てられる（おそらく、新しいＨＭＰは移される可能性が高いが、長期間存在するＨＭＰは移される可能性が低いということが認められる。）。
【００３１】
好ましい実施例のコア・サーバは、好ましくは、登録有効期間に関して混合動作モデルをサポートする。混合動作モデルでは、ＨＭＰが有効期間値を与えた場合、この有効期間値が承認され、ＨＭＰが有効期間値を与えなかった場合、コアがこのＨＭＰに有効期間値を与える。勿論、コアは、上述のコア処理負荷のような静的要因若しくは動的要因を用いて、ＨＭＰによって与えられた有効期間の値を修正しても構わない。或いは、特定の実施態様のためのコア・サーバは、（ＨＭＰが供給した値を無視して）常に有効期間を生成し、又は、ＨＭＰからの値を常に予測する（この場合、デフォルト値が、好ましくは、この情報を与えないＨＭＰのために使用される。）。
【００３２】
コアから受信された登録応答が肯定的であり、制御がＨＭＰプレゼンス・プロトコルに関してステップ４４０へ達したとき、ＨＭＰは、自分の登録有効満了時が到来するまで待機し、次に、自分の登録を更新するため要求を実行する（ステップ４５０）。この登録満了及び更新（リフレッシュ）技術を使用することによって、ＨＭＰは、当該ＨＭＰが「活動状態（生きている」のままであり、かつ、機能中であることをコアへ定期的に通知し、コアからの応答は、（更新要求に対する応答が肯定的である場合）当該ＨＭＰのコア・ドメインへの登録及び参加が有効であることを当該ＨＭＰへ定期的に通知する。上述のように有効期間を指定することがあり得る更新要求の送信後、制御は、ステップ４３０へ進み、コアの応答を待機する（その処理を開始する。）。
【００３３】
上述のＨＭＰプレゼンス・プロトコルを使用することにより、ＨＭＰは、ブートすること、コンフィギュレーションを設定すること、管理者の介入無しにコア・サーバと一体化する。途切れることの無い接続性及びローミングを提供し、サポートすることは、簡単であり、かつ、費用効果率が優れているので、既存の手動設定された従来技術の無線ネットワークによる解決手法の多大な管理上の負担を軽減する。
【００３４】
次に、図５を参照してＨＭＰプレゼンス・プロトコルを実行するためコア・サーバで行われる処理を説明する。この処理は、ステップ５００から始まり、ステップ５００では、コアは、ＨＭＰから登録要求（又は、登録更新要求）を受信する。判定ブロック５１０において、コアは、この登録を承認するかどうかを判定する。登録要求は、特定の実施形態の要求に応じて、様々な理由によって拒絶される場合がある。例えば、コアが現時点において最大負荷で動作しているか、最大効率で動作しているか、又は、最大ライセンス限度で動作しているかのようなコアに関連した条件が評価され、これらの条件の評価に応じて、新しい登録が拒絶されることがある。また、このようなある種のコア関連条件に基づいて登録更新要求を拒絶することが望ましい。或いは、コアは、特定のＨＭＰが無効であること、頻繁に故障すること（よって、ネットワークに中断を生じさせること）、或いは、それ以外の機能障害を検出している場合があり、このような場合、ＨＭＰの登録（若しくは、登録更新）は拒絶される。図５のロジックに従ってコアによって処理されるべき新たに出現したＨＭＰのための登録メッセージ、及び、既知のＨＭＰのための登録更新メッセージは、説明の便宜上、以下では、簡単に登録要求メッセージと呼ぶ。
【００３５】
好ましい実施例において、コアの受容能力は、（１）購入されたライセンス数（固定数のＨＭＰのためのライセンス、固定数のサポートを受けるユーザのためのライセンス、及び／又は、固定数のユーザ装置のためのライセンスを含む）と、（２）現在トラヒック又はＣＰＵ負荷と、（３）コアのリソース上の記憶制限条件（上述のＨＭＰレジストリ及びＡＵＬレジストリがより大量の登録情報を取り扱い得るかどうかを含む）と、を含む要因に基づいている。オプションとして、シ例えば、セキュリティ目的のため登録を制限するため、ステム管理者によってセットされるべき他の収容能力情報のための能力が与えられる場合がある。
【００３６】
判定ステップ５１０に関する応答が否定的である場合（即ち、登録が拒絶される場合）、制御はステップ５９０へ進み、否定的な応答が要求元ＨＭＰへ送信される。要求が登録更新要求であるならば、サーバは、オプションとして、この拒絶されたＨＭＰに対する既存のＨＭＰレジストリ・エントリを削除してもよい。次に、制御はステップ５００へ進み、別の登録要求の入力を待機する。
【００３７】
判定ステップ５１０に関する応答が肯定的である場合、ステップ５２０で、コアは、要求元ＨＭＰが既にＨＭＰレジストリに登録済みであるかどうかを判定する。図２を参照して説明したように、ＨＭＰのＭＡＣアドレス（登録要求メッセージ中で受信される）は、好ましくは、ＨＭＰレジストリへのインデックスのためのキーとして使用される。
【００３８】
このＨＭＰに対するＨＭＰレジストリにエントリが見つかった場合、判定ステップ５２０では肯定的な結果が得られ、制御はステップ５３０へ進む。ステップ５３０において、レジストリ内のＨＭＰのエントリは、新しい登録満了時で更新される（上述の通り、新しい満了時は、ＨＭＰによって与えられた情報、或いは、これらの情報の組み合わせに基づいてコアが決定する。）。応答メッセージは、ステップ５９０でＨＭＰへ返還され、制御はステップ５００へ戻る。
【００３９】
このＨＭＰに対するＨＭＰレジストリ内でエントリが見つけられなかった場合、判定ステップ５２０で否定的な結果が得られ、新しいエントリがステップ５４０において作成される。現在日時と、上述の如く決定された有効期間情報の他に、この新しいエントリは、好ましい実施例では、登録要求メッセージ中で受信されるＨＭＰに関する情報を使用する。或いは、他のソースからの情報を使用してもよい。例えば、特定のＨＭＰが物理的に存在する場所に関する情報は、先にディレクトリ若しくはルックアップテーブルに記憶されたエントリを調べることによって獲得され、又は、この情報は、システム管理者（アドミニストレータ）によって実行される外部データエントリアプリケーションによって供給される。
【００４０】
新しいＨＭＰレジストリ・エントリの作成後、応答が要求元ＨＭＰへ返信され（ステップ５９０）、制御はステップ５００へ戻り、次の登録要求メッセージの到着を待機する。
【００４１】
尚、この処理の全体を通じて、更新が成功することなくＨＭＰ登録満了時が経過したＨＭＰレジストリ・エントリは、以前に存在していなかったかのように取り扱われることに注意する必要がある。定期的に、コアは、この状況を考慮するため、ＨＭＰレジストリから陳腐化したエントリを消去する。更に、ＨＭＰは、コアに対して、当該ＨＭＰの登録を終了するように明示的に通知し、この場合、コアは、ＨＭＰレジストリからＨＭＰのエントリを削除する。この終端ロジックは、図４又は５には示されていないが、当業者は、このような終端ロジックを追加する方法を容易に理解するであろう。好ましい実施例において、ＨＭＰレジストリ・エントリが満了するか、若しくは、削除された場合、同じＨＭＰを参照する対応したＡＵＬレジストリ（図３の列３４０を参照せよ）のエントリも削除される。
【００４２】
このようにして、コアは、コア・ドメインに存在するＨＭＰについて知り、ＨＭＰの情報を取得する。更に、コアは、ＨＭＰ故障又は切断を検出することができ、当該ＨＭＰの登録を更新しないＨＭＰに対するＨＭＰレジストリ・エントリ（及び、ＡＵＬレジストリ・エントリを消去する。
【００４３】
クライアント装置が近傍にあるＨＭＰを介して通信し、途切れることの無いローミングを達成する状況は、図６を参照して説明される。アクセス可能なＨＭＰ（即ち、装置の通信レンジ内にあるＨＭＰ）との通信を確立することにより、セッション又はチャネルが確立され、そのセッション又はチャネルを介して、ＩＰトラヒックが流れる。このＩＰトラヒックは、ＨＭＰ及び／又はコアによって、宛先へのルートが決められる。例えば、Ｂｌｕｅｔｏｏｔｈ環境の場合、このチャネルは、好ましくは、ＢｌｕｅｔｏｏｔｈのＲＦＣＯＭＭレイヤを介して確立されたＰＰＰリンクである。８０２．１１環境の場合、このチャネルは、好ましくは、ＩＰトラヒックが最初にＨＭＰへ流れたときに、気付かれること無く（暗示的に）確立される。好ましい実施例では、認証処理は、通信チャネルが巧く確立される前に、接続している装置のユーザを認証するため実行される。コア・サーバは、好ましくは、この目的のため、ＲＡＤＩＵＳインタフェースを実現する。ＲＡＤＩＵＳ（リモート認証ダイヤル・イン・ユーザ・サービスは、２０００年６月発行のＲＦＣ ２８６５に文書化されている。ユーザ名及びパスワードは、遠隔エンドポイント（本発明におけるＨＭＰ）へ供給される。ＰＰＰは、例えば、ＰＰＰリンク設定の一部として、この情報をＨＭＰへ伝達する。ユーザ名及びパスワードの受信後、ＨＭＰは、この情報を認証サーバ（本発明では、コア・サーバ）へ通信するためＲＡＤＩＵＳを使用する。
【００４４】
通信チャネルの確立後、クライアント装置は、ＩＰアドレスを取得するため、ＤＨＣＰアドレス割当要求を発行する（図６のステップ６００）。
【００４５】
好ましい実施例において、クライアント装置は、無線ネットワーク環境の中をローミングするとき、同じＩＰアドレスを使用する。これにより、クライアント装置は、実行中の任意のアプリケーションとの継続的な接続性を維持することが可能になる。ＩＰアドレスは、コア・サーバによって割当てられ、コアは、特定の装置からの全てのＤＨＣＰ要求が、コア・ドメインにおけるこの装置の継続中のセッションの存続期間を通じて同じ（一定の）ＩＰアドレスを用いて応答されることを保証する。尚、装置のセッションは、例えば、装置がＨＭＰによるサービスを受けないエリア内を移動している間、短期間に亘って一時的に中断される。好ましい実施例では、コアは、満了タイマ値を使用してこのタイプの一時的な中断を監視し、これにより、他のＨＭＰとの通信を確立するまでは、当該ＨＭＰのＩＰアドレスを保持する。この点については、ＡＵＬレジストリ内のエントリの維持に関して詳述する。満了タイマとして使用される最適時間長は、設計上の個別の事項である。
【００４６】
ステップ６００においてクライアント装置によって発行されたＤＨＣＰ要求は、クライアント装置が目下通信しているＨＭＰによって受信される。ＨＭＰは、このＤＨＣＰ要求を要求メッセージにカプセル化し、このカプセル化メッセージをコア・サーバへ転送する（ステップ６１０）。転送された要求は、所定の既知のポート番号を使用して指定されたコアのポートへ送信される。指定されたポート番号は、特に、本発明と共に使用するため選択してもよい。或いは、転送されたメッセージがＨＭＰから転送されたＤＨＣＰ要求であることを判定するため、このメッセージを使用できるならば、ＤＨＣＰポート番号のように既に割当てられているポート番号をこの目的のため再使用してもよい。
【００４７】
ステップ６１５において、コアは、ＤＨＣＰ要求を受信し、カプセル化を解除する。コアは、次に、この要求からクライアント装置のＭＡＣアドレスを検査し、判定ステップ６２０で、コアのＡＵＬレジストリ内にこのＭＡＣアドレスに対するエントリが既に存在するかどうかを判定する。エントリが既に存在する場合、制御はステップ６３５へ進み、ＡＵＬレジストリ・エントリからの既存のＩＰアドレスが要求元装置へ割当てるため選択される。これに対して、既存エントリがＡＵＬレジストリに存在しない場合、制御はステップ６２５へ進み、コアは、新しいＡＵＬレジストリ・エントリを作成する。好ましくは、転送されたＤＨＣＰ要求からの情報は、図３の列３１０、３３０及び３４０に示されるようにＡＵＬレジストリ値を作成する際に使用される。コアは、新しいＩＰアドレスを要求元装置に割当し（ステップ６３０）、そのアドレスを当該装置のため新たに作成されたＡＵＬレジストリ・エントリに記憶する（図３の列３２０に示されている）。
【００４８】
ステップ６３０又はステップ６３５の処理後に、コアは、夫々、新たに作成されたＩＰアドレス又は獲得されたＩＰアドレスを使用して、そのＤＨＣＰ応答を生成する。ステップ６４５において、コアは、この応答をカプセル化し、この応答をＨＭＰへ転送する。このＨＭＰはＤＨＣＰ要求を転送したＨＭＰである。ＨＭＰは、応答を受信し、応答のカプセル化を解除し、この応答を要求元クライアント装置へ転送する（ステップ６５０）。ステップ６５５で応答を受信した後、クライアントは、更なる通信のため使用すべきＩＰアドレスが分かる。
【００４９】
このように、クライアントは、標準的なＤＨＣＰ要求を実行し、その要求は、他のＤＨＣＰサーバがＬＡＮ上に存在するかどうかとは無関係に、コアによって常に処理される。その上、特定の装置による各ＤＨＣＰ要求は、どのＨＭＰが要求を受信したかとは無関係に、常に同じＩＰアドレスの割当を生じる。好ましい実施例によれば、二つ以上のＨＭＰが、ステップ６００の処理によって生じた特定のクライアントのＤＨＣＰ要求を受信した場合、各ＨＭＰは、その要求をコアに転送する。各要求は、同じクライアントＭＡＣアドレスを識別するので、コアは、図６のアルゴリズムに従って、同じＩＰアドレスを要求元装置に割当て、このＩＰアドレスを各ＨＭＰへの応答の際に返信する。各ＨＭＰは、応答を装置へ転送し、装置は、同一のＩＰアドレス割当情報を含む重複した応答を受信する。
【００５０】
次に、図７のフローチャートを参照して、クライアント装置が無線ネットワーク内をローミングするときに、クライアント装置のハンドオフが行われる処理を説明する。
【００５１】
コア・サーバは、ＡＵＬレジストリを通じて、各装置が現在の通信のために使用しているＨＭＰを記録する。この情報を最新状態に保つことは、ＨＭＰによって実現されたハンドオフ・プロトコルによって促進される。ハンドオフ・プロトコルの性質は、通信チャネルが装置とＨＭＰとの間で確立される状況に依存する。次に、明示的（エクスプリシット）環境及び暗示的（インプリシット）環境と呼ばれる二つの代替的な例について説明する。
【００５２】
明示的環境は、装置が、例えば、ＰＰＰリンクを確立することによって、ＨＭＰへの接続を明示的に要求する場合に使用される。通信チャネル確立メッセージが受信されたとき、ステップ７００における判定の結果は肯定的であり、処理はステップ７１０へ進み、さもなければ、処理はステップ７０５へ進む。この明示的環境において、ＨＭＰは、受信メッセージから装置のＭＡＣアドレスを取り出し（ステップ７１０）、装置のＭＡＣアドレス及びＨＭＰのＭＡＣアドレスを含む通知をコアへ発信する。尚、ＰＰＰコネクションが確立したとき、クライアントは、ユーザ名を与え、ステップ７１０において通知メッセージを送信する際に、ＨＭＰが現在チャネルを使用しているユーザをコアに通知できるようにさせる。
【００５３】
暗示的環境は、装置がＨＭＰへ気付かれずに接続するとき、例えば、ＨＭＰがこれまで知られていない装置によって生成された新しいＩＰトラヒックを検出したときに使用される。暗示的接続が確立したとき、ステップ７０５の結果は肯定的であり、処理はステップ７１０へ続き、さもなけば、図７によれば、ステップ７５０及び７５５に関して説明するように、ＨＭＰハンドオフ・プロトコルがクライアント切断を検査することが分かる。この暗示的環境の場合、ＨＭＰは、受信トラヒックから装置のＭＡＣアドレスを獲得し（ステップ７１０）、上述のようにコアへ通知を送信する（ステップ７１５）。
【００５４】
コアがＨＭＰから新しい通信チャネルの通知を受信したとき（ステップ７２０）、コアは、ＨＭＰによって通知メッセージに与えられた装置のＭＡＣアドレスを使用してこの装置に対するエントリが存在するかどうかを判定するため、ＡＵＬレジストリを検査する（ステップ７２５）。エントリが見つかった場合（即ち、ステップ７２５における判定の結果が肯定的である場合）、ステップ７３０において、通知元ＨＭＰのアドレスが装置によって現在使用されているＨＭＰのリストに加えられる。たとえば、図３の列３４０を参照のこと。これに対して、エントリが見つからない場合、（上述のように）好ましくは、装置のＭＡＣアド得Ｒ巣をキーとして使用するステップ７３５で、新しい装置エントリが作成される。この新しい装置エントリは、好ましくは、ＩＰアドレスが空白（ブランク）であり（列３２０を参照せよ）、通知元ＨＭＰのＭＡＣアドレスを記録する（列３３０を参照せよ）。ユーザ名が通知メッセージ内に与えられている場合、この情報も新しい装置エントリに記録される（列３１０を参照せよ）。
【００５５】
クライアントの切断は、好ましい実施例のＨＭＰハンドオフ・プロトコルによって取り扱われる。ＨＭＰによって評価されているハンドオフ・イベントが明示的通信設定と暗示的通信設定のどちらでもない場合、制御は、判定ブロック７５０に達し、明示的な切断が行われたかどうかが調べられる。好ましい実施例では、この明示的な切断は、クライアント装置から明示的な終了メッセージを受信した結果である。このようなメッセージが受信されたとき、ステップ７５０におけるテストの結果は肯定的であり、処理はステップ７６０へ続く。
【００５６】
判定ステップ７５０におけるテストの結果が否定的である場合、ステップ７５５で、暗示的な終了が行われたかどうかが調べられる。このテストの結果が肯定的である場合、処理はステップ７６０へ進む。暗示的な終了は、ＨＭＰが（実装上の固有の条件を使用して）装置との通信チャネルは終了されるべきであることを判定したときに行われる。暗示的な終了は、タイムアウト期間中に装置からトラヒックが入らず、その後、ＨＭＰが、装置は故障している、装置はスイッチが切られている、或いは、装置は通信を終了しているという結論に達した場合にも生じる。タイムアウト期間は、プロトコル専用であり、明示的環境で使用されるプロトコルに依存し、或いは、このタイムアウト期間は、ＨＭＰが実現されている特定のシステムの要求に応じて判定される。
【００５７】
判定ステップ７００、７０５、７５０及び７５５における全ての結果が否定的である場合、制御はステップ７００へ戻り、次のハンドオフ・イベントを待機する。
【００５８】
特定の装置に対して明示的な終了又は暗示的な終了が行われたときに、ステップ７６０に達する。ＨＭＰは、終了通知をコアへ送信し、このメッセージは、装置のＭＡＣアドレス及びＨＭＰのＭＡＣアドレスを含む。コアがＨＭＰからこの通知を受信したとき（ステップ７６５）、コアは、装置のＭＡＣアドレスに対するエントリを探すため、ＡＵＬレジストリを調べる（ステップ７７０）。このレコードが見つかった場合（即ち、判定ステップ７７０の結果が肯定的である場合）、通知元ＨＭＰは、装置が現時点で通信している相手側のＨＭＰのリストから削除される（ステップ７７５）。この特定の装置に対するエントリが見つからない場合、判定ステップ７７０におけるテストの結果は否定的である。これは、コア・サーバの実施態様に応じて適切に処理されるエラー条件であり、適切であると考えられるエラー条件の処理には、この状況を無視すること、エラーメッセージをファイルに記録すること、エラーメッセージをシステム管理者のユーザ・インタフェース・ディスプレイに表示させること、などが含まれる。ステップ７７０の結果が否定的である場合、或いは、ステップ７７５の処理の後に、制御はステップ７００に戻り、次のＨＭＰハンドオフ・プロトコル・イベントを待機する。
【００５９】
ＨＭＰからコアへハンドオフ情報を通信するこの技術を使用することにより、コアは、時間的に任意の時点でドメイン内の各装置によって使用されているＨＭＰについての現在の見通しを維持する。装置がネットワークをローミングするとき、各装置の現在のＨＭＰ識別情報は、ＡＵＬレジストリで更新される。
【００６０】
更に、ある特定の時間にどのユーザがどの装置及び／又はそのＨＭＰを使用していたかについての履歴は、ＡＵＬのユーザ・ロケーション情報が更新されたときに、ログファイルに情報を記録することによって作成される。図８は、このようなログファイルの一例を示す図である。この場合、ログファイルは、ユーザ名またはその他の識別子（列８１０）と、分かっているならばユーザ装置の装置タイプ及びシリアル番号（列８２０）と、使用されたＨＭＰの物理的位置及び／又はシリアル番号（もし分かるならば）（列８３０）と、このＨＭＰが使用され始めた開始時（列８４０）と、を記録する。装置のシリアル番号を使用する代わりに、或いは、装置のシリアル番号に加えて、装置のＭＡＣアドレスが使用される。同様に、ＨＭＰのＭＡＣアドレスは、ＨＭＰのシリアル番号の代わりに、或いは、シリアル番号に加えて使用してもよい。図８の例の場合、ＨＭＰを使用し始めた開始時（時刻）だけが記録されている。終了時（時刻）は、例えば、同じパームパイロット装置を使うユーザ「ボブ」に対して多数のログエントリが存在することを検出することによって、プログラム的に推定され得る。例示的なログファイルを調べることによって、ボブが最初にシリアル番号９３４１４Ａ３のＨＭＰを使用し（行８５０）、次に、１７秒後に、使用するＨＭＰをシリアル番号９３４１３Ｂ１のＨＭＰに変更し（行８７０）、次に、１４秒後に、使用するＨＭＰをシリアル番号９３４１４Ａ３のＨＭＰに戻したこと（行８８０）が判明する。このように、ボブは、相互にかなり接近している少なくとも二つのＨＭＰが設けられたエリア内を自分のパームパイロットを使用しながら移動している。或いは、ログファイルは、各ＨＭＰの使用について明示的な終了時を収容することができる。この場合、コアは、装置が通信チャネルを終了した旨の通知、又は、装置があるＨＭＰから別のＨＭＰへ移動した旨の通知を受信した後、この終了時を作成する。
【００６１】
図７を参照して説明したＡＵＬレジストリの追加及び削除の他に、コア・サーバは、ＨＭＰからの通知メッセージによって影響されないＡＵＬレジストリを維持してもよい。上述の通り、ＨＰＭの登録が満了したとき、或いは、ＨＭＰが終了し、再登録に失敗したとき、好ましい実施例のコア・サーバは、ＡＵＬレジストリの全てのエントリからＨＭＰのＭＡＣアドレスを削除する。その上、コアは、好ましくは、エントリが動作状態のＨＭＰとある期間に亘って関連付けられていないとき、即ち、ユーザが十分に長期間に亘ってＨＭＰとの間に動作状態の通信チャネルを持っていないときにＡＵＬレジストリからエントリを除去するため、満了タイマを使用する。満了タイマは、好ましくは、ＨＭＰによるサービスの対象ではないエリアを一時的に移動する装置が、ＡＵＬレジストリから当該装置のエントリを消去されることなく、別のＨＭＰのサービスエリアに入るまで接続状態を維持できるように十分な長さがある。好ましくは、この満了タイマのため使用する値、及び、ステップ７５５に関して説明したタイムアウト期間のため使用する値は、従来技術において公知である技術を使用して、コンフィギュレーションファイル又はその他の同様に保存された情報を調べることによって決定される。
【００６２】
本発明のオプション的な一局面によれば、コア・サーバは、近距離無線ネットワーク用のロケーション・ベース・セキュリティ機能を提供することが可能である。上述の通り、クライアント装置によって生成された全てのネットワークトラヒックは、クライアントが使用中のＨＭＰと、コア・サーバとの間を通り抜ける。コアは、特定の実施態様の要求に応じて、このトラヒックをフィルタ処理する。例えば、コアは、トラヒックを発生したユーザ（又はユーザのクライアント装置）のアイデンティティ（識別情報）及び／又はロケーション（位置情報）などを含む多数の要因に基づいて、選択されたアプリケーション・サーバ及び／又はアプリケーション・プログラムへ向けられたトラヒックを通過させない。好ましい実施例において、このフィルタ処理は、コアに関連付けられたポリシーファイルを使用して取り扱われる。コアに到着したクライアント装置向けのトラヒックは、同じポリシーファイル又は異なるポリシーファイルを用いて、同じようにフィルタ処理される。ポリシーファイル内の情報は、好ましくは、（例えば、簡単なテキストエディタを使用して）システム管理者によって作成される。或いは、エントリは、本発明の一部を形成しない技術を使用して、（ポリシー情報のプログラム的な生成を含む）他の方法で使用しても構わない。
【００６３】
図９は、本発明と共に使用され得るポリシーファイル９００の一例の説明図である。本例に示されるように、９１０では、ボブのサーモスタット（Ｂｏｂ’ｓ  ｔｈｅｒｍｏｓｔａｔ）９１５として指定されたリソース向けのトラヒックは、ボブ（Ｂｏｂ）という名前のユーザ９２０からのトラヒックに限り許可され、一方、このユーザは、ボブのオフィス（Ｂｏｂ’ｓ  Ｏｆｆｉｃｅ）９２５として示されたロケーションにいる。即ち、ボブは、他の場所ではなく自分のオフィスに居るときには、自分のサーモスタットを変更することが可能であるが、それ以外の全ての変更は、サーモスタット設定値を変更するようなアプリケーション・プログラムに到達する前に、コアによって除かれる（即ち、拒絶される）。この第１の例のエントリ９１０は、トラヒックを転送させることができる条件を明示的に指定する制限的ポリシーの用法を例示している。他の例として、エントリ９３０に示されているように許可的ポリシーを指定することも可能である。このポリシーエントリ９３０は、トラヒックが転送されることを妨げる条件を明示的に指定し、それ以外の全てのトラヒックは許可される。この場合、リッチ（Ｒｉｃｈ）という名前で指定されたユーザ９４０から発生したトラヒック、或いは、ロビー（Ｌｏｂｂｙ）９５０というロケーションから発生したトラヒックは、ボブのプリンタ（Ｂｏｂ’ｓ  Ｐｒｉｎｔｅｒ）９３５として指定されたリソースへ到達することが排除され（拒絶され）、その他のトラヒックは許可される。
【００６４】
図９で使用されている構文は、例示のために使用されたものであり、構文はこの例に限定されるものではない。本発明のロケーション・ベース・セキュリティ機能が使用されるとき、コア・サーバは、類似した表記で指定されたプロセッシングポリシーエントリに適合する。自明ではあるが、このポリシー情報は、フラットファイル、データベースエントリ、ディレクトリエントリなどを含む様々な方法で記憶される。ポリシー情報の使用中に保護されるべきリソースは、実施態様に応じて大きく変化し、フィルタ処理条件を指定するため使用される条件付きロジックは、図９に示されるような一つ以上の条件を使用できる。
【００６５】
本発明の他のオプション的な局面によれば、アプリケーション・プログラミング・インタフェース（ＡＰＩ）は、アプリケーション・サーバ上で動作するアプリケーションがコアのＨＭＰレジストリ、ＡＵＬレジストリ、ログファイル、及び／又は、コンフィギュレーションファイル（上述のポリシーファイルのようなファイルを含む）を問い合わせることを許可するようにされる。リモートＡＰＩが作成される方法、及び、リモートＡＰＩが動作する状況は、従来技術において公知であり、これ以上の詳細な説明は行わない。これらのＡＰＩを用いることにより、アプリケーションは、多数の有用な機能を実行することができ、それらの機能の中には、例えば、現在動作状態のＨＭＰの問い合わせ、ＨＭＰに関する識別用情報（ＨＭＰレジストリに情報が保持されているならば、ＨＭＰが見つかった場所を含む）の判定、アプリケーションに現在アクセスしているＨＭＰがその登録情報を更新する時期が近づいているかどうかの判定、現在動作状態のユーザの組、並びに、これらのユーザが現在接続しているＨＭＰの識別、などが含まれる。
【００６６】
アプリケーションは、ユーザのために個人向けのロケーション・ベース・サービスを提供するため、ＨＭＰレジストリ、ＡＵＬレジストリ、ログファイル、及び／又は、ポリシーファイルから収集された情報を使用する。本発明を使用するのに好適である無線通信環境は近距離であるため、ロケーション情報は、かなり粒度が精細であり（例えば、Ｂｌｕｅｔｏｏｔｈ環境の場合、１０メートルに制限される）、微視的なロケーション・ベース・サービスを構築することができる。このようなロケーション・ベース・サービスの例には、例えば、「最も近いプリンタへ印刷する」、「ユーザが正面扉の近くにいるとき、ゴミを取り去ることをユーザに気付かせる」、「局所的な室内灯を操作する」（又は、おそらく、局所的な機器若しくは温度）などのサービスが含まれる。
【００６７】
本発明が動作する環境は、複数のコア・サーバを利用し、各コア・サーバが多数のＨＭＰを管理することによって拡張可能である。この場合、コア管理サーバが複数のコア・サーバに動作的に接続される。このコア管理サーバは、コア・サーバのためのサービスを提供し、このサービスには、モニタリングサービス、遠隔診断サービス、遠隔コンフィギュレーションサービス、或いは、その他の管理サービスの中の一つ以上のサービスが含まれる。これらのサービスは、好ましくは、上述したようなＡＰＩによって提供され、コア管理サーバが各コア・サーバに保持されている情報へアクセスすることを可能にさせる。このようにすることによって、管理者又はサービスプロバイダは、遠隔コア・サーバの組を簡単かつ柔軟に支援・維持することが可能である。
【００６８】
コア管理サーバ（図１の環境には図示されず）は、他のコア・サーバからは分離した自立型機能として実現してもよく、或いは、コア・サーバとして動作する装置に統合してもよい。更に、ある環境内の各コア・サーバは、必要に応じて、コア管理サーバとして動作できる機能性を含み、その結果として、管理機能のロケーションは、ある装置から別の装置へ動的に変化する。好ましくは、コア管理サーバは、受動的モードで動作し、コア管理サーバは常に動作状態ではあるが、そのサービスは、必要なときに限り（例えば、特定のコアを管理すること、ユーザが第１のコアによって管理されたホームネットワークから別のコアに管理された異種ネットワークへ移動できるようにすることなどが望ましいときに）呼び出される。
【００６９】
更に、コア・サーバは、コア管理サーバによって公表されたＡＰＩを使用して要求を行う。ＡＰＩをコア管理サーバに設けることによって実現される機能の例には、別のコアのロケーション又はアドレスを判定すること、他のコアとの通信を確立すること、或いは、その他のタイプのサービスを実行することが含まれる。
【００７０】
上記の通り、本発明は、従来技術の近距離無線ネットワーク解決手法よりも優れた多数の効果を奏する。本発明によれば、ユーザに途切れることの無い移動性を提供するために、クライアント装置上のオペレーティングシステム、ネットワーク用ソフトウェア、或いは、アプリケーションに変更を加える必要がない。ＨＭＰは、システム管理者が介入しなくても、自動的に設定を行い、登録をする。ＨＭＰの故障、及び、クライアント装置の故障は、自動的に検出され、処理される。クライアント装置があるＨＭＰから別のＨＭＰへ移動するときのクライアント装置のハンドオフは、クライアント装置には気付かれること無く（分からないように）処理される。システム管理者は、ＬＡＮ専用のサーバを設定若しくは実装する必要が無いので、管理上の負荷及び費用が従来技術による解決手法よりも著しく低減される。相互接続されたドメインが準備され、各ドメインのコア・サーバは、コア管理サーバによって管理される。
【００７１】
上記の好ましい一実施例の説明は、本発明を例示することを目的とするものであり、本発明を制限するために構成されたものではない。好ましい一実施例を説明したが、当業者には明らかであるように、開示された本発明の新規性のある事項及び効果から著しく逸脱することなく、この好ましい実施例に多数の変更を加えることが可能である。したがって、このような全ての変更は、本発明の範囲に含まれることが意図されており、本発明は、特許請求の範囲に記載された事項とそれらの均等物だけによって制限される。
【図面の簡単な説明】
【図１】
本発明の好ましい実施例に関係しているコンポーネントの構成図である。
【図２】
本発明の好ましい実施例によって使用されるＨＭＰレジストリの一例の説明図である。
【図３】
本発明の好ましい実施例によって使用されるアクティブ・ユーザ・ロケーション（ＡＵＬ）レジストリの一例の説明図である。
【図４】
本発明の好ましい実施例によってハンドオフ／マネージメント・ポイント（ＨＭＰ）がブートし、ネットワークへ接続するロジックを説明するフローチャートである。
【図５】
本発明の好ましい実施例によってハンドオフ・コア・サーバがＨＭＰプレゼンス・プロトコルを処理するロジックを説明するフローチャートである。
【図６】
本発明の好ましい実施例によってクライアントがネットワークを途切れること無くローミングする間にＨＭＰに知られるロジックを説明するフローチャートである。
【図７Ａ】
本発明の好ましい実施例によってＨＭＰハンドオフ・プロトコルが実行されるロジックを説明するフローチャートである。
【図７Ｂ】
本発明の好ましい実施例によってＨＭＰハンドオフ・プロトコルが実行されるロジックを説明するフローチャートである。
【図８】
本発明の好ましい実施例によって使用される履歴ロジックの一例の説明図である。
【図９】
本発明の好ましい実施例によって使用されるポリシーファイルの一例の説明図である。
【図１】
2004522331.tif 000003
【図２】
2004522331.tif 000004
【図３】
2004522331.tif 000005
【図４】
2004522331.tif 000006
【図５】
2004522331.tif 000007
【図６】
2004522331.tif 000008
【図７Ａ】
2004522331.tif 000009
【図７Ｂ】
2004522331.tif 000010
【図８】
2004522331.tif 000011
【国際公開パンフレット】
2004522331.tif 000012
2004522331.tif 000013
2004522331.tif 000014
2004522331.tif 000015
2004522331.tif 000016
2004522331.tif 000017
2004522331.tif 000018
2004522331.tif 000019
2004522331.tif 000020
2004522331.tif 000021
2004522331.tif 000022
2004522331.tif 000023
2004522331.tif 000024
2004522331.tif 000025
2004522331.tif 000026
2004522331.tif 000027
2004522331.tif 000028
2004522331.tif 000029
2004522331.tif 000030
2004522331.tif 000031
2004522331.tif 000032
2004522331.tif 000033
2004522331.tif 000034
2004522331.tif 000035
2004522331.tif 000036
2004522331.tif 000037
2004522331.tif 000038
2004522331.tif 000039
2004522331.tif 000040
2004522331.tif 000041
2004522331.tif 000042
2004522331.tif 000043
2004522331.tif 000044
2004522331.tif 000045
2004522331.tif 000046
2004522331.tif 000047
2004522331.tif 000048
2004522331.tif 000049
2004522331.tif 000050
2004522331.tif 000051
2004522331.tif 000052
2004522331.tif 000053
2004522331.tif 000054
2004522331.tif 000055
2004522331.tif 000056
【国際公開パンフレット（コレクトバージョン）】
2004522331.tif 000057
2004522331.tif 000058
【国際調査報告】
2004522331.tif 000059
2004522331.tif 000060
2004522331.tif 000061