JP2005130474A - 複数のネットワーク通信媒体を介して接続を確立することのできるコンピューティングデバイス上でのネットワークおよびインターフェースの選択 - Google Patents

複数のネットワーク通信媒体を介して接続を確立することのできるコンピューティングデバイス上でのネットワークおよびインターフェースの選択 Download PDF

Info

Publication number
JP2005130474A
JP2005130474A JP2004278407A JP2004278407A JP2005130474A JP 2005130474 A JP2005130474 A JP 2005130474A JP 2004278407 A JP2004278407 A JP 2004278407A JP 2004278407 A JP2004278407 A JP 2004278407A JP 2005130474 A JP2005130474 A JP 2005130474A
Authority
JP
Japan
Prior art keywords
network
media
interface
computer
computing system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004278407A
Other languages
English (en)
Inventor
Abhishek Abhishek
アビシェク アビシェク
Anton W Krantz
ダブリュ.クランツ アントン
Dan A Knudson
エー.クヌードソン ダン
Edwin A Hernandez-Mondragon
エー エルナンデス−モンドラゴン エドウィン
Florin Teodorescu
テオドレスキュ フローリン
Alam Mohammad Shabbir
シャビア アラム モハマド
Taroon Mandhana
マンダナ タルーン
Timothy M Moore
エム.ムーア ティモシー
Vivek Bhanu
バヌー ビベク
Warren Vincent Barkley
ビンセント バークリー ウォーレン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2005130474A publication Critical patent/JP2005130474A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/18Selecting a network or a communication service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5691Access to open networks; Ingress point selection, e.g. ISP selection
    • H04L12/5692Selection among different networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/08Access point devices
    • H04W88/10Access point devices adapted for operation in multiple networks, e.g. multi-mode access points
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

【課題】 複数の媒体にわたるネットワークおよびインターフェースの選択を実施するためのシステムおよび方法を提供すること。
【解決手段】 開示するシステムは、異なる媒体を介した通信をサポートするネットワークのセットにまたがる自動化ネットワークインターフェース構成決定を容易にする。異なる通信媒体に関連する媒体特有モジュールのセットが、ネットワークインターフェースステータス/機能情報を獲得する。その後、規則エンジンが、獲得されたネットワークインターフェースステータス/機能情報、およびインターフェースとネットワークのいずれかに起因するその他の任意の適切なパラメータに、指定のネットワーク選択規則を適用し、接続を確立/維持するための1つまたは複数のネットワークおよびインターフェースを選択する。
【選択図】 図3

Description

