JP5149380B2 - ネットワークリソースを効率的に使用して複数の多様なデータアプリケーションをサポートするための方法 - Google Patents

ネットワークリソースを効率的に使用して複数の多様なデータアプリケーションをサポートするための方法 Download PDF

Info

Publication number
JP5149380B2
JP5149380B2 JP2010517143A JP2010517143A JP5149380B2 JP 5149380 B2 JP5149380 B2 JP 5149380B2 JP 2010517143 A JP2010517143 A JP 2010517143A JP 2010517143 A JP2010517143 A JP 2010517143A JP 5149380 B2 JP5149380 B2 JP 5149380B2
Authority
JP
Japan
Prior art keywords
data connection
application
parameter
open data
configuration
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.)
Expired - Fee Related
Application number
JP2010517143A
Other languages
English (en)
Other versions
JP2010534040A (ja
Inventor
バッバー、アッピンダー・シン
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2010534040A publication Critical patent/JP2010534040A/ja
Application granted granted Critical
Publication of JP5149380B2 publication Critical patent/JP5149380B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/24Negotiation of communication capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1818Conference organisation arrangements, e.g. handling schedules, setting up parameters needed by nodes to attend a conference, booking network resources, notifying involved parties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Telephonic Communication Services (AREA)

Description

本発明は、一般に、ワイヤレスデータネットワークに関し、より詳細には、ネットワークリソースを効率的に使用して複数の多様なデータアプリケーションをサポートすることに関する。
本出願は、全内容が参照により本明細書に組み込まれる、2007年7月16日に出願された「Supporting Multiple Diversified Data Applications With Efficient Use of Network Resources」と題する米国仮特許出願第60/950,110号の優先権の利益を主張するものである。
インターネットなどの通信ネットワークの使用および人気が常に拡大するにつれて、ワールドワイドウェブおよび電子メールサービスのような通信ネットワークサービスを享受するユーザの数はますます多くなっている。最近、そのようなネットワークを介してデータおよびメッセージを送信および受信するために、個人情報マネージャおよびハンドヘルドコンピュータなどの情報処理端末に加えて、データ入力機能をもつセルラー電話が広範囲に使用されるようになった。
セルラー電話はまた、より高性能になりつつあり、したがって多種多様なプログラムを実行することが可能である。多くのユーザが自分のセルラー電話をポータブルコンピュータとして使用しており、ゲーム、生産性ソフトウェア、音楽およびビデオプレーヤ、インスタントメッセージングプログラム、GPSプログラムならびに多数の他のプログラムなど、複数のアプリケーションを実行している。現在セルラー電話上で実行することが可能なプログラムの多様性はほとんど無限である。
セルラー電話上で実行される各アプリケーションは、異なる通信構成を必要とする。各構成は、アプリケーションのエクスポートされた挙動、およびそれが提供するサービスのタイプに依存する。たとえば、全地球測位システム(GPS)アプリケーションは、シングルキャリア無線伝送技術(1x RTT)システムが作動することのみを必要とし、Evolution−Data Only(EVDO)ネットワークサービス上では実行できない。同様に、ボイスオーバーIP(VoIP)アプリケーションは、所要のサービス品質(QOS)機能を提供することもできる高データ転送速度ネットワーク(たとえば、DoRev A、WLANまたはHSPDA)を必要とする。プッシュツートーク(PTT)アプリケーションは、限られた信頼性をもつ最小遅延経路を得るように無線レイヤ(RLP/RLC)を構成する。実際には、アプリケーションのタイプごとに個別の専用データ接続/無線経路を設置することは、実行可能でもなく、コスト効果的でもない。
様々な実施形態は、限られた数の無線/ネットワークリソースを効率的に利用して多様なアプリケーションをサポートするための方法およびシステムを提供する。実施形態は、複数の多様なアプリケーションが通信接続を共有することによって所望のデータ接続サービスにアクセスできるようにする。様々な実施方法は、コンピューティングデバイス内で動作しているコンピューティングデバイス内の接続マネージャソフトウェアモジュール中で実施される。接続マネージャは、新しいアプリケーション、ならびにデータ接続を共有している複数のアプリケーションの各々のための、指定された専用および共有可能データ接続構成パラメータを収集する。データ接続ごとに、接続マネージャは、新しいアプリケーションによって指定された専用パラメータのいずれかが、各データ接続をすでに使用しているアプリケーションによって必要とされる専用パラメータと競合するかどうかを判断することができる。データ接続が、既存の専用パラメータと、新しいアプリケーションによって指定された専用パラメータとの間の競合を有する場合、そのデータ接続はさらなる検討から外される。専用パラメータの競合がデータ接続上に存在しない場合、接続マネージャは、共有可能構成パラメータの各々の合併規則に基づいて合成値を計算する。接続マネージャはまた、計算された合成値がデータ接続を使用しているアプリケーションを満足させる程度に基づいて、各データ接続に優先順位または品質の尺度を割り当てる。割り当てられた優先順位または品質の尺度に基づいて、接続マネージャは、新しいアプリケーションに割り当てるべき最適なデータ接続を選択し、計算された合成パラメータ値を使用してデータ接続を構成する。また、アプリケーションが終了するとき、およびアプリケーションが同様の方法を使用して変更されるデータ接続構成パラメータを要求するときにデータ接続構成はアップデートされる。
本明細書に組み込まれ、本明細書の一部をなす添付の図面は、本発明の例示的な実施形態を説明し、上記の概略的な説明および下記の詳細な説明とともに、本発明の特徴について説明するために役立つ。
ワイヤレスセルラーネットワークのシステムブロック図。 様々な実施形態での使用に適したデータ接続パラメータデータテーブルのデータ構造図。 様々な実施形態での使用に適したデータ接続パラメータデータテーブルのデータ構造図。 共有データ接続を確立するのに適した一実施方法のプロセスフロー図。 アプリケーションが終了するときに共有データ接続を管理するのに適した一実施方法のプロセスフロー図。 データ接続を使用しているアプリケーションが変更される通信パラメータを要求するときにデータ接続を管理するのに適した一実施方法のプロセスフロー図。 データ接続を使用しているアプリケーションが通信パラメータの変更を要求するときにデータ接続を管理するのに適した代替実施方法のプロセスフロー図。 様々な実施形態での使用に適した例示的なコンピューティングデバイスの回路ブロック図。 様々な実施形態での使用に適した例示的なパーソナルコンピュータの回路ブロック図。
本明細書では、「例示的な」という用語は、本明細書では「例、事例、または例示として役立つこと」を意味するために使用する。本明細書で「例示的な」と説明されたいかなる実装形態も、必ずしも他の実装形態よりも好ましいまたは有利であると解釈されるべきではない。
本明細書で使用する「コンピューティングデバイス」、「モバイルデバイス」、および「ポータブルコンピューティングデバイス」という用語は、セルラー電話、個人情報端末(PDA)、パームトップコンピュータ、ワイヤレス電子メール受信機およびセルラー受話器(たとえば、Blackberry(登録商標)およびTreo(登録商標)デバイス)、マルチメディアインターネット対応セルラー電話(たとえば、iPhone(登録商標))、パーソナルコンピュータで使用するワイヤレスネットワークトランシーバカード、ならびに、プログラマブルプロセッサおよびメモリおよびワイヤレスネットワークに接続する機能を含む同様のパーソナル電子デバイスのうちのいずれか1つまたはすべてを指す。これらの用語はまた、有線およびワイヤレスのネットワークトランシーバ回路をもつ、ラップトップコンピュータまたはデスクトップコンピュータなどのパーソナルコンピュータを包含し、あるいはパーソナルコンピュータ上でまたはパーソナルコンピュータとともに実装することもできる様々な実施形態の説明において使用される。様々な実施形態の説明は、そのようなネットワークのセルタワーを含むセルラー電話ネットワークシステムを指すが、本発明の範囲および特許請求の範囲は、たとえば、WiFi、WiMax、セルラー電話データネットワーク、近視野通信データリンク、および他のワイヤレスデータネットワーク通信技術などのワイヤレスネットワーク、ならびに、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)などの有線ネットワーク、およびインターネットを含む通信システムを包含する。
本明細書で使用する「データネットワーク接続」、「データ接続」、および「接続」という用語は、別のコンピューティングデバイスまたはネットワークへの通信リンクを確立するためにコンピューティングデバイスプロセッサが利用できるポートまたは回線を指すために互換的に使用される。通信リンクはコマンドおよびネットワーク構成情報を通信することもできるので、これらの用語は、どんなタイプの通信接続にも適用され、特定のタイプのデータ接続に限定されない。また、これらの用語は、有線およびワイヤレスのネットワークを含むどんなタイプの通信技術にも適用される。
多くのコンピューティングデバイスは、いくつかの構成パラメータによって特徴づけられる様々なデータネットワーク接続を用いて外部の有線およびワイヤレスのネットワークとのデータ接続を確立することができる。たとえば、コンピューティングデバイスは、セキュアな通信リンクを確立するためのセキュアソケットレイヤ(SSL)プロトコルを利用してWi−Fiネットワークを介して、または特定のQOSパラメータを利用してEVDOデータリンクを介して、データ接続を確立することができる。データ接続特性構成パラメータは、所望のサービスを示すためにデータ接続を使用するコンピューティングデバイス上で実行されている特定のアプリケーションによって要求される。これらのパラメータは、データネットワーク接続をセットアップするときにデータスタックおよびネットワークコントローラにパスされる。
多くの場合、アプリケーションはデータ接続を共有することが可能である。たとえば、最小のデータ接続要件をもつ電子メールアプリケーションは、ビデオストリームビューアなどのよりロバストなアプリケーションとのデータ接続を共有することが可能である。場合によっては、複数のロバストなアプリケーションの各々の特定の要件が競合しない場合、それらの複数のロバストなアプリケーションはデータ接続を共有することができる。複数のアプリケーション間でデータ接続を共有することにより、限られた数の使用可能なデータ接続をもつコンピューティングデバイス上でより多くのアプリケーションを同時に実行することが可能になる。
ワイヤレスデータネットワークは、たとえば、マルチメディアストリーミング(音声、ビデオなど)、GPS、SMS、VOIP、PTTなどを含む、多様なアプリケーションをサポートすることができる。一般に、各アプリケーションは異なるタイプのワイヤレスデータネットワーク接続を必要とする。ワイヤレスネットワークは、十分柔軟なので、種々のタイプのデータ接続オプションをサポートするように別様に構成できる。いくつかのそのようなデータ接続構成パラメータまたはオプションには、たとえば以下のものがある。
CDMA、UMTS、ロングタームエボリューション(LTE)、WiFi、WiMAXなどを含む、様々なワイヤレスネットワーク技術、
ベアラモード(CDMA(1x、EvDO、Do Rev A/B、Hybridなど)、UMTS(GPRS、EDGE、HSPA)、WLAN(IEEE802.11a、b、gなど)、WiMAX(IEEE802.16d、802.16eなど))、
無線ベアラ構成(たとえば、CDMAのRLPパラメータ、UMTSのRLCパラメータ)、
最大伝送単位(MTU)、フレーミングタイプなどのパラメータを含む、リンクレイヤパラメータ、
データ転送速度、遅延、トラフィッククラス、信頼性などのパラメータを含む、サービス品質(QOS)、
プロトコルヘッダ圧縮(ROHC、IPHC VJ、なし)、データ圧縮(CCPなど)などのパラメータを含む、IPトラフィック処理、
インタラクティブ、リアルタイム、バックグラウンド、データなどを含む、トラフィッククラス、
IPv4、IPv6、およびモバイルIP(v4/v6)を含む、IPプロトコルタイプ、
ドメイン、サーバアクセス可能性などの、提供されるサービス、
暗号化を用いるまたは用いない、IPSec(ESP、AHなど)などの、セキュリティ、
CHAP、PAP、EAP−AKA、EAP−SIMなどを含む、(もしあれば)使用される認証プロトコル、および
非アクティビティタイマー、休止状態など、その他のパラメータ。たとえば、非アクティビティタイマーは、リソースが自動的に解放される前にリソース使用をどれくらい待つべきか、すなわち、未使用のデータ接続上で休止状態を開始するために使用できるパラメータを示す。
データネットワーク接続を構成するために利用可能な様々なプロトコル、設定およびオプションを、本明細書では一般にパラメータと呼び、このパラメータの各々は複数の値または選択項目を備えることができる。上記のリストが示すように、いくつかのパラメータは、CDMA、UMTS、WIFI、イーサネット(登録商標)などの値を有することができる技術タイプ、およびCHAP、PAPなどの値を有することができる認証タイプなど、表記上の量子化できないオプションである。たとえば、ビデオアプリケーションは、パラメータ「IPプロトコルバージョン」および「QOS」に対して、それぞれ値「IPv4」および「32kbps」を指定するデータ接続を要求することができる。アプリケーションが利用できる各パラメータは「専用」または「共有可能」のいずれかとすることができる。
2つ以上のアプリケーションがデータ接続を共有する能力は、それらのアプリケーションが、互換性のあるデータ接続パラメータを指定するかどうかに依存する。上記の例示的なパラメータのリストが示すように、いくつかのパラメータは、アプリケーションが、特定のパラメータを満たすデータ接続を用いてしか機能できないという点で「専用」であるが、他のパラメータは、アプリケーションが、許容できるパラメータ値で構成されたデータ接続を用いて機能できるという点で「共有可能」である。「専用」および「共有可能」という用語は、本明細書では、アプリケーションが折衷を許容する(すなわち、アプリケーションの要求するものとは異なる構成パラメータ設定または値を用いたデータ接続を許容する)ことができるデータ接続構成パラメータおよび許容することができないデータ接続構成パラメータについて説明するためにのみ使用する。すなわち、折衷できない構成パラメータを本明細書では「専用」と呼び、折衷できる構成パラメータを本明細書では「共有可能」と呼ぶ。同じ専用パラメータを指定する2つのアプリケーションは、その特定の専用パラメータを満たすデータ通信を共有することができるので、「専用」という用語は、データ接続が単一のアプリケーション専用でなければならないことを意味するものと解釈すべきではない。
「専用」データ接続構成パラメータは、要求アプリケーションが指定どおりに有しなければならない構成の詳細であり、折衷または変更すれば、必ず要求アプリケーションが失敗する。たとえば、CDMA技術データ接続を必要とするアプリケーションは、一般に、CDMA(たとえば、WIFI、LANまたはUMTS)以外のデータ接続では動作することができない。したがって、ネットワーク技術は「専用」データ接続構成パラメータの一例である。すなわち、2つのアプリケーションは、両方のアプリケーションがCDMA互換である場合にのみそのようなCDMAデータ接続を共有することができる。たとえば、1つのアプリケーションはCDMAを必要とするが、別のアプリケーションはWIFIを必要とする場合、専用ネットワーク技術パラメータ上でのこの競合は、これらの2つのアプリケーションが同じデータ接続を共有できないことを意味する。これらの2つのアプリケーションが同時に実行されるためには、コンピューティングデバイスは2つの別個のデータ接続を確立しなければならない。専用構成パラメータの典型的な例には、ネットワーク技術、ベアラモード、無線ベアラ構成、およびIPプロトコルタイプ(たとえば、IPv4対IPv6)がある。
対照的に、「共有可能」データ接続構成パラメータは、要求アプリケーションが折衷または相違を許容し、なお機能することができる構成の詳細である。たとえば、アプリケーションがデータ伝送速度を共有可能パラメータとして指定する場合、そのアプリケーションは、より遅いまたはより速いデータ転送速度で機能することが可能である。したがって、データ接続要求において異なるデータ伝送速度を指定する2つのアプリケーションは、2つの指定された速度のうちのより大きい方に等しいデータ転送速度を有するデータ接続など、単一のデータ接続を共有することが可能である。典型的な共有可能構成パラメータの例には、MTU、データ伝送速度、QoS、および非アクティビティタイマーがある。
一部のアプリケーションは、他のアプリケーションが専用として取り扱ういくつかの構成パラメータで妥協することが可能なので、構成パラメータの専用性および共有可能性はアプリケーション固有である。たとえば、IPプロトコルタイプ(すなわち、IPv4対IPv6)は典型的には専用パラメータであるが、いくつかのIPv6アプリケーションは、IPトネリングによってIPv4に構成されたデータ接続上で機能することができる。別の例として、QoSは典型的には目標サービス品質を示すものとして共有可能であるが、ストリーミングビデオなどのいくつかのアプリケーションは、指定よりも小さいQoSでは機能することができないことがある。
これまで、データ接続を必要とするアプリケーションがコンピューティングデバイス上で起動された場合、そのデバイスの要求された構成パラメータを満たす新しいデータ接続が開かれた。コンピューティングデバイスが新しいデータ接続を開くのに十分な通信リソース(たとえば、通信ポートまたはトランシーバ回路)を有しない場合、アプリケーションが起動に失敗するか、あるいは通信リソースを解放するために別のアプリケーションを終了または休止して新しいデータ接続を確立しなければならなかった。代替として、コンピューティングデバイスはアプリケーションを既存のデータネットワーク接続に接続することができた。しかしながら、その既存のデータネットワーク接続が非互換のパラメータを用いて構成されていた場合、アプリケーションの起動が失敗するか、あるいはデータ接続がパフォーマンスの劣化を受け、それによりオープンデータ接続を共有しているすべてのアプリケーションのパフォーマンスが影響を受けることがあった。ポータブルコンピューティングデバイスは一般に限られた通信リソースを有し、接続の非互換性によるアプリケーションの失敗はユーザをいらだたせるので、限られた通信リソースの中でアプリケーションを効率的に割り当てるための方法が必要である。
様々な実施形態は、アプリケーションを失敗させる可能性がある競合を回避しながら、複数のアプリケーションがデータ接続を共有できるようにするための方法を提供する。システムソフトウェアと協働してまたはその一部として動作するソフトウェア機能モジュールなど、ソフトウェア中に接続マネージャを設けることができる。接続マネージャは、データ接続を要求している新しいアプリケーションによって識別された構成パラメータを収集することができる。接続マネージャは、次いで、新しいアプリケーションをサポートする候補として検討中の各可能なデータ接続を評価することができる。検討中のオープンデータ接続ごとに、接続マネージャは、要求アプリケーションによって指定された各専用パラメータを評価して、データ接続を使用している他のアプリケーションとの競合があるかどうかを判断することができる。新しいアプリケーションの専用パラメータと、データ接続を使用している別のアプリケーションの対応する専用パラメータとの間に競合がある場合、そのデータ接続の候補はさらなる検討から外され(すなわち、新しいアプリケーションをサポートする候補として評価されているデータ接続のリストから取り除かれ)、次のデータ接続が評価される。アプリケーション専用構成パラメータ間での競合のこの評価は、オープンデータ接続ごとに実施される。すべてのオープンデータ接続を評価した後、検討中の接続がもうない(すなわち、あらゆるオープンデータ接続上に専用パラメータの競合がある)場合、利用できる十分な通信リソースがあれば、要求アプリケーションによって指定された構成パラメータを使用して新しいデータ接続が開かれる。別の接続を開くために利用できる十分なリソースがない場合、アプリケーションは初期化に失敗し、エラーが示される。検討用に残っているオープンデータ接続がある(すなわち、1つまたは複数のデータ接続が、新しい(すなわち、要求している)アプリケーションによって必要とされる専用パラメータとの競合を有しない)場合、新しいアプリケーションと、競合しないデータ接続を現在使用しているすべてのアプリケーションとの共有可能パラメータの各々を評価して、相互に許容できる構成を決定する。様々な実施形態は、データ接続を使用しているすべてのアプリケーションにとって許容できるパラメータの値または設定を生じる規則である「合併規則」を計算することによって、この評価を達成する。各構成パラメータは、このプロセスが共有可能パラメータごとに反復されるような対応する合併規則を有する。同時に、すべてのアプリケーションが折衷構成パラメータによってサポートされる程度の尺度が決定される。サポートのこの尺度をすべての構成パラメータにわたって合計するかまたは他の方法で組み合わせれば、各データ接続が、接続をすでに使用している他のアプリケーションとともに新しいアプリケーションにどのくらいうまく適応するかの尺度を得ることができる。最後に、新しいアプリケーションの共有可能パラメータを最も良くサポートする(すなわち、新しいアプリケーションおよびデータ接続を使用している他のアプリケーションの共有可能パラメータ要件に対する最適な適合を与える)データ接続を使用して、新しいアプリケーション用のデータ接続を提供し、パラメータ合併規則のアプリケーションによって決定された合成パラメータ値を使用してその接続を構成する。
様々な実施形態はまた、アプリケーションが終了する(したがって、もはやデータ接続を使用しない)ときにデータ接続が最適化された構成パラメータを使用し、それらの構成パラメータ要求を変更することを確実にするために、データ接続を管理する。データ接続を単独で使用している(すなわち、データ接続を他のアプリケーションと共有していない)アプリケーションが終了するとき、関連するデータ接続が閉じられ、それによって他のアプリケーションのために通信リソースを解放する。終了するアプリケーションがデータ接続を共有していた場合、構成パラメータが再評価されて、データ接続を使用している残りのアプリケーションのための共有可能パラメータの最適な折衷を決定し、それに応じてデータ接続が再構成される。共有データ接続を使用しているアプリケーションが構成パラメータの変更を要求するとき、構成パラメータは再評価されて、変更されたパラメータならびにデータ接続を使用している他のアプリケーションのすべての共有パラメータのための共有可能パラメータの最適な折衷を決定し、それに応じてデータ接続が再構成される。
様々な実施形態は、たとえばセルラーおよびWIFIデータ通信リンクを使用しているワイヤレスネットワークを含む様々な有線およびワイヤレスのネットワークにおいて使用できる。例として、図1に、モバイルハンドセット15、25、パーソナルコンピュータ13、ラップトップコンピュータ23、およびネットワークサーバ22、28、32などの様々なコンピューティングデバイスと通信する、インターネット12と、セルラーネットワークと、WIFIネットワークと、LANとを含む通信ネットワーク10のブロック図を示す。図1に示すように、現代のコンピューティングデバイスは利用可能な多種多様なデータ通信リンクにアクセスすることができ、その主な限界は、コンピューティングデバイスに含まれるかまたはそれに接続される通信リソースである。
パーソナルコンピュータ13、セルラー電話15、およびラップトップコンピュータ23などのコンピューティングデバイスは、図1に示すような様々なデータ接続に接続することができる。たとえば、パーソナルコンピュータ13は、ダイヤルアップ、電話、ケーブルまたはローカルエリアネットワーク14を介してインターネット12にアクセスして、互いにインターネット通信などのデータメッセージを送信および受信することを選択できる。別の例として、セルラー電話15および他のモバイルデバイスは、基地局16へのワイヤレスデータ接続によってどんなセルラーネットワークにもアクセスすることができる。基地局16は、インターネット12へのデータ接続を提供するサーバ22にデータコールをルーティングすることができるコールルータ18など、セルラーネットワークインフラストラクチャに結合される。別の例として、ラップトップコンピュータ23などのコンピューティングデバイスは、多数の様々なデータ接続によってネットワークに接続することができる。ラップトップ23は、インターネット12への接続を有するローカルエリアネットワークサーバ28に結合されたローカルエリアネットワーク26を介してインターネット12にアクセスすることができるので、図1は3つのオプションを示している。また、ラップトップ23は、ケーブル24またはPCMCIAコネクタまたはプラグインエアカードセルラーネットワークトランシーバなどによってラップトップ23に接続されたセルラー電話25などのセルラー通信デバイスを介してセルラーネットワークにアクセスすることができる。この例では、セルラー電話25またはエアカード(図示せず)は基地局16へのセルラーデータコールを確立し、基地局16はサーバ22を介してインターネット12へのデータ接続を確立する。さらに、ラップトップ23は、インターネット12にアクセスできるサーバ32に接続されたWiFi基地局30とWiFiワイヤレストランシーバを介して通信することによってWiFiネットワークに接続することができる。明示的に示されていないが、セルラー電話15、25は、WiFi基地局30へのワイヤレスデータ接続、ならびにローカルエリアネットワーク26に接続されたラップトップ23に接続されたデータケーブル24など、ネットワークへのケーブル接続を確立するWiFiトランシーバを介してネットワークにアクセスすることもできる。したがって、コンピューティングデバイス13、15、23、25は、ネットワークにアクセスし、アプリケーションをサポートするために利用可能な多種多様なデータ接続を有することができる。
異なるコンピューティングデバイス間でデータを交換するためのネットワークに加えて、いくつかのコンピューティングデバイスアーキテクチャは、内部プロセスベースのデバイス、およびGPS受信機などのサービス提供回路、ならびに並列プロセッサ、内部データベースドライバ、サーバ、ならびに外部データおよびネットワーク接続と同様の方法で管理される内部データ接続を介して通信する他のプロセッサベースの回路を含む。したがって、様々な実施形態は内部と外部の両方のデータ接続に適用することができる。
データ接続を共有している複数のアプリケーション間での各共有パラメータの実行可能な折衷を決定するために、様々な実施形態は、本明細書で合併規則と呼ぶパラメータ固有のアルゴリズムを、アプリケーションの各々によって要求されるそれぞれのパラメータ値に適用する。合併規則は、ヒューリスティックでも定型的でもよいが、特定の共有可能パラメータ値をどのように組み合わせれば折衷またはスーパーセットのいずれかにすることができるかを規定する規則である。合併規則は、入力として共有可能パラメータの共有アプリケーションによって指定されたすべての値をとり、それらの値を計算論理にかけて合成値を与える。共有可能パラメータタイプごとに別々の合併規則を用意する。いくつかのパラメータタイプは複数の合併規則を有することもでき、異なる実装が状況に基づいてその複数の規則の中から選択することが可能である。複数のアプリケーションのパラメータ値要求に合併規則を適用すると、特定の共有可能パラメータの値またはオプション選択が生成される。合併規則は、アプリケーションの一部または全部が要求したものとは異なる値またはオプションを選択することができるが、合併規則が適切に作られていれば、選択された値は、その選択された値に基づいて構成されたデータ接続を使用しているアプリケーションの挙動に著しく影響を及ぼすことはない。各パラメータに別々の合併規則を適用すれば、パラメータ値の折衷セットが得られる。次いで、パラメータ値の合成セットを使用して、複数のアプリケーションによって共有されるデータ接続を構成する。
一例として、非アクティビティタイマーパラメータ用の合併規則は、<指定値の中の最大値を合成値とする>、R=合成値、とすることができる。4つのアプリケーションがデータ接続を共有し、それぞれが特定のパラメータ値vを指定する状況では、この合併規則は、次のように言い換えられる。
非アクティビティタイマー={v1,v2,v3,v4}=v1、ただしv1はMAX{v1,v2,v3,v4}
第2の例では、チャネル遅延パラメータ用の合併規則のうちの1つを、<指定値の中の最小値を合成値とする>、R=合成値、とすることができる。この4つのアプリケーションの状況では、この合併規則は、次のように言い換えられる。
チャネル遅延={v1,v2,v3,v4}=v1、ただしv1はMIN{v1,v2,v3,v4}
データ接続を要求しているアプリケーションは、パラメータが要求される(サポートされていなければならない)か、任意選択である(サポートされていると良い)かを示すこともできる。あるパラメータがアプリケーションにとってどのくらい重要であるかを示すために他の同様の修飾子を追加することができる。任意選択のパラメータが指定されている場合、そのパラメータをヒントとして使用することができ、それをサポートするためのベストエフォートを行うことができる。たとえば、そのパラメータを無視すればアプリケーションが既存のデータ接続を共有できるようになる場合、このパラメータを無視することができる。一方、他の専用パラメータが既存のデータ接続と競合するので、とにかく新しいデータ接続を確立する必要がある場合は、構成中で任意選択のパラメータをサポートすることができる。以下で説明するように、構成アップデートのために修飾子を使用することもできる。修飾子が指定されていない場合、接続マネージャは、アプリケーションのために、どの共有可能パラメータをサポートすることが不可欠であるかの決定を自動的に行うことができる。
アプリケーションが利用できるデータ接続構成パラメータの例示的なデータ構造を図2Aに示す。データテーブル40中に示された値は、コンピューティングデバイスに実装できるデータ構造を示すために与えられた構成パラメータのサブセットを表す。データテーブル40は、それぞれ列として表されたデータフィールドからなる行として表されたデータレコードのテーブルの構造とすることができる。図示の例では、第1のデータフィールドは、各々が複数のサポート値44を有することができる構成パラメータ名42と、パラメータが専用であるか、共有可能である(すなわち、折衷またはスーパーセット値によって満たされることが可能である)かを示す共有可能/専用指示46(たとえば、フラグまたは2進値)とを含む。データレコードはまた、本明細書でより十分に説明するように、データ接続を共有しているアプリケーションによって要求される様々なパラメータ値の中で許容できる折衷を決定するための規則を提供する、合併規則フィールド48を含むことができる。図2Aに示す例では、合併規則の概要名(たとえば、「Min」、「Max」および「Sum」)のみが示されているが、いくつかの実装形態では、合併規則自体をデータテーブル40内に含めることができる。
アプリケーションは、データ接続を要求するとき、必要とする構成パラメータを指定することができる。この指定はデータテーブルの形式にすることができる。また、本明細書で説明するように、接続マネージャは、各アプリケーションによって要求された要求データパラメータをメモリ中のデータテーブルに記憶することができる。アプリケーションによって要求される可能性があるデータ接続構成パラメータのデータテーブル50の一例を図2Bに示す。このテーブルは、一般にデータ接続用に指定される構成パラメータのサブセットのみを示している。要求パラメータデータテーブル50中の各データレコードは、パラメータ名52と、そのパラメータの要求される値または設定44と、パラメータが任意選択であるかまたはアプリケーションによって必要とされるかどうかの指示56とを含むことができる。
新しいアプリケーションが始動し、システムソフトウェアにデータ接続を要求するか、またはすでに実行中のアプリケーションが停止するとき、そのようなイベントは、既存のオープンデータ接続構成パラメータの変更を必要とすることがある。オープンデータ接続が複数のアプリケーション間で共有される場合、共有可能構成パラメータの各々について、対応するパラメータ合併規則を適用することによって、折衷または相互に許容できる構成を決定することができる。オープンデータ接続を共有しているすべてのアプリケーションによって要求される共有可能パラメータに合併規則を適用することによって得られた合成値を使用して、データ接続構成をアップデートすることができる。データ接続構成パラメータのアップデートは、「ローカルアップデート」または「リモートアップデート」のいずれかとすることができる。ローカルアップデートは、データ接続を介して通信している外部デバイスと連係する必要なしに、ローカル構成パラメータを変更することによって、コンピューティングデバイス自体のハードウェアまたはソフトウェアによって達成できる構成変更である。リモートアップデートは、1つまたは複数のネットワークエンティティとの連係を必要とする構成変更である。リモートアップデートの達成は、(1つまたは複数の)通信構成パラメータの変更を要求している1つまたは複数のネットワークエンティティに、1つまたは複数の無線(over the air)(OTA)シグナリングメッセージを送信することを必要とする。ローカルアップデートはより単純であり、たいていの場合、常に成功する。ネットワークは要求を受信する必要があり、容認された場合は実施に多少の時間を必要とするので、リモートアップデートは多少の遅延を伴う。また、リモートアップデートは、1つまたは複数のネットワークエンティティが要求されたアップデートをサポートすることができない場合など、ネットワークによって拒絶されることもある。
ローカルアップデートの一例は、コンピューティングデバイスに限定された処理に関係する非アクティビティタイマーパラメータである。リモートアップデートの一例は、アップデートされたQOSパラメータ値をもつ信号を送信および受信するために何らかの変更を調整することを通信リンクの他端上のトランシーバに要求するQOSパラメータ(無線ベアラ上で要求されるデータ転送速度など)のアップデートである。QOSパラメータを変更する要求に応答して、たとえば、承認制御または契約理由により十分な無線リソースを割り当てることができない場合、ネットワークはアップデートを拒絶することができる。
リモートアップデートがネットワークによって拒絶された場合、実装固有の動作をとる必要がある。拒絶された構成パラメータが新しいアプリケーションによって必要とされるとみなされた場合(たとえば、図2B参照)、必要とされるデータ接続構成を提供することができないためにアプリケーションをサポートすることができないので、新しいアプリケーションの起動は失敗する。固有の動作はまた、アプリケーションが拒絶されたパラメータの代替値を要求することを選択できるように、アプリケーションに通知することを含んでもよい。さらに、代替値を提案することができない場合、動作は、アプリケーションをアクティブ化またはサポートすることができないことをユーザに通知することを含んでもよい。拒絶された構成パラメータが新しいアプリケーションによって任意選択であるとみなされた場合(たとえば、図2B参照)、アプリケーションは依然として所望の構成なしにデータ接続を使用することができる。この場合、アプリケーションが、同じパラメータの代替値を要求することを選択できるように、アプリケーションにリモートアップデート拒絶状況を通知することができる。代替として、リモートアップデート要求が拒絶され、データ接続の要求を放棄すると単に終了するように、アプリケーションを構成することができる。
要求パラメータおよび合併規則により、一部のアップデートをローカルで達成することが可能なので、ローカルアップデートとリモートアップデートとの間の区別は必ずしもパラメータに依存しない。たとえば、技術選好用の合併規則の1つは、<指定された技術値の中の共通の技術を合成値とする>、R=合成値、である。これは、R非アクティビティタイマー={v1,v2,v3}=R、ただしRは{v1、v2、v3}の共通部分である、と言い換えられる。v1がANY_WWANであり、v2がCDMAまたはEVDOであり、v3がEVDOである例示的な状況では、EVDOが3つの要求の中で唯一の共通の値なので、合成値はR=EVDOになる。次いで第4のアプリケーションが、v4=UMTSの技術パラメータ値をもつデータ接続を要求する場合、4つの要求の中で共通の値がないので、合成値はR=0またはヌルになる。この場合、データ接続がすでにEVDOで確立されていた場合、このパラメータが要求と示されていると、第4のアプリケーションはこのデータ接続を共有することができない。この例を続けると、データ接続を共有している第3のアプリケーションが終了し、第4のアプリケーションが再始動されておらず、したがってパラメータ値がv1およびv2のみである場合、合併規則合成値はCDMAまたはEVDOになる。データ接続はすでにEVDOで確立されているので、新しい構成ではデータ接続は1x/EVDOハイブリッドモードで機能することが可能であり、柔軟性および効率の向上のために1xまたはEVDOの間を行ったり来たりすることができる。ネットワークからの協働は必要とされないので、この構成アップデートはローカルアップデートとして処理できる。
一実施形態では、その実施形態がどのように実装されるかに応じて、いくつかの共有可能パラメータタイプに対して複数の合併規則を実装することができる。複数の合併規則を可能にすることにより、接続マネージャは、様々な動作状況または設定に合わせて調整することが可能になる。たとえば、アプリケーションのデータを送信することができる速度(ビット/秒など)を規定するデータ転送速度パラメータタイプを考える。そのようなパラメータタイプは、次のような2つの異なる合併規則を備えることができる。すべてのアプリケーションデータ転送速度の合計を使用する(「sum」)、およびすべてのデータ転送速度の最大値を使用する(「max」)。(第3の規則は、最小データ転送速度をとる、とすることができることに留意されたい。)次いで、様々な動作、プログラミングまたは個人的な選択のオプションに依存する、コンピューティングデバイス中のファクタまたは状態に応じて、特定のアプリケーションが始動するとき、これらの2つの合併規則(すなわち、sumまたはmax)のうちの一方を使用することができる。この例を終えるために、新しいアプリケーション1が64kbps(キロビット/秒)のデータ転送速度パラメータ値を有し、すでに実行中のアプリケーション2が128kbpsのデータ転送速度パラメータ値を有する状況を考える。アプリケーション1が始動したときにsum合併規則が選択された場合、合併規則を適用した結果は192kbpsのデータ転送速度パラメータ値になる。一方、アプリケーション1が始動されたときにmax合併規則が選択された場合、その結果は128kbpsのデータ転送速度パラメータになる。これらの両方の例では、アプリケーション1のために使用される通信チャネルで実装されるデータ転送速度は、そのアプリケーションによって要求されたデータ転送速度パラメータ値よりも大きくなることがある。複数の合併規則が利用可能である場合、どの規則を適用すべきかの選択は実装形態に依存する。また、特定の状況において適用されなければならない合併規則を選択するために構成可能なポリシーを使用することができる。
一実施形態では、接続マネージャは、図3に示すようにアプリケーションが始動するときにデータ接続を共有するための方法を実装する。データ接続を要求する新しいアプリケーションが始動すると(ステップ60)、そのアプリケーションは、いくつかの通信構成パラメータを指定するデータ接続の要求を発信する。このデータ接続要求を、新しいアプリケーションによって要求された通信パラメータを収集する接続マネージャが受信する(ステップ62)。専用と共有可能の両方の通信パラメータを含む、これらの要求される通信パラメータを、以下でより十分に説明するように、データ接続を構成する際に、共有可能パラメータ合併規則を計算するために使用できるように、システムによってアクセス可能なメモリに記憶する(ステップ64)。この新しいアプリケーションが、データ接続を要求する最初のアプリケーションである場合(テスト66)、接続マネージャは、単に新しいデータ接続を開始し(ステップ104)、新しいアプリケーションによって要求された構成パラメータを使用して、接続を構成する(ステップ106)。新しいデータ接続が確立された後、新しいアプリケーションによる通信が開始することができる(ステップ108)。
しかしながら、新しいアプリケーションが、データ接続を確立する最初のアプリケーションではない場合(すなわち、テスト66=「いいえ」)、接続マネージャは、検討中の各オープンデータ接続を評価して(ループ1−ステップ68〜90)、新しいアプリケーションが、オープンデータ接続を使用している他のアプリケーションの専用パラメータと競合しないかどうかを判断し(ループ2−ステップ70〜76)、競合する接続が検討から除外された後に残っている検討中の各データ接続について、新しいアプリケーションによって共有できるようにする競合しないデータ接続ごとの構成を判断する(ループ3−ステップ78〜86)ための一連の3つのループを実行することができる。
オープンデータ接続評価プロセスを開始するために、接続マネージャは、検討中の接続の中の候補として第1のオープンデータ接続を選択し(ステップ68)、評価のために第1の要求される構成パラメータを選択する(ステップ70)。ステップ70において、選択された要求される構成パラメータを、選択されたデータ接続候補を現在共有している他のアプリケーションによって要求される対応する専用パラメータと比較して、パラメータが競合するかどうかを判断する(テスト72)。新しいアプリケーションの専用パラメータが、選択されたオープンデータ接続候補をすでに使用しているアプリケーションの専用パラメータと競合する場合、これは、このデータ接続候補が新しいアプリケーションによって共有できないことを意味する。上述のように、新しいアプリケーションが、オープンデータ接続候補をすでに使用しているアプリケーションによって必要とされるパラメータと非互換である要求パラメータを要求するとき、専用パラメータの競合が生じる可能性がある。たとえば、オープンデータ接続候補が、現在実行中のアプリケーションによって要求されるようにEVDO通信技術用に構成され、新しいアプリケーションが、データ接続をCDMA通信技術用に構成することを要求する場合、これらの2つの要求パラメータは非互換であり、したがって競合が存在する(すなわち、テスト72は「はい」になる)。専用パラメータが競合する場合(すなわち、テスト72=「はい」)、接続マネージャは、検討中の接続のリストから競合するオープンデータ接続を削除し(ステップ73)、続いて、下記のテスト88にジャンプすることによって、次のオープンデータ接続を候補として評価する。しかしながら、選択された専用パラメータが、オープンデータ接続候補をすでに使用しているアプリケーションによって要求される対応するパラメータと競合しない場合(すなわち、テスト72=「いいえ」)、構成マネージャは、評価すべき別の専用パラメータがあるかどうかを判断する(テスト74)。評価すべき別の専用パラメータがある場合(すなわち、テスト74=「はい」)、接続マネージャは、評価のために次の専用パラメータを選択し(ステップ76)、その後、選択された専用パラメータが、オープンデータ接続候補をすでに使用しているアプリケーションによって要求される専用パラメータと競合するかどうかを評価することに戻り、テスト72に戻る。
すべての専用パラメータが評価された後(すなわち、テスト74=「いいえ」)、接続マネージャは、評価のために第1の共有可能パラメータを選択する(ステップ78)。次いで、選択された要求される共有可能パラメータと、選択されたオープンデータ接続候補をすでに使用しているアプリケーションの対応するパラメータとを使用して、接続マネージャは、その特定のパラメータに関連する合併規則を計算する(ステップ80)。上述のように、様々なアプリケーションの要求されるパラメータ値に合併規則を適用すると、オープンデータ接続候補が現在のアプリケーションおよび新しいアプリケーションによって共有できるようにする折衷またはスーパーセットパラメータ値が識別される。計算された合併規則合成値は、オープンデータ接続候補を構成する際に後で使用するためにメモリに記憶できる。さらに、合併規則の結果が、選択されたオープンデータ接続候補を共有するであろう新しいアプリケーションおよび現在実行中のアプリケーションのパラメータ要求を満たす程度に基づいて、オープンデータ接続候補に優先順位または品質値を割り当てる(ステップ82)。後述のように、選択パラメータの合併規則合成値に基づいてオープンデータ接続候補に割り当てられた優先順位または品質は、共有可能パラメータのすべてに割り当てられた優先順位または品質値と組み合わせられて、新しいアプリケーションに割り当てるべき特定のオープンデータ接続を選択するために使用できる、選択されたオープンデータ接続候補の全体的なランキングまたは優先順位を決定する。次いで、接続マネージャは、評価すべき別の共有可能パラメータがあるかどうかを判断することによって次の共有可能パラメータに進み(テスト84)、評価すべき別の共有可能パラメータがある場合、次の共有可能パラメータを選択し(ステップ86)、その後、ステップ80に戻り、対応する合併規則を選択パラメータに適用する。
共有可能パラメータのすべてが評価された後(すなわち、テスト84=「いいえ」)、接続マネージャは、候補として評価すべき検討中の別のオープンデータ接続があるかどうかを判断することによって、残っている検討中の次のオープンデータ接続に進み(テスト88)、検討中の別のオープンデータ接続がある場合、データ接続候補として次のオープンデータ接続を選択し(テスト90)、ステップ70に戻り、評価のために第1の専用パラメータを選択することによって、このパラメータ評価プロセスを繰り返すことができる。
オープンデータ接続のすべてが評価され(すなわち、テスト88=「いいえ」)、競合する接続が検討から外された後、接続マネージャは、検討用に残っている共有可能オープンデータ接続があるかどうかを判断する(テスト92)。少なくとも1つのデータ接続において専用パラメータ間に競合がなかった場合(すなわち、少なくとも1つのデータ接続についてテスト72=「いいえ」)、共有可能オープンデータ接続が存在する。オープンデータ接続の評価から、オープン接続が共有できることが判明した場合(すなわち、検討中の残っているオープンデータ接続がないので、テスト92=「いいえ」)、接続マネージャは、別のデータ接続を開くために十分な通信リソースがあるかどうかを判断する(テスト102)。十分なリソースがある場合(すなわち、テスト102=「はい」)、接続マネージャは、続いて新しいデータ接続を開始し(ステップ104)、新しいアプリケーションによって要求される構成パラメータを使用して、新しい接続を構成する(ステップ106)。新しいデータ接続が確立された後、新しいアプリケーションによる通信が開始することができる(ステップ108)。しかしながら、別のデータ接続を開くために十分なリソースがない場合(すなわち、テスト102=「いいえ」)、新しいアプリケーションの初期化は失敗し、システムがエラーメッセージを返す(ステップ110)。
オープンデータ接続の評価から、1つまたは複数のデータ接続が共有できることが判明した場合(検討中の残っている少なくとも1つのオープンデータ接続があるので、すなわち、テスト92=「はい」)、接続マネージャは、新しいアプリケーションに割り当てるための候補として最高の優先順位または品質値をもつオープンデータ接続を選択する(ステップ94)。この選択は、ステップ82において共有パラメータの各々について様々なオープンデータ接続の各々に割り当てられた優先順位または品質値に基づくことができる。次いで、ステップ80において選択されたデータ接続について決定された共有パラメータ合成値のすべてを実装するために、選択されたオープンデータ接続の構成をアップデートする。このステップが首尾よく完了すれば、新しいアプリケーションは、選択されたオープンデータ接続の共有を開始できるようになる。
オープンデータ接続構成アップデートはネットワークノードに協働を要求する、すなわち、少なくとも1つのパラメータがリモートアップデートを伴うので、接続マネージャは、リモートアップデートが失敗した(すなわち、ネットワークによって拒絶された)か、または成功した(すなわち、ネットワークによって受容され、実施された)かをテストする(テスト98)。リモートアップデートが成功した場合(すなわち、テスト98=「いいえ」)、新しいアプリケーションによる通信が開始することができる(ステップ108)。しかしながら、リモートアップデートが失敗した場合(すなわち、テスト98=「はい」)、新しいアプリケーションの初期化は失敗し、システムがエラーメッセージを返す(ステップ110)。アップデートされるすべての構成パラメータがローカルアップデートを伴う(すなわち、コンピューティングデバイス自体の中に実装される)場合、テスト98をバイパスする。
図3は、共有可能パラメータの前に専用パラメータを評価する方法を示しているが、代替方法は、構成パラメータの各々を、それらが専用であるか共有可能であるかにかかわらず評価することができる。この代替実施形態は、第2のループと第3のループを組み合わせて、通信パラメータのすべてについての単一の再帰的分析にする。いずれかの専用パラメータが競合する場合(すなわち、テスト72=「はい」)、構成パラメータの評価は、その特定のオープンデータ接続候補について終了し、プロセスはジャンプして、ステップ88に移動するなどにより、次のオープンデータ接続候補を検討する。この代替方法の欠点は、後続の構成パラメータが専用であり、競合することがわかった場合、共有可能パラメータに合併規則を適用する際に何らかの追加の処理が必要になることである。
アプリケーションが始動するときにデータ接続を共有するための代替実施方法の擬似コード実装形態は、以下の通りである。
1.新しいアプリケーションが始動するとき、それの指定された専用および共有可能パラメータを収集する。
2.以下のように、各利用可能な/確立されたデータ接続にわたってエニュメレートする。
a.指定された専用パラメータのいずれかが、このデータ接続によって使用される専用パラメータと競合するか?
i.はいの場合、次の利用可能なデータ接続にスキップし、ステップ2aに進む。
ii.いいえの場合、ステップ2bに進む。
b.指定された各共有可能パラメータについて、
i.新しい値と既存の値とを検討して、このパラメータの合併規則に基づいて新しい合成値を計算する。
ii.合成値をどのくらいうまくサポートすることができるかに基づいて、このデータ接続に優先順位を割り当てる/アップデートする。
c.次のデータ接続を評価し、ステップ2aに進む。
3.存在する場合、候補セットから最高の優先順位をもつデータ接続をとる。
a.要求されているすべての共有可能パラメータの新しい合成値に基づいてデータ接続の構成をアップデートする(ローカルまたはリモート)。
b.リモートアップデートが要求パラメータに対して失敗した場合、アプリケーションにエラーを示す
4.候補データ接続セットが空の場合、十分なリソースが利用できるのであれば、新しいデータ接続を開始する。
a.アプリケーションによって指定された専用および共有可能パラメータを用いて新しいデータ接続を構成する。
b.このアプリケーションによって指定された専用および共有可能パラメータを記憶する
これらの実施形態は、データ接続を共有しているアプリケーションが終了するときにオープンデータ接続構成をアップデートすることもできる。そうすることにより、オープンデータ接続を現在共有しているアプリケーションに対してデータ接続構成を最適化することが可能になり、ならびに別のアプリケーションがデータ接続を要求するときに合併規則を適用するプロセスが単純になる。
図4は、アプリケーションが終了するときにオープンデータ接続をアップデートするために一実施形態において実施される例示的なステップのプロセスフロー図である。データ接続を使用しているアプリケーションが終了するとき(ステップ150)、接続マネージャは、そのアプリケーションによって使用されたデータ接続を識別し(ステップ152)、その接続が複数のアプリケーションによって共有されているかどうかを判断する(テスト154)。データ接続が共有されていない場合(すなわち、テスト154=「いいえ」)、接続マネージャは、その接続を閉じる(ステップ156)。データ接続が共有されている場合(すなわち、テスト154=「はい」)、接続マネージャは、第1の共有可能パラメータを選択し(ステップ158)、オープンデータ接続を共有している残りのアプリケーションによって要求されるパラメータ値に、対応する合併規則を適用する(ステップ160)。接続マネージャが評価すべき別の共有パラメータあるかどうかを判断する(テスト162)ことによって、共有パラメータの各々についてこのプロセスを繰り返し、評価すべき別の共有パラメータある場合、次の共有パラメータを選択し(ステップ164)、その後、ステップ160に戻り、対応する合併規則を選択パラメータに適用する。共有パラメータのすべてがそのように評価された後(すなわち、テスト162=「いいえ」)、合成パラメータ値を用いてデータ接続構成をアップデートする。一実施形態では、構成マネージャは、終了アプリケーションが接続から外された後、オープンデータ接続を使用している単一のアプリケーションのみが残っているかどうかをテストし、単一のアプリケーションのみが残っている場合、合併規則を適用するループをバイパスし、残りのアプリケーションによって要求されるパラメータを使用してデータ接続構成をアップデートすることに直接移動する。さらに、接続マネージャは、図3に関して上述したステップ98と同様のステップを実施することによって、ステップ166の一部として実施されたリモートアップデートが成功したかどうかをテストする。
アプリケーションが終了するときにデータ接続構成を管理するための一実施方法の擬似コード実装形態は、以下の通りである。
1.すでに実行中のアプリケーションが終了するとき、
a.このアプリケーションによって使用されたデータ接続を識別する
b.終了アプリケーションが始動されたときに、その終了アプリケーションによって指定された専用および共有可能パラメータを取り出す。
2.これがデータ接続を使用している唯一のアプリケーションである場合、データ接続を閉じる。
3.他のアプリケーションがデータ接続を共有している場合、
a.アプリケーションによって指定された各共有可能パラメータについて、
i.終了アプリケーションによって指定された値を除くすべての指定された値を検討して、合併規則を使用してパラメータの合成値を計算する
ii.新しい合成値を用いてデータ接続を構成する(ローカルまたはリモート)。
実施形態は、接続を共有しているアプリケーションが構成パラメータの1つまたは複数の変更を要求するときにデータ接続構成をアップデートすることもでき、そのための例示的な方法が、図5に示すプロセスフロー図に示されている。アプリケーションが、1つまたは複数のデータ接続構成パラメータの変更または修正を要求するとき(ステップ200)、接続マネージャは、その1つまたは複数の特定のパラメータが変更不能であるかどうかを判断する(テスト202)。選択された1つまたは複数のパラメータのいずれかが変更不能である場合(すなわち、テスト202=「はい」)、変更要求は失敗し(ステップ212)、それをアプリケーションに拒絶または失敗通知で通信することができる。
変更が要求されたすべてのパラメータが変更可能である場合(すなわち、テスト202=「いいえ」)、接続マネージャは、変更されるパラメータ値要求を収集する(ステップ204)。接続マネージャが評価のために第1の変更される専用パラメータを選択することによって開始するループにおいて、変更すべき各パラメータを評価する(ステップ206)。変更すべき専用パラメータがない場合、接続マネージャは、ステップ222にジャンプして、共有可能パラメータの評価を開始する。データ接続が共有されている(すなわち、変更を要求しているアプリケーションと少なくとも1つの他のアプリケーションとによって共有されている)場合(テスト208)、接続マネージャは、要求されたパラメータ変更が、データ接続を共有している他の(1つまたは複数の)アプリケーションによって要求される対応する専用パラメータと競合するかどうかを判断する(テスト210)。変更すべき選択された専用パラメータが、データ接続を使用している他のアプリケーションの要求されるパラメータ値と競合する場合(すなわち、テスト210=「はい」)、変更要求は失敗し(ステップ212)、それをアプリケーションに拒絶または失敗通知で通信することができる。
変更すべき選択された専用パラメータが、データ接続を使用している他のアプリケーションの要求されるパラメータ値と競合しない場合(すなわち、テスト210=「いいえ」)、選択された変更される専用パラメータに基づいてデータ接続構成をアップデートする(ステップ214)。また、1つまたは複数のパラメータを変更するアプリケーションに関連するデータ接続が、別のアプリケーションと共有されていない場合(すなわち、テスト208=「いいえ」)、選択された変更される専用パラメータに基づいてデータ接続構成をアップデートすることができる(ステップ214)。アプリケーションの記憶されたパラメータ値要求も変更される専用パラメータを用いてアップデートする(ステップ216)。
別の変更される専用パラメータがあるかどうかをテストする(テスト218)ことによって、変更される専用パラメータの各々についてこのプロセスを繰り返し、別の変更される専用パラメータがある場合、次の変更される専用パラメータを選択し(ステップ220)、その後、ステップ210に戻り、パラメータ変更が、データ接続を共有している他の(1つまたは複数の)アプリケーションによって要求される対応するパラメータと競合するかどうかを判断する。
変更が要求されるすべての専用パラメータが評価された後(すなわち、テスト218=「いいえ」)、接続マネージャは、変更するように要求された第1の共有可能パラメータを選択する(ステップ222)。データ接続が共有されている(すなわち、変更を要求しているアプリケーションと少なくとも1つの他のアプリケーションとによって共有されている)場合(テスト224)、接続マネージャは、選択された共有可能パラメータに関連する合併規則を、要求された変更されるパラメータと、データ接続を共有しているすべてのアプリケーションの要求パラメータとに適用する(ステップ228)。次いで、合併規則合成値を使用してデータ接続構成を変更する(ステップ230)。アプリケーションの記憶されたパラメータ値要求も変更される専用パラメータを用いてアップデートする(ステップ232)。
別の変更される共有可能パラメータがあるかどうかをテストする(テスト234)ことによって、変更される共有可能パラメータの各々についてこのプロセスを繰り返し、別の変更される共有可能パラメータがある場合、次の変更される共有可能パラメータを選択し(ステップ236)、その後、ステップ228に戻り、対応する合併規則を、選択された共有可能パラメータと、データ接続を共有している他の(1つまたは複数の)アプリケーションによって要求されるパラメータとに適用する。すべての共有可能パラメータが評価された後(すなわち、ステップ234=「いいえ」)、変更プロセスは終了する(ステップ238)。
図6は、アプリケーションが構成パラメータの変更を要求するときにデータネットワーク接続構成をアップデートするための代替実施方法を示すプロセスフロー図である。図6に示す方法は、関係するデータ接続が共有されるか、または構成変更を要求しているアプリケーションのみによって使用されるかを判断するために予備テスト250が実施されることを除いて、図5に示した方法と同様である。データ接続が共有されている場合(すなわち、テスト250=「はい」)、接続マネージャは、図5に関して上述したように評価および構成ステップ204〜238を進める。しかしながら、データ接続が共有されておらず、したがって(1つまたは複数の)構成パラメータの変更を要求しているアプリケーションのみによって使用される場合(すなわち、テスト250=「いいえ」)、接続マネージャは、続いて、要求された変更される構成パラメータに基づいてデータ接続を変更する(ステップ252)。次いで、アプリケーションの記憶されたデータ接続パラメータ要求を、変更される構成パラメータを含むようにアップデートし(ステップ254)、その後、変更ルーチンは終了する(ステップ238)。
さらなる実施形態では、一実装形態は、要求パラメータのすべてが変更されるように、または要求パラメータのいずれも変更されないように、データ接続構成を変更することを選択することができる。そのような一実施形態では、たとえば、構成への要求された変更が要求されているかどうか、または多数のパラメータを伴うかどうかに関する予備決定を行うことができる。その変更が、任意選択であるかあるいは1つのみまたは数個のパラメータを伴う場合、オープンデータ接続を共有しているアプリケーションのデータ通信を中断することを回避するために、接続マネージャは構成を変更しないことを選択することができる。代替的に、その変更が、要求されているかまたは多数のパラメータを伴う場合、接続マネージャは、すべての合併規則を計算し、それに応じて構成におけるすべてのパラメータをアップデートすることを選択することができる。
アプリケーションが構成の変更を要求するときにデータ接続構成を管理するための実施方法の擬似コード実装形態は、以下の通りである。
1.すでに実行中のアプリケーションが、そのアプリケーションが以前に要求した構成を変更する場合、
a.新しい構成パラメータを分析する。
b.パラメータのいずれも修正不能である場合、操作を拒絶する。
c.変更のために残っているパラメータを収集する。
2.変更すべき各専用パラメータについて、
a.データ接続が共有されている場合、同じデータ接続を使用している他のアプリケーションと競合しない場合のみ、専用パラメータを変更し、他の場合は操作を拒絶する。
b.データ接続がもっぱらこのアプリケーションのみによって使用されている場合、新しい専用パラメータに基づいて構成を変更する(ローカルおよびリモート)
c.このアプリケーション用の新しい専用パラメータセットをアップデートする。
3.変更すべき各共有可能パラメータについて、
a.データ接続が共有されている場合、新しい値と既存の値とを検討し、このアプリケーションから前の値を除外して、このパラメータの合併規則に基づいて新しい合成値を計算する。
b.データ接続がもっぱらこのアプリケーションのみによって使用されている場合、新しい合成値は、このアプリケーションによって指定されたパラメータ値と同じである。
c.新しい合成値に基づいてデータ接続の構成を変更する(ローカルまたはリモート)
d.このアプリケーション用の新しい共有可能パラメータセットをアップデートする。
様々な実施形態は、どんなタイプのアプリケーションでもサポートするように拡張でき、データアプリケーションに限定されない。また、上述のように、様々な実施形態は、有線およびワイヤレスネットワークを含む、任意のタイプのネットワークを使用しているデータ接続に利用できる。したがって、実施形態の説明の一部はワイヤレス通信に固有のパラメータを扱っているが、本発明の範囲および特許請求の範囲はワイヤレスネットワーク実装形態に限定されるべきではない。本明細書に記載した様々な構成パラメータは例示のためのものにすぎず、他の構成パラメータを使用することができ、各ネットワーク技術は、異なるパラメータ、または本明細書で説明したパラメータのサブセットのみを使用することができる。
上述の実施形態は、たとえば、セルラー電話、セルラー電話および/またはWIFIトランシーバをもつ個人情報端末(PDA)、モバイル電子メール受信機、モバイルウェブアクセスデバイス、ならびに1つまたは複数のデータ接続に接続する将来開発される他のプロセサ搭載デバイスなど、様々なポータブルコンピューティングデバイスのいずれにも実施できる。一般に、そのようなポータブルコンピューティングデバイスは、図7に示す構成要素を共通に有する。たとえば、ポータブルコンピューティングデバイス28は、内部メモリ282とディスプレイ283とに結合されたプロセッサ281を含むことができる。さらに、ポータブルコンピューティングデバイス28は、ワイヤレスデータリンクに接続され、および/またはプロセッサ281に結合されたセルラー電話トランシーバ285に接続された、電磁放射を送信および受信するためのアンテナ284を有する。いくつかの実装形態では、セルラー電話通信に使用されるトランシーバ285ならびにプロセッサ281およびメモリ282の一部分を、ワイヤレスデータリンクを介してデータインターフェースを提供することから、エアインターフェースと呼ぶ。ポータブルコンピューティングデバイス28は、一般に、ユーザ入力を受けるためのキーパッド286または小型キーボードおよびメニュー選択ボタンまたはロッカースイッチ287をも含む。プロセッサ281はさらに、プロセッサ281をパーソナルコンピュータ13、23などの外部コンピューティングデバイスまたは外部ローカルエリアネットワークに接続するための、ユニバーサルシリアルバス(USB)またはFirewire(登録商標)コネクタソケットなどの有線ネットワークインターフェース288に接続できる。
プロセッサ281は、上述した様々な実施形態の機能を含む、様々な機能を実施するようにソフトウェア命令(アプリケーション)によって構成できる任意のプログラマブルマイクロプロセッサ、マイクロコンピュータあるいは1つまたは複数の多重プロセッサチップとすることができる。一部のポータブルコンピューティングデバイス28では、1つのプロセッサがワイヤレス通信機能専用であり、1つのプロセッサが他のアプリケーションの実行専用であるような、多重プロセッサ281を設けることができる。一般に、ソフトウェアアプリケーションは、アクセスされ、プロセッサ281にロードされる前に内部メモリ282に記憶される。一部のポータブルコンピューティングデバイス28では、プロセッサ281は、アプリケーションソフトウェア命令を記憶するのに十分な内部メモリを含むことができる。本明細書では、メモリという用語は、内部メモリ282と、プロセッサ281自体の中のメモリとを含む、プロセッサ281によってアクセス可能なすべてのメモリを指す。アプリケーションデータファイルは一般にメモリ282に記憶される。多くのポータブルコンピューティングデバイス28では、メモリ282は、揮発性メモリ、もしくはフラッシュメモリなどの不揮発性メモリ、または両方の混合とすることができる。
上述の実施形態は、たとえば、図8に示すパーソナルコンピュータ13など、様々なコンピューティングデバイスのいずれでも実施できる。そのようなパーソナルコンピュータ13は、一般に、コンピュータハウジング290と、揮発性メモリ292に結合されたプロセッサ291と、ディスクドライブ293などの大容量不揮発性メモリとを含む。コンピュータ13は、プロセッサ291に結合されたフロッピー(登録商標)ディスクドライブ294およびコンパクトディスク(CD)ドライブ295をも含むことができる。一般に、コンピュータデバイス13は、キーボード296のようなユーザ入力デバイスと、ディスプレイ297とを含む。コンピュータデバイス13は、データ接続を確立するため、またはUSBもしくはFirewire(登録商標)コネクタソケット(図示せず)、ならびにプロセッサ291をネットワークに結合するためのネットワーク接続回路(図示せず)など、外部メモリデバイスを受けるためのプロセッサ291に結合されたいくつかのコネクタポートをも含むことができる。ラップトップ構成23では、コンピュータハウジング290は、コンピュータ技術分野においてよく知られているようにキーボード296とディスプレイ297とを含む。
上記の方法の説明およびプロセスフロー図は、単に説明のための例として与えたものであり、様々な実施形態のステップを提示された順序で実施しなければならないことを要求または暗示するものではない。当業者なら諒解するように、上記の実施形態におけるステップの順序は、どんな順序でも実施できる。
本発明に関しては、本方法は、ワイヤレスネットワークの(1つまたは複数の)部分を操作して、一連の機械可読命令を実行することによって実施できる。上記の実施形態を実施するために使用されるハードウェアは、当業者なら諒解するように、マイクロプロセッサユニット、マイクロコンピュータユニット、プログラマブル浮動小数点ゲートアレイ(FPGA)、および特定用途向け集積回路(ASIC)を含む、上記の方法に対応する方法ステップを実施するための命令のセットを実行するように構成された処理要素および記憶要素とすることができる。たとえば、動作部分は、ポータブルコンピュータ、セルラー電話、携帯情報端末、またはナビゲーションデバイスとすることができる。代替的に、いくつかのステップまたは方法は、所与の機能に固有の回路によって実施できる。
本明細書で開示した実施形態に関して説明した様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両者の組合せとして実装できることを当業者なら諒解されよう。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップを、上記では概してそれらの機能に関して説明した。そのような機能をハードウェアで実装するかソフトウェアで実装するかは、システム全体に課せられた特定の適用および設計上の制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装することができるが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈すべきではない。
本明細書で開示する実施形態に関して説明した方法またはアルゴリズムのステップは、直接的にハードウェアで、プロセッサによって実行されるソフトウェアモジュールで、またはそれら2つの組合せで実施できる。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、不揮発性記憶装置(たとえば、従来の「ハードディスク」またはRAIDアレイ)、磁気テープ、取外し可能ディスク、光記憶デバイス(たとえば、CD−ROM、DVD、デジタル光テープ)、紙「パンチ」カード、または当技術分野で知られているかもしくは開発されるであろうデジタルおよびアナログ伝送媒体を含む他の適切なデータ記憶媒体のいずれでもよいプロセッサ可読データ記憶媒体またはメモリ回路中に常駐することができる。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体はプロセッサに一体化することができる。プロセッサおよび記憶媒体はASIC中に常駐することができる。ASICは、ユーザ端末またはコンピューティングデバイス内に常駐することができる。代替として、プロセッサおよび記憶媒体は、ユーザ端末またはコンピューティングデバイス内に個別構成要素として常駐することもできる。さらに、一部の態様では、方法またはアルゴリズムのステップおよび/または動作は、コンピュータプログラム製品中に組み込むことができる機械可読媒体および/またはコンピュータ可読媒体上のコードおよび/または命令の1つまたは任意の組合せまたはセットとして存在することができる。
様々な実施形態の上記の説明は、当業者が本発明を行うまたは使用することを可能にするために提供される。これらの実施形態に対する様々な変更は、当業者には容易に明らかとなり、本明細書で規定された一般的な原理は、本発明の精神または範囲から逸脱することなく他の実施形態に適用できる。したがって、本発明は、本明細書に示した実施形態に限定されるものではなく、代わりに特許請求の範囲には、本明細書に開示された原理および新規な特徴と一致する最も広い範囲が与えられるべきである。
なお、以下に出願当初の請求項を付記する。
(1)
専用および共有可能構成パラメータによって特徴づけられる複数のオープンデータ接続の1つを使用して複数のアプリケーションをサポートするための方法であって、
データ接続を要求している新しいアプリケーションによって指定された専用および共有可能構成パラメータを収集することと、
専用および共有可能パラメータに基づいて前記新しいアプリケーションに割り当てるための1つのオープンデータ接続を検討中の複数のオープンデータ接続の中から選択することと、
前記選択された1つのオープンデータ接続を前記アプリケーションに割り当てることと、を備える方法。
(2)
前記新しいアプリケーションに割り当てるためのオープンデータ接続を検討中の前記複数のオープンデータ接続の中から連続的に選択することと、
各共有可能構成パラメータの合成パラメータ値を決定するために、前記新しいアプリケーションによって指定された各共有可能構成パラメータと、前記選択されたオープンデータ接続を使用している別のアプリケーションによって指定された各共有可能構成パラメータとに、パラメータ固有の合併規則を適用することと、
前記決定された合成値に基づいて前記選択されたオープンデータ接続に優先順位を割り当てることと、
検討中の複数のオープンデータ接続の中からオープンデータ接続を選択するステップと、合成パラメータ値を決定するために前記共有可能構成パラメータの各々にパラメータ固有の合併規則を適用するステップと、検討中の各オープンデータ接続が評価されるまで、前記選択されたオープンデータ接続に優先順位の値を割り当てるステップとを反復することと、
前記新しいアプリケーションに割り当てるための最高の割当て優先順位をもつ前記1つのオープンデータ接続を選択することと、
前記最高の割当て優先順位をもつ前記オープンデータ接続のために決定された前記合成パラメータ値を使用して前記割り当てられたオープンデータ接続を構成することと、をさらに備える(1)の方法。
(3)
選択されたデータ接続ごとに、前記新しいアプリケーションによって指定された専用構成パラメータが、前記選択されたデータ接続を使用している別のアプリケーションによって指定された専用構成パラメータと競合するかどうかを判断することと、
前記新しいアプリケーションによって要求された構成パラメータが、選択されたオープンデータ接続を使用している別のアプリケーションによって指定された専用パラメータと競合する、その選択されたオープンデータ接続を、検討から外すことと、
競合する専用要件の結果として、すべてのオープンデータ接続が検討から外された場合、新しいデータ接続を確立することと、をさらに備える(2)の方法。
(4)
1つのデータ接続を共有しているアプリケーションが終了するとき、前記1つのデータ接続を共有しているアプリケーションによって指定された共有可能構成パラメータに前記合併規則を再適用することと、
前記共有可能構成パラメータへの合併規則の前記再適用から得られた合成パラメータ値に基づいて前記1つのデータ接続を再構成することと、をさらに備える(2)の方法。
(5)
1つのデータ接続を共有している第1のアプリケーションから、1つまたは複数の共有可能構成パラメータ値を変更する要求を受信することと、
変更される合成構成パラメータ値を決定するために、前記1つまたは複数の共有可能構成パラメータ値と、前記1つのデータ接続を共有している各他のアプリケーションの対応する構成パラメータ値とに、合併規則を適用することと、
前記決定された変更される合成構成パラメータ値を使用して前記1つのデータ接続構成をアップデートすることと、をさらに備える(2)の方法。
(6)
1つのデータ接続を共有している第1のアプリケーションから、1つまたは複数の専用構成パラメータ値を変更する要求を受信することと、
前記変更される1つまたは複数の専用構成パラメータ値が、前記1つのデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合するかどうかを判断することと、
変更される専用構成パラメータ値が、前記1つのデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合すると判断された場合、1つまたは複数の専用構成パラメータ値を変更するための前記第1のアプリケーションからの前記要求を拒絶することと、をさらに備える(1)の方法。
(7)
前記決定された合成値に基づいて前記選択されたオープンデータ接続に割り当てられる前記優先順位が、前記決定された合成パラメータ値が前記選択されたオープンデータ接続を共有しているすべてのアプリケーションをサポートする程度を表す(2)の方法。
(8)
コンピューティングデバイスにおけるデータ接続を管理するための方法であって、
第1の合成構成パラメータを得るために、データ接続を要求している第1のアプリケーションによって指定された共有可能構成パラメータと、第1のオープンデータ接続を使用している第2のアプリケーションによって指定された対応する構成パラメータとに、パラメータ固有の合併規則を適用することと、
前記第1の合成構成パラメータを使用して前記第1のオープンデータ接続を構成することと、を備える方法。
(9)
前記第1のオープンデータ接続の共有可能構成パラメータごとに、前記第1のアプリケーションと前記第2のアプリケーションとによって指定された前記共有可能構成パラメータにパラメータ固有の合併規則を適用するステップであって、各共有可能構成パラメータに適用される前記パラメータ固有の合併規則がメモリに記憶されている、適用するステップを反復することをさらに備える(8)の方法。
(10)
前記第1の合成構成パラメータに基づいて前記第1のオープンデータ接続に第1の優先順位を割り当てることと、
第2の合成構成パラメータを得るために、前記データ接続を要求している前記第1のアプリケーションによって指定された前記共有可能構成パラメータと、第2のオープンデータ接続を使用している第3のアプリケーションによって指定された前記対応する構成パラメータとに、前記パラメータ固有の合併規則を適用することと、
前記第2の合成構成パラメータに基づいて前記第2のオープンデータ接続に第2の優先順位を割り当てることと、
前記第1の優先順位と第2の優先順位とに基づいて前記第1のオープンデータ接続と前記第2のオープンデータ接続との間で選択することと、
前記第1および第2のオープンデータ接続のうちの前記選択された1つを前記第1のアプリケーションに割り当てることと、
前記第1および第2の合成構成パラメータのうちの前記対応する1つに基づいて前記第1および第2のオープンデータ接続のうちの前記選択された1つを構成することと、をさらに備える(8)の方法。
(11)
プロセッサと、
前記プロセッサに結合されたメモリと、を備えるモバイルデバイスであって、
前記プロセッサが、
データ接続を要求している新しいアプリケーションによって指定された専用および共有可能構成パラメータを収集することと、
専用および共有可能パラメータに基づいて前記新しいアプリケーションに割り当てるための1つのオープンデータ接続を検討中の複数のオープンデータ接続の中から選択することと、
前記選択された1つのオープンデータ接続を前記アプリケーションに割り当てることと、を備えるステップを実施するためのプロセッサ実行可能命令を用いて構成されたモバイルデバイス。
(12)
前記プロセッサが、
前記新しいアプリケーションに割り当てるためのオープンデータ接続を検討中の前記複数のオープンデータ接続の中から連続的に選択することと、
各共有可能構成パラメータの合成パラメータ値を決定するために、前記新しいアプリケーションによって指定された各共有可能構成パラメータと、前記選択されたオープンデータ接続を使用している別のアプリケーションによって指定された各共有可能構成パラメータとに、パラメータ固有の合併規則を適用することと、
前記決定された合成値に基づいて前記選択されたオープンデータ接続に優先順位を割り当てることと、
検討中の複数のオープンデータ接続の中からオープンデータ接続を選択するステップと、合成パラメータ値を決定するために前記共有可能構成パラメータの各々にパラメータ固有の合併規則を適用するステップと、検討中の各オープンデータ接続が評価されるまで、前記選択されたオープンデータ接続に優先順位の値を割り当てるステップとを反復することと、
前記新しいアプリケーションに割り当てるための最高の割当て優先順位をもつ前記1つのオープンデータ接続を選択することと、
前記最高の割当て優先順位をもつ前記オープンデータ接続のために決定された前記合成パラメータ値を使用して前記割り当てられたオープンデータ接続を構成することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令を用いて構成された(11)のモバイルデバイス。
(13)
前記プロセッサが、
選択されたデータ接続ごとに、前記新しいアプリケーションによって指定された専用構成パラメータが、前記選択されたデータ接続を使用している別のアプリケーションによって指定された専用構成パラメータと競合するかどうかを判断することと、
前記新しいアプリケーションによって要求された構成パラメータが、選択されたオープンデータ接続を使用している別のアプリケーションによって指定された専用パラメータと競合する、その選択されたオープンデータ接続を、検討から外すことと、
競合する専用要件の結果として、すべてのオープンデータ接続が検討から外された場合、新しいデータ接続を確立することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令を用いて構成された(12)のモバイルデバイス。
(14)
前記プロセッサが、
1つのデータ接続を共有しているアプリケーションが終了するとき、前記1つのデータ接続を共有しているアプリケーションによって指定された共有可能構成パラメータに前記合併規則を再適用することと、
前記共有可能構成パラメータへの合併規則の前記再適用から得られた合成パラメータ値に基づいて前記1つのデータ接続を再構成することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令を用いて構成された(12)のモバイルデバイス。
(15)
前記プロセッサが、
1つのデータ接続を共有している第1のアプリケーションから、1つまたは複数の共有可能構成パラメータ値を変更する要求を受信することと、
変更される合成構成パラメータ値を決定するために、前記1つまたは複数の共有可能構成パラメータ値と、前記1つのデータ接続を共有している各他のアプリケーションの対応する構成パラメータ値とに、合併規則を適用することと、
前記決定された変更される合成構成パラメータ値を使用して前記1つのデータ接続構成をアップデートすることと、をさらに備えるステップを実施するためのプロセッサ実行可能命令を用いて構成された(12)のモバイルデバイス。
(16)
前記プロセッサが、
1つのデータ接続を共有している第1のアプリケーションから、1つまたは複数の専用構成パラメータ値を変更する要求を受信することと、
前記変更される1つまたは複数の専用構成パラメータ値が、前記1つのデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合するかどうかを判断することと、
変更される専用構成パラメータ値が、前記1つのデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合すると判断された場合、1つまたは複数の専用構成パラメータ値を変更するための前記第1のアプリケーションからの前記要求を拒絶することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令を用いて構成された(11)のモバイルデバイス。
(17)
前記決定された合成値に基づいて前記選択されたオープンデータ接続に割り当てられる前記優先順位が、前記決定された合成パラメータ値が前記選択されたオープンデータ接続を共有しているすべてのアプリケーションをサポートする程度を表すように、前記プロセッサがステップを実施するためのプロセッサ実行可能命令を用いて構成された(12)のモバイルデバイス。
(18)
プロセッサと、
前記プロセッサに結合されたメモリと、を備えるモバイルデバイスであって、
前記プロセッサが、
第1の合成構成パラメータを得るために、データ接続を要求している第1のアプリケーションによって指定された共有可能構成パラメータと、第1のオープンデータ接続を使用している第2のアプリケーションによって指定された対応する構成パラメータとに、パラメータ固有の合併規則を適用することと、
前記第1の合成構成パラメータを使用して前記第1のオープンデータ接続を構成することと、を備えるステップを実施するためのプロセッサ実行可能命令を用いて構成されたモバイルデバイス。
(19)
前記プロセッサが、前記第1のオープンデータ接続の共有可能構成パラメータごとに、前記第1のアプリケーションと前記第2のアプリケーションとによって指定された前記共有可能構成パラメータにパラメータ固有の合併規則を適用するステップであって、各共有可能構成パラメータに適用される前記パラメータ固有の合併規則がメモリに記憶されている、適用するステップを反復することをさらに備えるステップを実施するためのプロセッサ実行可能命令を用いて構成された(18)のモバイルデバイス。
(20)
前記プロセッサが、
前記第1の合成構成パラメータに基づいて前記第1のオープンデータ接続に第1の優先順位を割り当てることと、
第2の合成構成パラメータを得るために、前記データ接続を要求している前記第1のアプリケーションによって指定された前記共有可能構成パラメータと、第2のオープンデータ接続を使用している第3のアプリケーションによって指定された前記対応する構成パラメータとに、前記パラメータ固有の合併規則を適用することと、
前記第2の合成構成パラメータに基づいて前記第2のオープンデータ接続に第2の優先順位を割り当てることと、
前記第1の優先順位と第2の優先順位とに基づいて前記第1のオープンデータ接続と前記第2のオープンデータ接続との間で選択することと、
前記第1および第2のオープンデータ接続のうちの前記選択された1つを前記第1のアプリケーションに割り当てることと、
前記第1および第2の合成構成パラメータのうちの前記対応する1つに基づいて前記第1および第2のオープンデータ接続のうちの前記選択された1つを構成することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令を用いて構成された(18)のモバイルデバイス。
(21)
データ接続を要求している新しいアプリケーションによって指定された専用および共有可能構成パラメータを収集する手段と、
専用および共有可能パラメータに基づいて前記新しいアプリケーションに割り当てるための1つのオープンデータ接続を検討中の複数のオープンデータ接続の中から選択する手段と、
前記選択された1つのオープンデータ接続を前記アプリケーションに割り当てる手段と、を備えるモバイルデバイス。
(22)
前記新しいアプリケーションに割り当てるためのオープンデータ接続を検討中の前記複数のオープンデータ接続の中から連続的に選択する手段と、
各共有可能構成パラメータの合成パラメータ値を決定するために、前記新しいアプリケーションによって指定された各共有可能構成パラメータと、前記選択されたオープンデータ接続を使用している別のアプリケーションによって指定された各共有可能構成パラメータとに、パラメータ固有の合併規則を適用する手段と、
前記決定された合成値に基づいて前記選択されたオープンデータ接続に優先順位を割り当てる手段と、
検討中の複数のオープンデータ接続の中からオープンデータ接続を選択するステップと、合成パラメータ値を決定するために前記共有可能構成パラメータの各々にパラメータ固有の合併規則を適用するステップと、検討中の各オープンデータ接続が評価されるまで、前記選択されたオープンデータ接続に優先順位の値を割り当てるステップとを反復する手段と、
前記新しいアプリケーションに割り当てるための最高の割当て優先順位をもつ前記1つのオープンデータ接続を選択する手段と、
前記最高の割当て優先順位をもつ前記オープンデータ接続のために決定された前記合成パラメータ値を使用して前記割り当てられたオープンデータ接続を構成する手段と、をさらに備える(21)のモバイルデバイス。
(23)
選択されたデータ接続ごとに、前記新しいアプリケーションによって指定された専用構成パラメータが、前記選択されたデータ接続を使用している別のアプリケーションによって指定された専用構成パラメータと競合するかどうかを判断する手段と、
前記新しいアプリケーションによって要求された構成パラメータが、選択されたオープンデータ接続を使用している別のアプリケーションによって指定された専用パラメータと競合する、その選択されたオープンデータ接続を、検討から外す手段と、
競合する専用要件の結果として、すべてのオープンデータ接続が検討から外された場合、新しいデータ接続を確立する手段と、をさらに備える(22)のモバイルデバイス。
(24)
1つのデータ接続を共有しているアプリケーションが終了するとき、前記1つのデータ接続を共有しているアプリケーションによって指定された共有可能構成パラメータに前記合併規則を再適用する手段と、
前記共有可能構成パラメータへの合併規則の前記再適用から得られた合成パラメータ値に基づいて前記1つのデータ接続を再構成する手段と、をさらに備える(22)のモバイルデバイス。
(25)
1つのデータ接続を共有している第1のアプリケーションから、1つまたは複数の共有可能構成パラメータ値を変更する要求を受信する手段と、
変更される合成構成パラメータ値を決定するために、前記1つまたは複数の共有可能構成パラメータ値と、前記1つのデータ接続を共有している各他のアプリケーションの対応する構成パラメータ値とに、合併規則を適用する手段と、
前記決定された変更される合成構成パラメータ値を使用して前記1つのデータ接続構成をアップデートする手段と、をさらに備える(22)のモバイルデバイス。
(26)
1つのデータ接続を共有している第1のアプリケーションから、1つまたは複数の専用構成パラメータ値を変更する要求を受信する手段と、
前記変更される1つまたは複数の専用構成パラメータ値が、前記1つのデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合するかどうかを判断する手段と、
変更される専用構成パラメータ値が、前記1つのデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合すると判断された場合、1つまたは複数の専用構成パラメータ値を変更するための前記第1のアプリケーションからの前記要求を拒絶する手段と、をさらに備える(21)のモバイルデバイス。
(27)
前記決定された合成値に基づいて前記選択されたオープンデータ接続に割り当てられる前記優先順位が、前記決定された合成パラメータ値が前記選択されたオープンデータ接続を共有しているすべてのアプリケーションをサポートする程度を表す(22)のモバイルデバイス。
(28)
コンピューティングデバイスにおけるデータ接続を管理するためのモバイルデバイスであって、
第1の合成構成パラメータを得るために、データ接続を要求している第1のアプリケーションによって指定された共有可能構成パラメータと、第1のオープンデータ接続を使用している第2のアプリケーションによって指定された対応する構成パラメータとに、パラメータ固有の合併規則を適用する手段と、
前記第1の合成構成パラメータを使用して前記第1のオープンデータ接続を構成する手段と、を備えるモバイルデバイス。
(29)
前記第1のオープンデータ接続の共有可能構成パラメータごとに、前記第1のアプリケーションと前記第2のアプリケーションとによって指定された前記共有可能構成パラメータにパラメータ固有の合併規則を適用するステップであって、各共有可能構成パラメータに適用される前記パラメータ固有の合併規則がメモリに記憶されている、適用するステップを反復する手段をさらに備える(28)のモバイルデバイス。
(30)
前記第1の合成構成パラメータに基づいて前記第1のオープンデータ接続に第1の優先順位を割り当てる手段と、
第2の合成構成パラメータを得るために、前記データ接続を要求している前記第1のアプリケーションによって指定された前記共有可能構成パラメータと、第2のオープンデータ接続を使用している第3のアプリケーションによって指定された前記対応する構成パラメータとに、前記パラメータ固有の合併規則を適用する手段と、
前記第2の合成構成パラメータに基づいて前記第2のオープンデータ接続に第2の優先順位を割り当てる手段と、
前記第1の優先順位と第2の優先順位とに基づいて前記第1のオープンデータ接続と前記第2のオープンデータ接続との間で選択する手段と、
前記第1および第2のオープンデータ接続のうちの前記選択された1つを前記第1のアプリケーションに割り当てる手段と、
前記第1および第2の合成構成パラメータのうちの前記対応する1つに基づいて前記第1および第2のオープンデータ接続のうちの前記選択された1つを構成する手段と、をさらに備える(28)の方法。
(31)
データ接続を要求している新しいアプリケーションによって指定された専用および共有可能構成パラメータを収集することと、
専用および共有可能パラメータに基づいて前記新しいアプリケーションに割り当てるための1つのオープンデータ接続を検討中の複数のオープンデータ接続の中から選択することと、
前記選択された1つのオープンデータ接続を前記アプリケーションに割り当てることと、を備えるステップをモバイルデバイスのプロセッサが実施することを引き起こすプロセッサ実行可能ソフトウェア命令を記憶した有形記憶媒体。
(32)
前記新しいアプリケーションに割り当てるためのオープンデータ接続を検討中の前記複数のオープンデータ接続の中から連続的に選択することと、
各共有可能構成パラメータの合成パラメータ値を決定するために、前記新しいアプリケーションによって指定された各共有可能構成パラメータと、前記選択されたオープンデータ接続を使用している別のアプリケーションによって指定された各共有可能構成パラメータとに、パラメータ固有の合併規則を適用することと、
前記決定された合成値に基づいて前記選択されたオープンデータ接続に優先順位を割り当てることと、
検討中の複数のオープンデータ接続の中からオープンデータ接続を選択するステップと、合成パラメータ値を決定するために前記共有可能構成パラメータの各々にパラメータ固有の合併規則を適用するステップと、検討中の各オープンデータ接続が評価されるまで、前記選択されたオープンデータ接続に優先順位の値を割り当てるステップとを反復することと、
前記新しいアプリケーションに割り当てるための最高の割当て優先順位をもつ前記1つのオープンデータ接続を選択することと、
前記最高の割当て優先順位をもつ前記オープンデータ接続のために決定された前記合成パラメータ値を使用して前記割り当てられたオープンデータ接続を構成することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令をさらに記憶した(31)の有形記憶媒体。
(33)
選択されたデータ接続ごとに、前記新しいアプリケーションによって指定された専用構成パラメータが、前記選択されたデータ接続を使用している別のアプリケーションによって指定された専用構成パラメータと競合するかどうかを判断することと、
前記新しいアプリケーションによって要求された構成パラメータが、選択されたオープンデータ接続を使用している別のアプリケーションによって指定された専用パラメータと競合する、その選択されたオープンデータ接続を、検討から外すことと、
競合する専用要件の結果として、すべてのオープンデータ接続が検討から外された場合、新しいデータ接続を確立することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令をさらに記憶した(32)の有形記憶媒体。
(34)
1つのデータ接続を共有しているアプリケーションが終了するとき、前記1つのデータ接続を共有しているアプリケーションによって指定された共有可能構成パラメータに前記合併規則を再適用することと、
前記共有可能構成パラメータへの合併規則の前記再適用から得られた合成パラメータ値に基づいて前記1つのデータ接続を再構成することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令をさらに記憶した(32)の有形記憶媒体。
(35)
1つのデータ接続を共有している第1のアプリケーションから、1つまたは複数の共有可能構成パラメータ値を変更する要求を受信することと、
変更される合成構成パラメータ値を決定するために、前記1つまたは複数の共有可能構成パラメータ値と、前記1つのデータ接続を共有している各他のアプリケーションの対応する構成パラメータ値とに、合併規則を適用することと、
前記決定された変更される合成構成パラメータ値を使用して前記1つのデータ接続構成をアップデートすることと、をさらに備えるステップを実施するためのプロセッサ実行可能命令をさらに記憶した(32)の有形記憶媒体。
(36)
1つのデータ接続を共有している第1のアプリケーションから、1つまたは複数の専用構成パラメータ値を変更する要求を受信することと、
前記変更される1つまたは複数の専用構成パラメータ値が、前記1つのデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合するかどうかを判断することと、
変更される専用構成パラメータ値が、前記1つのデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合すると判断された場合、1つまたは複数の専用構成パラメータ値を変更するための前記第1のアプリケーションからの前記要求を拒絶することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令をさらに記憶した(31)の有形記憶媒体。
(37)
前記決定された合成値に基づいて前記選択されたオープンデータ接続に割り当てられる前記優先順位が、前記決定された合成パラメータ値が前記選択されたオープンデータ接続を共有しているすべてのアプリケーションをサポートする程度を表す(32)の有形記憶媒体。
(38)
第1の合成構成パラメータを得るために、データ接続を要求している第1のアプリケーションによって指定された共有可能構成パラメータと、第1のオープンデータ接続を使用している第2のアプリケーションによって指定された対応する構成パラメータとに、パラメータ固有の合併規則を適用することと、
前記第1の合成構成パラメータを使用して前記第1のオープンデータ接続を構成することと、を備えるステップをモバイルデバイスのプロセッサが実施することを引き起こすプロセッサ実行可能ソフトウェア命令を記憶した有形記憶媒体。
(39)
前記第1のオープンデータ接続の共有可能構成パラメータごとに、前記第1のアプリケーションと前記第2のアプリケーションとによって指定された前記共有可能構成パラメータにパラメータ固有の合併規則を適用するステップであって、各共有可能構成パラメータに適用される前記パラメータ固有の合併規則がメモリに記憶されている、適用するステップを反復することをさらに備えるステップを実施するためのプロセッサ実行可能命令をさらに記憶した(38)の有形記憶媒体。
(40)
前記第1の合成構成パラメータに基づいて前記第1のオープンデータ接続に第1の優先順位を割り当てることと、
第2の合成構成パラメータを得るために、前記データ接続を要求している前記第1のアプリケーションによって指定された前記共有可能構成パラメータと、第2のオープンデータ接続を使用している第3のアプリケーションによって指定された前記対応する構成パラメータとに、前記パラメータ固有の合併規則を適用することと、
前記第2の合成構成パラメータに基づいて前記第2のオープンデータ接続に第2の優先順位を割り当てることと、
前記第1の優先順位と第2の優先順位とに基づいて前記第1のオープンデータ接続と前記第2のオープンデータ接続との間で選択することと、
前記第1および第2のオープンデータ接続のうちの前記選択された1つを前記第1のアプリケーションに割り当てることと、
前記第1および第2の合成構成パラメータのうちの前記対応する1つに基づいて前記第1および第2のオープンデータ接続のうちの前記選択された1つを構成することと、をさらに備えるステップを実施するためのプロセッサ実行可能命令をさらに記憶した(38)の有形記憶媒体。

