(57)【要約】移動デバイスが複数のネットワークインタフェースを管理し、実質的に常にインターネットに到達できるようにするための構成が開示される。説明の実施例においては、有線LAN、無線LAN、無線PAN及びセルラシステム等の技術が採用される。移動デバイス内に実装された特定のソフトウェアエージェントによって利用可能なネットワークインフラストラクチャが走査される。末端ユーザは、常に、明示的な手動による介入を伴うことなく、最も適するネットワークインタフェースを通じて通信できるようにされるが、選択の際には、ユーザのモビリティ（移動）プロファイル、消費電力、キャッシングされたコンテクスト情報、アプリケーション要件等が考慮される。
2005532759.tif 000002
【特許請求の範囲】
【請求項１】
インタネットプロトコル（IP）との互換性を有する通信網内で用いるための無線クライアントデバイスであって、前記クライアントデバイスは前記通信網と複数の通信標準（BT、IEEE802.11、GPRS）の一つに従って通信するように、かつ、前記通信網に接続するために複数のネットワークインタフェースの中から１つを選択するように適合化され、前記デバイスは、使用において、前記選択を、自動的に、かつ、前記クライアントデバイス内に実装された所定のネットワークインタフェース選択ポリシー（NISP）に従って行うように構成される、ことを特徴とする無線クライアントデバイス。
【請求項２】
前記ネットワークインタフェース選択ポリシー（NISP）の実装のための選択は、内部に格納されている所定のセットの前記選択ポリシーの中から、ユーザが介入して（手動にて）行うことも、或いは前記クライアントデバイス自身によって（自動的に）遂行することもできる、ことを特徴とする請求項１記載のクライアントデバイス。
【請求項３】
前記ネットワークインタフェース選択ポリシー（NISP)は、位置或いはコンテクスト認識（context awareness）の一つを考慮に入れ、好ましくは、移動性パラメータ、つまり、前記位置或いはコンテクストが動的にあるか或いは静的にあるかの指標及び／或いはその情報がどのようにして得られたかの指標が含まれる、ことを特徴とする請求項１或いは２記載のクライアントデバイス。
【請求項４】
前記クライアントデバイスは、所定の状況下で、ネットワークインタフェース選択ポリシー（NISP）間で自動的に変更できるように適合化され、前記変更を行うことの許可は、好ましくは、ユーザによって与えられ、及び／或いは、好ましくは、ユーザに通知される、ことを特徴とする請求項１から３のいずれかに記載のクライアントデバイス。
【請求項５】
前記クライアントデバイスは、前記ネットワークインタフェースの一つ或いは複数の利用可能性をテストするように適合化され、好ましくは、利用可能なインタフェースの走査を定期的に遂行する、ことを特徴とする請求項１から４のいずれかに記載のクライアントデバイス。
【請求項６】
前記クライアントデバイスは、前記ネットワークインタフェース選択ポリシー（NISP）に従って選択された前記インタフェースに予め接続し、そのインタフェースの利用可能性を、現在接続されているインタフェースからそれへのハンドオーバが遂行される前に、事前にテストするように適合化されることを特徴とする請求項１から５のいずれかに記載のクライアントデバイス。
【請求項７】
前記ネットワークインタフェースは、前記クライアントデバイスのオペレーティングシステム内に実装されたマルチ標準起動型無線アダプテーション層（M-WAL）によって制御される、ことを特徴とする請求項１から６のいずれかに記載のクライアントデバイス。
【請求項８】
複数の前記インタフェースには、前記ネットワークインタフェース選択ポリシー（NISP）内に、実装（使用）に対する優先度が割当てられ、前記優先度は、好ましくは、前記クライアントデバイス内で変更可能とされ、より好ましくは、前記インタフェースの現在の状態を反映して動的に変更できるようにされる、ことを特徴とする請求項１から７のいずれかに記載のクライアントデバイス。
【請求項９】
前記クライアントデバイスは、現在利用可能な及び／或いは以前訪問したことがあるアクセスポイントに関する情報を格納する、ことを特徴とする請求項１から８のいずれかに記載のクライアントデバイス。
【請求項１０】
前記クライアントデバイスは、ネットワークインタフェースの利用可能性を実質的に絶えずに監視し、好ましくは、前記インタフェースのリストを格納し、それらが利用可能であるか否か絶えず更新するように適合化される、ことを特徴とする請求項１から９のいずれかに記載のクライアントデバイス。
【請求項１１】
前記インタフェース間のスイッチングは、前記クライアントデバイスによって、より強い或いはより優先度の高いインタフェースが利用可能になったとき、或いは現在のインタフェースを用いるネットワーク（BT、IEEE802.11、GPRS）への接続が失われたとき、遂行される、ことを特徴とする請求項１から１０のいずれかに記載のクライアントデバイス。
【請求項１２】
前記クライアントデバイスは、少なくとも定期的に、現在接続されているアクセスポイント近傍の一つ或いは複数のアクセスポイントの利用可能性をチェックするように適合化される、ことを特徴とする請求項１から１１のいずれかに記載のクライアントデバイス。
【請求項１３】
前記ネットワークインタフェース選択ポリシー（NISP）は、使用コスト、利用可能な帯域幅、受信信号強度、リンクの品質、リンクの利用可能性、信号対雑音比、消費電力、或いはユーザの介入、の少なくとも一つを考慮に入れることを特徴とする請求項１から１２のいずれかに記載のクライアントデバイス。
【請求項１４】
前記通信標準は、Ethernet（登録商標）、IEEE802.11a、IEEE802.11b、BluetoothTM、GPRS及びGAMの一つを含むことを特徴とする請求項１から１３のいずれかに記載のクライアントデバイス。
【請求項１５】
インタネットプロトコル（IP）との互換性を有する通信網内で通信を遂行するための方法であって、
a）クライアントデバイスを前記通信網に複数の通信標準（BT、IEEE802.11、GPRS）の一つに従って接続するステップと、
ｂ）前記通信標準の間を、所定の状況下で、前記クライアントデバイス内に実装されたネットワークインタフェース選択ポリシー（NISP）内の定義に従って自動的に変更するステップと、を含むことを特徴とする方法。
【請求項１６】
計算デバイス上で実行されたとき請求項１５記載の方法を実行するコンピュータプログラム製品。
【請求項１７】
請求項１６記載のコンピュータプログラム製品がその上に実行可能なプログラムとしてコーディングされているデータキャリア。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のネットワーク、とりわけ、無線網からの、インタフェースの選択に係る。本発明は、特に、これに限定されるものではないが、移動デバイスによる、通信システム内で、定期的に、少なくとも一時的に、利用可能となる複数のネットワーク、とりわけ、無線網からの、インタフェースの選択に係る。
【背景技術】
【０００２】
無線ローカルエリア網（Wireless local area networks, WLAN）は、今日、室内環境においてのみならず、室外空間においても、ますます普及しつつある。無線アクセスポイントを介することで、移動/クライアントデバイスは、有線接続無しに、有線LANを用いるのと類似のやり方にて、ネットワーキングサービス（networking services）を利用することができる。無線LANプロトコル及びシステムに関する一般的な情報に関しては、Jim Geierによる”Wireless LANs”、Macmillan Technical press, 1999を参照されたい。WLANが抱える一つの問題は、消費電力であり、これは、パーソナルデジタルアシスタント（personal digital assistant, PDA）のような携帯デバイスでは大きな問題となる。無線パーソナルエリア網（Wireless Personal Area Networks, WPAN）は、例えば、BluetoothTMは、帯域幅は低いが、大幅に低減された消費電力にて無線網接続性（wireless network connectivity）を提供することができる。WLAN或いはWPANのいずれのアクセスインフラストラクチャも利用できない場合、移動デバイスには、新たな接続を設定し、可能であればインターネット或いは企業イントラネットと接続された状態にとどまることができるように、他の無線システム、例えばGeneral Purpose Packet Radio System（GPRS）等の室外セルラシステムを、それが利用可能であれば、用いることができるような機能を必要とされる。同一の移動デバイスを、適当に適合化することで、オフィスに戻り、ドッキングステーション（docking station）に置かれたとき、有線LANにもプラグインできるようにすることも要望される。この時点では、このデバイスは、移動はしないが、ただし、これは、それでも、可動性（portability）或いは位置を変える能力（facility）を反映し、移動デバイスであると見なすこともできる。
【０００３】
移動デバイスは、従って、様々なコンテクスト（contexts）内で少なくとも一時的に接続性を提供することができる利用可能な複数のネットワークインタフェースを有することを要請される。このような端末は、マルチモード端末（multi-mode terminal）と呼ばれる。これらインタフェースは、デバイス内に埋め込むことも、或いは、ユーザによって、例えば、プラグインカード（plug-in cards）のように、手動にて挿入することも考えられる。この汎用タイプの一つのデバイスが、GB-2362237において開示されている。これによると、PDAは、少なくともバッテリホルダを備えるベースユニット（base unit）と、このベースユニットに、スロット（slot）、スライド（slide）或いはクリップ（clip）インされる複数の着脱可能なモジュールとを備える。この従来の技術による構成は、無線リンクを実現するための無線（radio frequency, RF)回路、リンク制御及びベースバンド機能を実装するカードモジュールを提唱するが、ただし、刻々と利用可能となり、選択可能となる、複数のネットワークインタフェース間の選択或いは実装をどのように行うかについては開示していない。
【０００４】
複数のオプションが存在する状況下で、任意のある特定のデバイスがある特定の時間においてどのネットワークインタフェースを用いるべきかを自動的に決定するための統一的なソリューション（universal solution）はいまだ存在しない。事実、幾つかのチップセット（chipset）及びカード製造業者は、複数の無線伝送標準を埋め込んだ結合製品（”combo' chipsets”）を提唱しており、これらの幾つかは既に市場に出回っている。ただし、サポート用のソフトウェアがなく、ユーザは、インターネットまたは企業イントラネットと接続するために、手動にて、一つのネットワークインタフェースを選択することを絶えず要求される。これは、Microsoft Inc. USA或いはLinuxによって供給されるWindows（登録商標） CE 及びWindows XP等の殆どのオペレーティングシステムについていえることである。
【０００５】
ある特定の無線インタフェースを用いるためには、バックボーンネットワークへのアクセスを提供する対応するネットワークインフラストラクチャの存在が必要であるとともに、利用可能なネットワークアクセスを見つけるための発見手続（discovery procedure）が必要とされる。この発見手続は、多くの時間とエネルギーを消費する。単に一つのシステムの全ての周波数を走査する場合でも、電力の消費が大き過ぎるため、セルラシステムに対する移動端末では、これを行うことは適当ではなく、このため、限られた数の周波数のみが走査される。ある特定の無線網インフラストラクチャ（例えば、WLAN）を走査することで、移動デバイスが接続することができる使用可能なアクセスポイント（usable access points）リストが得られる。（上のケースにおいて）WLANインフラストラクチャが見つからなかったときは、移動デバイス内のWLANインタフェースは、ネットワーク接続性を提供することはできず、別の１つを見つけることが必要となる。
【０００６】
ユーザが身を置く環境によっては、恐らくは、とりわけ、将来においては、少なくとも一時的には、利用可能な複数のネットワークインフラストラクチャが存在することが考えられる。従って、従来の技術による構成は、どのような無線網インフラストラクチャが存在し、どれが現在利用可能であるかを発見し、適当なネットワークインタフェースを起動する手続が自動化されてないという点で不完全である。この不完全さのために、移動デバイスは、ユーザの接続性に対する期待に、例えば、コスト、便利さ、消費電力及び帯域幅の点で、十分に答えているとはいえない。現在知られている構成（デバイス）のユーザは、このため、居場所に関係なく、インターネット等のバックボーン網に向けて接続を設定或いは維持することに困難さを感じている。現在の装置も、少なくとも手動によらなければ、これを行うことはできず、これは、非効率であり、一般的に、望ましいとはいえない。
【発明の開示】
【０００７】
本発明の一つの目的は、複数のネットワークからネットワークを選択するための改善されたやり方を提供することにある。より詳細には、本発明は、これに限定されるものではないが、移動デバイスによって、複数のネットワーク、とりわけ、通信環境内で、定期的に、少なくとも一時的に利用可能となった無線アクセスネットワークからインタフェースを選択するための改善されたやり方を提供することにある。
【０００８】
ネットワークインタフェースを自動的に選択するメカニズムがあれば、末端ユーザにとって利便性の点で有益であると思われる。これを達成するために、本発明は、インタネットプロトコル（IP）との互換性を有する通信網（Internet Protocol compatible communications network）内で用いるための無線クライアントデバイス(wireless client device)を提供する。このクライアントデバイスは、前記通信網と複数の通信標準の一つに従って通信し、前記通信網への接続のために、複数のネットワークインタフェースの中から一つのインタフェースを選択するように適合化される。このデバイスは、使用において、この選択を、自動的に、クライアントデバイス内に実装された所定のネットワークインタフェース選択ポリシー（network interface selection policy, NISP）に従って行うように構成される。このようなデバイスはマルチモードデバイスと呼ばれる。クライアントデバイスは、ユーザ端末、例えば、移動端末であり得る。
【０００９】
上述のネットワークインタフェース選択ポリシー内部に格納されている所定のセットの前記選択ポリシーの中から、ユーザが介入して行うことも、或いは前記クライアントデバイス自身によって遂行することもできる。
【００１０】
前記ネットワークインタフェース選択ポリシーは、位置或いはコンテクスト認識（context awareness）の一つを考慮に入れ、好ましくは、移動性パラメータ（mobility parameter）、つまり、前記位置或いはコンテクストが動的にあるか或いは静的にあるかの指標及び／或いはその情報がどのようにして得られたかの指標が含まれる。
【００１１】
もう一つの好ましい実施例においては、前記クライアントデバイスは、所定の状況下でネットワークインタフェース選択ポリシー間で自動的に変更できるように適合化され、前記変更を行うことの許可は、好ましくは、ユーザによって与えられ、及び／或いは、好ましくは、ユーザに通知される。
【００１２】
もう一つの好ましい実施例においては、前記クライアントデバイスは、前記ネットワークインタフェースの一つ或いは複数の利用可能性（availability）をテストするように適合化され、好ましくは、このために、利用可能なインタフェースの走査が定期的に遂行される。
【００１３】
もう一つの好ましい実施例においては、前記クライアントデバイスは、前記ネットワークインタフェース選択ポリシーによって選択されたインタフェースに予め接続し、そのインタフェースの利用可能性を、現在接続されているインタフェースからそれへのハンドオーバを遂行する前に、テストするように適合化される。
【００１４】
もう一つの好ましい実施例においては、前記ネットワークインタフェースは、前記クライアントデバイスのオペレーティングシステム内に実装されたマルチ標準起動型無線アダプテーション層（multi-standard enabled wireless adaptation layer, M-WAL）によって制御される。
【００１５】
もう一つの好ましい実施例においては、複数の前記インタフェースには、前記ネットワークインタフェース選択ポリシー（NISP）内で、実装の優先度を割当てられ、前記優先度は、好ましくは、前記クライアントデバイス（MT）内で変更可能とされ、より好ましくは、前記インタフェースの現在の状態を反映して動的に変更される。
【００１６】
もう一つの好ましい実施例においては、前記クライアントデバイスは、現在利用可能な及び／或いは以前訪問したことがあるアクセスポイントに関する情報を格納する。
【００１７】
もう一つの好ましい実施例においては、前記クライアントデバイス（MT）は、ネットワークインタフェースの利用可能性を実質的に絶えずに監視し、好ましくは、前記インタフェースのリストを格納し、それらが利用可能であるか否か絶えず更新するように適合化される。
【００１８】
もう一つの好ましい実施例においては、前記インタフェース間のスイッチングは、前記クライアントデバイスによって、より強い或いはより優先度の高いインタフェースが利用可能になったとき、或いは現在のインタフェースを用いるネットワークインフラストラクチャ（network infrastructure）への接続が失われたとき、遂行される。
【００１９】
もう一つの好ましい実施例においては、前記クライアントデバイスは、少なくとも定期的に、現在接続されているアクセスポイント近傍の一つ或いは複数のアクセスポイントの利用可能性をチェックするように、適合化される。
【００２０】
もう一つの好ましい実施例においては、前記ネットワークインタフェース選択ポリシー（NISP）は、使用コスト、利用可能な帯域幅、受信信号強度、リンクの品質、リンクの利用可能性、信号対雑音比、消費電力、或いはユーザの介入、の少なくとも一つを考慮に入れる。
【００２１】
もう一つの好ましい実施例においては、前記通信標準は、Ethernet、IEEE802.11a、IEEE802.11b、BluetoothTM、GPRS及びGAMの一つを含む。
【００２２】
本発明は、更に、インタネットプロトコル（IP）との互換性を有する通信網内で通信を遂行するための方法を提供する。この方法は、
a）クライアントデバイスを前記通信網に複数の通信標準の一つに従って接続するステップと、
ｂ）前記通信標準の間を所定の状況下で前記クライアントデバイス内に実装されたネットワークインタフェース選択ポリシー（NISP）の定義に従って自動的に変更（スイッチング）するステップと、を含む。
【００２３】
本発明は、更に、計算デバイス上で実行されたとき本発明による上述の方法を実行するコンピュータプログラム製品にも係る。本発明は、更に、上述のコンピュータプログラム製品がその上に実行可能なプログラムとしてコーディングされているデータキャリアにも係る。
【発明を実施するための最良の形態】
【００２４】
以下では、本発明について、幾つかの実施例との関連で、図面を用いて説明する。以下の説明は、単に一例であり、本発明を制限するものではない。例えば、クレーム中、”含む/備える（comprising）”なる用語は、他の要素或いはステップを排除するものではなく、名詞の前の不定冠詞”a”或いは”an”は、別記されない限り、その名詞（要素）が複数個存在することを排除するものではない。更に、数個の個別の要素（アイテム）、例えば、チャネル復号器、チャネル等化器、或いは個別の機能を与える要素、例えば、チャネル復号手段、チャネル等化手段との関連では、それら要素が別個のものとして記述されている場合でも、複数のそれら要素が単一の要素として、例えば、その機能を遂行するための関連するソフトウェアアプリケーションプログラムを実装するプロセッサとして、実現されるような態様も本発明の範囲内に入るものである。
【００２５】
”複数の通信標準の一つに従ってネットワークと通信するように適合化されたクライアントデバイス”なる表現との関連では、当業者においては理解できるように、このようなデバイスは、マルチモード端末と呼ばれる。一例として、マルチモード端末は、Ethernet、IEEE802.11a、IEEE802.11b、BluetoothTM、GPRS及びGAMの任意の一つへのアクセス能力を有する。
【００２６】
本発明が通信構成内で用いられる”標準（standards）”に言及する場合、このような標準には、認定された組織によって推奨された技術的ガイドラインが含まれ、このような組織には、これらに限られるものではないが、例えば、政府機関、或いはIETF、ETSI、ITU、或いはIEEE等の非営利組織が含まれる。これら標準は、このような団体によって、例えば、賛同する団体或いは委員会による現存する方法、アプローチ、技術的動向及び開発状況の広範囲に渡っての調査を経て草案された仕様に基づく公式な過程の結果として発布或いは推奨される。またある提唱された標準が、後になって、時間をかけて合意の下に、その標準に基づく製品が市場において優勢となった結果として、認定された組織によって批准或いは承認されることもある。”標準”のこのようなそれほど公式ではない側面（setting）には、更に、単一の会社或いは一群の会社によって開発された製品或いは思想の実現の結果としての技術的ガイドラインも含まれる。これは、とりわけ、成功或いは模倣を通じてこのようなガイドラインが広く用いられるようになり、これら規範（ガイドライン）から逸脱すると互換性の問題が生じ、市場性が制限されるような場合に当てはまる。あるハードウェアがある受け入れられた標準にどの程度まで準拠するかは、ある標準基づいて或いはそれに対して設計されたハードウェアが、全ての面において、その標準とどの程度まで動作するかという観点から考慮することができる。ソフトウェアとの関連では、互換性が、コンピュータ要素及びプログラム間で、タスクレベルにおいて達成された調和度（ハーモニー）であると見ることができる。従って、ある標準に対するソフトウェアの互換性は、それらプログラムがどの程度まで協調して動作でき、データを共有できるかの尺度となると見ることもできる。ある通信標準は、無線アクセスプロトコルを規定することもあるが、この無線アクセスプロトコルは、任意の適当な無線アクセス方式、例えば、周波数分割多元アクセス（FDMA）、符号分割多元アクセス（CDMA）、時分割多元アクセス（TDMA）、時分割ジュープレックス（TDD）、直交周波数多元アクセス（OFDMA）或いはこれらの組み合わせ、例えば、CDMA/FDMA、CDMA/FDMA/TDMA、FDMA/TDMAに基づいて設計され
る。一例として、IEEE802.11b、Blutooth及びGPRSの一つを選択することもできる。
【００２７】
図面の説明に入るが、最初に、図１に示すように、クライアントデバイスMT内に埋め込まれた通信網選択システム１０は、インターネット或いは他のIP-ベース網を介しての、サーバ１２への接続性のための、複数のネットワークインタフェースを提供する。このクライアントデバイスは、様々な帯域幅を有する、データ、ファックス、ビデオ或いは音声サービス、或いはマルチメディアサービス等のこれらの結合のいずれかを提供する移動或いは固定端末であり得る。この目的を達成するために、クライアントデバイスは、利用可能な通信標準が最も有効に活用できるようにマルチモード能力を備える。この実施例においては、これら利用可能な通信標準の例としては、これらに限定されるものではないが、IEEE 802.11b 無線ローカルエリア網（Wireless Local Area Network、WLAN)、BluetoothTM 無線パーソナルエリア網（Wireless Personal Area Network、WPAN)、及び一般パケット無線システム（Generalized Packet Radio System、GPRS）の形態でのセルラシステムが含まれる。これらクライアントデバイス/ノードには、パーソナルデジタルアシスタント（Personal Digital Assistants、PDA's）、ラップトップコンピュータ、移動電話、その他類似物が含まれ、これらは、必ずしも任意の特定の時間において移動しているとは限らないが、ここでは、便宜上、移動できる能力が発揮される可能性を反映するために移動端末MTと呼ばれる。
【００２８】
それを通じてネットワークへのアクセスが達成されるノードは、以下では、便宜上、総称的にアクセスポイント（access point, AP）と呼ばれる。ただし、アクセスポイントAPの形態は考慮下のアクセス方式に依存することに注意する。例えば、IEEE 802.11bは自身のアクセスポイントAP1を有し、Bluetoothも同様に自身のアクセスポイントAP2を有するが、GPRSに対するアクセスポイントAP3は当分野においては基地局（BS）と呼ばれる。BluetoothのアクセスポイントAP2は、専用のルータ１４を通じてサーバ１２に接続するが、IEEE 802.11bアクセスポイントAP1を介して行なわれるWLANアクセスの場合は、さらなるルータ１６が提供される。
【００２９】
本発明は、クライアントデバイス内のネットワークインタフェースが、移動端末MTが複数の利用可能な選択枝を有する場合、ユーザによって定義されたポリシーに従って自動的に選択されるような構成（arrangement）を提供する。これらポリシーは、データ転送速度、消費電力、ユーザのモビリティプロファイル（user mobility profiles）、キャッシング（記憶）されたコンテント情報、機密管理（security authorizations）及び接続コストを含む複数のファクタを考慮する。
【００３０】
ユーザは、予め定義されたセットの中から１つのネットワークインタフェース選択ポリシー（NISP）を選択するか、或いは自身の新たなNISPを定義する。いったんあるポリシーが選択されると、移動体デバイスは、（それが利用可能である限り）その好ましい（選択された）ネットワークインタフェースを使用するとともに、定期的に、他の利用可能なネットワークインフラストラクチャ（インタフェース）についても走査する。こうして、その優先度の最も高いインタフェースが（無線圏外となったため、或いはユーザがその移動端末をアンドック（undocked）した或いはカードを取り外したため）もはや使用できなくなった場合に対して、起動されるべき新たなネットワークインタフェースが準備され、ユーザはネットワーク接続性を絶えず維持できる。
【００３１】
あるNISPはある特定の位置及びコンテクストと関連する。移動端末（MT)は、様々な異なるNISP間で、（例えば、ある既知の無線網インフラストラクチャが認識され、ある特定の位置が推定されたとき）自動的に、或いは明示的なユーザの介在を介して、スイッチングする。NISP及びその主な特徴については後に詳細に説明する。
【００３２】
図２に示される略図は、本発明において開示されるネットワークインタフェース管理ソリューション（network interface management solution）に対する主ユースケース（Use Case）を、標準のUnified Modeling Language（UML）表記を用いて示す。
【００３３】
ユーザは、自身のプリファレンス（preferences）を、"ConfigureSettings"１００なるユースケース内に示す。これはGUI（Graphical User Interface）ツールであり得、この場合は、これを用いてセットのNISPが定義され、他の設定も指定される。"SelectPolicy"１０２は一つの特定のNISPを起動するが、これは、ユーザによって手動にて発動（invoke）することも、或いはソフトウェアエージェント、つまりNicAgent１０４によって発動することもできる。NicAgent１０４は、移動端末MT内の全ネットワーク選択システム１０を監督するソフトウェアデーモン（software daemon）である。NicAgent１０４は、ポリシーの変更を、ユーザがその挙動をデバイスの構成設定（configuration settings）内で許可している場合は、決定することもできる。ポリシーが変更される度に、ユーザは、必要に応じて、GUI("NotifyUser"１０６）を通じて通知を受ける。システムの初期化の際に（"ReadSettings"１０８によって）読み出されるユーザによって定義された設定に基づいて、或いは設定自体が変更された場合はそれに基づいて、NicAgent１０４は、定期的に、（"ScanInterfaces"１１０を介して）利用可能なネットワークインタフェースを探索する。
【００３４】
この"ScanInterfaces"１１０なるユースケースは、これらネットワークインタフェースの物理的な利用可能性（physical availability）をテストし、その状態をチェックし、それが実際に接続性を提供できるかを検証する。ある無線インフラストラクチャが見つかり、ポリシーによって許される場合は、システム１０は、それへの接続を試み、そのリンクが使用可能であるかチェックし、そのネットワーク接続を（"Preconnect"１１２を介して）維持する。これには、アクセスポイントAP2を必要とするBluetoothインフラストラクチャの一例においては、これらアクセスポイントに接続し、パーソナルエリア網（Personal Area Network、PAN）プロファイル或いはLANアクセスプロファイルに指定されているように、サービス発見及び認証手続（service discovery and autorization procedures）を遂行することが含まれる。
【００３５】
このコンテクスト（文脈）において、アクセスポイント（AP)の役割は、Bluetooth及びGPRSインタフェース（Blutooth Dial-up Networking profile）を備える移動電話機によっても、或いはEthernet接続も有するBluetooth起動（enabled）のラップトップによっても実現できることに注意する。
【００３６】
"Preconnect"ユースケース１１２の結果に基づいて、或いは他のユーザアクション（例えば、ネットワークカードが移動端末MTから物理的に取り外された、或いはEthernetケーブルがMTに物理的に接続された或いはこれらか切断された）結果として、幾つかのイベントが（"HandleSystemEvents"１１４によって）生成され、これらは、NicAgent１０４にパスされる。これらイベントには、以下が含まれる：
・インフラストラクチャが存在し、使用可能である；
・インフラストラクチャは存在するが、ただし、その移動端末MTはアクセスする権利を有さない；
・新たなインタフェースカード/ネットワークカードが挿入された；
・あるインタフェースカード/ネットワークカードが取り外された。
【００３７】
NicAgent１０４は、これらイベントに、それがその瞬間に用いているポリシーに従って、反応する。これらイベントの一つの可能な結果として、例えば、ある新たなネットワークインタフェースカードが（"ActivateInterface"１１６によって）起動される。つまり、"SwitchInterface"によってハンドオーバアクションが開始される。ハンドオーバは、あるネットワークインタフェースの停止と、新たなインタフェースの起動を伴う。この過程に、他のネットワーク層の機能も巻き込まれることもある。
【００３８】
生成されたイベントに基づいて、NicAgent１０４によって有益な情報が収集されるが、これらは、例えば、キャッシュ等の適当なメモリ内に格納され、用いられているNISP内にコンテクスト或いは位置に依存するネットワーク選択を含めるために用いられる。"MagageContextCache"１１８なるユースケースは、ある特定の環境と関連する情報を管理するプロセスを参照する。例えば、ローカルエリアネットワークインタフェースカード、例えば、Ethernetカードがプラグインされた場合、NicAgent１０４は、その移動端末MTがオフィスネットワークに接続されたことを認識し、"office"コンテクストが推定される。このコンテクストには、オフィス環境において存在する他のネットワークインフラストラクチャ、例えば、Wireless LAN及び／或いはBluetoothも含めることもできる。このコンテクスト情報に基づいて、移動端末MT内である特定のネットワークインタフェース選択ポリシーが起動され、オプションとして、（"NotifyUser"１０６を通じて）ユーザに知らされる。
【００３９】
図３のネットワークインタフェース（"if-"）クラスダイアグラムは、本発明によるNISPを搭載する移動端末MTによる適当な主要クラスの選択を示す。NicAgent１０４の役割は、IfManager２００なるクラスによって実現される。IfManager２００は、NetworkInterfaceクラス２０２を用いるとともに、Scheduler２０４と関連する。Scheduler２０４は、タイムサービス、つまり特定のネットワークインタフェースをチェックするためのトリガ、を提供する役割を担う。UserPreferencesクラス２０６は、ユーザが設定することができる全ての設定を維持する。ネットワークインタフェースを実際に制御するためには、IfManager２００は、マルチ標準無線アダプテーション層（Multistandard Wireless Adaptation Layer、MWAL）２０８を用いる。MWAL２０８は、ネットワークインタフェースカードに対する全ての現存するソフトウェアデバイスドライバ（software device drivers）を扱うソフトウェアモジュールである。このMWAL２０８は、移動端末MTのオペレーティングシステムとリンクされており、これは、IfManager２００がネットワークインタフェースカードのデバイスドライバと通信することを可能にする。
【００４０】
他方、NetworkInterfaceクラス２０２は、実際の無線或いは有線ネットワークインタフェースカードのより上位に位置する。属性（プロパティ）には、名称（通常はオペレーティングシステムOSに依存し；"fName"と呼ばれる）、タイプ（WLAN、Bluetooth、GPRS、その他が含まれ；"fType"と呼ばれる）、優先度（これはIfManager２００によって動的に変更することができ；"fPriority"と呼ばれる）、及びフラッグ（これはインタフェースの現在の状態を表し；"fStatusFlags"と呼ばれる）が含まれる。他のパラメータとして、ネットワーク層の情報（デフォルトゲートウェイ、IPアドレス等が含まれ；"fL3Info"と呼ばれる）、ネットワークインタフェースの物理的特性（それが取り外し可能なカードとして実現されたカード、つまりBooleanであるか、或いはシステム内に埋め込まれたものであるかを示し；"fRemovable:Boolean"と呼ばれる）、及び到達可能なアクセスポイントAP1-3のリストも含まれる。
【００４１】
AccessPointクラス２１０は、アクセスポイントAP1-3の名称（"apName"）、そのタイプ（"apType")、MACアドレス（"apMAC"）、そこに既に訪問したことがあるか否か（"apRegistered: Boolean"）、デフォルトリンクキー（"apLinkKey"）、及びこのキーによって暗号化されたトラフィック及びその状態（"apStatus"）に関する状態を含む。"apStatus"は、動的パラメータであり、インフラストラクチャを走査した結果や、それらアクセスポイントAP1-3がその移動端末MTによって以前の使用されたことがあるか否か等を示す。アクセスポイントAP1-3は複数のサービスプロバイダ２１２によって共有されることがある。そのアクセスポイントAPがそれへのアクセスを提供するバックエンド網（back-end network）に関する情報、例えば、それが10/100Mbps Ethernet接続であるか、或いは44kbpsGPRS接続であるか等の情報等も格納される。
【００４２】
最後に、Contextクラス２１４は、そのユーザを取り巻く環境に関する情報を維持し、この情報には、位置名（例えば、"office"或いは"home"）及び到達可能なアクセスポイントAP1-3のリストが含まれる。その位置及び／或いはコンテクストが動的であるか、或いは静的であるか（例えば、ユーザがそこから移動して新たなコンテクストに入る機会があるか）を示す移動性指標パラメータ（mobility index parameter）も含まれる。コンテクストタイプ（"ctType"）はその位置或いはコンテクスト情報がどのようにして収集されたか、つまり、その位置或いはコンテクストが手動にて定義されたものであるか、自動的に構築されたものであるか、或いは定期的にリフレッシュする必要があるかを示す。
【００４３】
IfManagerクラス２００は、他の全てのクラスを管理する実際のラニングアプリケーションである。ドライバのレベルにおいては、MWAL Module２０８がオペレーティングシステムによって見られるように様々なインタフェースの統一化（unification）を遂行し、他方、IfManagerクラス２００はこの制御を担当する。
【００４４】
IfManagerクラス２００は、無線インタフェースの接続性、管理及び選択を担当するが、これらは、最適の利用可能なインタフェースを、コンテクスト及びユーザのプリファレンスに従って選択することで遂行される。IfManagerクラス２００は、加えて、Lyer-3接続性が常に維持されることを、必要とされたとき利用可能なインタフェース間でVertical Handover（垂直的ハンドオーバ）を遂行し、その後、ルーティング情報を更新することで確保する。以下では、移動端末MTは、インターネット内の、以降、サーバ１２と呼ばれるあるホストに到達することを希望するものと想定される。
【００４５】
IfManagerアプリケーション２００は、少なくとも以下のタスクに担当する：
１．ネットワークインタフェースの利用可能性を絶えず監視する。利用可能なハードウェア資源と関連する属性のリストを絶えずリフレッシュする。これは、新たな及び／或いはより好ましいインタフェースが移動端末MTに追加された或いは利用可能にされたとき、或いは現在用いられているインタフェースが取り外されたとき、直ちにインタフェースをスイッチングすることができるようにするために必要とされる。ハードウェアの監視は、移動端末のハードウェア状態に関して定期的にポーリングすることで、或いは、好ましくは、ハードウェア挿入/取外しイベントを利用することで遂行される。
【００４６】
２．各利用可能なネットワークインタフェースに対するアクセスポイントAP1-3の識別。ユーザの位置によって、周囲のアクセスポイントAP1-3は、知られていることも、知られてないこともある。既知のアクセスポイントAP1-3のアクセス構成（コンフィグレーション）パラメータが移動端末MT内の"Context"クラス１１８内に局所的に格納される。以前には知られていなかったアクセスポイントパラメータが後に明らかとなった場合、これらは、将来の使用を高速化できるようにキャッシュされる。無線方式によっては、アクセスポイントの発見が、更に、定期的な間隔での走査に基づいて遂行されること（例えば、Bluetoothにおける照会手続）も、非同期イベント（例えば、IEEE 802.11b WLAN無線イベント）が発生した際に遂行されることもある。好ましくは、各インタフェースに対して、検出された（到達可能な）アクセスポイントのリストが維持される。
【００４７】
３．インタフェースの接続性チェック（"Check＿Interface"機能）。各インタフェースは、層-３接続性を有することも、有さないことも、つまり、アクセスポイントAP1-3の背後の第一のルータに到達できることも、できないこともある。この接続性を保証するためには、インタフェースは以下を有することを要求される：
ａ）接続可能なアクセスポイント。移動端末のユーザは問題のインタフェースと関連する1つ或いは複数のアクセスポイントAP1-3に接続する権利を有さなければならない。
ｂ）有効なIPアドレス。インフラストラクチャの搬送業者（bearer）は、DHCP或いは他の手段を介して、移動端末MTがサーバ１２に到達することを可能にするための有効なIPアドレスを提供しなければならない。（これら２つの条件、a）及びｂ）は定期的にチェックされるべきである）。
【００４８】
４．移動端末MTの接続性チェック。移動端末の通信の健全性が定期的にチェックされるべきである。移動端末MTが依存している現在のインタフェースがユーザによって取り外されたり、アクセスポイントの圏外となったり、或いはIPサブネットが変更されることがある。これら全てのケースにおいて、接続性が破壊されたら直ちに適当な対策を講じることを要求される。アクセスポイントAP1-3の背後に存在する第一のルータ（デフォルトゲートウェイ）に向けて定期的にピング（ping）制御信号を送信することで接続の健全性がチェックされる。接続性の破壊は、非同期イベント（ハードウェアの除去、無線イベント、信号対雑音比が閾値以下、その他）によって検出される。”ピング（ping）”手続は、ネットワークをどのようなシステムが動作しているかテストする。この目的に対しては、あるネットワーク要素が、所定の信号を別のネットワーク要素に向けて送信し、応答を待つ。正しい応答は、その遠隔ネットワーク要素が応答しており、そのネットワークが健全であることを示す。更に、ピング手続にて、他のネットワーク要素にアクセスする際の応答時間をテストし、記録することもできる。これは、どのようなネットワーク要素及び／或いはネットワークが利用可能であるか、及びこれらが過負荷の状態にあるか否かに関する有益な情報を提供する。このピング手続のためには、インターネット制御メッセージプロトコル（Internet Control Message Protocol、ICMP）を用いることができる。
【００４９】
５．垂直ハンドオーバ。垂直ハンドオーバは以下の２つのイベントの結果として発生する：
a）層-３接続性を許す（ユーザのプリファレンスに従って）より好ましいインタフェースが検出された。現在のインタフェースは放棄され、新たなインタフェースが接続される。これは、勿論、その新たなインタフェースが接続性を保証する場合のみ行なわれる。接続されてないインタフェースの層-３接続性のテストは、バックグラウンドにて行なわれる。
ｂ）移動ノードが依存している現在のインタフェースが突然切断された。これは、ハードウェアが取り外されたり、リンクが切断されたり、或いはIPサブネットが変更されたりした場合（これは、移動ノードがあるアクセスポイントに接続されたが、異なるサブネットに属する別のアクセスポイントにローミングした場合に起こる）などによって発生する。このような場合、搬送業者によって提供される自動リンク層ハンドオーバのために、リンク接続性は破壊されないが、ただし、IP接続性は破壊される。
【００５０】
a）の場合、この垂直ハンドオーバは”上方垂直ハンドオーバ（upper vertical handover）”と呼ばれ、このタイミングは、接続性は損なわれないために重大ではない。ｂ）の場合、この垂直ハンドオーバは”下方垂直ハンドオーバ（lower vertical handover）”と呼ばれ、タイミングがより重大となる。これは、移動ノードが、通信の再設定を許す新たなインタフェース或いは新たなアクセスポイントAP1-3が検出されるまで、切断された状態にとどまるためである。
【００５１】
加えて、ポイント２及び３において検索された情報は、好ましくは、将来必要となったとき直ちに無線インフラストラクチャの属性を知ることができるようにコンテクストデータベース/キャッシュ１１８、２１２内に局所的にキャッシングされる。
【００５２】
図４は、ifManager２００とそのイベントを示すタスクダイアグラムであるが、以下ではこれについて詳細に説明する。
【００５３】
Wait３００
Waitタスク３００は、アイドルタスクであり、他の全てのタスク（主タスク）を引き起こす。このタスクは、加えて、IfManager２００が始動されたとき、アプリケーションの初期化及び資源の割当てを遂行する。Waitタスク３００は、あるアプリケーションが閉じられたとき、アプリケーションのクリーンアップと資源の解放を遂行する。Waitタスク３００は、加えて、他のタスクのタイミングを支配する全てのタイマを初期化する。
【００５４】
Hardware update３１０
Hardware updateタスク３１０は、そのポーリング間隔（polling interval）が満了したとき、或いはカードの挿入/取外しなどの非同期ハードウェアイベント（asynchronous hardware event）が発生したとき、覚醒される。この主な仕事は、利用可能なネットワークカードのリストを更新された状態に維持することにある。このリストの各エントリは、上述のNetworkInterface クラス２０２から成る。
【００５５】
新たなハードウェアが挿入されと、Hardware updateタスク３１０は、インタフェースのアクセスポイントリストのチェック及びリフレッシュを担当するタスク（後に説明）をアンロックする信号を発行する。ハードウェアが取り外されると、このタスク３１０は、それまで割当てられていた資源を解放し、その取り外されたハードウェアが移動端末MTが接続のために用いているそれと同一である場合は、S＿DISCONNECTED信号が立ち上げられる。この信号は”Immediate Scan”タスク３２０をトリガするが、このタスク３２０の目的は、別のインタフェースを用いてできる限り速やかに層-３接続性を再設定することにある。ハードウェアリストに変更がない場合は、このタスクは再び休眠に入る。
【００５６】
Check and Refresh Access Points（APs）３３０
このタスク３３０は、隣接するアクセスポイントAPの利用可能性のチェックを担当する。これは、層-2、層-3のいずれのレベルにおいても実際の接続性に関するテストは遂行せず、単に、ある与えられたインタフェースのアクセスポイントリストを更新する。新たなアクセスポイントAPが検出されると、それを記述する”AccessPoint”なる新たなオブジェクトがそのリストに追加され；そのリストに属するあるアクセスポイントがもはや利用できなくなった場合は、そのエントリが解放される。タスク３３０は、このアクセスポイントリストを”Knowlege”によって分類する。あるアクセスポイントは”知られている（known）”ことも；つまり、ユーザが既にそれに接続するために必要とされるパラメータ（暗号キー或いは暗号方法）をContextクラス２１４内に指定していることも；そのアクセスポイントは”知られてない（unknown）”；つまり、そのアクセスポイントはそれまで全く見られたことがないことも；或いはそのアクセスポイントは”キャッシング”されているが、つまり、それはそれまで知られていなかったが、ただし、幾つかの情報（例えば、暗号キーが必要とされる/必要とされない等）は過去に検出されていることもある。
【００５７】
Check and Refresh Access Pointタスク３３０は、Bluetooth等の無線イベントをサポートしない方式に対しては、そのポーリング間隔が満了したとき覚醒され、Wireless LAN等の無線イベントをサポートする方式に対しては、”New Aceess Point”なる無線イベントが発生したとき覚醒される。Check and Refresh Access Pointタスク３３０は、Hardware Updateタスクによって、”New Card Detected”信号が立ち上げられたときにも覚醒される。
【００５８】
Check and Refresh Access Pointタスク３３０は、あるインタフェース上に現在用いられているそれより高い優先度を有するアクセスポイントAPが検出される度にある信号を立ち上げる。この信号は、その後、Link and Pingタスク３４０によって捕らえられ、Link and Pingタスク３４０は、以下に詳細に説明するように、その新に発見されたアクセスポイントAPがサーバ１２に接続するために用いることができるか否かチェックする。アクセスポイントの走査（スキャニング）を終えると、Check and Refresh Access Pointタスク３３０は再び休眠に戻る。
【００５９】
Link and Ping３４０
このLink and Pingタスク３４０は、あるインタフェースがそのリスト内のそのアクセスポイントAP1-3の一つ或いは複数を介してサーバ１２に接続できるか否かのチェックを担当する。これは、好ましくは、そのアクセスポイントリストが空でないインタフェースに対してのみ呼出される。ある与えられたインタフェースについて、最初に、そのリスト内の全てのアクセスポイントAP1-3がリンク層接続性に関してチェックされ、次に、DHCPリクエストを発行することでIP構成（コンフィギュレーション）がチェックされ、最後に、サーバ１２をピニングすることで、ネットワーク接続性がチェックされる（スケーラビリティの理由から、好ましくは、アクセスポイントAPの背後の第一のルータ１４、１６がピニングされる）。各段階の開始は、前の段階が成功裏に完了したことを含蓄する。ステップの成否が関連するアクセスポイントオブジェクトの”AP＿Status”フィールド内に記録される。これらアクションは、”Check＿Interface”機能によって遂行されるが、この”Check＿Interface”機能は、後に説明される”Immediate Scan”タスク３２０によっても用いられる。
【００６０】
Link and Pingタスク３４０は、空でないアクセスポイントリストを有し、現在用いられているそれよりも高い優先度を有するあるインタフェースのポーリング間隔が満了したときに覚醒される。これは、より高い優先度を有するインタフェースに向かっての垂直ハンドオーバを可能にするために必要とされる。オプションとして、より低い優先度を有するインタフェースに向かってのハンドオーバが必要とされたときのハンドオーバの性能を向上させるために、より低い優先度を有するインタフェースに対して覚醒させることもできる。後者を起動するか否かの選択は、ユーザの好みとコンテクストの制約（例えば、電力状態）に依存する。
【００６１】
いったんレベル-３接続性を提供する能力を有するインタフェースが発見され、垂直ハンドオーバが要望される場合（つまり、新たなインタフェースが現在用いられているそれよりも高い優先度を有する場合）、Link and Pingタスク３４０は、Vertical handover（VH）タスク３６０を覚醒させる信号を立ち上げる。Vertical handover（VH）タスク３６０は、本質的には、ネットワークインタフェースのスイッチングを担当する。他方、有利なアクセスポイントが発見されなかった場合は、タスク３４０はアイドル状態に戻る。
【００６２】
このLink and Pingタスク３４０は、好ましくは、インタフェースベースにて遂行される。これはその範囲（スコープ）が現存する全てのインタフェースではなく、単一のインタフェースに限られることを意味する。他方、（以下に説明する）Immediate Scanタスク３２０は、全ての利用可能なインタフェースを参照し、接続性の即座の回復のために用いられる。
【００６３】
Immediate Scanタスク３２０
Immediate Scanタスク３２０は、S＿DISCONNECTED信号によって覚醒される。この信号は、他のタスクによって、移動端末MTが現在用いているネットワークインタフェースがサーバ１２への接続性をもはや提供しなくなると直ちに立ち上げられる。これは、２つの理由から、つまり１）そのハードウェア自体が利用不能になった；２）リンク層或いはネットワーク層の接続性が破壊された；場合に発生する。第一の場合は、このタスク３２０はHardware Updateタスク３１０によって覚醒され、第二の場合は、このタスク３２０はPing Current Interfaceタスク３５０によって覚醒される。Immediate Scanタスク３２０は、最初に、移動端末MTがそれまでそれを用いて接続を行っていたそれと同一のインタフェース上の利用可能なアクセスポイントAPについてチェックする。これは、その切断が、単にIPサブネットのローミングの問題であり、単にDCHPリクエストによって回復できることもあるためである。接続性が回復できない場合は、Immediate Scanタスク３２０は、より低い優先度を有するインタフェースを用いて接続性をチェックする。接続されたインタフェースが見つかると、Immediate Scanタスク３２０は、Vertical handoverタスクを覚醒させ、これによってインタフェースのスイッチングが行なわれる。他方、どのインタフェースも接続性を提供できない場合は、タスク３２０は、結局は、”No Connectivity”警告を発し、その後、アイドル状態に戻る。
【００６４】
Ping Current Interface３５０
このタスク３５０は、リンク及びネットワーク層の両方において、現在のネットワークインタフェースが故障していないかの検出を担当する。これは、定期的に、サーバ１２をPingリクエストを用いて探索し、現在のインタフェースが層-３接続性をもはや提供しなくなると直ちにS＿DISCONNECTED信号を立ち上げる。そのサーバ１２が到達可能であるときは、このタスク３５０はアイドル状態に戻る。
【００６５】
Vertical Handover（VH)３６０
Vertical Handover（VH)タスク３６０は、垂直ハンドオーバが必要とされており、適当な後継インタフェースがLink and Pingタスク３４０或いはImmediate Scanタスク３２０によって検出されたとき覚醒する。VH３６０は、インタフェースのスイッチングとIPパラメータの継承（inheritance）を担当する。タスク３６０は、新たなインタフェースを作動状態にし、関連するプロセスに向けてイベントを送る。垂直ハンドオーバが完了すると、これはアイドル状態に戻る。
【００６６】
”Link and Ping”及び”Immediate Scan”の両タスクとも”Check＿Interface”機能を利用するが、以下ではこの”Check＿Interface”機能について詳細に説明する。この役割は、ある与えられたインタフェースの層２及び層３接続性をチェックすることにある。選択されたインタフェースに属する全てのアクセスポイントAPは、最初に、層２接続性に関してチェックされ、それに従って、各分析されたアクセスポイントについて（リンクが利用可能である/利用可能でない等）記述するオブジェクト内に適当なフラッグが設定される。あるアクセスポイントAP1-3がリンク層接続性を提供することがわかった場合、次に、IP接続性がチェックされる。最初に、そのインタフェースを通じてDHCPリクエストを送ることで、その搬送業者のインフラストラクチャから有効なIPアドレスを得ることが試みられる。IPアドレスが与えられない場合には、そのアクセスポイントAP1-3は通信に適さない。他方、あるIPアドレスが与えられた場合には、最後の段階が開始される。これには、サーバ１２をピニングし、応答を待つことによるIP接続性のチェックが含まれる。応答が所定のタイムアウト内に得られない場合は、それらアクセスポイントAP1-3は接続に適さず、得られた場合は、そのインタフェースは完全に接続されたと呼ばれ、そのようにマークされる。この場合は、この機能は成功裏に終了する。これら説明の段階（リンクの接続、DHCPリクエスト及びピニング）の一つに失敗した場合は、この機能は、この手続をリスト内の次のアクセスポイントAP1-3に対して反復し、リストは完全に走査されたが、適当なアクセスポイントAP1-3は１つも見つからなかった場合は、そのインタフェースは切断されていると呼ばれ、この機能は不成功のうちに終了する。
【００６７】
各段階において、ある与えられたアクセスポイントAP1-3に対する成否が記録及びキャッシングされ、将来の走査の速度の向上が図られる。つまり、その後の走査においては、照会は成功した段階の数が最も多いアクセスポイントAP1-3から開始される。実際には、走査が開始される前に、アクセスポイントリストAP1-3は知識（Knowldge）の程度及び前に成功した段階の数に基づいて分類される。第一番目には、登録されており、かつ、３つの段階に成功したアクセスポイントリストAP1-3が置かれ、第二番目には、キャッシングされており、かつ、３つの段階に成功したアクセスポイントリストAP1-3が置かれる。続いて、登録されている全てのアクセスポイントAPが、成功した段階の数に従って分類され、最終的には全てのキャッシングされたアクセスポイントリストAP1-3がこうして分類される。
【００６８】
更に、あるキャッシングされたアクセスポイントAP1-3が、所定の呼の回数、例えば、３回より少ない回数だけ、所定の回数の成功した段階を維持する場合、走査はそれ以上遂行されず、そのアクセスアポイントAP1-3は将来の走査に対しては、”利用不能（unavailable）”とマークされる。好ましくは、接続の試みを明示的に拒絶したアクセスポイントAP1-3 に対しても同様なことが行なわれる。
【００６９】
このCheck＿Interface機能は以下のようなプロトタイプを有する：
Int check＿interface(struc NetworkInterface*nic,int mode）；
この引数（arguments）は、”NetworkInterface”クラス及び”mode”に対するポインタである。”NetworkInterface”（図３、２０２参照）クラスは単一のネットワークインタフェースの記述を含み、他方、”mode”は、このCheck＿Interface機能がそのインタフェースと関連する利用可能な全てのアクセスポイントAP1-3をチェックすべきであるか、或いはある使用可能なアクセスポイントAP1-3 が見つかり次第直ちに退出すべきかを示す。第一のモードは”Link and Ping”タスク３４０によって用いられ、第二のモードは、使用可能なアクセスポイントAP1-3 を直ちに見つけることが重大な役割である”Immediate Scan”タスク３２０によって用いられる。
【００７０】
実施例
本発明は、とりわけ、しばしば移動し、このため、ここでは、便宜上、一般的に移動端末MTと呼ばれ、２つ或いはそれ以上のネットワークインタフェースを備える、デバイス/ノードに係る。これには、ポータブルコンピュータ、携帯（handheld）デバイス、高機能（high level）セルラ電話機が含まれる。このソリューションは、移動端末MTの所でのみランし、通常のネットワーク自動コンフィグレーションサービス（DHCP、BOOTP、PPP及び類似のサービス）に対する要件の除いては、搬送業者のインフラストラクチャに関してはなんの想定なされない。利用が考えられる分野には、オフィス環境が含まれる。提唱されるソリューションは、ユーザが自身の、例えば、ラップトップ（laptop）をアンドック（undock）すると、有線ローカルエリア網と無線ドメインとの間で自動的にスイッチする。本発明の方法は、ソフトウェアにて実現し、例えば、ポータブルコンピュータ等の計算デバイス、マイクロプロセッサ等のデジタル計算デバイスを含むPDA若しくは携帯電話等の携帯デバイス、計算機能を有するASIC、或いはプログラマブルデジタル素子、例えば、プログラマブルゲートアレイ、プログラマブル論理アレイ（PLA)、プログラマブルアレイ論理（PAL）、若しくはフィールドプログラマブルゲートアレイ（FPGA)上で実行することができる。このソフトウェアは、当業者においては周知のように、コンピュータプログラムの形式にて、実行可能な形態にて、CD-ROM、ディスケット、磁気テープ等のデータキャリア上に格納して、供給することもできる。
【００７１】
モバイル環境との関係では、本発明は、ユーザが異なるコンテクスト間を移動した際に接続性を維持する。例えば、接続性は、ユーザが自宅或いはオフィスの無線ローカルエリア網から出た場合でも、セルラ搬送業者に接続することで接続性は損なわれない。
【００７２】
本発明は、手動によりネットワークを走査（スキャン）し、選択し、構成することの煩わしさを解消する。利用可能なネットワークインタフェースは、自動的に、例えば、ユーザの好み順に格納される。この際は、帯域幅、コスト、消費電力等も考慮にいれることができる、そして、いったん、使用プロファイル（profile of usage）が与えられると、このソフトウェアは、利用可能な最適のインタフェースを自動的に決定する。
【００７３】
本発明は、無線接続性のミドルウェア分野（middleware field）に係る。これは、将来ますます重要な役割を果たすことが予想されるエリアである。他にも様々な特徴及び長所を有するが、本発明は、とりわけ、移動端末MT内で、無線網を走査し、これに基づいてネットワークインタフェースを選択する過程にコンテクストの概念を導入する。
【００７４】
上では、本発明が、一つの好ましい実施例との関連で説明されたが、当業者においては理解できるように、本発明の精神及び範囲から逸脱することなく、形態及び細部において様々な変更を加えることができるものである。
【００７５】
用語集
アクセスポイント（Access Point）：バックボーンへの接続性を提供するデバイス。これは、層２デバイス（ブリッジ）であることも、ネットワーク層デバイス（アクセスルータ）であることもあり得る。
【００７６】
ブリッジ（Bridge）：フレームを層２間で転送するデバイス。
【００７７】
ルータ（Router)：ネットワーク層においてパケットのルートを計算し、転送する能力を有するデバイス。
【００７８】
DHCP：動的ホスト構成プロトコル（Dynamic Host Configuration Protocol）。IPネットワークに接続するホストのIP及びDNSパラメータを自動的に構成するIEFT標準のプロトコル。
【００７９】
BOOTP：ブートプロトコル（Boot Protocol）。DHCPに類似する機能（ファシリティ）を提供する。
【００８０】
PPP：ポイント・ツウ・ポイントプロトコル（Pointo to Point Protocol）。シリアルラインを通じて２つのホスト間の通信を提供するIETF標準のプロトコル。これもIPパラメータの自動構成を行う。
【図面の簡単な説明】
【００８１】
【図１】本発明の一つの実施例による構成を含むシステムのブロック図である。
【図２】図１のクライアントデバイス内に実装されたネットワークインタフェース選択ポリシーに対するユースケースダイアグラムを示す図である。
【図３】図１のクライアントデバイス内に実装されたネットワークインタフェース選択ポリシーに対するクラスダイアグラムを示す図である。
【図４】図１のクライアントデバイス内に実装されたネットワークインタフェース選択ポリシーのタスクマネジャオに対するタスクダイアグラムを示す図である。
【図１】
2005532759.tif 000003
【図２】
2005532759.tif 000004
【図３】
2005532759.tif 000005
【図４】
2005532759.tif 000006
【国際調査報告】
2005532759.tif 000007
2005532759.tif 000008
2005532759.tif 000009