本発明は一般に、コンピュータシステムの領域に関する。より詳細には、本発明は、コンピューティングデバイス内で、さらに具体的には複数の異なるネットワーキング媒体に関連する複数のネットワークインターフェースをサポートするコンピューティングデバイス中で、ネットワークインターフェースに関する構成を選択および決定する方法に関する。
無線ネットワーキングは、ネットワーク接続への様々な扉を開いてきた。今日、ユーザは、ネットワーキングソフトウェアとハードウェアの組合せを介して、事実上どんな位置からでもネットワークリソースにアクセスすることができる。実際、多くの場合にユーザは、任意の時点で様々な通信媒体の中から選択することができる。本明細書で言う通信媒体とは、ユーザのコンピュータがネットワークを介して通信するための、物理的ならびに論理的(プロトコル)手段を指す。通信媒体の例には、セルラー無線ワイドエリアネットワーク、パーソナルエリアネットワーク(例えばブルートゥース)、無線ローカルエリアネットワーク(例えば802.11(a/b/g))、有線ローカルエリアネットワーク、有線ワイドエリアネットワークが含まれる。例えば、無線ローカルエリアネットワーク、有線ローカルエリアネットワーク、無線ワイドエリアネットワーク、有線ワイドエリアネットワーク接続をサポートするオフィス環境内では、複数の通信媒体が同時に利用可能である。
様々な技術(例えば無線ローカルエリアネットワーク、無線ワイドエリアネットワーク、配線式ローカルおよびワイドエリアネットワーク、パーソナルコンピュータエリアネットワークなど)を介して潜在的に到達可能な複数のネットワークがあると、ネットワーク接続可能なコンピューティングデバイス上に、ネットワーク選択機能が必要になる。知られているコンピューティングシステム、特にWINDOWS(登録商標)XPを実行するコンピュータシステムでは、自動化されたネットワーク選択は現在、特定の通信媒体すなわち無線LANの優先リスト中で識別されるネットワークの順番に基づく。各ネットワークごとの優先リストベースの自動化選択手法では、現リストエントリを考慮するときの唯一の問題は、「コンピューティングデバイスが現在、識別されたネットワークに接続することができるか?」ということである。答がイエスなら、接続が確立される。答がノーなら、(ネットワーク接続が確立されるまで)優先リスト内の次のエントリが使用される。しかし、この優先リスト手法は、自動的にネットワークに接続するようにコンピューティングデバイスを構成する際に、柔軟性が幾分限られている。
本発明は、複数の通信媒体にまたがる選択規則およびネットワークインターフェース機能情報に基づいてネットワークおよびインターフェースを選択するためのフレームワークおよび方法を含む。このフレームワークは、ネットワーク選択基準を維持するための規則データストアを備える。基準は、様々な形をとることができ、潜在的に複数の媒体にわたる選択をサポートすることができる。
媒体特有モジュールインターフェースが、利用可能なネットワークインターフェースに関連するネットワークインターフェース情報を獲得するのを容易にする。蓄積される情報は、コンピューティングシステムがネットワークインターフェースのセットを介して接続することのできるネットワークのセットに関連する、複数の通信媒体にまたがる可能性がある。
このネットワークおよびインターフェース選択フレームワークは、ネットワーク選択ロジックも含む。蓄積された情報にネットワーク選択ロジックを適用して、ネットワークのセットのうちの1つを指定する。したがってこのフレームワークは、複数の媒体にまたがるネットワークおよびインターフェース選択を可能にする。
本発明はまた、上に要約した複数の媒体種類(media types)にまたがるネットワークおよびインターフェース選択フレームワークに組み入れられた機能を実施するための方法およびコンピュータ可読媒体も対象とする。
本発明の特徴については添付の特許請求の範囲に詳細に述べるが、本発明は、その目的および利点と合わせて、添付の図面と共に以下の詳細な記述を読めば最もよく理解することができる。
本明細書に開示する例示的なネットワークおよびインターフェース選択アーキテクチャは、複数通信媒体の環境で、非常にフレキシブルな自動化ネットワークおよびインターフェース選択決定を容易にする。このネットワークおよびインターフェース選択アーキテクチャは、プログラム可能なネットワークおよびインターフェース選択規則エンジンによる決定をサポートする。さらに、プログラム可能な規則エンジンによって特定の通信媒体に関連する特定のネットワークインターフェースに適用される基準は、代替通信媒体を利用する他のネットワークインターフェースに関連する機能/ポリシー/ステータス/ネットワークリソース情報に基づくことが可能である。
例として、規則エンジンは、ネットワーク優先順位、特定のネットワーク上で利用可能なリソース、特定の媒体を介したネットワークへの接続速度などを含めた選択規則のセットに基づいて、複数の通信媒体を包含する媒体特有モジュールに関連するネットワークインターフェースおよびネットワークのセットから、特定のネットワークインターフェースおよびネットワークを選択する。例示的な一実施形態では、規則エンジンによって適用される規則は、ユーザ、ネットワーク管理者(グループポリシー)、ネットワークサービスプロバイダを含めた様々なソースによって指定される可能性がある。規則は、様々な通信媒体(例えば無線LAN、無線WAN、無線PAN、有線LAN、有線WANなど)に関連する媒体特有モジュールによって提供されるネットワークインターフェースステータス/機能情報に適用される。
規則エンジンは、コンピューティングデバイス上のネットワークインターフェースのセットによってサポートされる複数の媒体にまたがる、全般的なネットワーク選択を容易にする。例示的な実施形態では、規則エンジンは、潜在的に複数の通信媒体に関連するネットワークインターフェースのセットのそれぞれに関するステータス/機能情報を受け取る。規則エンジンは、受け取った情報と、潜在的に複数の媒体にまたがるネットワークおよびインターフェース選択規則とに従って、ネットワークおよびインターフェース選択決定を実行する。決定中にもたらされたネットワーク/インターフェース選択結果に基づいて、規則エンジンは、例えば、ネットワークおよびインターフェース選択結果の影響を受けるネットワークインターフェースのうちの特定の1つに関連する媒体特有モジュールに構成命令を発行することによって、選択されたネットワークインターフェースを構成することを開始する。媒体特有モジュールは、影響を受けるネットワークインターフェースに関連するドライバに命令を発行する。
図1に、様々な異なる通信媒体を介してアクセスされる1つまたは複数のネットワークを含む環境で使用されるコンピューティングデバイス(例えばノートブックコンピュータ)に適した動作環境の例100を例示的に示す。動作環境100は、適した動作環境の一例に過ぎず、本発明の使用または機能の範囲についてどんな制限も意味しないものとする。本発明と共に使用するのに適すると考えられる他の周知のコンピューティングシステム、環境、および/または構成の例には、限定しないがパーソナルコンピュータ、サーバコンピュータ、ラップトップ/ポータブルコンピューティングデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、ネットワークPC、ミニコンピュータ、メインフレームコンピュータや、これらのシステムまたはデバイスのいずれかを含む分散コンピューティング環境などが含まれる。
本発明は、プログラムモジュールなど、コンピュータによって実行されるコンピュータ実行可能命令の一般的なコンテキストで述べることができる。一般にプログラムモジュールは、特定のタスクを実施するか特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本発明は、分散コンピューティング環境で動作するネットワークノード内に組み込むことが可能であり、その場合、タスクは通信ネットワークを介してリンクされたリモート処理デバイスによって実施される。分散コンピューティング環境では、プログラムモジュールは一般に、メモリ記憶デバイスを含めたローカルとリモートの両方のコンピュータ記憶媒体に位置する。
引き続き図1を参照するが、本発明を実施するための例示的なシステムは、コンピュータ110の形の汎用コンピューティングデバイスを含む。コンピュータ110のコンポーネントには、限定しないが処理ユニット120と、システムメモリ130と、システムメモリを含めた様々なシステムコンポーネントを処理ユニット120に結合するシステムバス121とを含めることができる。システムバス121は、様々なバスアーキテクチャのいずれかを用いた、メモリバスまたはメモリコントローラ、周辺機器バス、ローカルバスを含めて、いくつかの種類のバス構造のいずれかとすることができる。限定ではなく例として、このようなアーキテクチャには、ISA(Industry Standard Architecture)バス、MCA(Micro Channel Architecture)バス、EISA(Enhanced ISA)バス、VESA(Video Electronics Standards Association)ローカルバス、PCI(Peripheral Component Interconnect)バス(メザニンバスとも呼ばれる)が含まれる。
コンピュータ110は通常、様々なコンピュータ可読媒体を備える。コンピュータ可読媒体は、コンピュータ110からアクセスできる任意の利用可能な媒体とすることができ、揮発性と不揮発性の媒体、取外し可能と固定式の媒体の両方が含まれる。限定ではなく例として、コンピュータ可読媒体には、コンピュータ記憶媒体および通信媒体を含めることができる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータなどの情報を記憶するための任意の方法または技術で実現された、揮発性と不揮発性、取外し可能と固定式の両方の媒体が含まれる。コンピュータ記憶媒体には、限定しないがRAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、ディジタル多用途ディスク(DVD)または他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶デバイスが含まれ、あるいは、所望の情報を記憶するのに使用できコンピュータ110からアクセスできるその他の任意の媒体が含まれる。通信媒体は通常、搬送波や他のトランスポート機構などの変調されたデータ信号中に、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータを組み入れたものであり、任意の情報送達媒体が含まれる。「変調されたデータ信号」という語は、信号に情報を符号化する形で1つまたは複数のその特性が設定または変更された信号を意味する。限定ではなく例として、通信媒体には、有線ネットワークや直接有線接続などの有線媒体と、音響、無線周波数、赤外線、その他の無線媒体、例えば無線PAN、無線LAN、無線WAN媒体などの無線媒体とが含まれる。以上の任意の組合せもコンピュータ可読媒体の範囲に含めるべきである。
システムメモリ130は、読取り専用メモリ(ROM)131やランダムアクセスメモリ(RAM)132など、揮発性および/または不揮発性メモリの形のコンピュータ記憶媒体を含む。ROM131には通常、起動中などにコンピュータ110内の要素間で情報を転送するのを助ける基本ルーチンを含むBIOS(basic input/output system)133が記憶されている。RAM132は通常、処理ユニット120がすぐにアクセス可能な、かつ/または処理ユニット120が現在作用している、データおよび/またはプログラムモジュールを含む。限定ではなく例として、図1には、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、プログラムデータ137を示す。
コンピュータ110は、その他の取外し可能/固定式、揮発性/不揮発性コンピュータ記憶媒体を備えることもできる。例に過ぎないが図1には、固定式な不揮発性の磁気媒体に対して読み書きするハードディスクドライブ141と、取外し可能な不揮発性の磁気ディスク152に対して読み書きする磁気ディスクドライブ151と、CD ROMや他の光媒体など取外し可能な不揮発性の光ディスク156に対して読み書きする光ディスクドライブ155を示す。この例示的な動作環境で使用できる他の取外し可能/固定式、揮発性/不揮発性コンピュータ記憶媒体には、限定しないが磁気テープカセット、フラッシュメモリカード、ディジタル多用途ディスク、ディジタルビデオテープ、固体RAM、固体ROMなどが含まれる。ハードディスクドライブ141は通常、インターフェース140などの固定式メモリインターフェースを介してシステムバス121に接続され、磁気ディスクドライブ151および光ディスクドライブ155は通常、インターフェース150などの取外し可能メモリインターフェースでシステムバス121に接続される。
以上に論じ図1に示したドライブおよびそれらに関連するコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータの記憶域をコンピュータ110に提供する。例えば図1には、ハードディスクドライブ141がオペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、プログラムデータ147を記憶しているのが示されている。これらのコンポーネントは、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、プログラムデータ137と同じものとすることもでき、異なるものとすることもできることに留意されたい。ここでは、オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、プログラムデータ147が少なくとも異なるコピーであることを示すために、異なる番号を付けてある。ユーザは、キーボード162、マウスやトラックボールやタッチパッドと一般に呼ばれるポインティングデバイス161などの入力デバイスを介して、コンピュータ110にコマンドおよび情報を入力することができる。その他の入力デバイス(図示せず)には、マイクロホン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナなどを含めることができる。これらおよび他の入力デバイスは、システムバスに結合されたユーザ入力インターフェース160を介して処理ユニット120に接続されることが多いが、パラレルポート、ゲームポート、ユニバーサルシリアルバス(「USB」)など、その他のインターフェースおよびバス構造で接続されてもよい。モニタ191または他の種類の表示デバイスも、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続される。モニタに加えて、コンピュータは、スピーカ197やプリンタ196など他の周辺出力デバイスも備えることができ、これらは出力周辺インターフェース195を介して接続することができる。
コンピュータ110は、リモートコンピュータ180など1つまたは複数のリモートコンピュータへの論理接続を用いて、ネットワーク化された環境で動作することができる。リモートコンピュータ180は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、またはその他の一般的なネットワークノードとすることができ、図1にはメモリ記憶デバイス181しか示していないが、通常は、コンピュータ110に関して上述した要素の多くまたはすべてを備える。図1に示す論理接続は、ローカルエリアネットワーク(LAN)171およびワイドエリアネットワーク(WAN)173を含むが、その他のネットワークを含むこともできる。このようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、インターネットでよくみられる。
LANネットワーキング環境で使用されるときは、コンピュータ110は、1つまたは複数の有線/無線ネットワークインターフェース170を介してLAN171に接続される。さらに、1つまたは複数の有線/無線ネットワークインターフェース170のセットは、インターネットなどのWAN173を介した通信もサポートする。図1には示していないが、コンピュータ110は、内蔵または外付けのモデムを備えることが可能であり、モデムはユーザ入力インターフェース160または他の適切な機構を介してシステムバス121に接続される。ネットワーク化された環境では、コンピュータ110に関して示したプログラムモジュールまたはその一部をリモートのメモリ記憶デバイスに記憶することができる。限定ではなく例として、図1には、リモートアプリケーションプログラム185がメモリデバイス181上にあるのが示してある。図示のネットワーク接続は例示的なものであり、コンピュータ間で通信リンクを確立するための他の手段を使用してもよいことは理解されるであろう。
本発明は、様々な動的ネットワーキング環境で使用されるモバイルおよび非モバイルコンピューティングデバイス/マシンに組み入れることが可能である。このような環境では、好ましい通信方式は、利用可能な媒体のセットの変化、特定の媒体上のサービス品質の変化、および/または様々な通信媒体上の作業負荷の変化に伴って変化する可能性がある。図2に移ると、本発明を利用することの可能な無線コンピューティング環境の単純な例が示してある。図示の環境では、ノートブックコンピュータ200が、複数の通信媒体を介した通信を容易にする複数のネットワークインターフェースカード(特に図示せず)を備える。図2に示す特定の例では、ノートブックコンピュータ200は、セルラー伝送塔202と(WWAN媒体を介して)通信し、また、ローカルエリアネットワーク206に通信可能に結合された無線トランシーバ204と(WLAN媒体を介して)通信する。
(無線アクセスポイントすなわちWAPとも呼ばれる)無線トランシーバ204は、LAN206上の様々なリソースへのアクセスを提供する。例えば、無線トランシーバ204は、ノートブックコンピュータ200からファイルサーバ208上で維持されているディレクトリ/ファイルへのアクセスを提供する。LAN206は、ノートブックコンピュータ200のユーザを含めたLAN206のユーザからインターネット212へのアクセスを提供するゲートウェイ/ファイアウォール/モデム210も含む。ゲートウェイ/ファイアウォール/モデム210は、インターネット212のユーザからLAN206上のリソースへのアクセスも提供する。
複数のネットワーク媒体がサポートされる結果、ノートブックコンピュータ200のユーザは、複数の通信媒体を介してインターネット212および(インターネット212を通して)ファイルサーバ208にアクセスすることができる。例えばノートブックコンピュータ200は、WWANネットワークインターフェースを利用して、セルラー伝送塔202を含むセルラーネットワークを介してインターネット212にアクセスすることができる。あるいはノートブックコンピュータ200は、無線トランシーバ204を介してLAN206上のリソースにアクセスする。図示の例のLAN206はネットワークアクセス/プロキシサーバを含むものとし、これは、正しく認証されたノートブックコンピュータ200ユーザが、例示的に示す2つの無線ネットワーク媒体のいずれかを介してインターネット212およびLAN206のリソースにアクセスできるようにするものである。複数の媒体を介して同じリソースにアクセスするというノートブックコンピュータの機能は、ノートブックコンピュータ200のユーザの現在の条件、ニーズ、好みなどに基づいて無線ネットワーク媒体のうちの特定の1つを選択する可能性をもたらす。例えば、ネットワークの他のユーザ(例えば無線トランシーバ204を介して接続されたPC214や配線接続されたPC216)が、複数のネットワーク媒体のうちの特定の1つを介して、限られたネットワーク帯域幅を得ようと競合し、かつ/または通信品質を劣化させる。さらに、PC214は、無線ユーザインターフェースデバイス(マウスおよびキーボード)を使用しているために、他の無線通信を劣化させる信号干渉を生み出す恐れがある。このような場合、相対的に静的な優先リストは、現在のネットワーキング環境の条件下でノートブック200の現ユーザの特定のニーズを満たすのに利用可能な最良の接続を選択しないことがある。
本発明を実施するノートブックコンピュータ200内には、規則/ローミング(ネットワークおよびインターフェース選択)エンジンが組み込まれるが、このローミングエンジンは、ノートブックコンピュータ200の現在のネットワーキングニーズを果たすために、サポートされる複数のネットワーク媒体インターフェースに関係する情報に基準を適用して、ノートブックコンピュータ200のネットワークインターフェースおよび関連するネットワークのセットのうちの1つまたは複数を選択する。ローミングエンジンは、複数のネットワークインターフェースから供給されるステータス/機能情報に基づいて、その複数のネットワークインターフェースのそれぞれについての自動化ネットワークおよびインターフェース選択決定をサポートする。ローミングエンジンは、接続を確立するための現在好ましいネットワークとインターフェースの組合せを選択するとき、他のネットワーク/媒体の組合せの現在ステータス/機能に関係する情報を考慮することができる。優先リストに加えて、ローミングエンジンは、特定リソースの利用可能性、ネットワーク速度(最大/実際)、日時、ならびにその他ローミングエンジンによって得られる所望の要素に基づいて、そのネットワークインターフェース/ネットワーク選択決定を行うことができる。したがって、単一の媒体(例えばWLAN)に関するネットワークインターフェースの優先順のリストを、所望の接続を確立するのに利用可能なネットワークインターフェースが識別されるまで単に下降していくだけの優先リストに比べ、ノートブックコンピュータ200の複数ネットワークインターフェース構成を決定する情報の範囲および要素の幅(それぞれ潜在的に複数の媒体を包含する)が大きく向上する。
本発明が好ましく組み込まれる例示的な無線ネットワーキング環境について述べたところで、図3に注目する。図3には、ノートブックコンピュータ200(または他の任意のコンピューティングデバイス)に組み込まれた場合の例示的な自動化ネットワークおよびインターフェース選択アーキテクチャ/フレームワークを概略的に示してある。このネットワークおよびインターフェース選択アーキテクチャは、規則エンジン300に組み込まれた集中型の自動ネットワークおよびインターフェース選択決定/制御を特徴とする。
物理ネットワークインターフェースレベルから始めるが、図示のアーキテクチャでは、様々な媒体種類(例えばブルートゥース、WWAN、WLAN−例えば802.11a/b/gなど)のN個の媒体特有ドライバのセット302が、コンピュータ200にインストールされた現存のN個のネットワークインターフェースカード(NIC)のセットに関連する。図示の例では、媒体特有ドライバ302のそれぞれは、対応するNICと通信する。このような通信にはとりわけ、NICから提供されるステータス/機能情報が含まれる。このようなステータス/機能情報は、例えば、ドライバ302からの要求時にNICが実施する定期的な走査によって得られる。要求後、N個の媒体特有ドライバ302によって収集されたステータス/機能情報は、規則エンジン300に渡される。規則エンジン300は、サポートされるすべてのNICに関するすべてのステータス/機能情報のアグリゲータ/リポジトリとして、N個の媒体特有ドライバ302から提供されて受け取ったステータス/機能情報を動的規則データストア304内に記憶する。NICは、走査コマンドに加えて、構成コマンドもドライバ302から受け取る。
本発明の一実施形態では、前述のネットワークインターフェースステータス/機能情報および通知は、アプリケーション、プロビジョニング(provisioning)サービス314(例えば無線ISP)、グループポリシーサービス312、ユーザインターフェース310によって、共通リモートプロシージャコールAPI303を介してアクセス可能であることに留意されたい。例として、共通RPC API303は、優先リスト、可視リスト、媒体構成、デバイス状態、ユーザ認証データ、ネットワーク構成をユーザインターフェース310またはグループポリシーサービス312を介して照会および変更するための、呼出し可能なメソッド/演算/関数を含む。本発明の一実施形態では、プロビジョニングサービス314は、共通RPC API303への呼出しを介して、規則エンジン300に渡されるネットワーク構成を生成および更新すること、およびユーザ認証データを生成することに限られる。上述した機能については、後で図4を参照して述べる。
規則エンジン300は、動的規則データストア304から、潜在的に複数の通信媒体にまたがるネットワークおよびインターフェース選択規則にアクセスする。規則データストア304内に記憶されるネットワークおよびインターフェース選択規則は、図3に示すように、(ユーザインターフェース310を介する)ユーザ、(グループポリシーサービス312を介する)ネットワーク管理者、ネットワークアクセスプロビジョニングサービス314(例えばISP)を含めた、様々なソースから来るものとすることができる。図示の実施形態では、UI310は、共通RPC API303を介して規則を通信する。ただし、任意の規則ソースが様々な手段を介して規則をサブミット(submit)できることが企図される。これらの手段には、規則データストア内に直接に規則を記憶することが含まれ、また、規則エンジン300や、ネットワークデバイス接続/構成をサポートするその他のサービスなどの、フィルタリングエンティティを介して規則をサブミットすることが含まれる。本発明の一実施形態では、規則エンジン300は、グループポリシーサービス312の規則の方がUI310から供給される規則よりも好まれるように、規則ソースに優先順位を適用する。このようにプロビジョニングサービス314に従うことをUI310が指定した場合、プロビジョニングサービス314によって指定される規則の方が、UI310から供給される規則よりも優先される。
ネットワークおよびインターフェース選択規則は、特定の媒体をデータ通信に利用するネットワークおよびインターフェースを接続に向けて選択するためのガイドラインを指定する。例えばユーザおよびネットワーク管理者は、以下の要素/パラメータのうちの1つまたは複数に基づいて、ネットワークおよびインターフェース選択規則を指定する。
1.リソース−インターネット、企業、または家庭。インターネットは、より高い細分性で指定することができることに留意されたい。さらに、特定のネットワークが複数の利用可能リソースを有することもできる。
2.速度−1つのネットワーク(インターフェース)が複数のリンク速度をサポートすることができ、さらに、指定の速度は(接続が確立されるまでわからない場合がある)実際の接続速度ではなく最大値であることに留意されたい。
3.ネットワークプロバイダサービス優先順位(例えばMSFT、WISP1、Cell1など)
4.コスト−規則エンジンは、ユーザ選択を施行するか、あるいはネットワークプロバイダにコスト決定を行わせる。複数の媒体/ネットワークインターフェースを介して利用可能なネットワークは、各媒体に関連して異なるコストを有する。さらに、コストは使用モデルに基づいて動的に変動する可能性があり、したがって定期的に再計算されリフレッシュされる。
5.電力消費−コンピューティングデバイスが低電力で稼動している場合、必要とされる電力消費のより少ない媒体に切り替えるための決定プロセスを呼び出すことができる。
6.位置−ネットワークの種類および地理的位置。
ネットワークプロビジョニングサービスは、様々な媒体(例えばWWAN、ダイヤルアップ、DSLなど)を介して利用可能な可能性がある。ユーザは、上に挙げた選択規則種類(selection rule type)「3」(ネットワークプロバイダサービス優先順位)により、プロビジョニングサービスから供給される規則に特定媒体の選択を付託する規則を指定することが可能である。例示的な一実施形態では、プロビジョニングサービス314は、このような規則をXMLファイルの形で指定する。
規則エンジン300は、潜在的に複数の媒体に関連する蓄積されたステータス/機能情報に選択規則のセットを適用して、N個のネットワークインターフェースについてのネットワークおよびインターフェース選択決定を行う。N個のネットワークインターフェースカードのうちの特定の1つと、このインターフェースが接続すべきネットワークとに関して選択を行った後、規則エンジン300は、N個の媒体特有ドライバ302のうちでこの特定のネットワークインターフェースに対応する特定の1つに、構成命令をサブミットする。その後、媒体特有ドライバは、対応する構成命令を、N個のNICのうちの関連する1つに渡す。
本発明の一実施形態では、媒体特有モジュールのセット320が、特定の媒体種類に関する自動ネットワークおよびインターフェース選択をサポートする。図示の例では、媒体特有モジュールのセット320には、LANモジュール、WLANモジュール、WWANモジュール、パーソナルエリアネットワーク(例えばブルートゥース)モジュールが含まれる。媒体特有モジュール320は、規則エンジン300に代わって機能/ステータス情報を媒体特有ドライバに要求し、サポートされる媒体種類に関連する媒体特有ドライバによるネットワークインターフェースの走査を呼び出す。要求後、媒体特有モジュールは、結果としての獲得したネットワーク情報(例えば存在、機能、ステータスなど)を規則エンジン300に渡す。
規則エンジンは、現在の規則および情報のセットに基づいてネットワーク/インターフェース選択を行った後、特定の1つまたは複数のネットワークに接続するために、ネットワークインターフェース構成コマンドを媒体特有モジュール320のうちの適切な1つ(または複数)に渡す。媒体特有モジュール320は、規則エンジン300から受け取った構成命令に応答して、関連する媒体特有ドライバへの呼出しを介して、識別されたネットワークインターフェースに関連する接続に対する変更を開始する。例示的な実施形態では、媒体特有モジュール320のそれぞれは、前述の機能を実施するための状態機械を組み込んでいる。状態機械の例示的な状態のセットについては、後で図6を参照して述べる。
媒体特有モジュール320は、2つのインターフェースに関連する。媒体特有モジュール320は、媒体特有正規化モジュール322に組み込まれた一般化されたインターフェースを介して規則エンジンと通信する。正規化モジュール322は、規則エンジン300と媒体特有モジュール320との間にあるレイヤであり、規則エンジン300と媒体特有モジュール320との間における多くの種類の通信を正規化することを容易にする。正規化モジュール322は、(1)媒体特有モジュール320から規則エンジン300にネットワークドライバ機能/ステータス情報を提供すること、および(2)規則エンジン300が媒体特有モジュール320を介して媒体特有ドライバ302にネットワークインターフェース構成コマンドを指定することを容易にする。さらに、ユーザモードの媒体特有モジュール320は、例えば(カーネルモードの)ネットワークドライバインターフェース仕様(NDIS)340に従って、媒体特有ドライバ302と通信する。図示の実施形態は、特定の媒体種類ごとに、または媒体種類の種類ごとに媒体特有モジュールを提供しているが、本発明の代替実施形態は、関係のない複数の媒体種類をサポートする複合的な媒体特有モジュール(例えばWWAN/WLAN媒体特有モジュール)を含むことが企図される。さらに、正規化モジュール322は、規則エンジン300とも媒体特有モジュール320とも別個のエンティティとして示してあるが、本発明の代替実施形態では、正規化モジュールの機能は、規則エンジン300と媒体特有モジュール320のどちらかに組み込まれる。
媒体特有モジュールのセット320は拡張可能であり、個々のモジュールは、インストールされたネットワークインターフェース/ドライバに対応するよう、必要に応じてロードおよびアンロードされる。本発明の一実施形態では、規則エンジン300は、コンピューティングデバイスに対するデバイスのインストール/削除を監視するデータリンクレイヤ(OSIレイヤ2)モジュール324によって提供される通知サービスに登録している。特定の一実施形態では、このような通知は、規則エンジン300によってデータリンクレイヤモジュール324の通知サービスに登録されたコールバックルーチンを介して実施される。その後、規則エンジン300は、新しいネットワークインターフェース/デバイスがインストールされたという通知を通知サービスから受け取ると、この新しいネットワークインターフェースの媒体種類を扱うための媒体特有モジュールをロードするかどうかを決定する(例えばこのネットワークインターフェースは、この特定の媒体種類で最初のものである)。必要なら、適切な媒体特有モジュールは、規則エンジン300からの要求時にデータリンクレイヤモジュール324によってロードされ、関数ポインタのセットへの参照(例えばインターフェーステーブル)が規則エンジン300に提供されて、それにより、新しくインストールされた媒体特有モジュールに関連する正規化モジュール322の機能を呼び出すのが容易になる。その後、規則エンジン300は、この媒体特有モジュールを参照するためのハンドルを獲得して、新しいネットワークインターフェースに関連する媒体特有ドライバに対して構成操作(走査、接続、切断など)を開始する。逆に、ネットワークインターフェースが削除されるという通知を受け取ると、デバイス上で開かれたハンドルは切断される/閉じられる。複数のインターフェースをサポートすることのできる媒体特有モジュール上のすべてのセッションおよびハンドルが閉じられた場合は、ネットワークインターフェースの数が決定される。ネットワークインターフェースが残っていない場合は、アンロードテストが実施された後で(いくらかの時間にわたって削除が遅延する可能性がある)、媒体特有モジュールのアンロードが開始される。
媒体特有モジュールのロード/アンロードは、様々な管理エンティティによって様々な方法で管理することができる。本発明の一実施形態では、個々の媒体特有モジュール320のロードおよびアンロードは、媒体特有モジュール320と規則エンジン300の両方のロードおよびステータス管理を担うデータリンクレイヤサービスモジュール324によって実施される。識別された特定の媒体種類をサポートする追加の媒体特有モジュールを登録することにより、拡張性がサポートされる。ただし、このようなプログラムモジュールのロードおよびアンロードは、本発明の様々な実施形態により、様々なエンティティによって様々な方法で行うことができる。
要約すると、図3を参照して上述した自動構成アーキテクチャは、異なるネットワーク/インターフェースに関連する複数の通信媒体にまたがるステータス/機能情報および決定規則に基づいて、ネットワークインターフェースおよびネットワークのセットのうちの1つまたは複数を自動的に選択するための、拡張可能で非常にフレキシブルなインフラストラクチャを提供する。したがって、ネットワークインターフェースのセットに対するネットワーク接続を構成することに関して行われる決定は、単一の通信媒体だけを考慮/企図するネットワーク/インターフェース情報および規則に限定されない。
図4に移るが、規則エンジン300と、UI310、グループポリシーサービス312、プロビジョニングサービス314との間のインターフェース(例えば共通RPC API303)に関する例示的なメソッドのセットが列挙してある。Openメソッド400は、規則エンジン300にアクセスするユーザモードプロセスのためのコンテキストハンドルを生み出す。Closeメソッド402は、前にOpenメソッド400によって生み出されたハンドルを受け取り、このハンドルを閉じる。Closeメソッド402は、すべての未決定要求をアボートし、規則エンジン300中の、前に呼出し元からの要求にサービスするために生み出されたこのハンドルに関連するすべての関連リソースを解放する。Controlメソッド404は、ハンドル、GUID、制御コード、入力パラメータを入力として受け取り、RestartAuthenticationなどの(制御コードで識別される)非標準機能を実行した後で出力パラメータを出力する。
規則エンジン300からアプリケーションに公開されるメソッドのセットには、利用可能なネットワークのリストに対してアクセス/変更を行うためのメソッドのセットが含まれる。QueryVisibleListメソッド406APIは、利用可能なデバイス/インターフェースおよびそれらに関連するネットワークのリストを提供するよう、呼出し元が規則エンジン300に要求することを可能にする。オプションの入力GUIDパラメータが指定されている場合は、このGUIDのデバイスだけに対して照会が実行され、そうでない場合は、ロードされたすべての媒体特有モジュールにわたるすべてのデバイスにわたって呼出しが実行される。UpdateVisibleListメソッド408は、規則エンジン300による強制的な走査によって、すべてのデバイス上の、または指定されていれば特定のデバイス上の可視リストをリフレッシュさせ、規則エンジン300は、得られた利用可能なネットワークのリストを返す。
規則エンジン300からアプリケーションに公開されるメソッドのセットには、好ましいネットワークのリストに対してアクセス/変更を行うためのメソッドのセットが含まれる。QueryPreferredListメソッド410は、好ましいネットワークのリストを規則エンジン300に照会する。GUIDまたは媒体種類が(これらのフィールドについてのフラグまたは設定値によって)指定されている場合は、返されるリスト結果はそのGUIDおよび/または媒体種類に対してフィルタにかけられ、そうでない場合はグローバルリストが返される。AddToPreferredListメソッド412は、好ましいリストにエントリを追加するために呼び出される。AddToPreferredListメソッド412は、好ましいリストが別の呼出し元によってその最終状態から修正されている場合には、失敗する可能性がある。RemoveFromPreferredListメソッド414は、好ましいリストからエントリを削除するために呼び出される。このメソッドは、好ましいリストが別の呼出し元によってその最終状態から修正されている場合には、失敗する可能性がある。
OneTimeConnectメソッド416は、ワンタイム接続機能を実施する。言い換えれば、指定のエントリについて、規則エンジン300内で一時的な状態が確立される。接続が完了した後は、接続はどの好ましいリスト上でも存続しない。
あるメソッドセットは、通信媒体に関する現在構成へのアクセスを提供する。QueryMediaConfigurationメソッド418は、現在の媒体特有構成に関係するすべてのパラメータを入手して提供するように規則エンジン300を呼び出す。SetMediaConfigurationメソッド420は、媒体特有構成の設定を開始するように規則エンジン300を呼び出す。
あるメソッドセットは、デバイス特有構成へのアクセスを提供する。QueryDeviceStateメソッド422は、指定のデバイス特有(例えばネットワークインターフェースカード)構成に関係するパラメータのセットを返す。SetDeviceStateメソッド424は、特定のデバイス特有構成に関連するパラメータを設定する。
あるメソッドセットは、特定のユーザに関連する認証データへのアクセスを提供する。QueryUserAuthDataメソッド426は、指定のユーザ認証トークンで識別されるユーザに関する認証情報を返す。SetUserAuthDataメソッド428は、指定のユーザ認証トークンに対応する認証データを設定する。
あるメソッドセットは、特定のネットワークに関連する認証データへのアクセスを提供する。QueryNetworkAuthDataメソッド430は、指定のネットワーク認証トークンと提供されたユーザハンドルとで識別されるネットワークに関する、ネットワーク特有の認証情報を返す。SetNetworkAuthDataメソッド432は、指定のネットワーク認証トークンに対応する認証データを設定する。
次の3つのメソッドは、規則エンジンの共通RPC API303によってプロビジョニングサービス214に対してサポートされるものである。CreateNetworkConfigurationメソッド434は、前述のSetNetworkAuthDataメソッド432に類似するが、ネットワーク構成が入力パラメータを介してXMLフォーマットで供給される。UpdateNetworkConfigurationメソッド436は、CreateNetworkConfigurationメソッド434に類似するが、例外として、識別されるネットワークには既存の構成があると考えられる。CreateUserAuthDataメソッド438は、SetUserAuthDataメソッド428に類似するが、例外として、ユーザデータはXMLフォーマットで、渡されたパラメータで供給される。
図5に移ると、規則エンジン300と媒体特有モジュール320との間の正規化モジュール322によって提供されるインターフェースによって公開される例示的なメソッドのセットが列挙されている。これらのメソッドのセットは、(正規化モジュール322によって対処される)どんな媒体特有の実施要件も知る必要がないようにしながら、媒体特有モジュール320を介して、媒体特有ドライバに関連するデバイス(例えばネットワークインターフェースカード)を照会および構成するのを容易にする。
Openメソッド500は、識別された特定のデバイス/インターフェースについての、規則エンジン300のためのコンテキストハンドルを生み出す。Closeメソッド502は、前にOpenメソッド500によって生み出されたハンドルを受け取り、このハンドルを閉じる。Closeメソッド502は、すべての未決定要求をアボートし、規則エンジン300中の、識別された特定のデバイスについて前に規則エンジンからの要求にサービスするために生み出されたこのハンドルに関連するすべての関連リソースを解放する。
EventListenerメソッド504は、識別された通知を規則エンジン300が正規化モジュール322から受け取るためのコールバック(通知)参照を確立する。EventListenerメソッド504は、入力として、規則エンジンが通知を望む何らかのイベントを識別するイベント通知コードと、通知のインターフェースソースへのポインタと、通知のデータへのポインタと、ユーザ/コンテキスト情報を受け取る。
正規化モジュール322から規則エンジン300に公開されるメソッドのセットには、QueryVisibleListメソッド506APIが含まれる。このメソッドにより、規則エンジン300は、入力GUIDパラメータで指定されるように各デバイスごとに、媒体ごとに、またはすべてのデバイスについて、利用可能なネットワークのリストの列挙を要求することができる。同様に、QueryPreferredListメソッド508は、好ましいネットワークのリストを規則エンジン300が照会することを容易にする。GUIDまたは媒体種類が(これらのフィールドについてのフラグまたは設定値によって)指定されている場合は、返されるリスト結果はそのGUIDおよび/または媒体種類に対してフィルタにかけられ、そうでない場合はグローバルリストが返される。
あるメソッドセットは、インストールされたデバイス/インターフェースの機能および現在ステータスへのアクセスを提供する。GetDeviceCapsメソッド512は、前のOpenメソッド500への呼出し中に返されたハンドルで指定されるインターフェースに関するデバイス機能を得ることを開始するために、規則エンジン300によって呼び出される。このような機能の例については後述する。さらに、これらの機能には、インターフェースに関するデバイス種類特有の定義も含まれる。
AsyncGetxxxメソッドのセット514、およびAsynchSetxxxメソッドのセット516は、様々なデバイス特有の状態/ステータスパラメータを入手および設定するのを容易にする。AsyncGetxxxメソッド514は、Openメソッド500に応答してデバイスに対して提供されたデバイス/インターフェースハンドルを渡す。AsyncGetxxxメソッド514はまた、phAsync入出力パラメータも含み、これにより規則エンジン300は、非同期通知のためのユーザコンテキスト値へのポインタを渡す。phAsyncパラメータを介して返された出力は、非同期通知ハンドルへのポインタである。このハンドルは後で、取り出された情報にアクセスするのに使用される。Getxxxメソッド514の種類(type)の例には、オンライン/オフラインステータス、信号状態、可視プロバイダ/ネットワーク、好ましいプロバイダ、レディ状態、登録状態などが含まれる。
AsyncSetxxxメソッド516は、デバイス/インターフェースハンドルと、特定の設定機能を実施するために提供されるデータへのポインタと、返される通知に対するユーザコンテキストハンドルへのポインタとを渡す。完了時、ポインタは、要求に対するハンドルを参照する。ユーザコンテキスト値/出力ハンドルへのポインタは、規則エンジン300への通知機構として使用されて、要求された設定機能の完了または失敗が伝えられる。AsyncSetxxxメソッド516の種類には、例えば、指定のデバイス/インターフェースのオンライン/オフラインおよび接続ステータスに影響を与える命令が含まれる。
さらに留意されたいが、本発明の実施形態では、インターフェースの状態を決定しインターフェースの状態を設定するための一般化されたメソッドであるQueryDeviceStateメソッド518およびSetDeviceStateメソッド520(それぞれQueryDeviceStateメソッド422およびSetDeviceStateメソッド424に対応する)も、正規化モジュール322中で、または規則エンジン300と媒体特有モジュール320との間に介在するその他の任意の適したインターフェース中でサポートされる。
正規化モジュール322によってサポートされるインターフェースには、SetUserAuthDataメソッド522およびSetNetworkAuthDataメソッド524も含まれ、これらの機能は、SetUserAuthDataメソッド428およびSetNetworkAuthDataメソッド432に対応する。
規則エンジン300は、ネットワークインターフェース構成選択を実施する際、connectメソッド526およびdisconnectメソッド528を介して、接続を確立/遮断する命令をサブミットする。connectメソッド526は、例としてネットワーク名(例えばWLANの場合のSSID、またはWWANの場合のプロバイダおよびAPN)、ログオン/認証情報、Pin(WWANの場合)などを受け取る。
本発明の例示的な一実施形態に組み込まれる例示的なインターフェースのセットについて述べたが、本発明の代替実施形態も企図されることに留意されたい。代替実施形態では、インターフェースには、本明細書で例として述べたような構成選択規則エンジン/システムの動作に従ってネットワークインターフェースに関する情報を獲得してネットワークインターフェースを構成することを容易にするための、異なる呼出しのセットが含まれる。
媒体特有モジュールの機能は、様々な方法で実施することができる。図6に移ると、モジュール320の例示的な一実施形態による、媒体特有モジュール320のセットのそれぞれに対して規則エンジン300(あるいは正規化モジュール322)によって実施される状態機械の状態のセットが識別されている。最も単純な形では、この状態のセットは連続的に実行される。連続の中で特定の状態に達し、関連の動作が必要とされない場合は、少なくとも連続の次回の反復までは関連の動作はスキップされる。しかし代替実施形態では、状態間の遷移は、状態変数によって進められ、非連続的な順序で行われる可能性があり、必ずしも図6に示す順序に従うとは限らない。ネットワークを求めて走査する状態600の間に、媒体特有モジュールは、接続されている各ネットワークに関係するステータス/機能情報を、同じ媒体種類のインストール済み媒体特有ドライバに照会するよう、要求される。ネットワークがプロビジョニングサービスに関連する場合は、プロビジョニングサービス中のネットワークを検索する状態602の間に、媒体特有モジュールは、媒体特有ネットワーク情報を求める照会を、規則エンジン300を介してプロビジョニングサービスに発行する。1つまたは複数のネットワークインターフェース情報セットを蓄積した後、リストを渡す状態604の間に、媒体特有モジュールは、媒体特有モジュール種類に関連するネットワーク記述データ構造のセット(図7参照)を含むリストを提供する。
特定のネットワークインターフェースを構成するための呼出しを規則エンジン300から受け取ると、状態機械の接続構成状態606で、規則エンジン300からの呼出しの中で識別されるネットワークインターフェースに対応する特定の媒体特有ドライバに、接続構成命令を発行する。規則エンジン300からの要求に基づいて新しい接続が確立される場合は、状態606でネットワークインターフェースを構成した後、ネットワークに接続する状態608で、媒体特有モジュールは、選択されたネットワークおよびインターフェースに関連する媒体特有ドライバに、ネットワークインターフェースと識別されたネットワークとの間に動作レイヤ2(データリンク)接続を確立するよう命令を発行する。ステータスを報告する状態610の間に、媒体特有の状態機械は、ドライバに照会し、特定のネットワークインターフェースカード(NIC)に関する現在接続ステータス情報を取り出し、その後、この情報を規則エンジン300に提示する。
媒体特有機能の状態612は、媒体特有の状態機械が関連付けられている媒体の特定のニーズに従ってプログラムされる一般的な状態である。ネットワーク切替えを管理する状態614は、第1のネットワーク接続が中断して別のネットワーク接続がそれに取って代わる場合に対処する。ネットワーク切替えを管理する状態614の内容/機能は、媒体特有の状態機械が関連付けられている特定の媒体に大きく依存する。本発明の一実施形態では、切替え動作は、規則エンジン300によって適切な接続/切断命令を介して進められる。しかし代替実施形態では、切替え動作はより低いレベルで、例えば正規化モジュール322などによって進められる。
手短に図7に移ると、例示的なネットワークインターフェース記述子データ構造に関連するフィールドのセットが提供されている。このネットワークインターフェース記述子は、潜在的に複数の通信媒体にわたるネットワークおよびインターフェース選択を容易にするために、媒体特有モジュール320から規則エンジン300に提供されるものである。特定の媒体を求めて複数のネットワークインターフェースを走査することを担う単一の媒体特有モジュールが、走査した各ネットワークインターフェースに対応するこのような記述子のリストを供給する。規則エンジン300は、媒体特有モジュールのセットから提供されたネットワークインターフェース記述子を蓄積し、蓄積した記述子にネットワークおよびインターフェース選択基準を適用する。その後、規則エンジン300は、ネットワーク/インターフェースの組合せを選択すると、ネットワーク/インターフェース選択を実施するために構成命令を媒体特有モジュール320に対して指定する。媒体特有モジュール320はその後、構成命令を実施して、特定のネットワークインターフェースに関連する指定のネットワークに接続(またはそれから切断)する。
例示的なネットワークインターフェース記述子中では、記述子ハンドルフィールド700が、ネットワークインターフェースについての記述子の特定インスタンスに割り当てられた一意識別を記憶する。ハンドルの値は、後で特定のネットワークインターフェースについて述べるステータス/機能情報の組合せの特定のインスタンスに関する参照を提供する。ネットワーク名フィールド702は、ネットワークインターフェースが関連付けられているネットワークを一意に識別する値を記憶する。リソースフィールド704は、ネットワークインターフェースを介してアクセスされるネットワークリソースを一般に識別する。リソースフィールド704は、企業LANやインターネットなどの特定リソースにアクセスする必要に基づいた、規則ベースのネットワークおよびインターフェース選択をサポートする。速度フィールド706は、この特定のネットワークインターフェースによって現在サポートされる最大データレートを示す値を記憶する。コストフィールド708は、この特定のネットワークの使用に関連するコストを指定するのに使用される。コストフィールド708は、最も単純な場合では、単にネットワーク接続が使用ごとにコストを課さないか否かを示すだけである。別法として、コストは、複数のネットワークのうちの特定のネットワークに関連する相対的なコストを比較するのに使用される重み付きの数字とすることもできる。コストフィールド708は、接続を確立するために特定のネットワークインターフェースを(他の利用可能ネットワークインターフェースに優先して)選択するか否かを決定するときにコストが要素の1つとなる、規則ベースの決定をサポートする。ドメイン名フィールド710は、オプションのドメイン名(例えばMicrosoft.com)を指定する。本発明は広範なネットワークインターフェース記述フォーマットを企図しており、したがって前述の例は本発明を限定するものと解釈すべきではないことに留意されたい。前述の記述子フィールドのセットは、例示的なものとする。使用できるその他のフィールドには、無線/有線媒体種類、特定の無線媒体種類のサブタイプ(例えばWLAN媒体の場合の802.11a/b/gサブタイプ)、認証モード、暗号化モードなどが含まれる。
以下は、802.11媒体特有モジュールおよびWWANモジュールによって規則エンジン300に提供された、蓄積されたネットワークインターフェース記述子のセットの例である。最初の3つの記述子は、802.11モジュールによって提供されたものであり、最後の記述子は、WWANモジュールによって提供されたものである。記述子は、ハンドル「GUID3」で識別される第3の記述子に例として示すように、リソースのセットを指定することができることに留意されたい。
Figure 2005130474
本発明を組み入れた規則エンジンベースの自動ネットワーク接続構成機構に関する一般的なフレームワークについて述べたところで、図8に示す表に注目する。図8は、複数の通信媒体にまたがる例示的なネットワークおよびインターフェース選択シナリオのセットを含む。このような基準は、例として上に述べた種類のネットワークインターフェース記述子に基づいて、規則エンジン300によって実施される。
表の1行目に示す第1のシナリオでは、規則エンジン300によって適用される規則は、ある媒体を他の1つまたは複数の媒体に優先して指定する。具体的なシナリオ例としては、媒体種類(例えばWWANよりもWLAN)、最高データ伝送レート、媒体のサブタイプ(例えば802.11bよりも802.11a)を指定することが含まれる。このような規則シナリオで使用されるパラメータには、リンク速度、物理媒体(有線/無線)、802.11タイプ(a/b/g)、コストが含まれる。
表の2行目に示す第2のシナリオでは、規則エンジン300によって適用される規則は、あるネットワークを他の1つまたは複数のネットワークに優先して指定する。具体的なシナリオ例は、無線インターネットサービスプロバイダ(WISP)によって提供される公衆無線LANネットワークよりも、企業LANを指定するものである。このような規則シナリオで使用されるパラメータには、ネットワーク識別子タイプ(例えばWLANの場合のSSID、WISPの場合のAPN)が含まれる。
表の3行目に示す第3のシナリオでは、規則エンジン300によって適用される規則は、現在位置に基づいてネットワーク優先順位を指定する。具体的なシナリオ例としては、米国ではWISP BよりもWISP Aを、欧州に位置するときはWISP AよりもWISP Bを指定することが含まれる。このような規則シナリオで使用されるパラメータは、位置(例えば家庭、職場、物理的位置など)である。
表の4行目に提供する別のシナリオでは、規則エンジン300によって適用される規則は、論理ネットワークを含む優先順位を指定する。具体的なシナリオ例としては、WISP BよりもWISP Aを介した企業ネットワークを指定することが含まれる。ネットワークプロバイダは、XMLプロビジョニングに基づいて、どの物理ネットワーク(WWANかWLAN)を使用するかを決定する。このような規則シナリオで使用されるパラメータには、無線プロバイダからのXMLプロビジョニングファイル、動的なネットワークおよびインターフェース選択を容易にするためのビジネスロジックが含まれる。
別のシナリオでは、優先は時刻に基づいて指定される。時刻に基づいてある種のネットワーク/インターフェースが好まれる場合、現在検出された時刻に基づいて優先を実施することができる。例えば、特定のWWANネットワークプロバイダは夜間および週末に好まれるが、別のプロバイダは平日に好まれる場合、規則が規則エンジン300にサブミットされ、規則エンジン300によって適用されて、(指定のネットワークと、このネットワークへの接続を確立するためのインターフェースとの組合せを含む)構成選択が実施される。
一般に、規則エンジンは、規則にアクセスして、潜在的に複数の媒体種類に関連する選択ネットワークを決定する。規則は、ユーザインターフェース(例えば特定のアプリケーションまたはサービスを起動するのに伴うダイアログ)、管理者によって指定されたグループポリシー、またはネットワークプロビジョニングサービスを介して指定される。これらの規則は、以下のいずれか1つまたは組合せとすることができる。
・ネットワーク接続を確立するためにユーザが指定した規則(例えばユーザはWWAN媒体よりもWLAN媒体を指定する)。
・ネットワークプロバイダによって指定された優先順位。機能している規則に応じて、規則エンジンは、利用可能な媒体ごとにネットワーク接続を指定することもでき、あるいは、1つの媒体種類だけに対してネットワーク接続を指定して、他の媒体種類に対しては接続をブロックすることもできる。
・ユーザがネットワークプロバイダに付託することを選択した場合の、ネットワークプロバイダが提供した規則(例:WISP1は最も好ましいネットワークプロバイダだが、複数の媒体を介して利用可能である。どの物理ネットワークを使用して接続するかはWISP1が決定する)。
図9に移ると、図3に示した構成アーキテクチャを使用して無線媒体構成を実施するための例示的なステップのセットがフローチャートに要約してある。ネットワークおよびインターフェース選択規則の現在セットを、利用可能なデバイスおよび関連するネットワークの現在セットに適用する規則エンジンの動作は、様々な条件下で開始することができる。例えば、インターフェースが追加/削除されたこと、新しい規則または規則セットが指定されること、接続が遮断されたこと、ネットワーク/論理位置が変化したこと、ポリシーまたはプロビジョニング変更が生じたことなどの通知がデータリンクレイヤサービスモジュール324から受け取られたとき、すべてのデバイスの走査が実施されると新しいデバイス状態(例えば新しいネットワークが利用可能であること)が返される。
ネットワークおよびインターフェース選択を実施するための予備ステップとして、ステップ900の間に、規則エンジン300は、複数の通信媒体にまたがるネットワークインターフェースのセット(例えばWWANインターフェースおよびWLANインターフェース)から得られたステータス/機能情報を受け取る。このような情報は、例えば標準化されたフォーマットで1つまたは複数の媒体特有モジュール320から正規化モジュール322を介して、規則エンジン300に提供される。新しいデバイスが出現した場合は、最初の予備ステップとして、規則エンジン300は、関連する媒体特有モジュールを(まだロードされていなければ)ロードするようデータリンクレイヤサービスモジュール324に要求し、媒体特有モジュールへの適切な参照を返す。
ステータス/機能情報は、規則エンジン300によって様々な方法で蓄積/更新される。本発明の例示的な実施形態では、この情報は、規則エンジン300が、後で例として述べる走査アルゴリズムに従って媒体特有モジュール320に能動的に照会(ポーリング)することによって獲得され、また、媒体ドライバからデータを受け取ったモジュール320からネットワークインターフェースのステータス/機能の自発的な更新を受け取ることによって獲得され、媒体ドライバは、場合によってはそれ自体のバージョンの走査アルゴリズムを実行する。
媒体特有モジュール320は、プッシュとプルのどちらかまたは両方のデータ獲得手順を含めた任意の適した方式で、媒体特有ドライバ302からネットワークインターフェースステータス/機能情報を得る。本発明の一実施形態では、無線媒体特有モジュールは(自発的に、またはネットワークインターフェース構成に関連する別のエンティティからの非同期要求に応答して)、様々な要素を考慮するように定式化された走査アルゴリズムに基づいてドライバ302から情報をプルする。要素には、現在の電源(例えば電池)、現在の接続状態(有線/無線)、現在の接続の継続時間、コンピューティングデバイスが現在移動しているかどうかなどが含まれる。特定の無線走査構成では、無線媒体特有モジュールに関連する走査エンジンが、走査履歴テーブル内で維持される履歴情報を含めた走査パラメータのセットに基づいて走査アルゴリズムを適用して、ネットワークインターフェース(またはネットワークインターフェースのセット)に対する次の走査サイクルをいつ開始するかを決定する。次の走査期間の時が来ると、媒体特有モジュールは、影響を受けるネットワークインターフェースの走査を開始し、走査結果を記憶する。
ステップ910の間に、規則エンジン300は、ユーザインターフェース310、グループポリシーサービス312、プロビジョニングサービス314を含めた規則ソースのいずれか1つまたは組合せによって指定された規則のセットにアクセスする。本発明の例示的な実施形態では、規則エンジン300は、動的規則データストア304からネットワークインターフェース構成規則を取り出す。前述のように、規則は複数の媒体を包含する可能性がある。
ステップ920で、規則エンジン300は、定期的にまたは非同期要求時に、ステップ910の間にアクセスした潜在的に複数の通信媒体にまたがるネットワークおよびインターフェース選択規則を、受け取った情報に適用する。そして、1つまたは複数の特定ネットワークに接続するための1つまたは複数のネットワークインターフェースを選択し、選択したインターフェース/ネットワークの組合せに対する媒体特有ドライバ302のセットに対応するネットワークインターフェースのセットのそれぞれについて、構成命令を実施する。ネットワークインターフェースに対して特定のネットワークを選択することは、無線LANトランシーバなど単一のネットワークインターフェースが複数のネットワークにアクセスすることができる状況で必要である。
その後、ステップ930で、規則エンジン300は、媒体特有モジュール320を介して媒体特有ドライバ302に構成コマンドを発行する。ステップ920の結果によってネットワークインターフェースステータスが変化しない場合は、構成コマンドを発行する必要はない。しかし、特定のネットワークインターフェースのステータスが変化する場合は、規則エンジン300は、対応する媒体特有モジュールに、変更を実施するための適切な構成命令を発行し、命令が実施されたことの確認が媒体特有モジュールから来るのを待機する。
複数の媒体にわたるネットワークインターフェース構成決定を実施するための例示的なステップのセットについて述べたが、前述のステップは例示に過ぎないことに留意されたい。本明細書に含まれる開示に鑑みて当業者なら理解するであろうが、個々のステップは、規則エンジンから媒体特有モジュール320のうちの適切な1つに構成命令のセットが発行される結果をもたらすデータ/処理フローの進行を示すものである。したがって例えば、ネットワークインターフェース情報の獲得は、ネットワークインターフェース情報に適用されることになる構成規則を規則エンジンが入手しつつある間に行うこともできる。
次に図10および11に移るが、無線ネットワークの走査は、無線NICによって検知されるネットワークにユーザが接続する意向/必要を有さないときでも、前述のネットワークおよびインターフェース選択アーキテクチャ/方法のサポートで、無線ネットワークインターフェースカードによって定期的に実施される。以下に述べる走査アルゴリズム1010の制御下で動作する無線ネットワーク走査エンジン1000は、走査履歴1030に記憶された情報によって明示される無線NICの現在状態に基づいて、無線NIC1020の走査頻度を変更する。
走査エンジン1000によって実施される一般的な走査アルゴリズムを要約すると、無線NIC1020が無線ネットワークに関連付けられておらず、かなりの期間にわたって関連付けられていなかったときは、走査頻度は低下する。さらに、NIC1020がかなりの期間にわたって良好な信号強度で同じアクセスポイントに関連付けられているときも、やはり走査頻度は低下する。というのは、このNICに関連する無線接続に依拠するクライアントアプリケーションは、別のアクセスポイントまたはネットワークへのローミング/切替えを行う必要がある可能性がより低いからである。このことは、NIC1020を備えるラップトップまたはその他の電池式コンピューティングデバイスが能動的にデータパケットを送信していない場合に、特に当てはまる。この走査アルゴリズムに従って走査頻度を低下させると、走査と走査の間により長い期間にわたってカードをパワーダウンさせることができるので、ラップトップ電池電力の節約になる。
次に図11を参照すると、走査エンジンの動作を律するステップの反復シーケンスに関するステップのセットが示されている。まずステップ1100の間に、走査エンジンは、知られている方法で、NIC1020(例えばWLAN NIC)を呼び出して利用可能ネットワークを求めて走査し、得られた情報は、走査履歴1030に記憶される。ステップ1110の間に、結果はまた、NIC1020に関連するネットワークインターフェースドライバにも記憶される(後で対応する媒体特有モジュールに渡される)。その後、ステップ1120の間に、走査エンジン1000は、(後でさらに述べる)走査アルゴリズム1010および前に記憶した走査履歴1030中の走査結果に少なくとも部分的に基づいて、走査遅延期間を決定する。その後、ステップ1130で、NIC1020の次の走査を実施するための走査遅延期間を設定する。その後、制御は遅延期間が切れるまで待機段階1140に入り、ステップ1100に戻って次の走査が実施される。
例示的な走査手順を述べたが、以下に一般的な走査制御方式を述べる。まず、コンピューティングデバイスの電力モードが、走査タイミングアルゴリズムをイネーブルにするかどうかを律する。例として、走査タイミングアルゴリズムは、コンピュータの電池電力が入っておりNICが継続的なアクセスモードにないときに実施される。
走査は、コンピューティングデバイスがうまくローミングできるようにするよう意図される。定期的に走査することにより、コンピューティングデバイスは、別のアクセスポイントに関連付け(ローミング)されずに、現在関連付けられているアクセスポイントから過度に遠くへ移動することはできないはずである。本発明の実施形態によれば、記憶は、走査期間を適応的に調整することができるように、前の走査に応答する。この走査方式は、以下の場合に対処する。
1.可視のネットワークがないとき、またはユーザが特定のネットワークに関連することができないとき。
2.ラップトップがかなりの時間にわたって同じアクセスポイントに関連付けられており、信号強度がまだ十分であるとき。このことは、ユーザが移動しておらず、他のネットワークまたはアクセスポイントを求めて走査する必要がないことを示す。
3.ユーザのラップトップが物理的に移動しており、したがってユーザがアクセスポイントの範囲外に移動する前に利用可能ネットワークを求めて走査することができるとき。
1および2の場合、走査間の間隔は60秒よりもかなり長くすることができる。このスキャナタイミング方式を実施して、前の走査の履歴に基づいて走査間の間隔を設定最大値に増大させる。最大値は、状態に変化がないときに走査手順が完全にシャットダウンするのを防ぐためのフェイルセーフ手段として提供される。
3の場合、ラップトップが移動したことを検出できた場合は、ユーザが現在のネットワークの範囲外に移動する可能性があるので、走査エンジン1000は、走査を実施して、利用可能なネットワークまたはアクセスポイントがあるかどうかチェックする。移動は、位置認識モジュール中で検出することができ、あるいは802.11NICの場合は、受信信号強度、伝送カウント、フレームエラーレートなど、802.11統計を分析することによって検出することができる。
例示的な走査方式によれば、コンピューティングデバイスはまた、ネットワークアクセスを(イーサネット(登録商標)ケーブルなどを介して)提供する別のNICがあるときを検出する。この場合、無線NICに対するすべての走査は電力の無駄であり、NICはディセーブルにされるべきである。NICがイネーブルのままにされる場合でも、走査を実施するよう要求されるべきではない。
さらに、走査エンジンは、NICが能動的にトラフィックを送信しているときを検出する。これは走査を実施するのに適さない時であり、予定されたどんな走査も、トラフィックが送信されるまで遅延されるべきである。トラフィックが送信され、統計が十分に良好な場合は、走査期間はスキップされる。最後に、例示的な走査制御方式によれば、ユーザは、次の走査期間が来る前に走査を要求したい場合がある。NICは、要求があり次第この走査を実施し、走査履歴、期間、タイマ、頻度を相応に調整する。
自動化されたネットワークアクセス構成/選択を促進/実施するための新しい有用な方法およびフレームワークを本明細書に述べたことが、当業者には理解されるであろう。より具体的には、本明細書に述べた規則ベースのネットワークおよびインターフェース選択アーキテクチャは、複数の通信媒体に関連する媒体特有モジュールのセットによって提供されるステータス情報に基づいて、特定モードのネットワークアクセスの自動化選択を容易にする。本発明の原理を適用することのできる多くの可能なコンピューティング環境と、自動化ネットワークアクセス構成を実施することの柔軟性とに鑑みて、本明細書に述べた実施形態は例示的なものであり、本発明の範囲を限定するものと考えるべきではないことを理解されたい。本発明の趣旨を逸脱することなく、例示的な実施形態の構成および詳細を修正することもできることは、本発明が適用される技術分野の当業者なら理解するであろう。したがって、本明細書に述べた本発明は、添付の特許請求およびその均等物の範囲に含めることのできるすべての実施形態を企図する。
本発明の一実施形態を組み込むための/実施するためのコンピューティングデバイスの例示的なアーキテクチャを示す簡略化した概略図である。 移動コンピューティングデバイスが接続することの可能な複数のネットワークアクセスポイントを含む、例示的な複数ネットワーク通信媒体構成の図である。 本発明を組み入れたコンピューティングデバイス内の自動ネットワーク選択フレームワーク中の主要なコンポーネントを識別する概略図である。 規則エンジンと、アプリケーションおよびユーザインターフェースのセットとの間の公開インターフェースに関して識別されるメソッドの例示的なセットを要約した図である。 複数の通信媒体にまたがるネットワークインターフェースのセットをサポートするコンピューティングデバイス上のネットワークインターフェースの構成を選択および決定するのを容易にするために対話する規則エンジンと媒体特有モジュールとの間に介在するインターフェースに関するメソッドの例示的なセットを要約した図である。 媒体特有モジュールのセットのそれぞれにつき実施される状態機械の状態のセットを要約した図である。 規則エンジンによる機能照会に応答して媒体特有モジュールから規則エンジンに渡される例示的なネットワークインターフェース情報内のフィールドのセットを要約した図である。 複数の通信媒体に関する規則エンジンに提供される情報に基づいた自動化ネットワークインターフェース選択および構成シナリオを要約した表である。 図3に示したネットワークインターフェース選択アーキテクチャを使用してネットワークおよびインターフェース選択を実施するための例示的なステップのセットを要約したフローチャートである。 ネットワークインターフェースによる走査を制御して、モバイルコンピューティングデバイス上の電池電力消費を削減するのを容易にするための、例示的な走査エンジンアーキテクチャの図である。 図10で識別された走査アーキテクチャに組み込まれる走査方式の例示的なステップのセットの図である。
符号の説明
120 処理ユニット
121 システムバス
130 システムメモリ
134 オペレーティングシステム
135 アプリケーションプログラム
136 その他のプログラムモジュール
137 プログラムデータ
140 固定式な不揮発性メモリインターフェース
144 オペレーティングシステム
145 アプリケーションプログラム
146 その他のプログラムモジュール
147 プログラムデータ
150 取外し可能な不揮発性メモリインターフェース
160 ユーザ入力インターフェース
161 マウス
162 キーボード
170 ネットワークインターフェース/モデム
171 ローカルエリアネットワーク
173 ワイドエリアネットワーク
180 リモートコンピュータ
185 リモートアプリケーションプログラム
190 ビデオインターフェース
195 出力周辺インターフェース
196 プリンタ
197 スピーカ
202 セルタワー
206 イーサネット(登録商標)
212 インターネット
300 規則エンジン
302 媒体特有ドライバ1 媒体特有ドライバ2 ・・・ 媒体特有ドライバN
303 共通RPC API
304 動的規則データ
312 グループポリシーサービス
314 プロビジョニングサービス
322 媒体特有正規化モジュール
324 データリンクレイヤ(レイヤ2)サービス
340 ネットワークドライバインターフェース仕様(NDIS)