Claims (14)

  1. 専用および共有可能構成パラメータによって特徴づけられる複数のオープンデータ接続の1つを使用して複数のアプリケーションをサポートするための方法であって、
    データ接続を要求している新しいアプリケーションによって指定された専用および共有可能構成パラメータを収集することと、
    記新しいアプリケーションに割り当てるための第1のオープンデータ接続を検討中の複数のオープンデータ接続の中から選択することと、
    前記選択された第1のオープンデータ接続を前記新しいアプリケーションに割り当てることと、を備え
    専用構成パラメータは、対応するアプリケーションが機能するために有しなければならないデータ接続構成パラメータを定義し、共有可能構成パラメータは、機能するために前記対応するアプリケーションにとって変更されることが可能なデータ接続構成パラメータを定義し、前記第1のオープンデータ接続は、前記第1のオープンデータ接続を使用している別のアプリケーションと互換性のある前記新しいアプリケーションによって指定された前記専用および共有可能パラメータに基づいて選択される方法。
  2. 前記第1のデータ接続を共有している第1のアプリケーションから、1つまたは複数の専用構成パラメータ値を変更する要求を受信することと、
    記1つまたは複数の専用構成パラメータ値の要求された変更が、前記第1のデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合を引き起こすかどうかを判断することと、
    前記専用構成パラメータ値の変更が、前記第1のデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合すると判断された場合、前記1つまたは複数の専用構成パラメータ値を変更するための前記第1のアプリケーションからの前記要求を拒絶することと、を備える請求項1の方法。
  3. 前記第1のオープンデータ接続を選択することは、
    前記新しいアプリケーションに割り当てるためのオープンデータ接続を検討中の前記複数のオープンデータ接続の中から連続的に選択することと、
    各共有可能構成パラメータの合成パラメータ値を決定するために、前記新しいアプリケーションによって指定された各共有可能構成パラメータと、前記選択されたオープンデータ接続を使用している別のアプリケーションによって指定された各共有可能構成パラメータとに、パラメータ固有の合併規則を適用することと、
    前記決定された合成値に基づいて前記選択されたオープンデータ接続に優先順位を割り当てることと、
    検討中の複数のオープンデータ接続の中からオープンデータ接続を選択するステップと、合成パラメータ値を決定するために前記共有可能構成パラメータの各々にパラメータ固有の合併規則を適用するステップと、検討中の全てのオープンデータ接続が評価されるまで、前記選択されたオープンデータ接続に優先順位の値を割り当てるステップとを反復することと、
    前記新しいアプリケーションに割り当てるための最高の割当て優先順位をもつ前記オープンデータ接続を選択することと、を備え、
    前記最高の割当て優先順位をもつ前記オープンデータ接続のために決定された前記合成パラメータ値を使用して前記割り当てられたオープンデータ接続を構成することと、をさらに備える請求項1の方法。
  4. 選択されたデータ接続ごとに、前記新しいアプリケーションによって指定された任意の専用構成パラメータが、前記選択されたデータ接続を使用している別のアプリケーションによって指定された任意の専用構成パラメータと競合するかどうかを判断することと、
    前記新しいアプリケーションによって要求された構成パラメータが、選択されたオープンデータ接続を使用している別のアプリケーションによって指定された専用パラメータと競合する、その選択されたオープンデータ接続を、検討から外すことと、
    競合する専用構成パラメータの結果として、すべてのオープンデータ接続が検討から外された場合、新しいデータ接続を確立することと、を備える請求項の方法。
  5. 前記第1のデータ接続を共有しているアプリケーションが終了するとき、前記第1のデータ接続を共有しているアプリケーションによって指定された共有可能構成パラメータに前記合併規則を再適用することと、
    前記共有可能構成パラメータへの合併規則の前記再適用から得られた合成パラメータ値に基づいて前記第1のデータ接続を再構成することと、を備える請求項の方法。
  6. 前記第1のデータ接続を共有している第1のアプリケーションから、1つまたは複数の共有可能構成パラメータ値を変更する要求を受信することと、
    変更される合成構成パラメータ値を決定するために、前記1つまたは複数の共有可能構成パラメータ値と、前記第1のデータ接続を共有している各他のアプリケーションの対応する構成パラメータ値とに、合併規則を適用することと、
    前記決定された変更される合成構成パラメータ値を使用して前記第1のデータ接続構成をアップデートすることと、を備える請求項の方法。
  7. 前記決定された合成値に基づいて前記選択されたオープンデータ接続に割り当てられる前記優先順位が、前記決定された合成パラメータ値が前記選択されたオープンデータ接続を共有しているすべてのアプリケーションをサポートする程度を表す請求項の方法。
  8. 前記第1のオープンデータ接続の共有可能構成パラメータごとに、前記新しいアプリケーションとのアプリケーションとによって指定された前記共有可能構成パラメータにパラメータ固有の合併規則を適用するステップであって、各共有可能構成パラメータに適用される前記パラメータ固有の合併規則がメモリに記憶されている、適用するステップを反復することを備える請求項の方法。
  9. 前記第1の合成構成パラメータに基づいて前記第1のオープンデータ接続に第1の優先順位を割り当てることと、
    第2の合成構成パラメータを得るために、前記データ接続を要求している前記第1のアプリケーションによって指定された前記共有可能構成パラメータと、第2のオープンデータ接続を使用している第3のアプリケーションによって指定された前記対応する構成パラメータとに、前記パラメータ固有の合併規則を適用することと、
    前記第2の合成構成パラメータに基づいて前記第2のオープンデータ接続に第2の優先順位を割り当てることと、
    前記第1の優先順位と第2の優先順位とに基づいて前記第1のオープンデータ接続と前記第2のオープンデータ接続との間で選択することと、
    前記第1および第2のオープンデータ接続のうちの前記選択された1つを前記第1のアプリケーションに割り当てることと、
    前記第1および第2の合成構成パラメータのうちの前記対応する1つに基づいて前記第1および第2のオープンデータ接続のうちの前記選択された1つを構成することと、を備える請求項の方法。
  10. プロセッサと、
    前記プロセッサに結合されたメモリと、を備えるモバイルデバイスであって、
    前記プロセッサが、請求項1から請求項9のいずれか1項で請求される方法を実施するためのプロセッサ実行可能命令を用いて構成されたモバイルデバイス。
  11. データ接続を要求している新しいアプリケーションによって指定された専用および共有可能構成パラメータを収集する手段と、
    前記新しいアプリケーションに割り当てるための第1のオープンデータ接続を検討中の複数のオープンデータ接続の中から選択する手段と、
    前記選択された第1のオープンデータ接続を前記新しいアプリケーションに割り当てる手段と、を備え、
    専用構成パラメータは、対応するアプリケーションが機能しなければならないデータ接続構成パラメータを定義し、共有可能構成パラメータは、機能するために前記対応するアプリケーションにとって変更されることが可能なデータ接続構成パラメータを定義し、前記第1のオープンデータ接続は、前記第1のオープンデータ接続を使用している別のアプリケーションと互換性のある前記新しいアプリケーションによって指定された前記専用および共有可能パラメータに基づいて選択されるモバイルデバイス。
  12. 前記第1のデータ接続を共有している第1のアプリケーションから、1つまたは複数の専用構成パラメータ値を変更する要求を受信する手段と、
    前記1つまたは複数の専用構成パラメータ値の要求された変更が、前記第1のデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合を引き起こすかどうかを判断する手段と、
    前記専用構成パラメータ値の変更が、前記第1のデータ接続を使用している別のアプリケーションによって指定された対応する専用構成パラメータと競合すると判断された場合、前記1つまたは複数の専用構成パラメータ値を変更するための前記第1のアプリケーションからの前記要求を拒絶する手段と、を備える請求項11のモバイルデバイス。
  13. 前記第1のオープンデータ接続を選択する手段は、
    前記新しいアプリケーションに割り当てるためのオープンデータ接続を検討中の前記複数のオープンデータ接続の中から連続的に選択する手段と、
    各共有可能構成パラメータの合成パラメータ値を決定するために、前記新しいアプリケーションによって指定された各共有可能構成パラメータと、前記選択されたオープンデータ接続を使用している別のアプリケーションによって指定された各共有可能構成パラメータとに、パラメータ固有の合併規則を適用する手段と、
    前記決定された合成値に基づいて前記選択されたオープンデータ接続に優先順位を割り当てる手段と、
    検討中の複数のオープンデータ接続の中からオープンデータ接続を選択するステップと、合成パラメータ値を決定するために前記共有可能構成パラメータの各々にパラメータ固有の合併規則を適用するステップと、検討中の全てのオープンデータ接続が評価されるまで、前記選択されたオープンデータ接続に優先順位の値を割り当てるステップとを反復することを引き起こす手段と、
    前記新しいアプリケーションに割り当てるための最高の割当て優先順位をもつ前記オープンデータ接続を選択する手段と、を備え、
    前記最高の割当て優先順位をもつ前記オープンデータ接続のために決定された前記合成パラメータ値を使用して前記割り当てられたオープンデータ接続を構成する手段をさらに備える請求項11のモバイルデバイス。
  14. 請求項1から請求項9のいずれか1項で請求される方法をモバイルデバイスのプロセッサが実施することを引き起こすプロセッサ実行可能ソフトウェア命令を記憶した有形記憶媒体。
