(57)【特許請求の範囲】
【請求項１】
仮想サービングゲートウェイの配置を決定するための方法であって、
入力情報のセットを取得することであって、前記入力情報は、
モバイルデバイスによるモバイル通信のための物理ネットワークに関する情報を提供するネットワーク情報と、
ＵＥが所与の期間にわたり移動すると予想される距離をサービス領域がカバーする１つまたは複数の物理ホストに前記仮想サービングゲートウェイを配置することによって、ＵＥのモビリティがどの程度適応されるかを示す少なくとも１つのモビリティ不感性基準を含む、前記仮想サービングゲートウェイを配置するための１または複数のパラメータを提供する構成情報とを含む、ことと、
前記ネットワーク情報および前記構成情報に従って前記物理ネットワーク内の１または複数の物理ホストにおける前記仮想サービングゲートウェイの配置を決定することであって、前記仮想サービングゲートウェイは、１または複数の物理ホストにわたり分散的に配置可能であり、前記仮想サービングゲートウェイの部分が各物理ホストによってホストされ、ゲートウェイトラフィックの対応する部分が各物理ホストによってサービスされる、ことと、
出力情報のセットを生成することであって、
前記１または複数の物理ホストにおける前記仮想サービングゲートウェイの配置を識別する情報と、
各物理ホストによってサービスされる前記ゲートウェイトラフィックの割合を示す、各物理ホストについてのそれぞれのホスティング割合とを含む、ことと
を備えることを特徴とする方法。
【請求項２】
前記仮想サービングゲートウェイは、ネットワークコーディング機能およびビデオトランスコーディング機能の少なくとも１つを実施するように構成される１または複数の物理ホストにおいて配置されることを特徴とする請求項１に記載の方法。
【請求項３】
多目的同時最適化プロセスは、前記１または複数の物理ホストにおける前記仮想サービングゲートウェイの配置を決定するために使用され、配置コスト最小化（ＰＣＭ）目的、ホスト選択最小化（ＨＳＭ）目的、配置非優先最小化（ＰＵＭ）目的を最適化することを特徴とする請求項１および２のいずれか１項に記載の方法。
【請求項４】
新しい仮想ネットワークトポロジの生成の要求を指示するトリガー信号を受信することと、前記トリガー信号の受信に応じて、前記取得すること、決定すること、および生成することを実行することとをさらに備えることを特徴とする請求項１ないし３のいずれか１項に記載の方法。
【請求項５】
前記トリガー信号は、ソフトウェア定義されたネットワーキングコントローラから受信され、前記トリガー信号は、前記入力情報への更新を備えることを特徴とする請求項４に記載の方法。
【請求項６】
出力情報の前記セットをソフトウェア定義されたネットワーキングコントローラに送信することをさらに備えることを特徴とする請求項１ないし５のいずれか１項に記載の方法。
【請求項７】
前記仮想サービングゲートウェイによって提供されるべき１または複数の機能を決定することと、
前記１または複数の物理ホストによって提供されるべき前記１または複数の機能を定義する出力情報の第２のセットを生成することと、
出力情報の前記第２のセットをソフトウェア定義されたプロトコルシステムに送信することとをさらに備えることを特徴とする請求項１ないし６のいずれか１項に記載の方法。
【請求項８】
出力情報の前記セットを使用して仮想ネットワークトポロジを生成することをさらに備えることを特徴とする請求項１ないし７のいずれか１項に記載の方法。
【請求項９】
仮想サービングゲートウェイを配置するためのシステムであって、前記システムに、
入力情報のセットを取得させ、前記入力情報は、
モバイルデバイスによるモバイル通信のための物理ネットワークに関する情報を提供するネットワーク情報と、
ＵＥが所与の期間にわたり移動すると予想される距離をサービス領域がカバーする１つまたは複数の物理ホストに前記仮想サービングゲートウェイを配置することによって、ＵＥのモビリティがどの程度適応されるかを示す少なくとも１つのモビリティ不感性基準を含む、前記仮想サービングゲートウェイを配置するための１または複数のパラメータを提供する構成情報とを含み、
前記ネットワーク情報および前記構成情報に従って前記物理ネットワーク内の１または複数の物理ホストにおける前記仮想サービングゲートウェイの配置を決定させ、前記仮想サービングゲートウェイは、１または複数の物理ホストにわたり分散的に配置可能であり、前記仮想サービングゲートウェイの部分が各物理ホストによってホストされ、ゲートウェイトラフィックの対応する部分が各物理ホストによってサービスされ、
出力情報のセットを生成させ、
前記１または複数の物理ホストにおける前記仮想サービングゲートウェイの配置を識別する情報と、
各物理ホストによってサービスされる前記ゲートウェイトラフィックの割合を示す、各物理ホストのそれぞれのホスティング割合とを含むように構成された処理デバイスを備えることを特徴とするシステム。
【請求項１０】
前記仮想サービングゲートウェイは、ネットワークコーディング機能およびビデオトランスコーディング機能の少なくとも１つを実施するように構成される１または複数の物理ホストにおいて配置されることを特徴とする請求項９に記載のシステム。
【請求項１１】
多目的同時最適化プロセスは、前記１または複数の物理ホストにおける前記仮想サービングゲートウェイの配置を決定するために使用され、配置コスト最小化（ＰＣＭ）目的、ホスト選択最小化（ＨＳＭ）目的、配置非優先最小化（ＰＵＭ）目的を最適化することを特徴とする請求項９および１０のいずれか１項に記載のシステム。
【請求項１２】
前記処理デバイスは、前記システムに、
新しい仮想ネットワークトポロジの生成の要求を指示するトリガー信号を受信させ、前記トリガー信号の受信に応じて、前記取得、決定、および生成を実行させるようにさらに構成されることを特徴とする請求項９ないし１１のいずれか１項に記載のシステム。
【請求項１３】
前記トリガー信号は、ソフトウェア定義されたネットワーキングコントローラから受信され、前記トリガー信号は、前記入力情報への更新を備えることを特徴とする請求項１２に記載のシステム。
【請求項１４】
前記処理デバイスは、前記システムに、出力情報の前記セットをソフトウェア定義されたネットワーキングコントローラに送信させるようにさらに構成されることを特徴とする請求項９ないし１３のいずれか１項に記載のシステム。
【請求項１５】
前記処理デバイスは、前記システムに、
前記仮想サービングゲートウェイによって提供されるべき１または複数の機能を決定させ、
前記１または複数の物理ホストによって提供されるべき前記１または複数の機能を定義する出力情報の第２のセットを生成させ、
出力情報の前記第２のセットをソフトウェア定義されたプロトコルシステムに送信させるようにさらに構成されることを特徴とする請求項９ないし１４のいずれか１項に記載のシステム。
【請求項１６】
前記処理デバイスは、前記システムに、出力情報の前記セットを使用して仮想ネットワークトポロジを生成させるようにさらに構成されることを特徴とする請求項９ないし１５のいずれか１項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、モバイルネットワークに関する。特に、本開示は、モビリティ管理のために仮想ネットワークにおいて仮想サービングゲートウェイを配置するためのシステムおよび方法に関する。
【背景技術】
【０００２】
関連出願の相互参照
本出願は、２０１４年１２月５日に出願しかつ「ＳＹＳＴＥＭＳ  ＡＮＤ  ＭＥＴＨＯＤＳ  ＦＯＲ  ＰＬＡＣＩＮＧ  ＶＩＲＴＵＡＬ  ＳＥＲＶＩＮＧ  ＧＡＴＥＷＡＹＳ  ＦＯＲ  ＭＯＢＩＬＩＴＹ  ＭＡＮＡＧＥＭＥＮＴ」と題する米国特許出願第１４／５６１８０５号明細書の優先権の利益を主張し、その内容が参照により全体として本明細書に組み込まれる。
【０００３】
ワイヤレスネットワークにおいて、ワイヤレスユーザ機器（ＵＥ）の地理的位置は、時間とともに変化することがある。時間の経過に伴ってＵＥにより移動される物理パスは、たとえばあるアクセスポイントから別のアクセスポイントへの、ＵＥによって使用されるネットワークリンクにおける変化に対応することがある。ＵＥにより移動されるパスはまた、たとえばＵＥがトンネルまたは建物に出入りする際の、リンク品質における変動に対応することもある。これは、ＵＥへのおよびからのデータが、動的であり潜在的に不安定なネットワーク経由の論理パス上で送信される必要があることを意味する。これは結果として、トラフィックエンジニアリングの複雑さをもたらす可能性がある。
【発明の概要】
【０００４】
一部の例において、本開示は、仮想サービングゲートウェイの配置を決定するための方法を提供する。方法は、入力情報のセットを取得することを含むことがある。入力情報は、モバイルデバイスによるモバイル通信のための物理ネットワークに関する情報を提供するネットワーク情報、および少なくとも１つのモビリティ不感性基準を含む、仮想サービングゲートウェイを配置するための１または複数のパラメータを提供する構成情報を含むことがある。方法はまた、ネットワーク情報および構成情報に従って物理ネットワーク内の１または複数の物理ホストにおける仮想サービングゲートウェイの配置を決定することを含むことがある。仮想サービングゲートウェイは、１または複数の物理ホストにわたり分散的に配置可能であることがある。１または複数の物理ホストにおける仮想サービングゲートウェイの配置を識別する情報、および各物理ホストについてのそれぞれのホスティング割合を含む出力情報のセットが生成されることがある。
【０００５】
一部の例において、本開示は、仮想サービングゲートウェイを配置するためのシステムを提供する。システムは、システムに入力情報のセットを取得させるように構成された処理デバイスを含むことがある。入力情報は、モバイルデバイスによるモバイル通信のための物理ネットワークに関する情報を提供するネットワーク情報、および少なくとも１つのモビリティ不感性基準を含む、仮想サービングゲートウェイを配置するための１または複数のパラメータを提供する構成情報を含むことがある。システムはまた、ネットワーク情報および構成情報に従って物理ネットワーク内の１または複数の物理ホストにおける仮想サービングゲートウェイの配置を決定させることもある。仮想サービングゲートウェイは、１または複数の物理ホストにわたり分散的に配置可能であることがある。１または複数の物理ホストにおける仮想サービングゲートウェイの配置を識別する情報、および各物理ホストのそれぞれのホスティング割合を含む出力情報のセットが生成されることがある。
【図面の簡単な説明】
【０００６】
ここで、例により、本出願の例示的な実施形態を示す添付の図面が参照される。
【図１】ネットワークについての例示の論理アーキテクチャの概略図である。
【図２】ソフトウェア定義されたネットワークコントローラと通信する例示のソフトウェア定義されたトポロジシステムの概略図である。
【図３】ソフトウェア定義されたトポロジシステムと通信する例示のソフトウェア定義されたネットワークコントローラの概略図である。
【図４】本開示を実施するために適切な例示のコンピューティングシステムの概略図である。
【図５】モビリティ管理のための例示の仮想ネットワークトポロジの概略図である。
【図６】モビリティ管理のための仮想サービングゲートウェイを配置するための例示の方法を示す流れ図である。
【図７】モビリティ感応性の例示の決定を示す図である。
【０００７】
類似する参照符号は、さまざまな図面において類似するコンポーネントを示すために使用されていることがある。
【発明を実施するための形態】
【０００８】
ソフトウェア定義されたネットワーキング（ＳＤＮ）は、インテリジェントなプログラマブルネットワークを作成するためのアーキテクチャフレームワークであり、ネットワークトラフィック管理およびネットワークトラフィック転送が、それぞれ制御プレーンとデータプレーンとに分離される。ＳＤＮにおいて、ネットワーク制御は集中化され、基本的なネットワークインフラストラクチャは、アプリケーションから抽象化される。
【０００９】
ソフトウェア定義されたトポロジ（ＳＤＴ）は、たとえば、本開示に従って形成されることがあり、ＳＤＴは、仮想ネットワーク（ＶＮ）を作成するために、ＳＤＮおよびソフトウェア定義されたプロトコル（ＳＤＰ）と共に使用されることがある。ネットワークトラフィックは、ＶＮ上の制御プレーンのコントローラにおいて管理されることがあり、コントローラがネットワークの物理ノードを直接管理することを必要としない。ＶＮは、ユーザ単位のネットワークであることがある、つまりＶＮは、特定のユーザ（たとえば、特定のユーザ機器（ＵＥ）または非モバイル端末）にサービスするために仮想化されたリソースの集合体であることがある。ＳＤＴは、顧客情報およびプロバイダ情報に基づいて形成されることがある。顧客は、（たとえば、ＵＥまたは端末を介して）１または複数のサービスのユーザを含むことがある。プロバイダは、サービスプロバイダ、ＶＮオペレータ、および／またはネットワーク上のサービスの他のプロバイダを含むことがある。
【００１０】
ＳＤＮ制御プレーンにおいて、１または複数のＳＤＮコントローラは、ネットワークリソースを管理して、ネットワークトラフィックをグローバルに制御することがある。簡略化のため、本開示は、単数のＳＤＮコントローラに言及するが、本開示の一部の例による２つ以上のＳＤＮコントローラがあってもよいことが理解されよう。ＳＤＮコントローラは、個々のネットワーク要素の状況情報、および全体的なトラフィック要件に基づいて、トラフィックエンジニアリング（ＴＥ）問題を解決することがある。一般に、ＴＥは、トラフィックフローごとに、個々のフローのサービス品質（ＱｏＳ）要件（たとえば、レート要求）に関して、およびリソース制約（たとえば、リンク容量）に関して、ルーティングパスおよびパスに沿ったリソース割り当て（トラフィック分割とも称される）を同時に決定することがあり、それによりネットワークユーティリティが最大化されて、十分なエクスペリエンス品質（ＱｏＥ）がユーザに提供される。ＳＤＮコントローラは、適切なプレーン間通信メカニズムを使用して、ネットワーク全体の動作を最適化するために、データプレーンハードウェアに制御命令を提供する。次いで、データプレーンにおいて、フローは、命令に従うそれらのルーティングパス間で分割される。
【００１１】
ネットワークおよびトラフィックのダイナミクスにより、ＴＥは、間隔をあけて実行されることがあり、その解決策は通常、ルーティングダイナミクスおよび分割ダイナミクスなどのダイナミクスを呈示する。フローパスがあらかじめ定められている場合、ＴＥ最適化は、フローパス間のリソース割り当てまで低減されることがある。この場合、ルーティングダイナミクスは、ＵＥのモビリティに起因することがあるが、分割ダイナミクスは、ネットワーク内のルーティングダイナミクスおよびトラフィック分散の結果生じることがある。
【００１２】
ＶＮ上のＵＥモビリティは、ＴＥへの課題を呈示することがある。移動性の高いＵＥの場合、データソースからＵＥへデータをルーティングするためのデータパスは、非常に経時変化しやすいことがあり、結果として不安定なＴＥとなることがある。ＵＥモビリティに感応性の高い不安定なＴＥは、リソースのかなりの部分を消費する（たとえば、膨大な制御オーバーヘッドを必要とする）および／またはシステムパフォーマンスの低下をもたらすことがある。
【００１３】
モビリティ管理への手法は、集中モビリティ管理（ＣＭＭ）および分散モビリティ管理（ＤＭＭ）を含む。ＣＭＭにおいて、モビリティ管理機能は通常、コアネットワークノード内に共同設置される。しかし、これは結果として、コアネットワークノードのオーバーロードおよび／またはトラフィックの不十分なルーティングをもたらすことがある。ＤＭＭにおいて、さまざまなネットワークノードは通常、さまざまなモビリティ機能を処理するためのゲートウェイとしてセットアップされ、ＣＭＭの問題の一部に対処する手助けとなることがある。しかし、依然として、データ転送および処理のために物理ネットワークノードにおいてゲートウェイを配置する方法を決定する必要がある。たとえば、異なるネットワークノードが、異なるキャッシュコンテンツおよび／または異なるデータ処理能力を有することがあり、それがネットワークノードを、ある程度ゲートウェイのホスティングに好ましいものにすることがある。さまざまな例において、本開示は、物理ホストのデータルーティングの可能性およびデータ処理能力を考慮に入れながら、物理ホストにおける仮想サービングゲートウェイの配置を可能にする。
【００１４】
本開示の理解を助けるため、まず、モバイルＵＥとの通信に使用されることがあるネットワークの例示の論理アーキテクチャ１００を示す図１が参照される。例示のアーキテクチャ１００は、ＳＤＴを使用して、ＳＤＮを実施するために使用されることがある。ＳＤＴは、後記においてさらに説明されるように、ＵＥへのおよびからのデータがルーティングされる仮想サービングゲートウェイを定義することによって、および仮想トポロジを提供することによって、トラフィック制御および／またはトラフィック処理を容易にするために、ＳＤＮと協働することがある。
【００１５】
一般に、ＳＤＴは、オペレータがオンデマンドおよびサービス固有データプレーンアーキテクチャ（ネットワークトポロジまたは論理トポロジとも称される）を定義することが可能とすることがあるソフトウェア定義されたコンテンツ配信のフレームワークを提供して、ネットワークリソースのさらに効率的な使用を可能にする手助け、ならびに／または、ユーザに対するエクスペリエンス品質（ＱｏＥ）および／もしくはサービス品質（ＱｏＳ）を確実にする手助けをすることがある。ＳＤＴは、アプリケーション、サービス、またはユーザ単位のＶＮごとに、オンデマンドおよびカスタマイズされたデータプレーントポロジを決定することがある。ＳＤＴは、論理データプレーンについての論理ネットワークノードの物理位置、およびデータプレーントポロジ内のノードのトポロジを定義することがある。ＳＤＴはまた、データプレーン論理トポロジ内の論理ノードのサービス固有またはユーザ固有データ処理機能を定義することもある。
【００１６】
一般に、論理ノードは、物理ネットワークノードにおいて実施されるソフトウェア定義されたエンティティ（論理ノードについての物理ホストとも称される）であることがあり、さまざまな機能を実行することがあり、ネットワーク内のさまざまな役割を果たすことがある。たとえば、論理ノードは、可能な役割の中で特に、サービス固有仮想サービングゲートウェイ（ｖ−ｓ−ＳＧＷ）、ユーザ固有仮想サービングゲートウェイ（ｖ−ｕ−ＳＧＷ）、またはコンテンツコンテナであることがある。
【００１７】
ＳＤＴは通常、ＱｏＥおよび／またはＱｏＳなどの要件に基づいて、アプリケーション、サービス、またはユーザ単位のＶＮごとについて、データプレーン論理トポロジを決定する。ＳＤＴはまた、パラメータの中で特に、サービスレベル論理トポロジ、サービス機能チェーン要件、サービストラフィック特性、顧客分布、モビリティ速度予測、および／またはトラフィック負荷予測に従ってデータプレーン論理トポロジを決定することがある。ＳＤＴは、後記においてさらに説明されるように、たとえば、トラフィック負荷の変化、ネットワークノード能力、および／または物理ネットワークの変化に適応できるようにするため、ＳＤＮコントローラからのフィードバックに適応可能であることがある。ＳＤＴは、ネットワークプロバイダ、ＶＮプロバイダ、または他のオペレータによって管理されることがある。
【００１８】
図１は、例示のネットワーク（たとえば、モバイルネットワーク）をデータプレーン１１０、制御プレーン１２０、および管理プレーン１３０に分離する例示のネットワークアーキテクチャ１００を示す。データプレーン１１０は、さまざまなネットワークノードおよびＵＥ間で（たとえば、ＵＥからアクセスポイントまで、アクセスポイントからルータまで、およびアクセスポイント／ルータからサーバまで）、ネットワークトラフィックをトランスポートすることがある。制御プレーン１２０は、ＴＥを実行することがあり、さまざまなネットワークノード間で制御信号をトランスポートすることがある。管理プレーン１３０は、ネットワークについての管理および運営機能を提供することがある。データプレーン１１０、制御プレーン１２０、および管理プレーン１３０は、各プレーンの機能を可能にするために、相互にインターフェイスをとることがある。
【００１９】
制御プレーン１２０は、１または複数のアプリケーション１４０が制御プレーン１２０にアクセスすることを可能にするアプリケーションプログラミングインターフェイス（ＡＰＩ）１２２を提供することがある。制御プレーン１２０は、ＳＤＴシステム２００およびＳＤＮコントローラ３００、およびＳＤＰシステム１２８などのさまざまな制御ブロックをホストして、制御プレーン１２０の機能を実施することがある。ＳＤＴシステム２００、ＳＤＮコントローラ３００、およびＳＤＰシステム１２８は、１または複数の共有または別個の処理システムにおいて実施されることがある。
【００２０】
管理プレーン１３０は、その機能を実施するために、さまざまな制御ブロック（たとえば、ソフトウェアモジュール）をホストすることがある。たとえば、管理プレーン１３０は、インフラストラクチャマネージャ１３２、データアナライザ１３４、顧客サービスマネージャ１３６、および／または接続マネージャ１３８を実施することがある。コンテンツサービス管理などの他の機能は、管理プレーン１３０によって提供されることがあり、これは無線アクセスネットワーク（ＲＡＮ）のコンテンツキャッシュを定義することがあり、キャッシュ対応ネットワークノードを構成することがあり、コンテンツ転送を管理することがある。
【００２１】
管理プレーン１３０は、その機能を実施するために、アーキテクチャ１００に含まれることがある１または複数のデータベースにアクセスすることがある。例示のデータベースは、プライバシーネットワークデータベース１５０、顧客サービス情報データベース１５２、顧客デバイス情報データベース１５４、インフラストラクチャデータベース１５６、およびインフラストラクチャ抽象化データベース１５８を含む。プライバシーネットワークデータベース１５０は、トポロジ情報、セキュリティ情報、ノード能力に関する情報、および／またはノード状態に関する情報を格納することがある。顧客サービス情報データベース１５２は、顧客デバイス（たとえば、ＵＥ）に関連する認証およびセキュリティ情報を格納することがある。顧客デバイス情報データベース１５４は、顧客デバイスの能力、位置、および／または状態に関連する情報を格納することがある。インフラストラクチャデータベース１５６は、ネットワークトポロジ、ノード能力、および／またはノード状態に関する情報を格納することがある。インフラストラクチャ抽象化データベース１５８は、ネットワーク内のさまざまなインフラストラクチャ抽象化に関する情報を格納することがある。この例において説明されるデータベースよりも数が多いかまたは少ないデータベースがあることがあり、これらの例示のデータベースの１または複数は、単一のデータベースとして結合されることがある。
【００２２】
図２は、ＶＮ上のモビリティ管理のために、仮想サービングゲートウェイを配置し、論理トポロジを生成するための例示のシステムを示す概略図である。システムは、ＳＤＴシステム２００であることがある。ＳＤＴシステム２００は一般に、ＶＮについての論理データプレーントポロジをカスタマイズすることに責任を負うことがある。本開示において、ＶＮの論理データプレーントポロジは一般に、ＶＮトポロジと称される。ＳＤＴシステム２００は、ＳＤＮコントローラ３００およびＳＤＰシステム１２８などの１または複数のネットワーク制御コンポーネントと通信することがある。ＳＤＴシステム２００は、たとえば本明細書において開示されるように、トラフィック制御および処理を容易にするために、ＳＤＮコントローラ３００と協働することがある。
【００２３】
ＳＤＴシステム２００は、仮想サービングゲートウェイの配置を決定してＶＮトポロジを生成するために使用される情報を格納することがある。示される例において、ＳＤＴシステム２００は、ネットワーク情報および構成情報を、それぞれのネットワーク情報データベース２０５および構成情報データベース２１０に格納する。この情報は、たとえば、図４に関して後記においてさらに説明されるように、ＳＤＴシステム２００のメモリに格納されることがある。ネットワーク情報データベース２０５は、後記においてさらに説明される、物理ネットワークに関する情報（たとえば、ＵＥ識別およびプロパティ、ＵＥトラフィック、ネットワークノードプロパティ、および／または仮想サービングゲートウェイ候補）を含むことがある。構成情報データベース２１０は、後記においてさらに説明されるように、コスト測定、モビリティ感応性要件、および対象の範囲などの、仮想サービングゲートウェイを配置するため、およびＶＮトポロジを生成するために使用されるパラメータを含むことがある。ネットワーク情報および構成情報は、１または複数の外部ソースから（たとえば、ＳＤＮコントローラ３００から、またはオペレータから）の入力として受信されることがある。一部の例において、ネットワーク情報および／または構成情報は、ＳＤＴシステム２００によって格納されないこともあるが、代わりに外部ソース（たとえば、１または複数の外部データベース）から受信または取り出されることがあり、使用後に廃棄されることがあり、その場合には、ネットワーク情報データベース２０５および／または構成情報データベース２１０は、ＳＤＴシステム２００から除かれることがある。一部の例において、ネットワーク情報データベース２０５および構成情報データベース２１０は、入力情報の単一データベースによって、または他のデータベースと置き換えられることがある。
【００２４】
ゲートウェイ配置モジュール２１５は、（たとえば、ネットワーク情報データベース２０５および構成情報データベース２１０から、またはＳＤＮコントローラ３００などの外部ソースから）ネットワーク情報および構成情報を入力として取得して、１または複数の仮想サービングゲートウェイを１または複数の物理ホストに配置することがある。ゲートウェイ配置モジュール２１５は、後記において説明される例においてなど、最適化プロセスを使用して仮想サービングゲートウェイの配置を決定することがある。「最適化」という用語が使用されるが、これは、特定の基準（たとえば、構成情報において指定されるような）を満たすために、仮想サービングゲートウェイが物理ホストにおいて配置されるプロセスを示すものであり、厳密に「最適」ではないことがあることを理解されたい。たとえば、トレードオフおよび／または推定が関与することがあり、一部の基準は、（たとえば、オペレータによる選択に基づいて）他の基準よりも優先されることがある。
【００２５】
ゲートウェイ配置モジュール２１５は、１または複数の物理ホストにおける仮想サービングゲートウェイの配置を定義する情報を出力することがあり、情報は、ＳＤＴシステム２００のメモリ内のゲートウェイ配置データベース２２０に格納されることがある。ゲートウェイ配置情報は、たとえば、仮想サービングゲートウェイについての物理ホストの選択および物理ホストごとのゲートウェイトラフィックの共有を含むことがある。
【００２６】
トポロジ生成モジュール２２５は、（たとえば、ネットワーク情報データベース２０５および構成情報データベース２１０から、またはＳＤＮコントローラ３００などの外部ソースから）ネットワーク情報および構成情報、ならびに（たとえば、ゲートウェイ配置モジュール２１５から、またはゲートウェイ配置データベース２２０から）仮想サービングゲートウェイの決定された配置を入力として取得して、ＶＮトポロジを生成することがある。トポロジ生成モジュール２２５は、適切な最適化プロセスを使用してＶＮトポロジを生成することがある。
【００２７】
トポロジ生成モジュール２２５は、生成されたＶＮトポロジに関する情報を出力することがあり、情報は、ＳＤＴシステム２００のメモリ内のＶＮトポロジデータベース２３０に格納されることがある。ＶＮトポロジ情報は、たとえば、（階層トポロジが使用される例における）ネットワーク階層および／または（メッシュトポロジの場合）同じレベルにおける論理ノード間のリンクを含むことがある。
【００２８】
ＳＤＴシステム２００は、ワイヤードまたはワイヤレス通信を通じて、ＶＮトポロジ情報およびゲートウェイ配置情報をＳＤＮコントローラ３００に提供することがある。
【００２９】
一部の例において、ゲートウェイ配置モジュール２１５が、ゲートウェイ配置情報をＳＤＴシステム２００内に格納することなく、トポロジ生成モジュール２２５およびＳＤＮコントローラ３００に出力を直接提供する場合のように、ゲートウェイ配置データベース２２０が除かれることがある。代わりに、ゲートウェイ配置情報は、使用後に廃棄されることがあるか、またはＳＤＴシステム２００の外部に（たとえば、ＳＤＮコントローラ３００内または別の外部データベース内に）格納されることがある。
【００３０】
一部の例において、トポロジ生成モジュール２２５が、ＶＮトポロジ情報をＳＤＴシステム２００内に格納することなく、ＳＤＮコントローラ３００に出力を直接提供する場合のように、ＶＮトポロジデータベース２３０が除かれることがある。代わりに、ＶＮトポロジ情報は、ＳＤＴシステム２００の外部に（たとえば、ＳＤＮコントローラ３００内または別の外部データベース内に）格納されることがある。
【００３１】
一部の例において、ＳＤＴシステム２００はまた、１または複数の仮想サービングゲートウェイによって提供されるべき１または複数の機能を決定することもある（たとえば、仮想サービングゲートウェイの物理ホストにおいてサービス制約がない場合）。ＳＤＴシステム２００は、固有の物理ホストにおける固有の仮想サービングゲートウェイについての機能を定義する出力情報をＳＤＰシステム１２８に提供することがある。次いで、ＳＤＰシステム１２８は、データプレーン１１０のハードウェアと対話して、指定された物理ホストにおける定義された機能をインストール／アンインストール、または別の方法で使用可能／使用不可にすることがある。これは、カスタマイズ可能またはアプリケーション定義の仮想サービングゲートウェイ機能を使用可能にすることがある。たとえば、アプリケーション定義された機能は、ネットワークコーディング機能（たとえば、ファウンテンコーディング機能）、およびビデオトラフィックの場合はビデオトランスコーディング機能を含むことがある。
【００３２】
ＳＤＴシステム２００は、制御プレーン１２０の１または複数のサーバによって物理的にホスティングされることがある。
【００３３】
図３は、例示のＳＤＮコントローラ３００の概略図である。ＳＤＮコントローラは一般的に、カスタマイズされたリソース割り当てに責任を負うことがある。ＳＤＮコントローラ３００は、トラフィック制御および処理を容易にするために、ＳＤＴシステム２００と協働することがある。たとえば、ＳＤＮコントローラ３００は、ＶＮトポロジを更新または変更する要求などのフィードバックをＳＤＴシステム２００に提供することがある。
【００３４】
ＳＤＮコントローラ３００は、（たとえば、物理ホストにおける仮想サービングゲートウェイの配置、および仮想サービングゲートウェイ間のリンクを定義する情報を含む）ＶＮトポロジを定義する情報を、ＳＤＴシステム２００から受信することがあり、トポロジ情報を、ＳＤＮコントローラ３００のメモリ内のトポロジデータベース３０５に格納することがある。ＶＮトポロジ情報はフロートランスレータ３１０に提供されることがあり、フロートランスレータ３１０は、ＶＮトポロジをＴＥのために個々のフローセグメントに変換することがある。たとえば、階層トポロジの複数レベルを経由するパスは、フロートランスレータ３１０によって、各レベルに対応する個々のフローセグメントに変換されることがある。フロートランスレータ３１０からのフローセグメントは、トラフィック管理のためにＴＥモジュール３１５に提供されることがある。ＴＥモジュール３１５は、さまざまな適切なＴＥ技法に従ってフローセグメントにトラフィック管理を実行することがある。ＳＤＮコントローラ３００は、ＱｏＥおよび／またはＱｏＳについてネットワークトラフィックを監視することがある品質モニター３２０を実施することがある。ＳＤＮコントローラ３００はまた、データプレーントポロジ内の重大な変化（たとえば、物理ノードの追加／削除、ネットワークノード間の物理接続の変更）、トラフィックフロー内の重大な変化、または他のそのようなネットワークイベントなどのネットワークイベントについてネットワークを監視することがあるネットワークモニター３２５を実施することがある。
【００３５】
ＳＤＮコントローラ３００は、ＳＤＴシステム２００にフィードバックを提供することがある。たとえば、ＳＤＮコントローラ３００は、ＴＥモジュール３１５、品質モニター３２０、および／またはネットワークモニター３２５を通じて、ＳＤＴシステム２００に、ＶＮトポロジを更新、変更、または別の方法での新しいＶＮトポロジを生成するよう要求することがある。たとえば、ＳＤＮコントローラ３００は、（たとえば、ネットワークモニター３２５によって検出されるような）物理ネットワーク内の重大な変化が検出される場合、（たとえば、ネットワークモニター３２５によって検出されるような）トラフィックフロー内の重大な変化が検出される場合、または（品質モニター３２０によって検出されるような）ＱｏＥおよび／もしくはＱｏＳが特定のしきい値を下回る場合に、新しいトポロジをＳＤＴシステム２００に要求することがある。
【００３６】
図４は、例示の処理システム４００を示す概略図であり、これは、例示のＳＤＴシステム２００、例示のＳＤＮコントローラ３００、および後記において説明される例示の方法など、本明細書において開示される方法およびシステムを実施するために使用されることがある。ＳＤＴシステム２００およびＳＤＮコントローラ３００は、共有または別個の処理システム４００上で実施されることがある。一部の例において、ＳＤＴシステム２００および／またはＳＤＮコントローラ３００は、並行して動作する複数の処理システムによって実施されることがある。処理システム４００は、たとえば、サーバであるか、または任意の適切なコンピューティングシステムであることがある。後記において説明される処理システムとは異なるコンポーネントを含む、本開示を実施するために適切な他の処理システムが使用されることがある。図４は各コンポーネントの単一のインスタンスを示すが、処理システム４００には各コンポーネントの複数のインスタンスがあることがある。
【００３７】
処理システム４００は、プロセッサ、マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、専用論理回路、またはその組み合わせなどの１または複数の処理デバイス４０５を含むことがある。処理システム４００はまた、１または複数の適切な入力デバイス４３５および／または出力デバイス４４０とのインターフェイスを可能にすることがある１または複数の入出力（Ｉ／Ｏ）インターフェイス４１０を含むこともある。処理システム４００は、ネットワーク（たとえば、イントラネット、インターネット、Ｐ２Ｐネットワーク、ＷＡＮおよび／またはＬＡＮ）とのワイヤードまたはワイヤレス通信のための１または複数のネットワークインターフェイス４１５を含むことがある。ネットワークインターフェイス４１５は、ネットワーク内および／またはネットワーク間の通信のためのワイヤードリンク（たとえば、イーサネットケーブル）および／またはワイヤレスリンクを含むことがある。ネットワークインターフェイス４１５はたとえば、１または複数の送信機または送信アンテナ、および１または複数の受信機または受信アンテナを介してワイヤレス通信を提供することがある。処理システム４００はまた、ソリッドステートドライブ、ハードディスクドライブ、磁気ディスクドライブ、および／または光ディスクドライブなどの大容量ストレージユニットを含むことがある１または複数のストレージユニット４２０を含むこともある。
【００３８】
処理システム４００は、揮発性または不揮発性メモリ（たとえば、フラッシュメモリ、ランダムアクセスメモリ（ＲＡＭ）、および／または読取り専用メモリ（ＲＯＭ））を含むことがある１または複数のメモリ４２５を含むことがある。非一時的メモリ４２５は、ＳＤＴシステム２００および／またはＳＤＮコントローラ３００の機能を実施するために、処理デバイス４０５によって実行される命令を格納することがある。処理システム４００がＳＤＴシステム２００もしくはＳＤＮコントローラ３００、または両方を実施するかに応じて、メモリ４２５は、ＳＤＴシステム２００もしくはＳＤＮコントローラ３００、または両方の機能を、適宜実施するためにデータおよびモジュールを有形に格納していることがある。たとえば、メモリ４２５は、図２の例示のＳＤＴシステム２００に関して上記で説明されるように、ネットワーク情報データベース２０５、構成情報データベース２１０、ゲートウェイ配置データベース２２０、および／またはＶＮトポロジデータベース２３０、ならびにゲートウェイ配置モジュール２１５および／またはトポロジ生成モジュールの２２５などのモジュールを含むことがある。メモリ４２５は、図３の例示のＳＤＮコントローラ３００に関して上記で説明されるように、追加または代替的に、トポロジデータベース３０５、ならびにフロートランスレータ３１０、ＴＥモジュール３１５、品質モニター３２０および／またはネットワークモニター３２５などのモジュールを含むことがある。メモリ４２５は、オペレーティングシステムおよび他のアプリケーション／機能を実施するなどのために、他のソフトウェア命令を含むことがある。一部の例において、１または複数のデータセットおよび／またはモジュールは、外部メモリ（たとえば、処理システム４００とのワイヤードまたはワイヤレス通信における外部ドライブ）によって提供されることがあるか、または一時的もしくは非一時的コンピュータ可読媒体によって提供されることがある。非一時的コンピュータ可読媒体の例は、ＲＡＭ、ＲＯＭ、消去可能プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）、フラッシュメモリ、ＣＤＲＯＭ、または他のポータブルメモリストレージを含む。
【００３９】
処理デバイス４０５、Ｉ／Ｏインターフェイス４１０、ネットワークインターフェイス４１５、ストレージユニット４２０、および／またはメモリ４２５を含む処理システム４００のコンポーネント間の通信を提供するバス４３０があることがある。バス４３０は、たとえばメモリバス、周辺バス、またはビデオバスを含む任意の適切なバスアーキテクチャであることがある。
【００４０】
図４において、入力デバイス４３５（たとえば、キーボード、マウス、マイクロフォン、タッチスクリーン、および／またはキーパッド）および出力デバイス４４０（たとえば、ディスプレイ、スピーカおよび／またはプリンタ）は、処理システム４００の外部として示されている。他の例において、入力デバイス４３５および／または出力デバイス４４０の１または複数は、処理システム４００のコンポーネントとして含まれることがある。
【００４１】
図５は、ネットワークアーキテクチャ１００を使用して実施されることがある、モビリティ管理に適切な例示のＶＮトポロジの概略図である。例において、ＶＮトポロジ５００は、特定のＵＥ５１０ａのユーザ固有トポロジであり、１または複数の仮想サービングゲートウェイ５２０、５２５、および１または複数のデータソース５３０（たとえば、ネットワークゲートウェイ）を含む。通信は、ワイヤード通信および／またはワイヤレス通信（たとえば、ソース５３０から仮想サービングゲートウェイ５２０、５２５、１つの仮想サービングゲートウェイ５２５から別の仮想サービングゲートウェイ５２０、および／または仮想サービングゲートウェイ５２０からＵＥ５１０ａ）を含むことがある。ワイヤレス通信は、任意の適切なネットワーク（たとえば、イントラネット、インターネット、ピアツーピア（Ｐ２Ｐ）ネットワーク、ワイドエリアネットワーク（ＷＡＮ）、および／またはローカルエリアネットワーク（ＬＡＮ））上で行われることがあり、ブルートゥース通信、近距離無線通信、セルラー通信、および／または無線周波数（ＲＦ）通信などの近距離通信を含むことがある。
【００４２】
ＵＥ５１０ａは、任意の適切なユーザデバイスであることがある。本開示において、ＵＥ５１０ａは、ハンドヘルド電話、セルラー電話、ラップトップコンピュータ、スマートフォン、または任意の他の適切なポータブルコンピューティングデバイスなどの任意のモバイル通信デバイスであることがある。ユーザは、ＶＮトポロジ５００を介して１または複数のサービスおよび／またはコンテンツにアクセスするためにＵＥ５１０ａを使用することがあり、ＶＮトポロジ５００を介する双方向通信のためにＵＥ５１０ａを使用することがある。
【００４３】
ＶＮトポロジ５００において、ＵＥ５１０ａは、論理パスにより仮想サービングゲートウェイ５２０に関連付けられている。ＵＥ５１０ａは単一の仮想サービングゲートウェイ５２０に関連付けられているものとして示されるが、ＵＥ５１０ａは、たとえば異なる仮想サービングゲートウェイ５２０が異なるサービスをＵＥ５１０ａに提供する場合のように、２つ以上の仮想サービングゲートウェイ５２０に関連付けられることもある。ＶＮトポロジ５００は、ＵＥ５１０ａと仮想サービングゲートウェイ５２０との間で直接に論理パスを定義するが、この直接論理パスは、１または複数のアクセスポイントおよび／またはルータ（図示せず）を介するデータ送信により実施されることがある。論理パスは双方向（すなわち、アップリンクおよびダウンリンクトラフィックの両方にサービスする）であると見なされることがあるが、アップリンクデータの送信のための物理的実施は、ダウンリンクデータの送信のための物理的実施とは異なることがある。仮想サービングゲートウェイ５２０は、１または複数の物理ネットワークノード（たとえば、サーバ）によって物理的にホスティングされることがあり、ＵＥ５１０ａが移動するのに応じて異なるホストに移転することがある。ＵＥ５１０ａの位置は、任意の適切なモビリティ管理技法により追跡されることがある。
【００４４】
仮想サービングゲートウェイ５２０、５２５は、ＶＮトポロジ５００内の論理ネットワークノードである。ユーザ単位のＶＮにおいて、仮想サービングゲートウェイ５２０、５２５は通常、ｖ−ｕ−ＳＧＷであり、これはとりわけ、データ転送、ネットワークアクセス保護の提供、およびプライバイシー保護の提供のためのアンカーポイントとしての役割などのトラフィック処理機能を提供することがある。これらの機能は、たとえば、サービス顧客および／またはネットワークオペレータによって定義されることがある。仮想サービングゲートウェイ５２０、５２５は、サーバのような物理ホストにおいて具現されることがあり、２つ以上の仮想サービングゲートウェイ５２０、５２５は、同じ物理ホストにおいて具現されることがある。一部の例において、仮想サービングゲートウェイ５２０、５２５は、２つ以上の物理ホストにおいて具現されることがある。
【００４５】
仮想サービングゲートウェイ５２０、５２５が２つ以上の物理ホストにわたり分散される場合、これは（仮想サービングゲートウェイ５２０、５２５が単一の物理ホストによってホスティングされる場合の一体的なホスティングに対して）仮想サービングゲートウェイ５２０、５２５が各物理ホストによって部分的にホストされていると称されることがある。２つ以上の物理ホストによってホストされる仮想サービングゲートウェイ５２０、５２５は、ＶＮトポロジ５００内で単一の仮想ノードとして表されることがある。２つ以上のホストによってホスティングされる単一の仮想サービングゲートウェイ５２０、５２５の場合、ＶＮトポロジ５００は、各物理ホストによって転送されるゲートウェイトラフィックの割合を指定することがある。
【００４６】
さまざまなユーザ固有ＶＮトポロジは、さまざまな仮想サービングゲートウェイと共に、さまざまなＵＥに対して定義されることがある。さまざまなユーザ固有ＶＮトポロジの仮想サービングゲートウェイは、物理ネットワークにおいて共通の物理ホストを共有することがある。ＶＮトポロジ５００はまた、サービス単位で定義されることもあり、その場合、同一のＵＥ５１０ａに提供される異なるサービスについて異なるＶＮトポロジが定義されることがある。あるいは、ＶＮトポロジ５００は、ＵＥ５１０ａに提供されるすべてのサービスについて定義されることがあり、その場合、ＵＥ５１０ａは、異なるサービスを提供するために異なる仮想サービングゲートウェイ５２０（図５には１つだけが示される）に関連付けられることがある。
【００４７】
一般に、物理ホスト（たとえば、サーバ）は、２つ以上のＶＮトポロジ（破線で示される）において１または複数のＵＥ５１０にサービスする１または複数の仮想サービングゲートウェイをホストすることができる。物理ホストは、さまざまな仮想サービングゲートウェイのさまざまな部分をホストすることがある。
【００４８】
ＶＮトポロジ５００内のトラフィックは、２フェーズの手法、つまりソースからゲートウェイへのフェーズおよびゲートウェイからＵＥへのフェーズを使用して制御されることがある。ソースからゲートウェイへのフェーズは、仮想サービングゲートウェイ５２０がソース５３０からＵＥ５１０ａに送信されるトラフィックについての固定の宛先としての役割を果たすので、安定していると見なされることがある。したがって、データは、ソース５３０から仮想サービングゲートウェイ５２０への安定したデータパスに沿って（および場合によっては、後記においてさらに説明されるように、１または複数の他の仮想サービングゲートウェイ５２５を介して）送信されることがある。ゲートウェイからＵＥへのフェーズは、仮想サービングゲートウェイ５２０からＵＥ５１０ａへのルーティングパスがＵＥ５１０ａの移動に応じて変化することがあるので、動的であると見なされることがある。データはしたがって、仮想サービングゲートウェイ５２０からモバイルＵＥ５１０ａへの動的データパスに沿って送信されることがある。動的パスは、ＵＥ５１０ａに地理的にローカルであることがあり、ＵＥ５１０ａの移動に従って変化することがある。安定パスは、ＵＥ５１０ａから地理的に遠く離れていることがあり、ＵＥ５１０ａのモビリティに不感応であることがある。一般に、ＴＥは、トラフィックの各フェーズで別個に実行されることがあり、トラフィックの１つのフェーズのみ、または両方のフェーズで実行されることがある。たとえば、通常のＴＥは、ソースからゲートウェイへのフェーズで実行されることがあるが、ファウンテンコーディングによるＴＥは、ゲートウェイからＵＥへのフェーズで実行されることがある。
【００４９】
図５は、ダウンリンクトラフィックを表すが、同一または類似するＶＮトポロジ５００がアップリンクトラフィックに使用されることがあり、データソース５３０は、代替的または付加的にデータシンクであることがある。アップリンクトラフィックは同様に、２フェーズ、つまりＵＥからゲートウェイへのフェーズ（動的データパスによる）とゲートウェイからシンクへのフェーズ（安定データパスによる）を伴うことがあり、ＴＥは同様に、トラフィックの両方のフェーズでまたは一方のフェーズのみで実行されることがある。
【００５０】
仮想サービングゲートウェイ５２０は、特定の地理的領域内でサービス機能および／またはコンテンツをＵＥ５１０ａに提供することができる物理ホストにおいて配置されることがある。示される例において、仮想サービングゲートウェイ５２０は、示されているように円形の領域ではないことがある地理的領域Ａにサービスする物理ホストにおいて配置される。
【００５１】
この例において、仮想サービングゲートウェイ５２０は、ＵＥのモビリティを考慮して物理ホストにおいて配置される。図５において、ＵＥ５１０ａは、初期時間ｔ１において第１の地理的位置Ｌ１にある。その後、ＵＥ５１０ａは、時間ｔ２において第２の地理的位置Ｌ２に移動している。仮想サービングゲートウェイ５２０の配置は、ＵＥ５１０ａが所与の期間にわたり移動すると予想される距離をサービス領域がカバーする物理ホストに仮想サービングゲートウェイ５２０を配置することによって、ＵＥ５１０ａのモビリティをある程度まで適応させる（仮想サービングゲートウェイ５２０のモビリティ不感性と称され、後記においてさらに定義される）ように決定されることがある。したがって、物理データパスは変化していることがあるが（たとえば、データ通信はアクセスポイントおよび／またはルータの異なるセットを通じてルーティングされることがある）、ＶＮトポロジ５００内のＵＥ５１０ａと仮想サービングゲートウェイ５２０との間の論理パスが不変であるように、ＵＥ５１０ａは、両方の位置Ｌ１およびＬ２において同じ物理ホストで仮想サービングゲートウェイ５２０によって引き続きサービスされている。このようにして、ＵＥ５１０ａのモビリティは、制御プレーン１２０から「隠蔽される」ことがある。
【００５２】
ＶＮトポロジ５００は、ゲートウェイ間のリンクを含むことがある。たとえば、ＶＮトポロジ５００は、下位レベル仮想サービングゲートウェイ５２０が上位レベルの仮想サービングゲートウェイ５２５とのリンクを有する階層リンクを含むことがある。この配列は、たとえば、サービス機能チェーンを使用可能にすることがある。メッシュトポロジなどの他のトポロジ配列は、可能であることがある。
【００５３】
各仮想サービングゲートウェイ５２０、５２５は（たとえば、仮想サービングゲートウェイ５２０、５２５をホストするそれぞれのサーバのメモリ内で実施される）それぞれのコンテンツキャッシュ５２２ａ、５２２ｂ、５２７のコンテンツにアクセスできることがある。示される例において、仮想サービングゲートウェイ５２０は、２つの物理ホスト（たとえば、２つのサーバ）において具現され、２つのコンテンツキャッシュ（５２２ａ、５２２ｂにアクセスする（たとえば、各コンテンツキャッシュ５２２ａ、５２２ｂは異なる物理ホストのメモリに格納される）。コンテンツキャッシュ５２２ａ、５２２ｂは、同一、異なる、または重複するコンテンツを格納することがある。コンテンツキャッシュ５２２ａ、５２２ｂは、同一のＵＥ５１０ａまたは別のＵＥ５１０に以前提供されたコンテンツを格納することがある。異なるユーザ単位のＶＮ内の異なるＵＥ５１０ａ、５１０が、コンテンツキャッシュ５２２ａ、５２２ｂ内のコンテンツを共有できるようにすることで、本開示は、ネットワークリソースのさらなる効率的な使用、および／またはネットワークトラフィックの低減を可能にすることがある。
【００５４】
一般に、ＶＮトポロジ５００は、より効率的およびより効果的な共有ネットワークリソースの使用をめざして、定義済みのモビリティ不感性パラメータを満たすように設計されることがある。ゲートウェイホスト候補となるのに適切な物理ネットワークノードのセットを所与として、課題は、いかにして候補の最善の選択を行い、仮想サービングゲートウェイ５２０、５２５をホスト候補に配置するかであることがある。
【００５５】
たとえば、所与のＵＥ５１０ａについて、ソース５３０からのより短いパスを有するがＵＥ５１０ａからのより長いパスを有する物理ホストにおける仮想サービングゲートウェイ５２０の配置は、ＵＥモビリティに感応性がより低くなることがあるが、（たとえば、ファウンテンコーディングの使用による）トラフィック上昇のために、ネットワークリソースのあまり効率的ではない使用をまねくことがある。一方、ＵＥ５１０ａへのより短いパスを有するが、ソース５３０からのより長いパスを有する物理ホストにおける仮想サービングゲートウェイ５２０の配置は、ＵＥモビリティに感応性がより高くなることがあり、仮想サービングゲートウェイ５２０の別のホストへのさらに頻繁な再配置、不安定なＴＥ決定、および制御オーバーヘッドの増大を必要とすることがある。一般に、運用コストを制御するために、仮想サービングゲートウェイ５２０、５２５のホストの数を減らすことが、より効率的であることがある。一部の例において、ネットワーク内コンテンツキャッシングが物理ホストにおいて使用可能である場合、コンテンツ共有の可能性を高めるために、物理ホストが多数のＵＥに対して多数の仮想サービングゲートウェイをホスティングすることがさらに効率的であることもある。
【００５６】
一部の例において、本開示は、仮想サービングゲートウェイにおいてネットワークコーディングの使用を可能にして、ネットワークの効率性を高める手助けをすることがある。ネットワークコーディングにおいて、１または複数のフローのデータパケットは、結合されて、他のネットワークノードに転送されることが可能である。ネットワークコーディングの例は、ファウンテンコード（無レートコードとしても知られている）の使用であり、ここで１つのフローのデータパケットは結合されて、次いでＵＥに送信される多数のコード化データパケットのセットを生成する。ＵＥは、コード化データパケットのサブセットから元のデータを回復することがある。これは、異なるＵＥについてのデータチャネルが異なるエラー確率を有する状況において有用であることがあり（たとえば、ブロードキャストアプリケーションにおいて）、この場合、各ＵＥが失われたデータパケットの要求を送信することは効率的ではないことがある。コード化データパケットは、データソースにおいて生成されることがあるが、これは膨大量の冗長データパケットが送信されるという結果をまねくことがある。本開示の一部の例において、コード化データパケットは、代わりに、仮想サービングゲートウェイにおいて生成されることがあり、（仮想サービングゲートウェイがデータソースよりもＵＥに近いので）これはトラフィック冗長の低減および／または送信遅延の低減に役立つことがある。一部の例において、ネットワークコーディングを実施するネットワークノードの能力は、仮想サービングゲートウェイについての物理ホストとしての役割を果たすための物理ネットワークノードの適切性を決定する場合に考慮に入れられることがある。
【００５７】
図６は、モビリティ管理のための仮想サービングゲートウェイを配置する例示の方法の流れ図である。例示の方法６００は、１または複数の適切な処理システム４００を使用して、ＳＤＴシステム２００によって実施されることがある。例示の方法６００は、所与のＵＥに対する仮想サービングゲートウェイの配置について後記において説明されるが、方法６００が、同時にさまざまなＵＥに対して仮想サービングゲートウェイを配置するために実施されることがあることを理解されたい。例示の方法６００は、サービス単位のＶＮ、および複数サービスを提供するＶＮに対して仮想サービングゲートウェイを配置するために使用されることがある。
【００５８】
６０５において、仮想サービングゲートウェイの新しい配置が必要とされることを指示するトリガー信号が受信される。トリガーは、たとえば、タイムアウトイベント（たとえば、ＳＤＴシステム２００が、数分ごとになど、設定された時間にゲートウェイの配置の更新をトリガーするようにタイマーを実施する）であることがある、および／またはＳＤＮコントローラ３００からＳＤＴシステム２００に送信される信号であることがある。たとえば、ＳＤＮコントローラ３００は、新しいＶＮトポロジおよび新しいゲートウェイ配置を要求する信号をＳＤＴシステム２００に送信することがある。すなわち、
【００５９】
ＱｏＳおよび／もしくはＱｏＥがあらかじめ定められた品質しきい値を下回る場合、
【００６０】
ネットワークに重大な変化がある場合（たとえば、特定のしきい値を超えるトラフィックの変化、コンテンツアクセス統計の変化、ゲートウェイ候補の追加／削除、ゲートウェイホスト能力の変化、物理リンクの追加／削除および／もしくは物理リンクの能力の増加／減少を含むネットワークノード間の物理接続の変化）、
【００６１】
ゲートウェイホストの過負荷の場合（たとえば、新しいＵＥの到着、特定のしきい値を超えて増加するゲートウェイトラフィック、特定のしきい値を超えるリソース使用、ゲートウェイホスト能力の変化による）、ならびに／または
【００６２】
ネットワークパフォーマンス低下の場合（たとえば、所与のネットワークノードにおけるトラフィック輻輳）。
【００６３】
トリガー信号がＳＤＮコントローラ３００から送出される場合、トリガー信号は、トラフィックエンジニアリングモジュール３１５、品質モニター３２０、および／またはネットワークモニター３２５によって検出された条件によって生成されるか、またはその条件に応じて生成されることがある。
【００６４】
６１０において、入力情報が取得される。ＳＤＴシステム２００は、たとえば、ネットワーク情報および構成情報を含む入力情報のセットに基づいて仮想サービングゲートウェイの配置を決定することがある。
【００６５】
ネットワーク情報は、特に、次の事項を含むことがある。
【００６６】
位置、速度／速力、加速、および／もしくはデバイスカテゴリ（たとえば、サポートされる最大トラフィックレート）などのＵＥプロパティ情報、
【００６７】
データレート（たとえば、ダウンリンク／アップリンク通信、ピークレート、平均レート、レート変動）、トラフィックソース（たとえば、インターネットＷｅｂアドレス）、トラフィックコンテンツ（たとえば、コンテンツ属性もしくはコンテンツラベルに基づいてハッシュコードを使用して識別される）、および／もしくはコンテンツアクセス（たとえば、頻度および量）などのＵＥ統計情報（空間および／もしくは時間統計を含むことがある）、
【００６８】
物理ノードの識別、ノード属性（たとえば、位置、使用可能／最大ストレージスペース、使用可能機能）、物理リンクの識別、リンク属性（たとえば、使用可能／最大容量、バッファサイズ）、ネットワークへのトラフィックソースの物理接続の識別、および／もしくは接続属性（たとえば、スループット、遅延）などの物理ネットワークトポロジ情報（統計的および／もしくは瞬間的情報を含むことがある）、ならびに／または
【００６９】
データプレーンハードウェアのペア間の接続の識別および関連する属性（たとえば、統計スループット、運用コスト、遅延）、ゲートウェイホスト候補の識別、および／もしくはゲートウェイホスト候補属性（たとえば、上位／下位トラフィック負荷境界、最大／最小ＵＥカウント制限、トラフィック処理機能、トラフィックレート低下／上昇因子、キャッシュコンテンツのコンテンツ索引付け）などの制御プレーン情報。
【００７０】
構成情報は、特に、次の事項を含むことがある。
【００７１】
望ましいモビリティ不感性、
【００７２】
統計的コスト（たとえば、コストとしての遅延、コストとしての遅延ジッター、コストとしてのスループット）、および他のコスト測定（たとえば、ホップカウント、物理的距離、運用コスト）などの、ゲートウェイからホストへの関連コスト測定の定義、
【００７３】
ネットワーク範囲に関する情報（たとえば、関心対象の地理的領域、関心対象のサービス）、
【００７４】
顧客、サービスプロバイダ、および／もしくはＶＮプロバイダによってサービス要件の一部として指定されることがある、顧客／サービス情報（たとえば、顧客／サービス識別子、サービス機能チェーニング要件のようなサービス要件）、ならびに／または、
【００７５】
コンテンツキャッシングおよび／もしくはコンテンツ共有の考慮のための重み係数の定義。
【００７６】
本開示は、一般に、ゲートウェイの配置を決定するため、およびＶＮトポロジを生成するために使用される入力情報を示すために、ネットワーク情報および構成情報という用語を使用することがある。しかし、これらは厳密な分類別定義ではなく、他のタイプの入力情報が含まれることがあることを理解されたい。たとえば、入力情報の一部はまた、顧客情報またはサービス情報と称されることもある。
【００７７】
この入力情報は、ＳＤＴシステム２００の内部のデータベース（たとえば、ネットワーク情報データベース２０５および／または構成情報データベース２１０）、ＳＤＴシステム２００の外部のデータベース、ＳＤＮコントローラ３００、および／またはオペレータから取得されることがある。トリガー信号がＳＤＮコントローラ３００から受信されるような一部の例において、入力情報の少なくとも一部は、６０５においてトリガー信号と共に含まれることがある。たとえば、ＳＤＮコントローラ３００は、新しい構成情報（たとえば、モビリティ不感性を減少／増加、および／またはコンテンツ共有の考慮を増加／減少）のような更新済み入力情報をＳＤＴシステム２００に送信することがあり、この更新はトリガー信号としての役割を果たすことがある。
【００７８】
６１５において、１または複数の物理ホストにおける仮想サービングゲートウェイの配置が決定される。後記において説明される例示のプロセスなどの最適化プロセスは、物理ホストにおける仮想サービングゲートウェイの配置を決定するために使用されることがある。
【００７９】
ゲートウェイホスト候補のセットは、仮想サービングゲートウェイを配置することが考慮されることがある。ゲートウェイホスト候補は、仮想サービングゲートウェイをホスティングするために物理ネットワークで使用可能な任意の物理ネットワークノード（たとえば、サーバ）であることがある。すべてのネットワークノードが、仮想サービングゲートウェイのホスティングに適しているわけではないことがある（たとえば、十分なメモリまたはトラフィック処理リソースを有していない）。極端な場合には、ネットワーク内のすべてのネットワークノードが候補であることがある。他方の極端な場合には、ネットワーク内に１つしかホスト候補がないこともある。ゲートウェイホスト候補およびそれらのプロパティ（たとえば、現在のリソース使用を含む）は、６１０において取得されるネットワーク情報で提供されることがある。
【００８０】
物理ホストにおける仮想サービングゲートウェイの配置は、（たとえば、ネットワーク情報で定義される）仮想サービングゲートウェイがＵＥに提供すべき機能および／またはリソースの考慮、および構成情報で定義される任意の制約（たとえば、モビリティ不感性）に基づいて実行されることがある。たとえば、ネットワークコーディング機能が１または複数の物理ホストにおいて使用可能である場合、仮想サービングゲートウェイは、ネットワークコーディングおよび／またはビデオトランスコーディング機能を有する物理ホストにおいて優先的に配置されることがある。
【００８１】
物理ホストにおいて仮想サービングゲートウェイを配置するステップは、６２０において仮想サービングゲートウェイの配置を最適化するステップを含むことがある。仮想サービングゲートウェイの配置の最適化は、コンテンツ共有の可能性について配置を最適化するステップを含むことがある。これは、入力情報が、ホスト候補においてキャッシュされるコンテンツに関する情報、およびＵＥによるコンテンツアクセスに関する情報を含む場合に、実施されることがある。コンテンツ共有の可能性についての最適化は、運用コストの最小化、および／またはネットワークリソース使用の最小化のような他の目的の最適化と同時に実施されることがある。
【００８２】
仮想サービングゲートウェイは、２つ以上の物理ホストにわたり分散的に配置されることがある。そのような状況において、各物理ホストは、仮想サービングゲートウェイの部分をホストすることがあり、ゲートウェイトラフィックの対応する部分にサービスすることがある。たとえば、物理ホストＡおよび物理ホストＢによって部分的にホストされている仮想サービングゲートウェイを想定し、ホストＡが仮想サービングゲートウェイの７０％をホストし、ホストＢが３０％をホストするものとする。ホストＡは、相応してゲートウェイトラフィックの７０％にサービスすることがあり、ホストＢは、相応してゲートウェイトラフィックの３０％にサービスすることがある。仮想サービングゲートウェイが単一の物理ホストによってホストされる場合、物理ホストが、仮想サービングゲートウェイの１００％をホストし、ゲートウェイトラフィックの１００％にサービスしていると考えられることがある。
【００８３】
仮想サービングゲートウェイによって提供される機能を定義する自由がある例において、方法６００は、ネットワーク情報に示されているサービス要件に従ってなど、１または複数の物理ホストにおいて１または複数の仮想サービングゲートウェイにより提供されるべき１または複数の機能（たとえば、ファウンテンコーディングおよび／またはビデオトランスコーディング）を決定するステップを含むことがある。
【００８４】
６２５において、１または複数の物理ホストにおける仮想サービングゲートウェイの配置を定義する出力情報のセットが生成される。仮想サービングゲートウェイの配置を定義する出力情報のセットは、たとえば、ＵＥ識別子を、ゲートウェイホスト識別子、ホスティング割合、およびサービス識別子に関連付ける情報を含むことがある。仮想サービングゲートウェイがサービス単位のＶＮに対して配置されている場合（すなわち、１つのサービスのみが提供される）、サービス識別子は出力情報から除かれることがある。
【００８５】
一部の例において、方法６００がまた、物理ホストにおける仮想サービングゲートウェイによって提供される機能も定義する場合、物理ホストにおいて提供されるべき機能を定義する情報もまた出力されることがある。たとえば、この情報は、６２５における出力情報のセットと共に、または出力情報の第２のセットに含まれることがある。この情報は、外部システム、たとえばＳＤＰシステム１２８に送信されることがある。
【００８６】
一部の状況において、１または複数のゲートウェイホスト候補は、仮想サービングゲートウェイをホストしないことがあり、その場合、それらのゲートウェイホスト候補は、ＶＮトポロジで使用されない。
【００８７】
６３０において、出力情報は、ＶＮトポロジの生成のため、およびＴＥのために送信されることがある。たとえば、出力情報は、ＳＤＴシステム２００のトポロジ生成モジュール２２５に送信されることがあり、またＳＤＮコントローラ３００に送信されることもある。
【００８８】
一部の例において、出力情報は、ＴＥが実施されるフローセグメントを生成するために、ＳＤＮコントローラ３００のフロートランスレータ３１０によって使用されることがある。仮想サービングゲートウェイが２つ以上の物理ホストにわたり部分的にホスティングされる場合、その仮想サービングゲートウェイのトラフィックフローは、各ホストによる仮想サービングゲートウェイの部分的ホスティングに対応する部分的フローセグメントに変換されることがある。この場合、高レベルフロー分割は、ＴＥを実行する前に行われることがあり、さらに各部分的フローの微細化フロー分割をもたらすことがある。
【００８９】
例示の方法６００は、ＳＤＮコントローラ３００によるＴＥと共にＳＤＴシステム２００によって実行され、ＳＤＴシステム２００とＳＤＮコントローラ３００との間の閉ループフィードバック制御を実施することがある。したがって、ＶＮトポロジは、ネットワークトラフィックおよび／または物理ネットワークトポロジの変化に応答的および適応的であることがある。仮想サービングゲートウェイの配置は、ＵＥモビリティを考慮して実行されることがあり、短期的な効率性であっても（たとえば、同一バス内で移動しているＵＥ間のコンテンツ共有）可能にするように最適化されることがある。
【００９０】
例示の最適化プロセス
ここで、物理ホストにおける仮想サービングゲートウェイの配置を決定するために使用されることがある例示の最適化プロセスが説明される。例示のプロセスは、ＳＤＴシステム２００によって（たとえば、ゲートウェイ配置モジュール２１５において）実施されることがある。
【００９１】
この例において、以下の表示が使用される。
【００９２】
Ｕ：ＵＥのセット
【００９３】
Ｗ：仮想サービングゲートウェイについてのゲートウェイホスト候補のセット
【００９４】
ＧＷ（ｕ）：ｕに割り当てられる仮想サービングゲートウェイ、∀ｕ∈Ｕ
【００９５】
ε：ｗにおける最小配置部分、∀ｗ∈Ｗ
【００９６】
δ：ｗにおけるトラフィックレート上昇係数、∀ｗ∈Ｗ
【００９７】
ω：ＵＥモビリティに対するｗの最小感応性、∀ｗ∈Ｗ
【００９８】
τ：ＵＥモビリティに対するｗの最大感応性、∀ｗ∈Ｗ
【００９９】
ｒ+w：ｗの着信レート上限、∀ｗ∈Ｗ
【０１００】
ｋw：ｗの仮想サービングゲートウェイカウント上限、∀ｗ∈Ｗ
【０１０１】
ｒu：ｕのレート、∀ｕ∈Ｕ（たとえば、統計レートまたはデバイス最大レート）
【０１０２】
ｃuw：ｗにおけるＧＷ（ｕ）の配置コスト、∀ｕ∈Ｕ、∀ｗ∈Ｗ（たとえば、ホップカウント）
【０１０３】
ｓuw：ｗにおけるＧＷ（ｕ）のモビリティ感応性、∀ｕ∈Ｕ、∀ｗ∈Ｗ
【０１０４】
ｐuw：ｗにおけるＧＷ（ｕ）の配置優先、∀ｕ∈Ｕ、∀ｗ∈Ｗ
【０１０５】
ａuw：ｗにおけるＧＷ（ｕ）の配置部分、∀ｕ∈Ｕ、∀ｗ∈Ｗ
【０１０６】
ｘuw：ＧＷ（ｕ）をホストするｗの２進インジケータ、∀ｕ∈Ｕ、∀ｗ∈Ｗ
【０１０７】
ｂw：ｗの選択インジケータ、∀ｗ∈Ｗ
【０１０８】
以下の説明において、ネットワークは、単一ホップ接続を通じてネットワークＧに接続されるＵＥのセットＵでモデル化される。Ｇは、物理ネットワークノードのセットＮ、およびエッジまたはリンクセットＥを含む。事前定義されたトラフィックソースｓ、ｓ∈Ｎは、各ｕ、ｕ∈Ｕとダウンリンク通信を実行する。たとえば、ｓは、入口ルータであることがある。ＮのサブセットＷは、仮想サービングゲートウェイホスト候補となるように事前構成されたネットワークノードである。たとえば、適切なゲートウェイホスト候補であるネットワークノードは、より広い帯域幅、より高いデータ処理能力、および／またはより大きいストレージスペースを有するように事前構成されることがあり、ゲートウェイホスト候補が、より大きいトラフィックに対応し、モビリティ管理に従事し、および／またはネットワークコーディングに従事できるようにすることがある。Ｗは、場合によっては、Ｎと等しいことがある。一部の例において、ｓは、Ｗに含まれることがある。
【０１０９】
ＧＷ（ｕ）は、所与のＵＥ  ｕの仮想サービングゲートウェイを示す。上記で説明される２フェーズトラフィック制御メカニズムは、ｕについてのダウンリンクトラフィックがｓからＧＷ（ｕ）に向けられ、次いでＧＷ（ｕ）からｕに方向付けられるように関与することがある。場合によっては、ＧＷ（ｕ）の配置は、総合的な方法で実行されることがある、つまり所与のＧＷ（ｕ）は、２つ以上のノードにわたり部分的に分散されるのではなく、単一ノードｗ、ｗ∈Ｗによってホストされることを意味する。ホスト候補ｗにおけるＧＷ（ｕ）の配置のコストは、ｃuwと示され、これは（たとえば、ゲートウェイ配置のための入力として提供される構成情報で定義される）使用されるコスト測定に応じて、運用コスト、制御コスト、またはその組み合わせのような任意のタイプのコストを反映することがある。
【０１１０】
一部の例において、ＧＷ（ｕ）は、複数ホストにおいて分散して配置されることがあり、各々がＧＷ（ｕ）を通過するトラフィックの部分にサービスする（これはまた、ホストが仮想サービングゲートウェイの部分をホスティングする、または仮想サービングゲートウェイが複数ホストの各々によって部分的にホストされていると称されることもある）。所与のホストの配置部分は、配置コスト部分を表し、統計的に、所与のホストを通じてサービスされるｕのダウンリンクトラフィックの部分を指示する。たとえば、ｗがＧＷ（ｕ）の３０％をホストし、ｗ’がＧＷ（ｕ）の７０％をホストする場合、それぞれの配置コストは、０．３ｃuwおよび０．７ｃuw’となり、ｕのダウンリンクトラフィックの３０％はｗに搬送され、ｕのダウンリンクトラフィックの７０％はｗ’に搬送される。この手法はまた、ｗがＧＷ（ｕ）の１００％をホストすることを指定することによって、ＧＷ（ｕ）が単一ホストｗにおいて配置される場合を含むこともある。
【０１１１】
この例において、各ホスト候補ｗは、ゲートウェイからＵＥへの通信のためのネットワークコーディング機能（たとえば、ファウンテンコーディングの実施）および／またはゲートウェイからＵＥへのビデオデータ送信のためのトランスコーディング機能を実施することができる。結果として、レートの上昇（ファウンテンコーディングの場合）または低下（ビデオトランスコーディングの場合）が、δ≧１の倍数でゲートウェイホストにおいて生じる。δ＝１の場合、トランスコーディングとネットワークコーディングのいずれも実施されないか、または純レート上昇／低下の影響はない。δ＝０の場合、ゲートウェイホストは、ゲートウェイからＵＥへの通信を実行せず、トラフィックを吸収する役割を果たすだけである。各ホスト候補ｗは、発信トラフィックのレート上限
【０１１２】
【数１】
0006560351.tif 000002
【０１１３】
を有し、これは、たとえば履歴パフォーマンスから決定されることがある。この上限をレート上昇係数δ
で除算することで、ｗの着信レートの上限が
【０１１４】
【数２】
0006560351.tif 000003
【０１１５】
として得られることがある。
【０１１６】
【数３】
0006560351.tif 000004
【０１１７】
が、必然的に、ｗに付随する着信リンクの合計容量および発信リンクの合計容量の最小により上に有界であることに留意されたい。各ｗはまた、（部分的または総合的にホスティングされるかどうかにはかかわりなく）ホストできる仮想サービングゲートウェイの数を限定する仮想サービングゲートウェイカウント上限ｋwを有する。各ホスト候補のそれらのプロパティは、ゲートウェイ配置のために入力として提供されるネットワーク情報で指定されることがある。
【０１１８】
ここで、モビリティ不感性によって意味されることについて説明される。まず、ソースｓからＵＥ  ｕへの任意のルーティングパスを検討する。パスは、特定の基準に従って決定されることがある。パス長が、ｓとｕとの間の物理的距離に比例することが想定されることがある。一般に、これは、ホップカウントがルーティング基準の一部として使用されるかまたは考慮される場合の有効な仮定である。この仮定は、特定の固有の事例またはセットアップにおいて適用できないことがあるが、本明細書において説明される例示の最適化が、統計情報を扱い、一般解決策を説明するので、この仮定は許容可能である。ｕが移動する場合、パスは変化することがあり、変化はｕに隣接するパスのセグメントにおいて生じることがある。ｕが高いモビリティを有する場合、変化したセグメントは、パスの大部分であることがあり、ｕが低いモビリティを有する場合、変化したセグメントは、パスのごく一部分であることがある。仮想サービングゲートウェイは、パス内にアンカーとして配置されることがあり、ルーティングパスがアンカーの下流の部分のみで変化する場合、ｕのモビリティに不感である（すなわち、モビリティによって変化しない）と見なされる。このようにして、アンカーは、ｕの動きをｓから「隠蔽する」役割を果たすことがある。したがって、仮想サービングゲートウェイは、それぞれのＵＥのモビリティに不感応となるような方法で配置される必要がある。
【０１１９】
モビリティ不感性の定量化は、図７に示されるモデルを参照することにより理解されることがある。このモデルにおいて、ＵＥ  ｕは、一定速度ｖuで移動している。ｄuwは、ゲートウェイホスト候補ｗとｕ’との現在位置の間の距離を示すものとする。期間ｔを所与として、ｕがその現在位置から離れることがある最大距離はｔ×ｖuである。図７において、破線円は、ｔ内のｕのすべての可能な位置を取り囲む。期間ｔの間、物理ホストｗにおけるＧＷ（ｕ）のモビリティ感応性は、次のように表されることがある。
【０１２０】
【数４】
0006560351.tif 000005
【０１２１】
ただし、ｅｘｐは、精度調整のためのスケーリングファクターである。許容限度操作において精度が失われるので、精度調整が実施されることがある。ｅｘｐスケーリングファクターを使用して、精度の損失はある程度まで制御されることがある。ｅｘｐスケーリングファクターは、（たとえば、入力パラメータとして）固定であることがあるか、または動的に決定されることがある（たとえば、ＳＤＴシステム２００によって処理中に決定される）。動的な場合、ｅｘｐは、たとえば、すべての（ＵＥ、物理ホスト）ペアのｄuw／（ｔ×ｕv）値の中央値もしくは平均値と等しくなるように、または同じ絶対値を有するように計算されることがある。上記の式から、ｓuwの値が大きくなると、それに応じてＧＷ（ｕ）のモビリティ感応性も大きくなることが分かる。
【０１２２】
ここで、コンテンツ共有について説明される。コンテンツ共有の潜在性を考慮に入れるため、汎用のコンテンツ属性セットがある例を検討する。コンテンツの各々は、属性のサブセットに関連付けられることがある。たとえば、コンテンツが歌曲を備える場合、コンテンツは、ＵＲＬ（すなわち、ソースアドレス）、アーティストの識別、アルバムの識別、リリース日の識別、および／または任意の他の適切な属性のような、１または複数の属性に関連付けられることがある。異なるタイプのコンテンツ（たとえば、テキスト、画像、ビデオ、またはオーディオコンテンツ）は、属性の異なるセットを使用して識別されることがある。１つのコンテンツは、その属性を使用して、たとえば属性から生成されるハッシュタグを使用して、一意に識別されることがある。
【０１２３】
各ゲートウェイホスト候補ｗが、コンテンツキャッシングを実行し、ローカルコンテンツキャッシュセットＣwを保持する例を検討する。各ＵＥ  ｕは、各要素ｉがアクセス確率ｐiに関連付けられているコンテンツセットＣuによって記述される、特定のコンテンツアクセス統計に関連付けられている。コンテンツセットは、時間および／または地理において相関性があることがある。統計情報は、任意の適切なメカニズムを使用してネットワークによって収集されることがあるか、またはＵＥの履歴振る舞いから学習されることがある（たとえば、ＵＥがＵＥの振る舞いを追跡する場合）。時間ｔおよび位置ｌに相関性がある、ＵＥ  ｕによってアクセスされるコンテンツセットは、
【０１２４】
【数５】
0006560351.tif 000006
【０１２５】
によって示される。
【０１２６】
ネットワーク内キャッシングがゲートウェイホスト候補において使用可能である場合、仮想サービングゲートウェイの配置は、非優先の配置を最小化するように、すなわち、各ＵＥが後続のデータセッションでその関連する仮想サービングゲートウェイのホストにおいてコンテンツキャッシュを共有する可能性を最大化するように、最適化される必要がある。時間ｔを所与として、ＵＥおよびゲートウェイホスト候補（ｕ、ｗ）の各ペアの配置優先係数ｐuwは、次のように表されることがある。
【０１２７】
【数６】
0006560351.tif 000007
【０１２８】
ここで、Ｌ（ｕ）は、ｕに最も近い位置のセットであり、
【０１２９】
【数７】
0006560351.tif 000008
【０１３０】
は、それぞれのコンテンツアクセスセットの和集合である。
【０１３１】
ここで説明される例示の最適化問題において、仮想サービングゲートウェイをゲートウェイホスト候補において配置する場合に３つの最適化目的がある。１つの目的は、ネットワークリソース使用の観点から平均配置コストを最小化することであり、これは配置コスト最小化（ＰＣＭ）目的と称されることがある。もう１つの目的は、運用コストの観点から使用されるゲートウェイホストの数を最小化することであり、これはホスト選択最小化（ＨＳＭ）目的と称されることがある。もう１つの目的は、コンテンツ共有の潜在性を最大化するような、ＵＥとそれぞれのゲートウェイホストの間の配置非優先を最小化することであり、これは配置非優先最小化（ＰＵＭ）目的と称されることがある。したがって、この例示のＰＣＭ−ＨＳＭ−ＰＵＭ同時最適化問題は、コンテンツに応じたゲートウェイ配置の問題であると見なされることがある。
【０１３２】
変数ａuwは、ホストｗにおいて配置されたＧＷ（ｕ）の部分を表すために使用される。２値変数ｘuwは、ｗがＧＷ（ｕ）の部分をホスティングしているかどうかを示し、２値変数ｂwは、ｗが任意の仮想サービングゲートウェイの任意の部分をホスティングしているかどうかを示す。ホストにおいて仮想サービングゲートウェイを配置するための平均配置コストは、次のように表されることがある。
【０１３３】
【数８】
0006560351.tif 000009
【０１３４】
選択されるホストの合計数は、次のように表されることがある。
【０１３５】
【数９】
0006560351.tif 000010
【０１３６】
合計配置非優先は、次のように表されることがある。
【０１３７】
【数１０】
0006560351.tif 000011
【０１３８】
ａuw、ｂw、およびｘuwを決定変数として、ＰＣＭ、ＨＳＭ、およびＰＵＭを同時に達成するための例示の多目的最適化問題が、定式化されることがある。同時最適化は、線形スカラー化を使用して実行されることがあり、ここでα、β、γ∈［０、１］は、α＋β＋γ＝１となるような目的重み係数である。
【０１３９】
ＰＣＭ、ＨＳＭ、およびＰＵＭ目的値は各々異なるスケールであることがあるので、これらの値を同じスケールに変換してα、β、γ値の選択を容易にするように、必要に応じて、スケーリングファクターがこれらの目的の各々に適用される必要がある。以下の例示の最適化問題の形成において、スケーリングファクターが必要ではないことが仮定される。
【０１４０】
以下は、例示の多目的最適化問題の数学的表現である。すなわち、
【０１４１】
【数１１】
0006560351.tif 000012
【０１４２】
次の制約に従う。
【０１４３】
【数１２】
0006560351.tif 000013
【０１４４】
ａuw≦ｘuw、∀ｕ∈Ｕ、∀ｗ∈Ｗ  （２）
【０１４５】
ｘuw∈｛０、１｝、∀ｕ∈Ｕ、∀ｗ∈Ｗ  （３）
【０１４６】
ｘuw≦ｂw、∀ｕ∈Ｕ、∀ｗ∈Ｗ  （４）
【０１４７】
ε−ａuwｘuw≦０、∀ｕ∈Ｕ、∀ｗ∈Ｗ  （５）
【０１４８】
ｗ−ｘuwｓuw≦ｖw、∀ｕ∈Ｕ、∀ｗ∈Ｗ  （６）
【０１４９】
ｘuwｓuw−τ≦ｖτ、∀ｕ∈Ｕ、∀ｗ∈Ｗ  （７）
【０１５０】
【数１３】
0006560351.tif 000014
【０１５１】
【数１４】
0006560351.tif 000015
【０１５２】
ｖw、ｖτ、ｖr、ｖk≧０  （１０）
【０１５３】
この例において、ｖ＝［ｖw、ｖτ、ｖr、ｖk］は、仮想サービングゲートウェイ最小モビリティ感応性、仮想サービングゲートウェイ最大モビリティ感応性、着信トラフィックレート、およびホスト候補のゲートウェイカウント上限の最大違反をそれぞれ表す補助変数を含む違反ベクトルとして定義される。最適化問題の最後の項はペナルティの項であって、ここでＭは違反ペナルティマトリクスであり、異なる違反に異なる方法でペナルティを科すようにセットアップされることが可能である。一般に、Ｍのエントリは、３つの最小化目的で取得され得る可能な利益と比較して、非常に大きい正の値であるはずである。
【０１５４】
上記の制約（１）は、各仮想サービングゲートウェイが完全にホストされることを保証する。最適化問題を解決する場合、制約（２）および（３）は、解においてｗがＧＷ（ｕ）をホストする場合に限り、２値変数ｘuwが１と等しいことを共に保証する。制約（４）は、解におけるｂwは、ｗが仮想サービングゲートウェイをホストしている場合に１と等しく、それ以外の場合は０と等しいことを保証する。制約（５）は、許容される最小部分よりも小さい配置部分はないことを保証する、つまり仮想サービングゲートウェイは最大数の物理ホストにおいて分散的に配置されることが可能であり、小さすぎる配置部分を回避することを意味する。制約（６）から（９）は、ホスト違反ごとの最大を計算する。違反がない場合、ｖは、制約（１０）に従ってゼロベクトルとなる。各違反はＭの非常に大きいペナルティ係数によって増幅されるので、この例示の最適化問題は、ゼロを生成するか、またはゲートウェイホストにおける最小違反を生成する解を支持する。これらの制約は、（違反が許容可能であるので）ソフト制約と見なされることがある。ハード制約ではなくソフト制約を使用することで、実行可能性を有効にして、最適またはほぼ最適な解への到達を保証することがある。
【０１５５】
この例示の最適化問題は、非決定性多項式時間（ＮＰ）困難混合整数計画問題であり、ここでｘuw、∀ｕ∈Ｕ、∀ｗ∈Ｗは、単独（２進）整数決定変数である。これ以降、この問題を解決するための例示の２段階の手法について説明される。第１の段階において、問題は線形計画問題に緩和され、緩和された問題は解決されて、非整数解を取得する。第２の段階において、非整数解は、以下のように反復の方法で丸められる。最初に、整数ｘuw決定のみですべてのＵＥを識別し、それらの関連する決定値を固定して、ＵＥの剰余セットＵ’をソートする（すなわち、非整数ｘuw決定によるＵＥのセット）。セットＵ’は、
【０１５６】
【数１５】
0006560351.tif 000016
【０１５７】
、∀ｕ∈Ｕ’の降順でソートされ、この順序で処理される。ＵＥ  ｕを処理するため、∀ｕ’∈Ｕ’、ｕ’≠ｕに関連するすべての決定変数は、定数変数として扱われ、ＰＣＭ−ＨＳＭ−ＰＵＭ最適化問題は解決される。次いで、決定は、ｕの最終決定と見なされる。この例示の２段階の手法において、各問題は、ＧＮＵ  ｌｉｎｅａｒ  ｐｒｏｇｒａｍｍｉｎｇ  ｋｉｔ（ＧＬＰＫ）のような適切な線形計画ソルバーを使用して解決されることがある線形問題である。
【０１５８】
一部の例において、最適化問題は、コンテンツ共有を考慮しないことがあり、その場合、最適化問題は、上記で示される最小化問題セットからＲ（ｘ）目的を除くことによって（すなわち、γ＝０を設定することによって）簡略化されることがある。
【０１５９】
本開示は、ゲートウェイホスト間のコンテンツ共有の可能性を考慮に入れることによって、さらに効率的なＴＥを使用可能にすることがある。たとえば、本開示は、時間および／または位置（たとえば、ＵＥが所定の期間に所与の地理的位置の付近にあるとき、ＵＥによってアクセスされるトラフィックソースに関する統計情報、各ソースは正規化されたアクセスレートで重み付けされる）、ゲートウェイホストコンテンツキャッシュ（たとえば、各コンテンツソースが正規化されたキャッシュボリュームで重み付けされるような、コンテンツインデックス付けを使用する）、および／またはコンテンツ共有可能性（たとえば、汎用トラフィックソースセットの重みもしくはサイズに対するセット共通部分の重みの比率として定義される）におけるＵＥコンテンツアクセス統計を考慮に入れることがある。
【０１６０】
仮想サービングゲートウェイにおけるネットワークコーディングの使用を考慮することにより、本開示は、ゲートウェイにおける望ましくないトラフィック冗長性を低減する手助けをすることがある。
【０１６１】
仮想サービングゲートウェイ配置を決定する場合、最適化プロセスを、ＵＥデバイス情報（たとえば、デバイスによってサポートされる最大トラフィックレート）またはＵＥ統計情報（たとえば、所与の期間に所与の地理的位置付近にあるときの平均レートのような、時間および／もしくは位置によるトラフィック統計）のいずれかに選択的に基づかせることが可能であることがある。最適化にどちらのタイプのＵＥ情報を使用するかを選択することにより、さらに保守的、またはさらに積極的な最適化が実施されることがある。たとえば、保守的な最適化は、最悪の事態のシナリオ（たとえば、トラフィックレートがデバイスによってサポートされる最大値である）に基づいて実施されることがあるが、より積極的な最適化は、最も有望なシナリオ（たとえば、トラフィックレートが所定の位置についてＵＥによる履歴平均経験値である）に基づいて実施されることがある。
【０１６２】
本開示はまた、ゲートウェイホストのモビリティ不感性を定量化する方法、およびモビリティ不感性を最適化のパラメータとして使用する方法を提供する。
【０１６３】
本開示は、開示される方法およびシステムの例を実施するための特定の例示のアルゴリズムおよび計算を提供する。しかし、本開示は、いかなる特定のアルゴリズムまたは計算によっても制約されることはない。
【０１６４】
本開示は、特定の順序のステップで方法およびプロセスを説明しているが、方法およびプロセスの１または複数のステップは、適宜省略されるかまたは変更されることがある。１または複数のステップは適宜、説明されているもの以外の順序で生じることがある。
【０１６５】
本開示は、少なくとも部分的に、方法に関して説明されるが、当業者であれば、本開示がまた、説明される方法の態様および特徴の少なくとも一部を実行するためのさまざまなコンポーネント、それがハードウェアコンポーネント、ソフトウェア、またはこの２つの任意の組み合わせとしてであっても、これらに向けられていることも理解するであろう。したがって、本開示の技術的解決策は、ソフトウェア製品の形態で具現されることがある。適切なソフトウェア製品は、たとえばＤＶＤ、ＣＤ−ＲＯＭ、ＵＳＢフラッシュディスク、取り外し可能ハードディスク、または他のストレージ媒体を含む、事前記録ストレージデバイス、または他の類似する不揮発性もしくは非一時的コンピュータ可読媒体に格納されることがある。ソフトウェア製品は、処理デバイス（たとえば、パーソナルコンピュータ、サーバ、またはネットワークデバイス）が、本明細書において開示される方法の例を実行できるようにする有形に格納された命令を含む。
【０１６６】
一部の例において、本開示は、処理システムの処理デバイスによって実行されるとき、システムに、入力情報のセットを取得させることがあるコンピュータ実行可能命令を有形に格納している非一時的コンピュータ可読媒体を提供し、入力情報は、モバイルデバイスによるモバイル通信のための物理ネットワークに関する情報を提供するネットワーク情報と、モビリティ不感性基準を含む、仮想サービングゲートウェイを配置するための１または複数のパラメータを提供する構成情報とを含む。命令は、システムに、ネットワーク情報および構成情報に従って物理ネットワーク内の１または複数の物理ホストにおける仮想サービングゲートウェイの配置を決定させることであって、仮想サービングゲートウェイは、１または複数の物理ホストにわたり分散的に配置可能である、決定させることと、出力情報のセットを生成させることとをさらに行わせることがある。出力情報は、１または複数の物理ホストにおける仮想サービングゲートウェイの配置を識別する情報と、各物理ホストのそれぞれのホスティング割合とを含むことがある。
【０１６７】
一部の例において、ネットワーク情報は、各物理ホストにおいて格納されているキャッシュされたコンテンツを表す情報、およびモバイルデバイスによるコンテンツアクセスを表す情報を含むことがあり、仮想サービングゲートウェイの配置は、モバイルデバイスがキャッシュされたコンテンツにアクセスする可能性の決定に基づいて決定されることがある。
【０１６８】
本開示は、特許請求の範囲の主題を逸脱することなく他の特定の形態で具現されることがある。説明される例示の実施形態は、あらゆる点で、限定的ではなく、単に例示的なものとして見なされるべきである。上記で説明される実施形態の１または複数から選択される特徴は、明示的には説明されていない代替的実施形態を作成するために組み合わされることがあり、そのような組み合わせに適切な特徴は、本開示の範囲に含まれるものと理解される。
【０１６９】
開示される範囲内のすべての値および下位範囲もまた開示される。さらに、本明細書において開示され示されるシステム、デバイス、およびプロセスは、固有の数の要素／コンポーネントを備えることがあり、システム、デバイス、およびアセンブリは、そのような要素／コンポーネントを付加的にまたはより少なく含むように変更されることが可能である。たとえば、開示される要素／コンポーネントのいずれも単数として示されることがあるが、本明細書において開示される実施形態は、そのような要素／コンポーネントの複数を含むように変更されることが可能である。本明細書において説明される主題は、技術におけるすべての適切な変更を対象とし包含することを意図する。
【図１】
0006560351.tif 000017
【図２】
0006560351.tif 000018
【図３】
0006560351.tif 000019
【図４】
0006560351.tif 000020
【図５】
0006560351.tif 000021
【図６】
0006560351.tif 000022
【図７】
0006560351.tif 000023