Claims (40)

  1. 複数の通信媒体にまたがるネットワーク情報に基づいたネットワーク選択をサポートするコンピューティングシステムであって、
    ネットワーク選択基準を維持するための規則データストアと、
    前記コンピューティングシステムがネットワークインターフェースのセットを介して接続することのできるネットワークのセットに関連する潜在的に複数の通信媒体にまたがるネットワークインターフェース情報の獲得を容易にする媒体特有モジュールインターフェースと、
    前記規則データストアからのネットワーク選択基準を、潜在的に複数の媒体にまたがる前記蓄積されたネットワークインターフェース情報に適用することによって、前記ネットワークのセットのうちの1つを指定するためのネットワーク選択ロジックと
    を備えたことを特徴とするコンピューティングシステム。
  2. 前記媒体特有モジュールインターフェースおよび前記ネットワーク選択ロジックは、前記規則データストアへのアクセスを有する規則エンジンに関連付けられていることを特徴とする請求項1に記載のコンピューティングシステム。
  3. 前記媒体特有モジュールインターフェースは、ネットワークインターフェースに向けられた要求を前記規則エンジンから受け取る正規化モジュールを備えたことを特徴とする請求項2に記載のコンピューティングシステム。
  4. 特定の媒体種類に関連するネットワークインターフェースに関するネットワークインターフェース情報を獲得するように構成された媒体特有モジュールのセットをさらに備えたことを特徴とする請求項1に記載のコンピューティングシステム。
  5. 前記媒体特有モジュールは、特定のネットワークインターフェースに関連する媒体特有ドライバからネットワークインターフェース情報を獲得することを特徴とする請求項4に記載のコンピューティングシステム。
  6. 前記複数の通信媒体は、少なくとも無線ワイドエリアネットワーク媒体および無線ローカルエリアネットワーク媒体を含むことを特徴とする請求項1に記載のコンピューティングシステム。
  7. 前記無線ローカルエリアネットワーク媒体は、1つまたは複数の802.11無線プロトコルを含むことを特徴とする請求項6に記載のコンピューティングシステム。
  8. 前記ネットワーク選択基準は、前記媒体に関連するネットワークパラメータに基づいて、少なくとも2つの媒体間の優先順位を指定することを特徴とする請求項1に記載のコンピューティングシステム。
  9. 前記ネットワーク選択基準は、前記媒体に関連するネットワーク種類に基づいて、少なくとも2つの媒体間の優先順位を指定することを特徴とする請求項1に記載のコンピューティングシステム。
  10. 前記ネットワーク選択基準は、前記コンピューティングシステムの現在位置に基づいて優先順位を指定することを特徴とする請求項1に記載のコンピューティングシステム。
  11. 前記ネットワーク選択基準は、論理ネットワーク間の優先順位を指定することを特徴とする請求項1に記載のコンピューティングシステム。
  12. 前記ネットワーク選択基準は、時間パラメータに基づいて優先順位を指定することを特徴とする請求項1に記載のコンピューティングシステム。
  13. 前記ネットワーク選択ロジックは、ネットワークを求めてネットワークインターフェースのセットを周期的に走査する状態機械に組み込まれ、前記ネットワーク選択基準をネットワークおよびインターフェースのセットに適用して現在ネットワークおよびインターフェース選択を実施し、前記現在ネットワークおよびインターフェース選択に従って構成命令を発行することを特徴とする請求項1に記載のコンピューティングシステム。
  14. 走査履歴中で維持されている前の走査結果に基づいて周期的走査を制御するための、ネットワークインターフェースに関連する走査エンジンをさらに備えたことを特徴とする請求項1に記載のコンピューティングシステム。
  15. コンピューティングシステムがネットワークインターフェースを介して開始する接続の接続先になるネットワークとインターフェースとの組合せを、複数の通信媒体にまたがるネットワーク情報に基づいて選択する方法であって、
    ネットワーク選択基準にアクセスするステップと、
    前記コンピューティングシステムがネットワークインターフェースのセットを介して接続することのできるネットワークのセットに関連する潜在的に複数の通信媒体にまたがるネットワークインターフェース情報を蓄積するステップと、
    潜在的に複数の媒体にまたがる前記ネットワークインターフェース情報にネットワーク選択基準を適用することによって、前記ネットワークのセットのうちの1つと、前記ネットワークインターフェースのセットからのネットワークインターフェースとを指定するステップと
    を含むことを特徴とする方法。
  16. 前記ネットワーク選択基準は、構成可能な規則データストアからアクセスされることを特徴とする請求項15に記載の方法。
  17. 前記指定するステップに従ってネットワークインターフェース構成命令を発行するステップをさらに含むことを特徴とする請求項15に記載の方法。
  18. 前記蓄積するステップは、潜在的に複数の異なる種類の通信媒体ドライバに関連する媒体特有モジュールのセットと、前記指定するステップを実施する規則エンジンとの間に介在する正規化モジュールによって容易にされることを特徴とする請求項15に記載の方法。
  19. 前記媒体特有モジュールによって、特定のネットワークインターフェースに関連する前記通信媒体ドライバからネットワークインターフェース情報を獲得するステップをさらに含むことを特徴とする請求項18に記載の方法。
  20. 前記複数の通信媒体は、少なくとも無線ワイドエリアネットワーク媒体および無線ローカルエリアネットワーク媒体を含むことを特徴とする請求項15に記載の方法。
  21. 前記ネットワーク選択基準は、前記媒体に関連するネットワークパラメータに基づいて、少なくとも2つの媒体間の優先順位を指定することを特徴とする請求項15に記載の方法。
  22. 前記ネットワーク選択基準は、前記媒体に関連するネットワーク種類に基づいて、少なくとも2つの媒体間の優先順位を指定することを特徴とする請求項15に記載の方法。
  23. 前記ネットワーク選択基準は、前記コンピューティングシステムの現在位置に基づいて優先順位を指定することを特徴とする請求項15に記載の方法。
  24. 前記ネットワーク選択基準は、論理ネットワーク間の優先順位を指定することを特徴とする請求項15に記載の方法。
  25. 前記ネットワーク選択基準は、時間パラメータに基づいて優先順位を指定することを特徴とする請求項15に記載の方法。
  26. 前記ネットワーク選択ロジックは状態機械に組み込まれ、さらに、前記状態機械の制御下で、
    ネットワークを求めてネットワークインターフェースのセットを走査するステップと、
    前記ネットワーク選択基準をネットワークおよびインターフェースのセットに適用して現在ネットワークおよびインターフェース選択を実施するステップと、
    前記現在ネットワークおよびインターフェース選択に従って構成命令を発行するステップと
    を周期的に実施することを含むことを特徴とする請求項15に記載の方法。
  27. 走査アルゴリズムと、走査履歴中で維持されている前の走査結果とに少なくとも部分的に基づいて、前記ネットワークインターフェースのセットのうちの指定の1つまたは複数に対するネットワーク走査を開始するステップをさらに含むことを特徴とする請求項15に記載の方法。
  28. コンピューティングシステムがネットワークインターフェースを介して開始する接続の接続先になるネットワークとインターフェースとの組合せを、複数の通信媒体にまたがるネットワーク情報に基づいて選択することを容易にするためのコンピュータ実行可能命令を備えたコンピュータ可読媒体であって、前記コンピュータ実行可能命令は、
    ネットワーク選択基準にアクセスするステップと、
    前記コンピューティングシステムがネットワークインターフェースのセットを介して接続することのできるネットワークのセットに関連する潜在的に複数の通信媒体にまたがるネットワークインターフェース情報を蓄積するステップと、
    潜在的に複数の媒体にまたがる前記ネットワークインターフェース情報にネットワーク選択基準を適用することによって、前記ネットワークのセットのうちの1つと、前記ネットワークインターフェースのセットからのネットワークインターフェースとを指定するステップとを容易にすることを特徴とするコンピュータ可読媒体。
  29. 前記ネットワーク選択基準は、構成可能な規則データストアからアクセスされることを特徴とする請求項28に記載のコンピュータ可読媒体。
  30. 前記コンピュータ実行可能命令はさらに、前記指定するステップに従ってネットワークインターフェース構成命令を発行するステップを容易にすることを特徴とする請求項28に記載のコンピュータ可読媒体。
  31. 前記蓄積するステップは、潜在的に複数の異なる種類の通信媒体ドライバに関連する媒体特有モジュールのセットと、前記指定するステップを実施する規則エンジンとの間に介在する正規化モジュールによって容易にされることを特徴とする請求項28に記載のコンピュータ可読媒体。
  32. 前記媒体特有モジュールによって、特定のネットワークインターフェースに関連する前記通信媒体ドライバからネットワークインターフェース情報を獲得するためのコンピュータ実行可能命令をさらに含むことを特徴とする請求項31に記載のコンピュータ可読媒体。
  33. 前記複数の通信媒体は、少なくとも無線ワイドエリアネットワーク媒体および無線ローカルエリアネットワーク媒体を含むことを特徴とする請求項28に記載のコンピュータ可読媒体。
  34. 前記ネットワーク選択基準は、前記媒体に関連するネットワークパラメータに基づいて、少なくとも2つの媒体間の優先順位を指定することを特徴とする請求項28に記載のコンピュータ可読媒体。
  35. 前記ネットワーク選択基準は、前記媒体に関連するネットワーク種類に基づいて、少なくとも2つの媒体間の優先順位を指定することを特徴とする請求項28に記載のコンピュータ可読媒体。
  36. 前記ネットワーク選択基準は、前記コンピューティングシステムの現在位置に基づいて優先順位を指定することを特徴とする請求項28に記載のコンピュータ可読媒体。
  37. 前記ネットワーク選択基準は、論理ネットワーク間の優先順位を指定することを特徴とする請求項28に記載のコンピュータ可読媒体。
  38. 前記ネットワーク選択基準は、時間パラメータに基づいて優先順位を指定することを特徴とする請求項28に記載のコンピュータ可読媒体。
  39. 前記ネットワーク選択ロジックは状態機械に組み込まれ、さらに、前記状態機械の制御下で、
    ネットワークを求めてネットワークインターフェースのセットを走査するステップと、
    前記ネットワーク選択基準をネットワークおよびインターフェースのセットに適用して現在ネットワークおよびインターフェース選択を実施するステップと、
    前記現在ネットワークおよびインターフェース選択に従って構成命令を発行するステップと
    を周期的に実施するためのコンピュータ実行可能命令を備えたことを特徴とする請求項28に記載のコンピュータ可読媒体。
  40. 走査アルゴリズムと、走査履歴中で維持されている前の走査結果とに少なくとも部分的に基づいて、前記ネットワークインターフェースのセットのうちの指定の1つまたは複数に対するネットワーク走査を開始するためのコンピュータ実行可能命令をさらに備えたことを特徴とする請求項28に記載のコンピュータ可読媒体。