JP2010517143A 2007-07-16 2008-07-16 ネットワークリソースを効率的に使用して複数の多様なデータアプリケーションをサポートするための方法 Expired - Fee Related JP5149380B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US95011007P 2007-07-16 2007-07-16
US60/950,110 2007-07-16
US12/173,733 2008-07-15
US12/173,733 US8572256B2 (en) 2007-07-16 2008-07-15 Method for supporting multiple diversified data applications with efficient use of network resources
PCT/US2008/070216 WO2009012329A2 (en) 2007-07-16 2008-07-16 Method for supporting multiple diversified data applications with efficient use of network resources

Publications (2)

Publication Number Publication Date
JP2010534040A JP2010534040A (ja) 2010-10-28
JP5149380B2 true JP5149380B2 (ja) 2013-02-20

Family

ID=40260359

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010517143A Expired - Fee Related JP5149380B2 (ja) 2007-07-16 2008-07-16 ネットワークリソースを効率的に使用して複数の多様なデータアプリケーションをサポートするための方法

Country Status (6)

Country Link
US (1) US8572256B2 (ja)
EP (1) EP2179565B1 (ja)
JP (1) JP5149380B2 (ja)
KR (1) KR101127141B1 (ja)
CN (1) CN101772941B (ja)
WO (1) WO2009012329A2 (ja)

