可動性のために使用されるすべての無線技術は、無線インターフェースを介して送信されるデータ・パケットについてのサービス品質(QoS)差を提供するためのメカニズムを十分に確立している。無線技術のタイプには、特にグローバル・システム・フォー・モバイル・コミュニケーションズ(GSM)、符号分割多元接続(CDMA)、ユニバーサル・モバイル・テレコミュニケーション・システム(UMTS)、ロング・ターム・エボリューション(LTE)、およびWiMaxなどがある。
図1は、従来の無線通信ネットワークの一般的なアーキテクチャを示している。図1は、特にUMTS無線ネットワークの一部を示している。図示されるように、ユーザ装置(UE)130は無線インターフェースを介してノードB120と通信する。UEの例には、移動局、モバイル・ユニット、無線電話、無線を装備したPDAまたはコンピュータなどがある。複数のノードB120は、無線データ・セッションごとにシグナリングおよびトラフィック処理を提供する無線ネットワーク・コントローラ(RNC)110と通信する。ノードB120、RNC110、およびこれらのコンポーネント間のインターフェースは、無線アクセス・ネットワーク(RAN)として知られているネットワークを形成する。RANは、たとえばインターネットにアクセスするために、コア・ネットワーク(図示せず)と通信する。ノードB120からRNC110に流れるパケット・データは逆方向リンクを介して流れると言われ、RNC110からノードB120に流れるパケット・データは順方向リンクを介して流れると言われる。以下で使用される場合、ノードB120は、CDMA技術用のトランシーバ・ステーション(BTS)およびLTE技術用のeノードBと同義でよい。
RANは、UE130からの要求および制御要素140から受信した指示に従って、異なるQoS基準とのベアラを設定するよう指示される。たとえば、UMTSでは、制御要素140はサービングGPRSサポート・ノード(SGSN)またはゲートウェイGPRSサポート・ノード(GGSN)でよい。CDMAでは、制御要素140は、たとえばパケット・データ・サービング・ノード(PNSN)でよい。また、LTEでは、制御要素140はPDN−GW/SGWでよい。制御要素140は、RNC110およびノードB120にQoSベアラを設定するよう指示する。
RAN内にQoSベアラを確立後、送信の無線リンク層アスペクトは確立されたベアラに関連付けられる。たとえば、RAN内にボイス・オーバー・インターネット・プロトコル(VoIP)が確立されると、RANは、下位のプロトコル層パラメータの特定のセットをVoIPに関連付けられるフローに関連付けることによって応答する。VoIPフローを有するプロトコル層パラメータは、たとえばRFパワー制御目標、IPヘッダ圧縮メカニズム(もしあれば)、パケット用最大許容可能遅延限界、スループット要求、RLP再送、アドミッション制御をトリガするパケット損失レート目標、オーバーロード制御、パワー制御または他の機能、リソース・ホギング保護、ならびにプロトコルに関連するアプリケーションによって要求されるパケット・バッファ・サイズおよびタイム・トゥ・ミート(times to meet)遅延目標を含んでよい。一般的に、これらのパラメータは順方向および逆方向無線インターフェース・リンクに別々に実装される。
制御要素140によってQoS処理を必要とするものとして特に識別されていないアプリケーションが、RNC110、ノードB120、およびUE130への無線送信においてベスト・エフォート(BE)型またはデフォルト・ベアラ通信リンク内でサービスされる。一般的にキュー・サイズおよび優先制約などのパラメータだけを含む有線送信とは異なり、上述したプロトコル・パラメータなどの他の複数のパラメータがRAN内に設定される。現在、これらのパラメータは固定値に設定され、BE型通信リンクにおいて送信されているプロトコルおよびアプリケーションとは無関係である。その結果、BE型通信リンク内でデフォルト設定と一致しないアプリケーションがサービスされると、RANリソースが浪費され、データ・パケット処理は準最適レベルで実行される。
たとえば、Skype(商標)は無線ネットワークにおけるBE型通信リンクで送信されるVoIPアプリケーションである。従来の方法によれば、送信されるパケット用のパラメータは、アプリケーションがVoIPアプリケーションであるという事実、および/またはプロトコル層のタイプとは無関係の固定値によって設定される。たとえば、RLP再送が可能であり、ヘッダ圧縮は行われず、無線インターフェース・パケット・エラー・レート目標がスピーチ関連アプリケーションに必要な目標よりもかなり低く設定される。その結果、RANリソースが浪費され、ユーザ・エクスペリエンスが低下する。
次に、添付の図面を参照して本発明の様々な例示的実施形態をより完全に説明する。本発明のいくつかの例示的実施形態が図面に示されている。図面の説明を通じて、同様の番号は同様の要素を指す。
本明細書において、様々な要素を説明するために第1、第2などの用語が使用される場合があるが、これらの要素はこれらの用語によって限定されるべきではないことが理解されよう。これらの用語は、ある要素と他の要素を区別するためだけに使用される。たとえば、例示的実施形態の範囲から逸脱することなしに、第1の要素は第2の要素と呼ばれてもよく、同様に第2の要素は第1の要素と呼ばれてもよい。本明細書で使用されるように、「および/または」という用語は、関連するリストアップされた項目のうちの1つまたは複数の、あらゆるおよびすべての組合せを含む。
本明細書で使用される用語は、特定の実施形態を説明するためのものにすぎず、例示的実施形態を限定する意図はない。本明細書で使用されるように、単数形「a」、「an」、および「the」は、文脈に明確な指示のない限り複数形も含むことを意図する。本明細書で使用される場合、「comprises(備える)」、「comprising(備える)」、「includes(含む)」、および/または「including(含む)」という用語は、述べられた特徴、整数、ステップ、操作、要素、および/またはコンポーネントの存在を示すが、1つまたは複数の他の特徴、整数、ステップ、操作、要素、コンポーネント、および/またはそれらのグループの存在または追加を除外しないことがさらに理解されよう。
いくつかの代替実装形態では、記載した機能/動作が図面に記載した順序とは異なる順序で発生する場合がある点にも留意されたい。たとえば、連続して示されている2つの図面は、関連する機能/動作に応じて、実際には同時に実行されてもよく、逆の順序で実行されることがあってもよい。
特に定義のない限り、本明細書で使用されるすべての用語(技術用語および科学用語を含む)は、例示的実施形態が属する分野の当業者によって通常理解される意味と同じ意味を有する。通常使用される辞書で定義される用語などの用語は、関連分野の文脈におけるそれらの意味と一致する意味を有するものと解釈されるべきであり、本明細書で明確に定義されない限り、理想的または過度に正式な意味で解釈されないことがさらに理解されよう。
以下の記述では、特定のタスクを実行する、または特定の抽象的データ・タイプを実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含むプログラム・モジュールまたは機能処理として実装され得る、および既存のネットワーク要素で既存のハードウェアを使用して実装され得る、操作の動作および記号表現を参照して(たとえば、流れ図の形式で)、例示的実施形態を説明する。このような既存のハードウェアは、1つまたは複数の中央処理装置(CPU)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路、フィールド・プログラム可能ゲート・アレイ(FPGA)コンピュータなどを含んでよい。
しかし、これらおよび類似の用語のすべては適切な物理量に関連付けられるべきであり、これらの量に適用された便利なラベルにすぎないことを念頭に置くべきである。特に記載のない限り、または議論から明らかなように、「acquiring(取得する)」または「determining(決定する)」などの用語は、コンピュータ・システムのレジスタおよびメモリ内で物理電子量として示されるデータを操作して、コンピュータ・システム・メモリまたはレジスタ、あるいは他のこのような情報ストレージ、伝送または表示装置内で物理量として同様に示される他のデータに変換するコンピュータ・システム、または類似の電子コンピューティング装置の動作および処理を指す。
図2Aは、本発明の実施形態による、順方向リンク上のベスト・エフォート(BE)型通信リンクにおいてサービスされるアプリケーション用のパラメータを制御するためのシステムを示している。
たとえば、図2Aは、BE型通信リンクでコア・ネットワーク220からデータ・パケットを受信する無線アクセス・ネットワーク(RAN)200を示している。RAN200は、BE型通信リンクに沿ってコア・ネットワーク220から受信したデータ・パケットを処理するためのプロトコル専用プロセッサ(PSP)210を含む。PSP210は、特定のタイプのプロトコルを処理するRAN200内に位置するあらゆるタイプのプロセッサである。データ・パケットは、たとえばIPデータ・パケットでもよい。RAN200とコア・ネットワーク220との間に、BE型通信リンクでデータ・パケットを転送するためのインターフェースが提供される。このインターフェースは、RAN200とコア・ネットワーク220との間のパケットの搬送に必要なルータ、スイッチ、または他のネットワーク要素を含んでよい。
BE型通信リンクは、図1の制御要素140によって、QoS処理を必要とするものとして特に識別されていないアプリケーションをサービスする通信リンクである。BE型通信リンクは、たとえばデフォルト・ベアラ通信を含んでよい。
PSP210によってデータ・パケットが処理された後、データ・パケットは無線インターフェースを介してRAN200からアクセス・ターミナル(AT)260にBE型通信リンクで送信される。ATの例には、移動局、モバイル・ユニット、無線電話、無線を装備したPDAまたはコンピュータなどがある。AT260は、ユーザ装置または他の何らかの類似装置と同義でよい。さらに、PSP210を含むRAN200は、これに限定されないが、たとえばGSM、CDMA、UMTS、LTE、およびWiMaxを含むどのようなタイプの無線技術でも実装され得る。
図2Bは、本発明の実施形態による、逆方向リンク上のBE型通信リンクにおいてサービスされるアプリケーション用のパラメータを制御するためのシステムを示している。たとえば、図2Bは、BE型通信リンクでAT260からデータ・パケットを受信する無線アクセス・ネットワーク(RAN)200を示している。順方向リンク処理と同様に、RAN200は、AT260から受信したデータ・パケットを処理するためのPSP210を含む。順方向リンク処理とは異なり、逆方向リンクでは、PSP210は、AT260に逆方向リンク・パケットの処理を修正するよう指示できるように、AT260にパラメータをフィードバックするようにも構成される。PSP210がBE型通信リンク内のデータ・パケットを処理する方法の詳細は、図3を参照して説明する。
図3は、本発明の実施形態による、逆方向および順方向リンク通信のためのPSP210の機能を示す流れ図を示している。たとえば、ステップS310で、PSP210は、コア・ネットワーク220(順方向リンク)またはAT260(逆方向リンク)のいずれかから処理するために、BE型通信リンクでデータ・パケットを受信する。ステップS320で、PSP210は、順方向または逆方向リンク上で送信されるデータ・パケットについての(i)アプリケーション識別子、および/または(ii)インターネット層よりも上位の少なくとも1つの層に関連付けられるプロトコルのタイプを取得する。
たとえば、アプリケーション識別子は、データ・パケットに関連付けられるアプリケーションのタイプを識別する識別子である。たとえば、データ・パケットがSkype(商標)(たとえば、VoIPアプリケーション)に関連付けられる場合、他のタイプのアプリケーションから区別するためにSkype(商標)アプリケーションを一意に識別するデータ・パケットとともに識別子が送信される。
インターネット・プロトコル・スイートのための層は、たとえばアプリケーション層、トランスポート層、インターネット層、およびネットワーク層の、4つのプロトコル層を含む。アプリケーション層のためのプロトコルのタイプは、特にDNS、TFTP、TLS/SSL、FTP、Gopher、HTTP、IMAP、IRC、NNTP、POP3、SIP、POP、およびSSHなどでよい。トランスポート層のためのプロトコルのタイプは、特にTCP、UDP、DCCP、SCTP、IL、およびRUDPなどでよい。インターネット層のためのプロトコルのタイプは、OSPFなどでよい。ネットワーク・インターフェース層のためのプロトコルのタイプは、特にARP、RARP、OSPF、およびNDPなどでよい。アプリケーション層およびトランスポート層は上位レベルの層と見なすことができ、インターネット層およびネットワーク・インターフェース層は下位レベルの層と見なすことができる。OSIモデルでは、トランスポート層、セッション・プレゼンテーション層、およびアプリケーション層はインターネット層よりも上位であると見なされる。
一実施形態では、PSP210は、インターネット層よりも上位の1つ、2つ、または3つ以上の層に関連付けられるプロトコルのタイプを取得できる。さらに、PSP210は、送信されるべきデータ・パケットに関連付けられるすべての上位レベルの層についてのプロトコルのタイプを取得できる。図4を参照して、上位レベルのプロトコル層についての異なる様々なタイプのプロトコルをさらに説明する。
PSP210は、データ・パケットを検査することによって、アプリケーション識別子、および/または上位レベルのプロトコル層に関連付けられるプロトコルのタイプを取得できる。たとえば、PSP210は、下位層のヘッダを削除すること、およびコンテンツを検査することによって、またはディープ・パケット・インスペクション(DPI)のために使用される様々な良く知られた技術のうちのいずれかによって、データ・パケットを検査する。さらに、PSP210は、外部ソース(図示せず)から上位レベルのプロトコル層に関連付けられるアプリケーション識別子、および/またはプロトコルのタイプを取得できる。外部ソースはルータでもよく、パケットに関連付けられるプロパティを決定するためにディープ・パケット・インスペクションまたはヘッダ検査を実行する他のネットワーク要素でもよい。たとえば、外部ソースは、上位レベルのプロトコル層に関連付けられるアプリケーション識別子、および/またはプロトコルのタイプを決定して、それらをPSP210に伝達できる。
PSP210が少なくとも1つの上位レベルのプロトコル層についてのアプリケーション識別子、および/またはプロトコルのタイプを受信後、ステップS330で、PSP210は少なくとも1つの上位レベルのプロトコル層に関連付けられるアプリケーション識別子、および/またはプロトコルのタイプによってパラメータを決定する。
図4は、本発明の実施形態による、上位レベルのプロトコル層に関連付けられるアプリケーション識別子、および/またはプロトコルのタイプに基づくデータ・パケット用のパラメータを示している。たとえば、図4は、アプリケーションおよびトランスポート層パラメータの組合せ、または特定のアプリケーションの識別が、上位層にとって最も適切なパラメータのセットを選択するために使用され得る方法を示している。これらのパラメータは、無線リンク層の機能を制御する。たとえば、パラメータは、上位レベルの層についての取得したアプリケーション識別子、および/またはプロトコルのタイプに関連付けられるどのようなタイプのQoSパラメータでもよい。
本発明の一実施形態によれば、アプリケーション層に関連付けられるプロトコルのタイプがHTTPと決定され、トランスポート層に関連付けられるプロトコルのタイプがTCPと決定されると、パラメータはそれに従って決定され得る。たとえば、この特定の例では、送信されるべきデータ・パケットについて、アプリケーション層に関連付けられるプロトコルのタイプがHTTPで、トランスポート層に関連付けられるプロトコルのタイプがTCPの場合、データ・パケットを送信するためのパラメータは以下のように決定される:RLP再送が可能であり、ハイブリッドARQが可能であり、IPヘッダ圧縮が不可能であり、リソース・ホギング保護が不可能であり、また、AT RFパワー制御目標、BTS/eNode Txパワー制御目標、アドミッションおよびオーバーロード制御の目標パケット損失レート、ならびにパケット・バッファ・サイズが固定値(たとえば、それぞれA1、B1、C1、およびD1)によって設定される。上述のHTTPタイプのアプリケーション層、およびTCPのタイプのトランスポート層用のパラメータは説明するために使用されるにすぎず、HTTPタイプのアプリケーション層、およびTCPタイプのトランスポート層について、他のタイプのパラメータも使用され得る。さらに、本発明の例示的実施形態は2つのプロトコル層だけに限定されない。たとえば、プロトコルのタイプは、インターネット層よりも上位の1つのプロトコル層、または3つ以上高いレベルの層によって決定され得る。
図4を参照すると、送信されるべきデータ・パケットについて、アプリケーション層に関連付けられるプロトコルのタイプがRTPと識別され、トランスポート層に関連付けられるプトロコルのタイプがUDPと識別される場合、他のセットのQoSパラメータが設定される。たとえば、QoSパラメータは以下を含むことができる:RLP再送が不可能であり、ハイブリッドARQが不可能であり、IPヘッダ圧縮が不可能であり、リソース・ホギング保護が不可能であり、AT RFパワー制御目標、BTS/eNode TXパワー制御目標、アドミッションおよびオーバーヘッド制御についての目標パケット損失レート、ならびにパケット・バッファ・サイズが固定値(たとえば、それぞれA2、B2,C2、およびD2)によって設定される。
さらに、送信されるべきデータ・パケットについて、アプリケーション層に関連付けられるプロトコルのタイプがFTPと識別され、トランスポート層に関連付けられるプロトコルのタイプがTCPと識別される場合、RLP再送が可能である。送信されるべきデータ・パケットについて、アプリケーション層に関連付けられるプロトコルのタイプがPOPと識別され、トランスポート層に関連付けられるプロトコルのタイプがTCPと識別される場合、RLP再送は可能である。本発明の例示的実施形態は、上位レベルの層の様々なタイプのプロトコルのすべての組合せ、およびそれらの対応するパラメータを包含する。対応するパラメータは、識別されたアプリケーションおよびトランスポート層用の上述のパラメータだけに限定されず、識別されたアプリケーションおよびトランスポート層用の他のパラメータも使用され得る。
さらに、アプリケーション識別子は、パラメータの特定のセットを決定するために使用され得る。図4を参照すると、この特定の例では、アプリケーション識別子がデータ・パケットに関連付けられるアプリケーションはSkype(商標)であることを示すと、Skype(商標)アプリケーションにとって最適なパラメータのセットが決定される。たとえば、RLP再送が不可能である。この例はRLP再送が不可能であることを示しているが、他のタイプのパラメータも設定され得る。さらに、例示的実施形態は、Skype(商標)タイプのアプリケーションに加えてすべてのタイプのアプリケーションも包含する。
再び図3を参照すると、ステップS335で、PSP210は、順方向リンク通信チャネル上でデータ・パケットを送信するための決定されたパラメータを設定する。逆に、ステップS340で、逆方向リンク上でデータ・パケットを送信するための決定されたパラメータがAT260にフィードバックされ、AT260がPSP210によって決定されたパラメータを設定する。
例示的実施形態は、RAN内でQoS処理を受けるよう指定されていないアプリケーションおよびプロトコルのためのRAN機能を最適化するためのメカニズムを提供する。
本発明の例示的実施形態を説明してきたが、同じことが多くの方法で変化し得ることが明らかであろう。このような変化は本発明の例示的実施形態の趣旨および範囲からの逸脱と見なされるべきではなく、当業者には明らかなように、このようなすべての修正形態は、本発明の範囲内に含まれることを意図する。