JP2004278407A 2003-10-24 2004-09-24 複数のネットワーク通信媒体を介して接続を確立することのできるコンピューティングデバイス上でのネットワークおよびインターフェースの選択 Pending JP2005130474A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/693,655 US7996505B2 (en) 2003-10-24 2003-10-24 Network and interface selection on a computing device capable of establishing connections via multiple network communications media

Publications (1)

Publication Number Publication Date
JP2005130474A true JP2005130474A (ja) 2005-05-19

Family

ID=34394595

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004278407A Pending JP2005130474A (ja) 2003-10-24 2004-09-24 複数のネットワーク通信媒体を介して接続を確立することのできるコンピューティングデバイス上でのネットワークおよびインターフェースの選択

Country Status (5)

Country Link
US (2) US7996505B2 (ja)
EP (1) EP1526682A3 (ja)
JP (1) JP2005130474A (ja)
KR (1) KR20050039529A (ja)
CN (1) CN1735059A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101675650A (zh) * 2007-05-03 2010-03-17 高通股份有限公司 无线通信接收器中用于恢复默认扫描列表的应用编程接口
US9015717B2 (en) 2007-04-25 2015-04-21 Sony Corporation Method for processing tasks in parallel and selecting a network for communication
JP2018064167A (ja) * 2016-10-12 2018-04-19 株式会社バッファロー ネットワーク装置、ネットワークアッタチドストレージ及びデフォルトゲートウェイ設定方法
JP2020080470A (ja) * 2018-11-13 2020-05-28 Necプラットフォームズ株式会社 通信装置及びその制御方法、プログラム

Families Citing this family (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060002381A1 (en) * 1997-12-09 2006-01-05 Michael Socaciu Signaling for Internet end stations
US7263078B2 (en) * 2002-12-18 2007-08-28 Microsoft Corporation Method and apparatus for scanning in wireless computing devices
EP1763279B1 (en) 2003-02-13 2008-03-26 Research In Motion Limited Manual selection of a communication network for a mobile station
US7996505B2 (en) 2003-10-24 2011-08-09 Microsoft Corporation Network and interface selection on a computing device capable of establishing connections via multiple network communications media
US7389352B2 (en) * 2003-12-24 2008-06-17 Lenovo Singapore Pte. Ltd System and method for concurrent WLAN and WPAN wireless modes from a single device
US7509658B2 (en) * 2004-01-30 2009-03-24 Research In Motion Limited System and method for adaptable provisioning of generic application content
US8387039B2 (en) * 2004-01-30 2013-02-26 Research In Motion Limited System and method for customized provisioning of application content
US7610057B2 (en) * 2004-04-23 2009-10-27 Microsoft Corporation Selecting a wireless networking technology on a device capable of carrying out wireless network communications via multiple wireless technologies
US7779086B1 (en) * 2004-05-04 2010-08-17 Oracle America, Inc. Methods and apparatus for performing a remote procedure call
US10972536B2 (en) 2004-06-04 2021-04-06 Apple Inc. System and method for synchronizing media presentation at multiple recipients
US20070110074A1 (en) 2004-06-04 2007-05-17 Bob Bradley System and Method for Synchronizing Media Presentation at Multiple Recipients
US8797926B2 (en) 2004-06-04 2014-08-05 Apple Inc. Networked media station
US8443038B2 (en) 2004-06-04 2013-05-14 Apple Inc. Network media device
US20060129557A1 (en) * 2004-12-10 2006-06-15 Microsoft Corporation Wireless network sign-up experience
US7805414B2 (en) * 2004-12-10 2010-09-28 Jean-Pierre Duplessis Wireless network customization
US7499438B2 (en) 2005-01-13 2009-03-03 2Wire, Inc. Controlling wireless access to a network
US7535880B1 (en) * 2005-01-13 2009-05-19 2Wire, Inc. Method and apparatus for controlling wireless access to a network
CA2496939A1 (en) * 2005-02-08 2006-08-08 Cirond Networks, Inc. Network security method and apparatus
AU2006252377A1 (en) * 2005-06-02 2006-12-07 Alza Corporation Method for terminal sterilization of transdermal delivery devices
DE602005018752D1 (de) * 2005-06-08 2010-02-25 Research In Motion Ltd Abtasten von drahtlosen lokalen Netzen gemäss gespeicherten Profilen
US7561545B2 (en) 2005-06-08 2009-07-14 Research In Motion Limited Scanning groups of profiles of wireless local area networks
US8856311B2 (en) 2005-06-30 2014-10-07 Nokia Corporation System coordinated WLAN scanning
ATE489823T1 (de) 2005-07-15 2010-12-15 Motorola Inc Optimierung von zellscanning in einem drahtlosen endgerät mit mehreren modi
WO2007019871A1 (en) * 2005-08-12 2007-02-22 Telefonaktiebolaget Lm Ericsson (Publ) Access selection method
US8724484B2 (en) * 2005-09-16 2014-05-13 Microsoft Corporation Connecting to different network types through a common user interface
US20070088828A1 (en) * 2005-10-18 2007-04-19 International Business Machines Corporation System, method and program product for executing an application
US7590762B2 (en) 2005-12-07 2009-09-15 Microsoft Corporation API for network discovery
US20070130468A1 (en) * 2005-12-07 2007-06-07 Microsoft Corporation Network connection identification
WO2007086026A2 (en) * 2006-01-27 2007-08-02 Nokia Siemens Networks Oy Automatic establishment of a network connection for automated network element configuration
US20070183394A1 (en) * 2006-02-03 2007-08-09 Deepak Khandelwal Automatic call origination for multiple wireless networks
EP1989827B3 (en) 2006-03-02 2015-11-11 Nokia Corporation Supporting an access to a destination network via a wireless access network
WO2007113410A2 (fr) * 2006-03-31 2007-10-11 France Telecom Commutateur de television numerique et de television tnt
US20070255797A1 (en) * 2006-04-28 2007-11-01 Dunn Douglas L Method for selecting an air interface using an access list on a multi-mode wireless device
EP1895800A1 (en) * 2006-08-31 2008-03-05 France Télécom Determination of a list of preferred mobile access networks
US20080080458A1 (en) * 2006-09-29 2008-04-03 Cole Terry L Connection manager with deferred configuration
US7885222B2 (en) 2006-09-29 2011-02-08 Advanced Micro Devices, Inc. Task scheduler responsive to connectivity prerequisites
US8032150B2 (en) 2006-09-29 2011-10-04 Globalfoundries Inc. Connection manager with location learning
US8467785B2 (en) * 2006-10-24 2013-06-18 Research In Motion Limited WLAN scanning by prevalence of access point deployment on certain channels
US8244241B2 (en) 2006-10-24 2012-08-14 Research In Motion Limited WLAN network information caching
KR100816380B1 (ko) 2006-10-26 2008-03-25 삼성전자주식회사 이동통신단말기 기능 수행 방법
US7844269B2 (en) 2007-01-22 2010-11-30 Research In Motion Limited Scanning cell-dependent groups of profiles of wireless local area networks
CN101272321B (zh) * 2007-03-20 2012-11-21 华为技术有限公司 无线网络中选择移动ip模式的方法、无线网络及决策实体
US8929328B2 (en) 2007-02-02 2015-01-06 Microsoft Corporation Decoupling scanning from handoff for reduced delay over wireless LAN
EP1986372A1 (en) * 2007-04-26 2008-10-29 Nokia Siemens Networks Oy Method and apparatus to support handover between heterogeneous access networks
WO2008151830A1 (en) * 2007-06-13 2008-12-18 Telefonaktiebolaget Lm Ericsson (Publ) Technique for controlling a user network in a multi-access network environment
US8095172B1 (en) * 2007-08-23 2012-01-10 Globalfoundries Inc. Connectivity manager to manage connectivity services
US7937354B2 (en) * 2007-10-15 2011-05-03 Sap Ag Providing results from external rule engines based on rule engine vocabularies
EP2053883A1 (en) * 2007-10-18 2009-04-29 Axalto SA A mobile telecommunication selecting method
EP2421306B1 (en) * 2008-02-15 2013-05-01 Research In Motion Limited Policy-based data routing for a multi-mode device
US8825109B2 (en) * 2008-02-15 2014-09-02 Blackberry Limited Policy-based data routing for a multi-mode device
US7962436B2 (en) * 2008-02-28 2011-06-14 Sap Ag Enhanced call-back service using rule engine
US8447865B2 (en) 2008-06-20 2013-05-21 Microsoft Corporation Optimal source interface selection
US8774805B2 (en) 2008-07-11 2014-07-08 Blackberry Limited System and method for radio access technology-specific routing for multi-mode mobile devices
TW201007469A (en) * 2008-08-15 2010-02-16 Asustek Comp Inc Computer with remote mangement system
EP2190245A1 (en) * 2008-11-20 2010-05-26 Koninklijke KPN N.V. A mobile phone comprising operating means
US8751612B2 (en) * 2008-11-21 2014-06-10 Microsoft Corporation Creating cross-technology configuration settings
US8683046B2 (en) * 2008-11-21 2014-03-25 Microsoft Corporation Unified interface for configuring multiple networking technologies
US8676942B2 (en) * 2008-11-21 2014-03-18 Microsoft Corporation Common configuration application programming interface
US8615570B2 (en) * 2008-11-21 2013-12-24 Microsoft Corporation Unified storage for configuring multiple networking technologies
US8769140B2 (en) * 2010-06-04 2014-07-01 Broadcom Corporation Method and system for optimizing power consumption in a home network via a broadband gateway
JP5539397B2 (ja) * 2009-01-29 2014-07-02 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 異なる操作モードに基づくネットワークの異なるサブセットへの1つ以上の電子デバイスのポート接続
US8131325B2 (en) 2009-02-27 2012-03-06 Research In Motion Limited Method, apparatus and system for battery resource management via traffic steering
US8090395B2 (en) * 2009-03-12 2012-01-03 Qualcomm Incorporated Scanning channels while a device is out of service
US8862173B2 (en) 2009-12-10 2014-10-14 Motorola Solutions, Inc. Method for selecting media for delivery to users at an incident
TW201132163A (en) * 2010-03-12 2011-09-16 Gemtek Technology Co Ltd Network interface selection method and network device thereof
US8423030B2 (en) 2010-07-06 2013-04-16 Research In Motion Limited User profiles
US8909751B2 (en) 2010-12-28 2014-12-09 Microsoft Corporation Flexible policy based network decision making
CN102104512A (zh) * 2011-01-07 2011-06-22 华为技术有限公司 确定接口信息的方法和设备
US9275162B2 (en) 2011-03-22 2016-03-01 Blackberry Limited Pre-caching web content for a mobile device
US20120254448A1 (en) * 2011-04-02 2012-10-04 Recursion Software, Inc. System and method for selection of network transport within a mobile device
US9401917B2 (en) 2011-06-03 2016-07-26 Blackberry Limited Pre-caching resources based on a cache manifest
CN102404142B (zh) * 2011-11-08 2015-07-29 深圳市宏电技术股份有限公司 一种链路参数备份方法、装置及设备
US9253340B2 (en) * 2011-11-11 2016-02-02 Intellectual Ventures Fund 83 Llc Wireless camera with image sharing prioritization
KR101460292B1 (ko) * 2011-12-13 2014-11-11 주식회사 케이티 이종 네트워크 환경에서 네트워크 선택 서비스 제공 방법 및 시스템
US9009260B2 (en) * 2012-05-10 2015-04-14 Blackberry Limited Method, system and apparatus for transferring data via more than one communications interface
US9356804B1 (en) * 2012-06-12 2016-05-31 Amazon Technologies, Inc. Policy-based network connection resource selection
US9319968B2 (en) 2012-09-19 2016-04-19 Blackberry Limited System and method for controlling network scan parameters for a network connection
US20140164582A1 (en) * 2012-12-06 2014-06-12 SXCVS XM Connected Vehicle Services Inc. Method and system for providing configurable communication network routing
CN103024929B (zh) * 2012-12-20 2016-08-03 惠州Tcl移动通信有限公司 一种基于移动终端连接无线网络的方法及移动终端
US9414305B2 (en) * 2013-02-04 2016-08-09 Metropcs Wireless, Inc. Intelligent network selection system
US9118681B2 (en) * 2013-03-08 2015-08-25 Telefonaktiebolaget L M Ericsson (Publ) Mist networks
US9398525B2 (en) 2013-03-14 2016-07-19 Qualcomm Incorporated Selecting a network for a wireless device
US8867343B2 (en) 2013-03-15 2014-10-21 Extrahop Networks, Inc. Trigger based recording of flows with play back
US8619579B1 (en) * 2013-03-15 2013-12-31 Extrahop Networks, Inc. De-duplicating of packets in flows at layer 3
US8626912B1 (en) 2013-03-15 2014-01-07 Extrahop Networks, Inc. Automated passive discovery of applications
US20140297818A1 (en) * 2013-03-29 2014-10-02 Microsoft Corporation Parallel and Dynamic Interface Selection
US9686692B2 (en) 2014-03-20 2017-06-20 Microsoft Technology Licesning, LLC Wi-Fi tile transfer
US9942762B2 (en) * 2014-03-28 2018-04-10 Qualcomm Incorporated Provisioning credentials in wireless communications
US20160098994A1 (en) * 2014-10-03 2016-04-07 Speaktoit, Inc. Cross-platform dialog system
CN104469665A (zh) * 2014-12-29 2015-03-25 深圳市理奥网络技术有限公司 一种数据处理方法以及用户端
US9338147B1 (en) 2015-04-24 2016-05-10 Extrahop Networks, Inc. Secure communication secret sharing
US11006274B2 (en) * 2015-11-30 2021-05-11 Qualcomm Incorporated Service-based network selection
US10613888B1 (en) 2015-12-15 2020-04-07 Amazon Technologies, Inc. Custom placement policies for virtual machines
US10204211B2 (en) 2016-02-03 2019-02-12 Extrahop Networks, Inc. Healthcare operations with passive network monitoring
US9729416B1 (en) 2016-07-11 2017-08-08 Extrahop Networks, Inc. Anomaly detection using device relationship graphs
US9660879B1 (en) 2016-07-25 2017-05-23 Extrahop Networks, Inc. Flow deduplication across a cluster of network monitoring devices
CN106373565A (zh) * 2016-08-24 2017-02-01 安徽咪鼠科技有限公司 一种自动切换语音识别引擎的方法
KR102581310B1 (ko) 2016-10-25 2023-09-22 삼성전자 주식회사 무선 통신 시스템에서 접속 네트워크를 선택하는 방법 및 장치
US10476673B2 (en) 2017-03-22 2019-11-12 Extrahop Networks, Inc. Managing session secrets for continuous packet capture systems
US10263863B2 (en) 2017-08-11 2019-04-16 Extrahop Networks, Inc. Real-time configuration discovery and management
US10063434B1 (en) 2017-08-29 2018-08-28 Extrahop Networks, Inc. Classifying applications or activities based on network behavior
US11184452B2 (en) * 2017-10-13 2021-11-23 Yokogawa Electric Corporation System and method for selecting proxy computer
US9967292B1 (en) 2017-10-25 2018-05-08 Extrahop Networks, Inc. Inline secret sharing
SE541396C2 (en) * 2017-12-27 2019-09-10 Scania Cv Ab Method and control unit for communicating with a vehicle
US10389574B1 (en) 2018-02-07 2019-08-20 Extrahop Networks, Inc. Ranking alerts based on network monitoring
US10264003B1 (en) 2018-02-07 2019-04-16 Extrahop Networks, Inc. Adaptive network monitoring with tuneable elastic granularity
US10038611B1 (en) 2018-02-08 2018-07-31 Extrahop Networks, Inc. Personalization of alerts based on network monitoring
US10270794B1 (en) 2018-02-09 2019-04-23 Extrahop Networks, Inc. Detection of denial of service attacks
US11297369B2 (en) 2018-03-30 2022-04-05 Apple Inc. Remotely controlling playback devices
US10993274B2 (en) 2018-03-30 2021-04-27 Apple Inc. Pairing devices by proxy
US10783929B2 (en) 2018-03-30 2020-09-22 Apple Inc. Managing playback groups
US10116679B1 (en) 2018-05-18 2018-10-30 Extrahop Networks, Inc. Privilege inference and monitoring based on network behavior
US10614857B2 (en) 2018-07-02 2020-04-07 Apple Inc. Calibrating media playback channels for synchronized presentation
US10411978B1 (en) 2018-08-09 2019-09-10 Extrahop Networks, Inc. Correlating causes and effects associated with network activity
US10594718B1 (en) 2018-08-21 2020-03-17 Extrahop Networks, Inc. Managing incident response operations based on monitored network activity
US10812220B1 (en) * 2018-09-26 2020-10-20 Parallels International Gmbh Method and system for transmitting data over multiple paths
US10965702B2 (en) 2019-05-28 2021-03-30 Extrahop Networks, Inc. Detecting injection attacks using passive network monitoring
US11165814B2 (en) 2019-07-29 2021-11-02 Extrahop Networks, Inc. Modifying triage information based on network monitoring
US10742530B1 (en) 2019-08-05 2020-08-11 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US11388072B2 (en) 2019-08-05 2022-07-12 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US10959076B2 (en) 2019-08-14 2021-03-23 Blackberry Limited Different profiles for selecting different network interfaces for communications of an electronic device
US10742677B1 (en) 2019-09-04 2020-08-11 Extrahop Networks, Inc. Automatic determination of user roles and asset types based on network monitoring
US11178046B2 (en) * 2019-11-27 2021-11-16 Google Llc Weighted bandwidth allocation for adaptive routing
US11165823B2 (en) 2019-12-17 2021-11-02 Extrahop Networks, Inc. Automated preemptive polymorphic deception
KR20220027571A (ko) * 2020-08-27 2022-03-08 삼성전자주식회사 최적화된 네트워크 통신을 제공하는 전자 장치 및 그 방법
US11310256B2 (en) 2020-09-23 2022-04-19 Extrahop Networks, Inc. Monitoring encrypted network traffic
US11463466B2 (en) 2020-09-23 2022-10-04 Extrahop Networks, Inc. Monitoring encrypted network traffic
US11349861B1 (en) 2021-06-18 2022-05-31 Extrahop Networks, Inc. Identifying network entities based on beaconing activity
US11296967B1 (en) 2021-09-23 2022-04-05 Extrahop Networks, Inc. Combining passive network analysis and active probing
US11690006B2 (en) * 2021-10-18 2023-06-27 Skylo Technologies, Inc. Connecting a wireless hub across multiple wireless networks
US11843606B2 (en) 2022-03-30 2023-12-12 Extrahop Networks, Inc. Detecting abnormal data access based on data similarity
CN114826966B (zh) * 2022-04-29 2024-02-09 上海星秒光电科技有限公司 一种可自适应选择物理接口的时间间隔测量仪及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06188885A (ja) * 1992-12-18 1994-07-08 Sumisho Denshi Device Kk ネットワーク装置
JP2000216815A (ja) * 1999-01-21 2000-08-04 Toshiba Corp マルチリンク通信装置
JP2003514442A (ja) * 1999-11-12 2003-04-15 テレフォンアクチーボラゲット エル エム エリクソン(パブル) 選択的にネットワークにアクセスする方法と装置
JP2003134151A (ja) * 2001-08-16 2003-05-09 Nippon Telegr & Teleph Corp <Ntt> Ip網接続の通信網選択装置、通信網選択システムとその方法およびその処理プログラム
JP2003259457A (ja) * 2002-03-06 2003-09-12 Hitachi Kokusai Electric Inc マルチサービス無線通信システム

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US100308A (en) * 1870-03-01 Improvement in puddling-furnaces
FR2309102A1 (fr) * 1975-04-21 1976-11-19 Electronique Appliquee Perfectionnements aux autocommutateurs electroniques prives
US5517677A (en) * 1993-05-13 1996-05-14 Uniden America Corporation Adaptive weighting of a scanning sequence
US5809419A (en) * 1994-12-14 1998-09-15 Motorola, Inc. Method for reducing channel scanning time
US6052590A (en) * 1997-07-29 2000-04-18 Ericsson, Inc. Method for reducing control channel scan time
JPH11234762A (ja) * 1998-02-18 1999-08-27 Oki Electric Ind Co Ltd 携帯端末機器のチャネルスキャン方法
FI105978B (fi) * 1998-05-12 2000-10-31 Nokia Mobile Phones Ltd Menetelmä langattoman päätelaitteen kytkemiseksi tiedonsiirtoverkkoon ja langaton päätelaite
US6385460B1 (en) * 1998-05-26 2002-05-07 Conexant Systems, Inc. Power management system for a mobile unit by reduced neighbor cell scanning
US7025209B2 (en) * 1998-05-29 2006-04-11 Palmsource, Inc. Method and apparatus for wireless internet access
US6292660B1 (en) * 1998-09-29 2001-09-18 Ericsson Inc. Adaptive site scanning based on fade base estimation
JP3356707B2 (ja) * 1999-01-14 2002-12-16 株式会社東芝 移動通信端末装置
US6567377B1 (en) * 1999-03-18 2003-05-20 3Com Corporation High performance load balancing of outbound internet protocol traffic over multiple network interface cards
US6807163B1 (en) * 1999-04-01 2004-10-19 Ericsson Inc. Adaptive rate channel scanning method for TDMA wireless communications
US6990082B1 (en) 1999-11-08 2006-01-24 Intel Corporation Wireless apparatus having a transceiver equipped to support multiple wireless communication protocols
EP1119137B1 (en) 2000-01-20 2006-08-16 Lucent Technologies Inc. Interoperability for bluetooth/IEEE 802.11
US6522884B2 (en) 2000-02-23 2003-02-18 Nexterna, Inc. System and method for dynamically routing messages transmitted from mobile platforms
FI120478B (fi) * 2000-02-24 2009-10-30 Nokia Corp Menetelmä ja laitteisto tietoliikenneverkkoon liittymiseksi
US7366769B2 (en) * 2000-10-02 2008-04-29 Schlumberger Technology Corporation System, method and computer program product for a universal communication connector
US20020039892A1 (en) * 2000-10-04 2002-04-04 Bo Lindell System and method for network and service selection in a mobile communication station
WO2002041580A1 (de) 2000-11-14 2002-05-23 Siemens Aktiengesellschaft Vorrichtung und verfahren zur auswahl von netzzugängen
US6937877B2 (en) * 2000-12-21 2005-08-30 General Electric Company Wireless communication with a mobile asset employing dynamic configuration of a software defined radio
US7454505B2 (en) * 2001-01-25 2008-11-18 International Business Machines Corporation Communication endpoint supporting multiple provider models
US7120129B2 (en) * 2001-03-13 2006-10-10 Microsoft Corporation System and method for achieving zero-configuration wireless computing and computing device incorporating same
US7180876B1 (en) * 2001-05-14 2007-02-20 At&T Corp. Mobile device having network interface selection
US20020198980A1 (en) * 2001-06-15 2002-12-26 Hamid Najafi Asset management and monitoring system and method for selecting a wireless network for data transmission
US20030032451A1 (en) * 2001-08-10 2003-02-13 Jianhong Hu Architecture for converged broadband wireless communications
US20030065816A1 (en) * 2001-09-28 2003-04-03 Intel Corporation User-preferred network interface switching using route table manipulation
KR200267515Y1 (ko) 2001-10-20 2002-03-12 주식회사 엘파코아 열전 반도체를 이용한 발전장치
US6904282B2 (en) * 2001-11-16 2005-06-07 Qualcomm Incorporated Method and apparatus for identifying and acquiring preferred wireless communications systems
US6801777B2 (en) * 2001-11-27 2004-10-05 Intel Corporation Device and method for intelligent wireless communication selection
US7230933B2 (en) * 2002-04-17 2007-06-12 Microsoft Corporation Reducing idle power consumption in a networked battery operated device
US7110783B2 (en) * 2002-04-17 2006-09-19 Microsoft Corporation Power efficient channel scheduling in a wireless network
US7564810B2 (en) * 2002-05-08 2009-07-21 Microsoft Corporation Method and system for managing power consumption of a network interface module in a wireless computing device
US7296069B2 (en) * 2002-05-08 2007-11-13 Hewlett-Packard Development Company, L.P. Method and system for network fault monitoring with linux
US7249183B1 (en) * 2002-06-04 2007-07-24 3Com Corporation Method to enable continuous mobility across wired and wireless network interfaces
US20060084417A1 (en) * 2002-07-10 2006-04-20 Diego Melpignano Interface selection from multiple networks
US7065367B2 (en) * 2002-07-11 2006-06-20 Oliver Michaelis Interface selection in a wireless communication network
US7089004B2 (en) * 2002-07-18 2006-08-08 Texas Instruments Incorporated Method and apparatus for scheduling cell search in CDMA mobile receivers
US20040192301A1 (en) * 2002-08-01 2004-09-30 Guangming Shi Systems and techniques for originating calls in multi-mode network environments
US7519364B2 (en) * 2002-08-02 2009-04-14 Pctel, Inc. System and method for seamless roaming between wireless networks
JP2006502678A (ja) 2002-10-02 2006-01-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 携帯用装置のスマート接続の管理
US7599323B2 (en) * 2002-10-17 2009-10-06 Alcatel-Lucent Usa Inc. Multi-interface mobility client
WO2004040931A2 (en) * 2002-10-30 2004-05-13 Research In Motion Limited Methods and device for preferably selecting a communication network which makes data service available
US7430602B2 (en) * 2002-12-20 2008-09-30 Qualcomm Incorporated Dynamically provisioned mobile station and method therefor
US20040131078A1 (en) * 2003-01-03 2004-07-08 Gupta Vivek G. Apparatus and method for supporting multiple wireless technologies within a device
US7590708B2 (en) * 2003-02-24 2009-09-15 Qualcomm, Incorporated Wireless local access network system detection and selection
US7065376B2 (en) 2003-03-20 2006-06-20 Microsoft Corporation Multi-radio unification protocol
US7146133B2 (en) 2003-06-19 2006-12-05 Microsoft Corporation Wireless transmission interference avoidance on a device capable of carrying out wireless network communications
US20050009525A1 (en) * 2003-07-07 2005-01-13 Tom Evslin Wireless phone with interface to different networks
WO2005036348A2 (en) * 2003-10-06 2005-04-21 Broadbeam Corporation Method and apparatus for intelligent seamless network switching
US7996505B2 (en) 2003-10-24 2011-08-09 Microsoft Corporation Network and interface selection on a computing device capable of establishing connections via multiple network communications media
US7702817B2 (en) * 2003-10-28 2010-04-20 Microsoft Corporation Wireless network access technologies for retrieving a virtual resource via a plurality of wireless network interfaces
US8024487B2 (en) 2003-12-01 2011-09-20 Microsoft Corporation Smart scan for wireless devices
US20050176420A1 (en) * 2004-02-05 2005-08-11 James Graves Wireless network detector
US20050193150A1 (en) * 2004-02-27 2005-09-01 Research In Motion, Ltd. Apparatus, and associated method, for facilitating network selection by a mobile node pursuant to a packet data communication service

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06188885A (ja) * 1992-12-18 1994-07-08 Sumisho Denshi Device Kk ネットワーク装置
JP2000216815A (ja) * 1999-01-21 2000-08-04 Toshiba Corp マルチリンク通信装置
JP2003514442A (ja) * 1999-11-12 2003-04-15 テレフォンアクチーボラゲット エル エム エリクソン(パブル) 選択的にネットワークにアクセスする方法と装置
JP2003134151A (ja) * 2001-08-16 2003-05-09 Nippon Telegr & Teleph Corp <Ntt> Ip網接続の通信網選択装置、通信網選択システムとその方法およびその処理プログラム
JP2003259457A (ja) * 2002-03-06 2003-09-12 Hitachi Kokusai Electric Inc マルチサービス無線通信システム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9015717B2 (en) 2007-04-25 2015-04-21 Sony Corporation Method for processing tasks in parallel and selecting a network for communication
CN101675650A (zh) * 2007-05-03 2010-03-17 高通股份有限公司 无线通信接收器中用于恢复默认扫描列表的应用编程接口
JP2010529708A (ja) * 2007-05-03 2010-08-26 クゥアルコム・インコーポレイテッド 無線通信受信機においてデフォルト・スキャン・リストをリストアするためのアプリケーション・プログラミング・インタフェース(api)
US8645976B2 (en) 2007-05-03 2014-02-04 Qualcomm Incorporated Application programming interface (API) for restoring a default scan list in a wireless communications receiver
JP2018064167A (ja) * 2016-10-12 2018-04-19 株式会社バッファロー ネットワーク装置、ネットワークアッタチドストレージ及びデフォルトゲートウェイ設定方法
JP7001909B2 (ja) 2016-10-12 2022-01-20 株式会社バッファロー ネットワーク装置、ネットワークアッタチドストレージ及びデフォルトゲートウェイ設定方法
JP2020080470A (ja) * 2018-11-13 2020-05-28 Necプラットフォームズ株式会社 通信装置及びその制御方法、プログラム

Also Published As

Publication number Publication date
EP1526682A3 (en) 2006-03-08
US20050091357A1 (en) 2005-04-28
CN1735059A (zh) 2006-02-15
KR20050039529A (ko) 2005-04-29
US7996505B2 (en) 2011-08-09
US20110282985A1 (en) 2011-11-17
EP1526682A2 (en) 2005-04-27
US8788715B2 (en) 2014-07-22

Similar Documents

Publication Publication Date Title
US8788715B2 (en) Network and interface selection on a computing device capable of establishing connections via multiple network communications media
KR101099270B1 (ko) 이동 접속 서비스와 wwan 디바이스간 인터페이스
TWI479938B (zh) 用於一無線通訊器件之連接管理器
TWI281806B (en) Wireless client device, method and computer readable medium of performing communication
US11540244B2 (en) MEC information obtaining method and apparatus
RU2595752C2 (ru) Многоканальные соединения в сеансах файловой системы
US10419535B2 (en) Preconfigured syncML profile categories
KR101109196B1 (ko) 네트워크 dna
US8032150B2 (en) Connection manager with location learning
US20060046716A1 (en) Multi-network seamless roaming through a software-defined-radio
JP2006502678A (ja) 携帯用装置のスマート接続の管理
WO2009003385A1 (fr) Procédés, appareils et systèmes pour mettre à jour un équipement
US20080081597A1 (en) Connection manager with prompter for service subscription
JP5318911B2 (ja) 通信システム
WO2009011555A2 (en) System and method for providing device management service to electronic device having no broadband communication module
US7802065B1 (en) Peer to peer based cache management
US7461172B2 (en) Methods, apparatus, and program products for configuring components in networked computing environments
US20130028159A1 (en) Silent power-save mode for a wireless communication device
WO2022172244A1 (en) Admission control based on registered user equipments
JPWO2006043411A1 (ja) 通信装置および端末存在確認方法
JP2009278178A (ja) セキュリティパラメータ配布装置及びセキュリティパラメータ配布方法
JPH11113066A (ja) データ通信方法、携帯型データ通信装置及び記録媒体
WO2023179553A1 (zh) 终端不可用时期的协商方法、终端及网络侧设备
US20100188973A1 (en) Quality of service (qos) control for transport independent architectures

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091127

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100420