Families Citing this family (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BRPI0510378B1 (pt) 2004-04-30 2018-12-11 Blackberry Ltd Método de manusear transferências de dados em um dispositivo móvel , mídia lida porcomputador e aparelho de transferência de dados
US7614082B2 (en) 2005-06-29 2009-11-03 Research In Motion Limited System and method for privilege management and revocation
PL2193642T3 (pl) * 2007-10-02 2018-09-28 Nokia Technologies Oy Sterowanie IP MTU w oparciu o harmonogram wieloradiowy
US8788589B2 (en) 2007-10-12 2014-07-22 Watchitoo, Inc. System and method for coordinating simultaneous edits of shared digital data
US7792051B2 (en) 2007-12-17 2010-09-07 At&T Intellectual Property I, L.P. Method and apparatus for relating to quality of service in wireless networks
US8406748B2 (en) 2009-01-28 2013-03-26 Headwater Partners I Llc Adaptive ambient services
US8635335B2 (en) 2009-01-28 2014-01-21 Headwater Partners I Llc System and method for wireless network offloading
US8355337B2 (en) 2009-01-28 2013-01-15 Headwater Partners I Llc Network based service profile management with user preference, adaptive policy, network neutrality, and user privacy
US8402111B2 (en) 2009-01-28 2013-03-19 Headwater Partners I, Llc Device assisted services install
US8626115B2 (en) 2009-01-28 2014-01-07 Headwater Partners I Llc Wireless network service interfaces
US8391834B2 (en) 2009-01-28 2013-03-05 Headwater Partners I Llc Security techniques for device assisted services
US8589541B2 (en) 2009-01-28 2013-11-19 Headwater Partners I Llc Device-assisted services for protecting network capacity
US8346225B2 (en) 2009-01-28 2013-01-01 Headwater Partners I, Llc Quality of service for device assisted services
US8275830B2 (en) 2009-01-28 2012-09-25 Headwater Partners I Llc Device assisted CDR creation, aggregation, mediation and billing
US8548428B2 (en) 2009-01-28 2013-10-01 Headwater Partners I Llc Device group partitions and settlement platform
US8340634B2 (en) 2009-01-28 2012-12-25 Headwater Partners I, Llc Enhanced roaming services and converged carrier networks with device assisted services and a proxy
US8832777B2 (en) 2009-03-02 2014-09-09 Headwater Partners I Llc Adapting network policies based on device service processor configuration
US20140071895A1 (en) * 2008-12-12 2014-03-13 Ryan H. Bane Network Selection Based On Customizing Crowdsourced Connection Quality Data
US9647918B2 (en) 2009-01-28 2017-05-09 Headwater Research Llc Mobile device and method attributing media services network usage to requesting application
US8745191B2 (en) 2009-01-28 2014-06-03 Headwater Partners I Llc System and method for providing user notifications
US9954975B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Enhanced curfew and protection associated with a device group
US11218854B2 (en) 2009-01-28 2022-01-04 Headwater Research Llc Service plan design, user interfaces, application programming interfaces, and device management
US10715342B2 (en) 2009-01-28 2020-07-14 Headwater Research Llc Managing service user discovery and service launch object placement on a device
US10492102B2 (en) 2009-01-28 2019-11-26 Headwater Research Llc Intermediate networking devices
US10057775B2 (en) 2009-01-28 2018-08-21 Headwater Research Llc Virtualized policy and charging system
US10779177B2 (en) 2009-01-28 2020-09-15 Headwater Research Llc Device group partitions and settlement platform
US9955332B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Method for child wireless device activation to subscriber account of a master wireless device
US9270559B2 (en) 2009-01-28 2016-02-23 Headwater Partners I Llc Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow
US10064055B2 (en) 2009-01-28 2018-08-28 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US9858559B2 (en) 2009-01-28 2018-01-02 Headwater Research Llc Network service plan design
US10200541B2 (en) 2009-01-28 2019-02-05 Headwater Research Llc Wireless end-user device with divided user space/kernel space traffic policy system
US10326800B2 (en) 2009-01-28 2019-06-18 Headwater Research Llc Wireless network service interfaces
US9392462B2 (en) 2009-01-28 2016-07-12 Headwater Partners I Llc Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy
US10264138B2 (en) 2009-01-28 2019-04-16 Headwater Research Llc Mobile device and service management
US10798252B2 (en) 2009-01-28 2020-10-06 Headwater Research Llc System and method for providing user notifications
US10237757B2 (en) 2009-01-28 2019-03-19 Headwater Research Llc System and method for wireless network offloading
US9571559B2 (en) 2009-01-28 2017-02-14 Headwater Partners I Llc Enhanced curfew and protection associated with a device group
US9572019B2 (en) 2009-01-28 2017-02-14 Headwater Partners LLC Service selection set published to device agent with on-device service selection
US9578182B2 (en) 2009-01-28 2017-02-21 Headwater Partners I Llc Mobile device and service management
US10783581B2 (en) 2009-01-28 2020-09-22 Headwater Research Llc Wireless end-user device providing ambient or sponsored services
US10841839B2 (en) 2009-01-28 2020-11-17 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US9980146B2 (en) 2009-01-28 2018-05-22 Headwater Research Llc Communications device with secure data path processing agents
US10484858B2 (en) 2009-01-28 2019-11-19 Headwater Research Llc Enhanced roaming services and converged carrier networks with device assisted services and a proxy
US9755842B2 (en) 2009-01-28 2017-09-05 Headwater Research Llc Managing service user discovery and service launch object placement on a device
US9565707B2 (en) 2009-01-28 2017-02-07 Headwater Partners I Llc Wireless end-user device with wireless data attribution to multiple personas
US8793758B2 (en) 2009-01-28 2014-07-29 Headwater Partners I Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US9253663B2 (en) 2009-01-28 2016-02-02 Headwater Partners I Llc Controlling mobile device communications on a roaming network based on device state
US11985155B2 (en) 2009-01-28 2024-05-14 Headwater Research Llc Communications device with secure data path processing agents
US10248996B2 (en) 2009-01-28 2019-04-02 Headwater Research Llc Method for operating a wireless end-user device mobile payment agent
US9557889B2 (en) 2009-01-28 2017-01-31 Headwater Partners I Llc Service plan design, user interfaces, application programming interfaces, and device management
US11973804B2 (en) 2009-01-28 2024-04-30 Headwater Research Llc Network service plan design
US9351193B2 (en) 2009-01-28 2016-05-24 Headwater Partners I Llc Intermediate networking devices
US9706061B2 (en) 2009-01-28 2017-07-11 Headwater Partners I Llc Service design center for device assisted services
US8489108B2 (en) * 2009-03-10 2013-07-16 Verizon Patent And Licensing Inc. Method and system for load-balancing across multiple access networks
US8520613B2 (en) * 2010-05-17 2013-08-27 Qualcomm Incorporated Optimization of the presence information refresh for a wireless device
US20140113646A1 (en) * 2010-05-17 2014-04-24 Qualcomm Incorporated Optimization of the presence information refresh for a wireless device
US8429674B2 (en) * 2010-07-20 2013-04-23 Apple Inc. Maintaining data states upon forced exit
JP5738647B2 (ja) * 2011-03-28 2015-06-24 フェリカネットワークス株式会社 通信装置、通信制御方法、およびプログラム
GB2494858B (en) * 2011-08-31 2014-01-29 Samsung Electronics Co Ltd Managing connections to a network in a mobile device
US9497220B2 (en) 2011-10-17 2016-11-15 Blackberry Limited Dynamically generating perimeters
US9161226B2 (en) 2011-10-17 2015-10-13 Blackberry Limited Associating services to perimeters
US9613219B2 (en) 2011-11-10 2017-04-04 Blackberry Limited Managing cross perimeter access
US8799227B2 (en) 2011-11-11 2014-08-05 Blackberry Limited Presenting metadata from multiple perimeters
US9473346B2 (en) * 2011-12-23 2016-10-18 Firebind, Inc. System and method for network path validation
US9900231B2 (en) 2012-01-27 2018-02-20 Microsoft Technology Licensing, Llc Managing data transfers over network connections based on priority and a data usage plan
US9356804B1 (en) * 2012-06-12 2016-05-31 Amazon Technologies, Inc. Policy-based network connection resource selection
EP2677478A1 (en) * 2012-06-21 2013-12-25 BlackBerry Limited Managing use of network resources
US9369466B2 (en) 2012-06-21 2016-06-14 Blackberry Limited Managing use of network resources
US9094830B2 (en) * 2012-07-05 2015-07-28 Blackberry Limited Managing data transfer across a network interface
US9075955B2 (en) 2012-10-24 2015-07-07 Blackberry Limited Managing permission settings applied to applications
US8656016B1 (en) 2012-10-24 2014-02-18 Blackberry Limited Managing application execution and data access on a device
US9112930B2 (en) * 2012-10-26 2015-08-18 Microsoft Technology Licensing, Llc Updating services during real-time communication and sharing-experience sessions
WO2014159862A1 (en) 2013-03-14 2014-10-02 Headwater Partners I Llc Automated credential porting for mobile devices
US9674715B2 (en) * 2013-08-16 2017-06-06 Nokia Solutions And Networks Oy System and method for managing multi-process priority and parameter conflict in a self organizing network controller
CN104516704B (zh) * 2013-10-08 2019-12-13 中兴通讯股份有限公司 一种多屏***中应用激活控制方法、装置及移动终端
US9554323B2 (en) 2013-11-15 2017-01-24 Microsoft Technology Licensing, Llc Generating sequenced instructions for connecting through captive portals
US9369342B2 (en) 2013-11-15 2016-06-14 Microsoft Technology Licensing, Llc Configuring captive portals with a cloud service
US10382305B2 (en) 2013-11-15 2019-08-13 Microsoft Technology Licensing, Llc Applying sequenced instructions to connect through captive portals
EP3179780B1 (en) * 2014-08-26 2019-11-13 Huawei Technologies Co. Ltd. Network communication method and apparatus
US9591516B2 (en) * 2014-12-23 2017-03-07 Motorola Solutions, Inc. Method and apparatus for managing bearers in a wireless communication system
CN106162940A (zh) * 2015-04-20 2016-11-23 宇龙计算机通信科技(深圳)有限公司 一种多路数据连接管理方法、***及移动终端
CN105323318B (zh) * 2015-10-29 2019-09-10 小米科技有限责任公司 参数的修改方法、装置及设备
CN106294267A (zh) * 2016-08-16 2017-01-04 中国科学院上海高等研究院 一种基于单向通信协议标准的均衡器反馈***及方法
CN109684116B (zh) 2019-03-18 2019-06-25 北京字节跳动网络技术有限公司 数据分享方法、装置、设备及介质
CN110753187B (zh) * 2019-10-31 2021-06-01 芋头科技(杭州)有限公司 一种摄像头的控制方法及设备
CN115309457B (zh) * 2022-08-10 2023-10-27 中电金信软件有限公司 应用实例的重启方法、装置、电子设备及可读存储介质

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100302924B1 (ko) * 1996-12-20 2001-09-22 포만 제프리 엘 데이터통신장치
JP3551684B2 (ja) 1997-03-03 2004-08-11 三菱電機株式会社 Atm通信システム
JP2000295285A (ja) 1999-04-08 2000-10-20 Furukawa Electric Co Ltd:The xDSL通信システム及びサービス品質管理装置
EP1107512A1 (en) * 1999-12-03 2001-06-13 Sony International (Europe) GmbH Communication device and software for operating multimedia applications
US7062274B2 (en) 2001-06-21 2006-06-13 Microsoft Corporation Increasing the level of automation when establishing and managing network connections
US7526572B2 (en) * 2001-07-12 2009-04-28 Research In Motion Limited System and method for providing remote data access for a mobile communication device
ATE427017T1 (de) * 2002-02-26 2009-04-15 Nokia Corp Verfahren und vorrichtung zum anpassen der konfiguration einer anwendung auf einem mobilendgerat an eine verfugbare datenverbindung
JP4792692B2 (ja) * 2002-10-10 2011-10-12 パナソニック株式会社 移動通信装置、モバイルルータおよび移動通信システム
EP1618748B1 (en) 2003-04-23 2016-04-13 QUALCOMM Incorporated Methods and apparatus of enhancing performance in wireless communication systems
US9049722B2 (en) * 2004-04-23 2015-06-02 Qualcomm Incorporated Methods and apparatus of enhancing performance in wireless communication systems
KR100585734B1 (ko) * 2003-10-17 2006-06-07 엘지전자 주식회사 휴대단말기 및 그 채널 검색 방법
US7142848B2 (en) * 2004-02-26 2006-11-28 Research In Motion Limited Method and system for automatically configuring access control
EP1605641A1 (en) 2004-06-08 2005-12-14 Matsushita Electric Industrial Co., Ltd. Mapping of shared physical channels depending on the quality of service class
JP2006180174A (ja) * 2004-12-22 2006-07-06 Fujitsu Ltd 移動体端末制御プログラムおよび移動体端末装置
US8200972B2 (en) * 2005-03-16 2012-06-12 International Business Machines Corporation Encryption of security-sensitive data by re-using a connection
US8526463B2 (en) 2005-06-01 2013-09-03 Qualcomm Incorporated System and method to support data applications in a multi-homing, multi-mode communication device
JP4901161B2 (ja) 2005-09-06 2012-03-21 日本電信電話株式会社 セッション制御システム、及び、コンピュータプログラム
US20070099658A1 (en) * 2005-11-03 2007-05-03 Blue Label Interactive Systems and methods for developing, delivering and using video applications for a plurality of mobile platforms
US7751848B2 (en) * 2005-11-23 2010-07-06 Envio Networks Inc. Systems and methods for providing concurrent mobile applications to mobile communication devices
US8275312B2 (en) * 2005-12-31 2012-09-25 Blaze Mobile, Inc. Induction triggered transactions using an external NFC device
US20110093340A1 (en) * 2006-01-30 2011-04-21 Hoozware, Inc. System for providing a service to venues where people perform transactions
TW200805994A (en) * 2006-07-11 2008-01-16 Wistron Neweb Corp A method of establishing wireless network connection for a mobile phone and a mobile phone using the same
JP2008027306A (ja) * 2006-07-24 2008-02-07 Aplix Corp ユーザ空間仮想化システム
US7797679B2 (en) * 2006-08-31 2010-09-14 Research In Motion Limited System and method for providing a parameter for an application operating on an electronic device
US8150933B2 (en) * 2006-09-08 2012-04-03 Research In Motion Limited Apparatus and method for delivering messages over multiple mediums
US8165101B2 (en) * 2006-09-29 2012-04-24 Microsoft Corporation Automatic detection of hidden networks
EP2115641A4 (en) * 2007-01-23 2012-08-01 Ascenna Mobile Inc AUTOMATED AUTHENTICATION PROCESS FOR APPLICATION CLIENTS

Also Published As

Publication number Publication date
KR20100031554A (ko) 2010-03-22
EP2179565A2 (en) 2010-04-28
JP2010534040A (ja) 2010-10-28
CN101772941B (zh) 2013-09-25
US8572256B2 (en) 2013-10-29
CN101772941A (zh) 2010-07-07
WO2009012329A3 (en) 2009-11-19
US20090069018A1 (en) 2009-03-12
KR101127141B1 (ko) 2012-03-20
WO2009012329A2 (en) 2009-01-22
EP2179565B1 (en) 2013-05-01

Similar Documents

Publication Publication Date Title
JP5149380B2 (ja) ネットワークリソースを効率的に使用して複数の多様なデータアプリケーションをサポートするための方法
US11811625B2 (en) Method, apparatus, and computer program
RU2542955C2 (ru) Способ и устройство для определения возможностей предоставления услуг точкой доступа
EP2438791B1 (en) Connection manager for a wireless communication device
US11006314B2 (en) Dynamic access slice pooling and software defined network controlled capabilities
US9603085B2 (en) Methods and apparatus providing intelligent radio selection for legacy and non-legacy applications
US11115810B1 (en) Bootstrap electronic subscriber identity module configuration
US10015733B2 (en) Methods and systems for transmitting and receiving data
CN110226308B (zh) 一种网络切片的管理方法、管理单元和***
US20230171586A1 (en) Automated Subscription Management for Wireless Devices Having Multiple Subscription Profiles
CN104838696A (zh) 用于网络选择的***和方法
CN111641989B (zh) 协议数据单元会话建立方法及相关装置
JP2021509239A (ja) 5gネットワーク又は他の次世代ネットワークのワイヤレスフィディリティアクセス制御
WO2019127954A1 (zh) 一种网络性能提升的方法及设备
US11632738B2 (en) System and method of access point name (APN) dynamic mapping
CN111406437A (zh) 多路径数据通信
WO2021227600A1 (zh) 一种网络切片控制方法及通信装置
WO2023185428A1 (zh) 一种重构用户面功能网元关键服务能力的方法及通信装置
CN114979243A (zh) 一种提供云终端服务的方法和装置
CN108141761B (zh) 无线资源确定方法、装置及业务服务器
US9560518B1 (en) Data usage assessment when allocating roaming resources
WO2024119292A1 (zh) 网络服务方法、通信装置及通信***

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120321

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120621

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120628

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120810

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120920

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121030

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121129

R150 Certificate of patent or registration of utility model

Ref document number: 5149380

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees