(57)【特許請求の範囲】
【請求項１】
分散型ソフトウェア定義ネットワーク（ＳＤＮ）パケットコアシステムであって、
複数の相互接続されたローカルＳＤＮインフラストラクチャインスタンスを備え、各ローカルＳＤＮインフラストラクチャインスタンスは、複数の無線アクセスポイントのそれぞれに地理的に近接して配置されかつ前記複数の無線アクセスポイントのそれぞれに通信可能に結合されたコンピューティングデバイスのクラスタを含み、各ローカルＳＤＮインフラストラクチャインスタンスは、待ち時間に影響されやすいネットワーク機能を実行するように構成されて、
前記各ローカルＳＤＮインフラストラクチャインスタンスは、
前記コンピューティングデバイスのうちの１つ以上によって実行可能なネットワーク機能のインスタンスを表わす複数のＳＤＮネットワーク機能モジュールと、
前記ネットワーク機能のうちの少なくとも１つによって処理するためのデータパケットを前記複数の無線アクセスポイントから受信し、前記データパケットを前記ローカルＳＤＮインフラストラクチャインスタンス内の前記コンピューティングデバイスのうちの１つに仕向けるように構成されたステートレス負荷分散器と、
複数のステートフル負荷分散モジュールとを含み、各ステートフル負荷分散モジュールは、それぞれのコンピューティングデバイス内に存在し、各ステートフル負荷分散モジュールは、
前記それぞれのコンピューティングデバイスで受信したデータパケットに適用されるステートフルデータパケット処理タスクを決定するように構成され、
前記決定されたステートフルデータパケット処理タスクを前記データパケットに適用するための前記ローカルＳＤＮインフラストラクチャインスタンス内のコンピューティングデバイスを決定するように構成され、
前記データパケットを前記決定されたコンピューティングデバイスに転送するように構成され、
各前記ローカルＳＤＮインフラストラクチャインスタンスはさらに、
前記ローカルＳＤＮインフラストラクチャインスタンス内の前記コンピューティングデバイスおよび前記複数のＳＤＮネットワーク機能モジュールの負荷および動作状態を示す情報を管理するように構成された負荷マネージャを含む、分散型ＳＤＮパケットコアシステム。
【請求項２】
前記負荷マネージャは、前記それぞれのローカルＳＤＮインフラストラクチャインスタンスにおける計算リソース使用、メモリ使用およびネットワークリンク使用のうちの少なくとも１つを示す負荷情報を収集するように構成される、請求項１に記載の分散型ＳＤＮパケットコアシステム。
【請求項３】
前記負荷マネージャは、前記ＳＤＮネットワーク機能モジュールの動作状態を示す情報を収集するように構成される、請求項１または２に記載の分散型ＳＤＮパケットコアシステム。
【請求項４】
前記負荷マネージャは、前記それぞれのローカルＳＤＮインフラストラクチャインスタンスの累積動作状態および負荷状態を示す情報を前記分散型ＳＤＮパケットコアシステムのクラウドベースのグローバル負荷分散器に提供するように構成される、請求項１から３のいずれか１項に記載の分散型ＳＤＮパケットコアシステム。
【請求項５】
前記ステートレス負荷分散器は、データパケットの１つ以上のヘッダフィールドに基づいて前記データパケットを対応するコンピューティングデバイスに割り当てるように構成される、請求項１から４のいずれか１項に記載の分散型ＳＤＮパケットコアシステム。
【請求項６】
各々の前記ステートフル負荷分散モジュールは、前記ローカルＳＤＮインフラストラクチャインスタンスの各コンピューティングデバイスに関連付けられたステートフルデータパケット処理タスクを示す情報を維持するように構成される、請求項１から５のいずれか１項に記載の分散型ＳＤＮパケットコアシステム。
【請求項７】
各々の前記ステートフル負荷分散モジュールは、
受信したデータパケットの１つ以上のフィールドをパーズするように構成され、
前記１つ以上のフィールドおよび前記ステートフル負荷分散モジュールにおいて維持される前記情報に基づいて、前記受信したデータパケットに関連付けられたステートフルデータパケット処理タスクを処理するためのコンピューティングデバイスを決定するように構成され、
前記データパケットを前記決定されたコンピューティングデバイスに転送するように構成される、請求項６に記載の分散型ＳＤＮパケットコアシステム。
【請求項８】
クラウドベースのグローバル負荷分散器をさらに備え、前記クラウドベースのグローバル負荷分散器は、
アクセスネットワーク要素からネットワーク処理要求を受信するように構成され、
１つ以上のローカルＳＤＮインフラストラクチャインスタンスの負荷および動作状態に基づいて前記ネットワーク処理要求をローカルＳＤＮインフラストラクチャインスタンスに割り当てるように構成される、請求項１に記載の分散型ＳＤＮパケットコアシステム。
【請求項９】
前記クラウドベースのグローバル負荷分散器は、待ち時間メトリックに基づいて前記ネットワーク処理要求をローカルＳＤＮインフラストラクチャインスタンスに割り当てるように構成される、請求項８に記載の分散型ＳＤＮパケットコアシステム。
【請求項１０】
前記クラウドベースのグローバル負荷分散器は、容量メトリックに基づいて前記ネットワーク処理要求をローカルＳＤＮインフラストラクチャインスタンスに割り当てるように構成される、請求項８に記載の分散型ＳＤＮパケットコアシステム。
【請求項１１】
分散型ソフトウェア定義ネットワーク（ＳＤＮ）パケットコアシステムにおける負荷分散方法であって、
前記分散型ＳＤＮパケットコアシステムのローカルＳＤＮインフラストラクチャインスタンス内のステートレス負荷分散器によって、複数のＳＤＮネットワーク機能モジュールのうちの少なくとも１つによって処理するためのデータパケットを複数の無線アクセスポイントから受信するステップを備え、前記ローカルＳＤＮインフラストラクチャインスタンスは、待ち時間に影響されやすいネットワーク機能を実行するように構成されて、前記複数のＳＤＮネットワーク機能モジュールは、ローカルＳＤＮインフラストラクチャインスタンスの複数のコンピューティングデバイス上で実行可能であり、前記複数のコンピューティングデバイスは、前記複数の無線アクセスポイントに地理的に近接して配置されかつ前記複数の無線アクセスポイントのそれぞれに通信可能に結合され、前記方法はさらに、
前記ステートレス負荷分散器によって、前記ローカルＳＤＮインフラストラクチャインスタンス内の前記複数のコンピューティングデバイスの中の第１のコンピューティングデバイスに存在するステートフル負荷分散器に前記データパケットを仕向けるステップと、
前記ステートフル負荷分散器によって、前記データパケットに適用されるステートフルデータパケット処理タスクを決定するステップと、
前記ステートフル負荷分散器によって、前記決定されたステートフルデータパケット処理タスクを前記データパケットに適用するための前記ローカルＳＤＮインフラストラクチャインスタンス内の第２のコンピューティングデバイスを決定するステップと、
前記ステートフル負荷分散器によって、前記データパケットを前記第２のコンピューティングデバイスに転送するステップとを備える、方法。
【請求項１２】
前記ローカルＳＤＮインフラストラクチャインスタンスの負荷マネージャによって、前記それぞれのローカルＳＤＮインフラストラクチャインスタンスにおける計算リソース使用、メモリ使用およびネットワークリンク使用のうちの少なくとも１つを示す負荷情報を収集するステップをさらに備える、請求項１１に記載の方法。
【請求項１３】
前記ローカルＳＤＮインフラストラクチャインスタンスの負荷マネージャによって、前記ＳＤＮネットワーク機能モジュールの動作状態を示す情報を収集するステップをさらに備える、請求項１１または１２に記載の方法。
【請求項１４】
前記ローカルＳＤＮインフラストラクチャインスタンスの負荷マネージャによって、前記それぞれのローカルＳＤＮインフラストラクチャインスタンスの累積動作状態および負荷状態を示す情報を前記分散型ＳＤＮパケットコアシステムのクラウドベースのグローバル負荷分散器に提供するステップをさらに備える、請求項１１から１３のいずれか１項に記載の方法。
【請求項１５】
前記ステートフル負荷分散器に前記データパケットを仕向けるステップは、前記データパケットの１つ以上のヘッダフィールドに基づいて前記データパケットを仕向けるステップを含む、請求項１１から１４のいずれか１項に記載の方法。
【請求項１６】
前記ステートフル負荷分散器によって、前記ローカルＳＤＮインフラストラクチャインスタンスの各コンピューティングデバイスに関連付けられたステートフルデータパケット処理タスクを示す情報を維持するステップをさらに備える、請求項１１から１５のいずれか１項に記載の方法。
【請求項１７】
前記ステートフル負荷分散器によって、受信したデータパケットの１つ以上のフィールドをパーズするステップと、
前記１つ以上のフィールドおよび前記ステートフル負荷分散器において維持される前記情報に基づいて、前記受信したデータパケットに関連付けられたステートフルデータパケット処理タスクを処理するための前記第２のコンピューティングデバイスを決定するステップと、
前記データパケットを前記第２のコンピューティングデバイスに転送するステップとをさらに備える、請求項１６に記載の方法。
【請求項１８】
前記分散型ＳＤＮパケットコアシステムのクラウドベースのグローバル負荷分散器によって、アクセスネットワーク要素からネットワーク処理要求を受信するステップと、
前記クラウドベースのグローバル負荷分散器によって、１つ以上のローカルＳＤＮインフラストラクチャインスタンスの負荷および動作状態に基づいて前記ネットワーク処理要求をローカルＳＤＮインフラストラクチャインスタンスに割り当てるステップとをさらに備える、請求項１１に記載の方法。
【請求項１９】
前記クラウドベースのグローバル負荷分散器によって、待ち時間メトリックに基づいて前記ネットワーク処理要求をローカルＳＤＮインフラストラクチャインスタンスに割り当てるステップをさらに備える、請求項１８に記載の方法。
【請求項２０】
前記クラウドベースのグローバル負荷分散器によって、容量メトリックに基づいて前記ネットワーク処理要求をローカルＳＤＮインフラストラクチャインスタンスに割り当てるステップをさらに備える、請求項１８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、「分散型ソフトウェア定義無線パケットコアシステム（DISTRIBUTED SOFTWARE DEFINED WIRELESS PACKET CORE SYSTEM）」と題される２０１５年９月２３日に出願された米国仮出願番号第６２／２２２，４０６号、「分散型ソフトウェア定義ネットワークパケットコアシステムにおけるモビリティ管理のためのシステムおよび方法（SYSTEMS AND METHODS FOR MOBILITY MANAGEMENT IN A DISTRIBUTED SOFTWARE DEFINED NETWORK PACKET CORE SYSTEM）」と題される２０１５年１０月１６日に出願された米国仮出願番号第６２／２４２，６６８号、および「分散型ソフトウェア定義ネットワークパケットコアシステムにおける負荷分散のためのシステムおよび方法（SYSTEMS AND METHODS FOR LOAD BALANCING IN A DISTRIBUTED SOFTWARE DEFINED NETWORK PACKET CORE SYSTEM）」と題される２０１５年１０月１６日に出願された米国仮出願番号第６２／２４２，６７７号に対する優先権を主張し、これら全ての内容は引用によって本明細書に援用される。
【０００２】
開示の分野
本開示は、一般に、無線通信ネットワークの分野に関する。
【背景技術】
【０００３】
背景
インターネットにアクセスするためまたは他のユーザと通信するためにモバイルネットワークに切り替えるユーザが多くなっている（または、モバイルネットワークを使用することが多くなっている）。多くのモバイルデバイスは、さまざまな無線アクセス技術に関連付けられた通信機能を備えているので、ユーザは、たとえば可用性、コスト、ネットワーク性能またはそれらの組み合わせに基づいて個別の無線アクセスネットワークを切り替える柔軟性を有している。
【発明の概要】
【０００４】
概要
本開示の少なくとも１つの局面によれば、分散型ソフトウェア定義ネットワーク（ＳＤＮ）パケットコアシステムは、複数の相互接続されたローカルＳＤＮインフラストラクチャインスタンスを含み得て、各ローカルＳＤＮインフラストラクチャインスタンスは、地理的に近接して配置されかつ複数の無線アクセスポイントのそれぞれに通信可能に結合されたコンピューティングデバイスのクラスタを含む。各ローカルＳＤＮインフラストラクチャインスタンスは、上記コンピューティングデバイスのうちの１つ以上によって実行可能なネットワーク機能のインスタンスを表わす複数のＳＤＮネットワーク機能モジュールと、ステートレス負荷分散器と、複数のステートフル負荷分散モジュールとを含み得る。上記ステートレス負荷分散器は、上記ネットワーク機能のうちの少なくとも１つによって処理するためのデータパケットを受信し、上記データパケットを上記ローカルＳＤＮインフラストラクチャインスタンス内の上記コンピューティングデバイスのうちの１つに仕向けるように構成され得る。各ステートフル負荷分散モジュールは、それぞれのコンピューティングデバイス内に存在し得て、（１）上記それぞれのコンピューティングデバイスで受信したデータパケットに適用されるステートフルデータパケット処理タスクを決定するように構成され、（２）上記決定されたステートフルデータパケット処理タスクを上記データパケットに適用するための上記ローカルＳＤＮインフラストラクチャインスタンス内のコンピューティングデバイスを決定するように構成され、（３）上記データパケットを上記決定されたコンピューティングデバイスに転送するように構成され得る。また、各ローカルＳＤＮインフラストラクチャインスタンスは、当該ローカルＳＤＮインフラストラクチャインスタンス内の上記コンピューティングデバイスおよび上記複数のＳＤＮネットワーク機能モジュールの負荷および動作状態を示す情報を管理するように構成された負荷マネージャを含み得る。
【０００５】
本開示の少なくとも１つの局面によれば、分散型ソフトウェア定義ネットワーク（ＳＤＮ）パケットコアシステムにおいて負荷を分散させる方法は、上記分散型ＳＤＮパケットコアシステムのローカルＳＤＮインフラストラクチャインスタンス内のステートレス負荷分散器によって、複数のＳＤＮネットワーク機能モジュールのうちの少なくとも１つによって処理するためのデータパケットを受信するステップを含む。上記複数のネットワーク機能モジュールは、ローカルＳＤＮインフラストラクチャインスタンスの複数のコンピューティングデバイス上で実行可能である。また、上記方法は、上記ステートレス負荷分散器が、上記ローカルＳＤＮインフラストラクチャインスタンス内の上記複数のコンピューティングデバイスの中の第１のコンピューティングデバイスに存在するステートフル負荷分散器に上記データパケットを仕向けるステップを含む。また、上記方法は、上記ステートフル負荷分散器が、上記データパケットに適用されるステートフルデータパケット処理タスクを決定するステップと、上記決定されたステートフルデータパケット処理タスクを上記データパケットに適用するための上記ローカルＳＤＮインフラストラクチャインスタンス内の第２のコンピューティングデバイスを決定するステップと、上記データパケットを上記第２のコンピューティングデバイスに転送するステップとを含む。
【図面の簡単な説明】
【０００６】
【図１】分散型ソフトウェア定義ネットワーク（ＳＤＮ）パケットコアシステムを利用する通信環境の概要を示すブロック図である。
【図２】分散型ＳＤＮパケットコアシステムに関連付けられたＳＤＮ要素を示すブロック図である。
【図３】図２に示される分散型ＳＤＮパケットコアシステムにおいて処理負荷を分散させるための負荷分散システムを示すブロック図である。
【発明を実施するための形態】
【０００７】
詳細な説明
モバイルユーザ数が増加し、モバイルデータトラフィック量が増加しつつあることにより、ネットワークインフラストラクチャへの連続的で費用のかかる投資がモバイルネットワークオペレータによって要求されるようになっている。モバイルユーザは、さらに頻繁にさまざまな無線アクセスネットワークを介してコンテンツプロバイダデータにアクセスするようになっている。モバイルデバイスは、第３世代（３Ｇ）モバイルテレコミュニケーション技術、ロングタームエボリューション（ＬＴＥ）モバイルテレコミュニケーション技術、ＷｉＦｉ、独占的な高高度プラットフォーム、または他の無線アクセス技術などのさまざまな無線アクセス技術（ＲＡＴ）に関連付けられたさまざまな無線アクセスネットワークにアクセスするための機能を備え得る。
【０００８】
モバイルユーザは、インターネットにアクセスする際、それぞれのユーザコンテキストに応じてさまざまな接続モードを切り替えることができる。たとえば、モバイルユーザは、家ではＷｉＦｉを介してインターネットにアクセスし、屋外ではセルラーアクセスネットワークを介してインターネットにアクセスし、または小売スペース、空港もしくは他の公共の場ではゲストＷｉＦｉサービスを介してインターネットにアクセスしてもよい。ユーザは、通常、個別のアクセスネットワーク、さまざまな課金契約、およびさまざまなセキュリティ保証またはポリシーに対して身分を証明するためのさまざまな方法を有している。また、個別のアクセスネットワーク間でのローミングは、接続の中断を生じさせる。これらの要因は、ユーザエクスペリエンスの断片化につながる。モバイルユーザは、異種の無線アクセスソリューションとさまざまなＲＡＴ間のシームレスモビリティとの組み合わせを提供する統合サービスを高く評価するであろう。
【０００９】
ユーザエクスペリエンスを向上させる１つの方法は、異種の無線アクセスネットワークを単一のサービスドメインに結合することを可能にする階層型システムアーキテクチャを提供するというものである。このようなシステムアーキテクチャを設計する際には、（たとえば、新たなＲＡＴに対する、またはネットワーク容量の増加に対する）システムスケーラビリティ、システムの複雑性、インフラストラクチャコスト、ＲＡＴ内モビリティおよびＲＡＴ間モビリティを含むさまざまな要因を考慮に入れるべきである。このようなインターワーキングソリューションの実装は、複雑である可能性があり、新たなＲＡＴに対するシステムアーキテクチャのスケーラビリティを妨げる可能性もある。分散型で階層型のパケットコアシステムアーキテクチャは、これらの要因に対する（既存のパケットコアシステムを超える）改良を可能にすることができる。特に、階層型パケットコアシステムは、本来グローバルであって（たとえば、他のネットワーク機能と比較して）比較的待ち時間に影響されにくいネットワーク機能がクラウドベースのソフトウェア定義ネットワーク（ＳＤＮ）機能として実装され、本来ローカルであって待ち時間に影響されやすいネットワーク機能が、利用されるアクセスネットワーク（またはそれぞれの無線アクセスポイント）に非常に近接したリージョナルポッド（regional pod）（またはコンピューティングドメイン）内に実装されるように配置され得る。リージョナルポッドは、ネットワーク機能ブロックが実装されたコンピューティングデバイスのクラスタを含み得て、それぞれの地理的領域を利用するように構成され得る。各々のリージョナルポッドは、容量の増加および並列処理を可能にするために１つ以上のネットワーク機能ブロックの複数のインスタンスを含み得る。
【００１０】
このような分散型で階層型の配備において、解決すべき１つの問題は、さまざまなリージョナルポッド間、それぞれのコンピューティングデバイス間、および／または、それぞれのネットワーク機能ブロック間でコントロールプレーントラフィックおよびデータプレーントラフィックをどのようにしてルーティングするかということである。コントロールプレーントラフィックは、たとえば無線アクセスポイントとパケットコアシステムとの間でユーザセッションの確立を知らせるために使用されるメッセージと、データプレーントラフィックがパケットコアシステムを通るようにするためのルーティング情報とを含む。データプレーントラフィックは、ユーザデバイスとインターネット（または別のユーザデバイス）との間でやり取りされてパケットコアシステムを通されるデータパケットを含む。コントロールプレーントラフィックおよびデータプレーントラフィックをルーティングすることは、さまざまなリージョナルポッド、それぞれのコンピューティングデバイス、および／または、それぞれのネットワーク計算ブロックの処理負荷を分散させることを含む。本開示では、分散型ソフトウェア定義ネットワーク（ＳＤＮ）パケットコアシステムにおいて処理負荷を分散させるための階層型負荷分散システムおよび負荷分散方法が構成される。
【００１１】
図１は、分散型ソフトウェア定義ネットワーク（ＳＤＮ）パケットコアシステムを利用する通信環境１０の概要を示すブロック図である。通信環境１０は、近接するモバイルデバイス２０を利用する複数の無線アクセスポイント（ＡＰ）３０と、複数のローカルＳＤＮインフラストラクチャインスタンス１１０（本明細書ではリージョナルポッド１１０とも称される）と、中央ＳＤＮインフラストラクチャインスタンス１２０と、１つ以上のメトロポリタンエリアネットワーク１２と、第１のトランジットネットワーク１５と、１つ以上の第２のトランジットネットワーク１８と、１つ以上のデータセンタ９０とを含み得る。各ローカルＳＤＮインフラストラクチャインスタンス１１０は、当該ＳＤＮインフラストラクチャインスタンス１１０に近接するモバイルデバイス２０を利用するためのネットワーク機能を実行するように構成された複数のコンピュータデバイス１１５を含み得る。
【００１２】
モバイルデバイス２０としては、携帯電話、スマートフォン、タブレット、ラップトップ、スマートウォッチ、通信機能を有するウェアラブルアイテム、音声再生デバイス（ＭＰ３プレーヤなど）、画像再生デバイス、ゲーム機、グローバルポジショニングシステム（ＧＰＳ）デバイス、自動車コンピュータ、または通信機能を有するその他のクライアントデバイスが挙げられるが、それらに限定されるものではない。モバイルデバイス２０は、それぞれのアクセスポイント３０において無線リンクを介してモバイルアクセスネットワークに接続することができる。いくつかの実現例では、モバイルデバイス２０は、分散型ＳＤＮパケットコアシステムを介して、コンテンツプロバイダネットワークに関連付けられたコンテンツを要求して当該コンテンツにアクセスするように構成され得る。たとえば、モバイルデバイス２０で実行されるアプリケーション（ブラウザ、メディアプレーヤ、ゲームアプリケーション／プラットフォーム、ｅメールアプリケーション、エンタープライズアプリケーション、ソーシャルメディアアプリケーション、クラウドアプリケーションなど）が、データセンタ９０から入手可能なコンテンツを要求して、モバイルデバイス２０の画面上に表示してもよい。
【００１３】
無線アクセスポイント（ＡＰ）３０は、無線リンクを介してモバイルデバイス２０と通信するように構成され得る。ＡＰ３０は、３Ｇ、ＬＴＥ、ＬＴＥ−Ａ、Ｗｉ−Ｆｉ、または他のＲＡＴなどの少なくとも１つの無線アクセス技術（ＲＡＴ）に関連付けられた別々の無線アクセスネットワーク（ＷｉＦｉホットスポットネットワーク、ユニバーサル移動体通信システム（ＵＭＴＳ）ネットワーク、ロングタームエボリューション（ＬＴＥ）ネットワーク、またはその他の移動体通信ネットワークなど）の一部であってもよい。たとえば、ＡＰ３０としては、ノードＢ、エボルブドノードＢ（ｅＮｏｄｅＢ）、ＷｉＦｉホットスポットアクセスポイント、または他のタイプの無線アクセスポイントを挙げることができる。ＡＰ３０は、１つ以上の州、国または複数の国を定義する大きな地理的領域に分散され得る。各ＡＰ３０は、それぞれ地理的に近いモバイルデバイス２０を利用するように構成され得る。各ＡＰ３０は、エアインターフェイスを介して近くのモバイルデバイス２０と直接通信するように構成され得て、メトロＩＳＰネットワーク１２を介してそれぞれのローカルＳＤＮインフラストラクチャインスタンス１１０に結合され得る。モバイルデバイス２０は１つの地理的位置から別の地理的位置に移動するので、それぞれの無線接続は、個別のＡＰ３０に対するモバイルデバイス２０の近接性に基づいて１つのＡＰ３０から別のＡＰ３０に移すことができる（または、引き継ぐことができる）。
【００１４】
複数のローカルＳＤＮインフラストラクチャインスタンス１１０は、それらの無線アクセスネットワークまたはＡＰ３０に非常に近接して配備され、かつ、それらの無線アクセスネットワークまたはＡＰ３０を利用する一組の分散型コンピューティングまたはネットワーク処理リソースプールを表わす。たとえば、各ＳＤＮインフラストラクチャインスタンス１１０は、それぞれの都市圏に関連付けられてもよく、当該都市圏内のモバイルデバイス２０を利用するＡＰ３０に結合されてもよい。各ローカルＳＤＮインフラストラクチャインスタンス１１０は、コンピュータサーバまたはサーバラックなどの複数の（１ダース、数ダース、または他の数などの）コンピュータデバイス１１５のそれぞれを含み得て、当該複数のコンピュータデバイス１１５は、ＳＤＮ要素として実装されるネットワークオペレーションまたは機能を実行して、当該ローカルＳＤＮインフラストラクチャインスタンス１１０によって結合される（または、利用される）ＡＰ３０に関連付けられたデータトラフィックを提供するように構成される。いくつかの実現例では、それぞれのローカルＳＤＮインフラストラクチャインスタンス１１０に関連付けられたコンピュータデバイス１１５は、待ち時間に影響されやすいネットワーク機能を実行するように構成され得る。たとえば、コントロールプレーンシグナリング、データプレーンアンカリング、およびモビリティオペレーションが、それぞれのコンピュータデバイス１１５によって実行可能な（または、それぞれのコンピュータデバイス１１５で実行される）ＳＤＮ要素として実装されてもよい。
【００１５】
いくつかの実現例では、各ローカルＳＤＮインフラストラクチャインスタンス１１０は、それぞれのコンピュータデバイス１１５間またはそれらで実行されるＳＤＮ要素間で負荷を分散させるように構成された負荷分散エンティティを含み得る。いくつかの実現例では、各ローカルＳＤＮインフラストラクチャインスタンス１１０は、１つ以上のコンテンツプロバイダ、クラウドデータ、イントラネットデータ、またはそれらの組み合わせに関連付けられたインターネットデータを局所的にキャッシュするように構成され得る。たとえば、各ローカルＳＤＮインフラストラクチャインスタンス１１０は、１つ以上のキャッシングサーバを含み得る。ローカルＳＤＮインフラストラクチャインスタンス１１０は、要求されたインターネットデータが局所的にキャッシュされるたびに、モバイルデバイス２０からの要求に応答して、ローカルキャッシュからインターネットデータを提供するように構成され得る。インターネットデータとしては、ウェブページ、オンラインサービス（ｅメール、ソーシャルメディアなど）に関連付けられたデータ、ゲームに関連付けられたデータ、ビデオストリーミングデータ（ＮｅｔｆｌｉｘまたはＹｏｕＴｕｂｅ（登録商標）など）などを挙げることができる。いくつかの実現例では、ローカルＳＤＮインフラストラクチャインスタンス１１０は、インターネットデータ、イントラネットデータ、クラウドデータ、またはそれらの組み合わせを局所的にキャッシュする（および提供する）ように構成され得る。
【００１６】
中央ＳＤＮインフラストラクチャインスタンス１２０は、ＳＤＮ要素を有する１つ以上のコンピュータデバイスを含み得て、当該ＳＤＮ要素は、中央ＳＤＮインフラストラクチャインスタンス１２０で実行され、待ち時間に影響されない（もしくは、少なくともそれほど影響されない）ネットワーク機能、または複数のローカルＳＤＮインフラストラクチャインスタンス１１０を含むネットワーク機能を実行するように構成される。中央ＳＤＮインフラストラクチャインスタンス１２０で実行されるＳＤＮ要素としては、たとえば、サブスクリプションポリシーモジュール、ローカルＳＤＮインフラストラクチャインスタンス１１０間のモビリティ（または、ローミング）を管理するためのグローバルモジュール、またはそれらの組み合わせを挙げることができる。サブスクリプションポリシーモジュールとしては、承認・認証および課金（ＡＡＡ）サーバ、サブスクリプションプロファイルリポジトリ（ＳＰＲ）、ポリシーおよび課金制御モジュール、またはサブスクリプションポリシーを管理するための他のモジュールを挙げることができる。モバイルデバイス２０を分散型ＳＤＮパケットコアシステムに接続している間に、ローカルＳＤＮインフラストラクチャインスタンス１１０は、中央ＳＤＮインフラストラクチャインスタンス１２０に関連付けられたサブスクリプションおよびポリシーモジュールからモバイルデバイス２０（または、そのユーザ）の認証または承認を要求し得る。中央ＳＤＮインフラストラクチャインスタンス１２０は、複数のローカルＳＤＮインフラストラクチャインスタンス１１０間で負荷を分散させるためのグローバル負荷分散モジュールも含み得る。中央ＳＤＮインフラストラクチャインスタンス１２０は、ホストデータセンタ９１内などのクラウド内に配置され得る。
【００１７】
各ローカルＳＤＮインフラストラクチャインスタンス１１０は、それぞれのメトロポリタンエリアネットワーク１２を介して、近接するＡＰ３０に結合され得る。メトロポリタンエリアネットワーク１２は、ローカルＳＤＮインフラストラクチャインスタンス１１０ごとに異なっていてもよい。いくつかの実現例では、ローカルＳＤＮインフラストラクチャインスタンスは、１つ以上のメトロポリタンエリアネットワーク１２を介してそれぞれのＡＰ３０に結合され得る。所与のローカルＳＤＮインフラストラクチャインスタンス１１０では、それぞれのメトロポリタンエリアネットワーク１２は、当該ローカルＳＤＮインフラストラクチャインスタンス１１０に関連付けられた都市圏を利用する１つ以上の通信ネットワークであり得る。いくつかの実現例では、メトロポリタンエリアネットワーク１２のうちの１つ以上は、それぞれの第三者ネットワークプロバイダによって所有または管理され得て、分散型ＳＤＮパケットコアネットワークの一部でなくてもよい。いくつかの実現例では、１つのメトロポリタンエリアネットワーク１２は、複数のローカルＳＤＮインフラストラクチャインスタンス１１０を利用し得る。いくつかの実現例では、各ＡＰ３０は、地理的に最も近いローカルＳＤＮインフラストラクチャインスタンス１１０に結合され得る（および、地理的に最も近いローカルＳＤＮインフラストラクチャインスタンス１１０によって利用され得る）。いくつかの実現例では、ＡＰ３０とローカルＳＤＮインフラストラクチャインスタンス１１０内のエンティティ（コンピュータデバイス１１５またはそれらで実行されるＳＤＮ要素など）との間の結合は、メトロポリタンエリアネットワーク１２を介してそれぞれのトランスポートトンネル３５を通じて実現することができる。たとえば、イーサネット（登録商標）・オーバー・ＩＰ（ＥｏＩＰ）トンネルなどのトランスポートトンネル３５が、ローカルＳＤＮインフラストラクチャインスタンス１１０にＩＰ接続を提供するメトロポリタンエリアネットワーク１２を介して使用されてもよい。いくつかの実現例では、トランスポートトンネル３５としては、イーサネット・オーバー・ＩＰトンネル、ジェネリックユーザデータグラムプロトコル（ＵＤＰ）カプセル化（ＧＵＥ）トンネル、ジェネリックルートカプセル化（ＧＲＥ）トンネル、８０２．１１オーバーＧＵＥトンネル、ＧＰＲＳトンネリングプロトコル（ＧＴＰ）トンネル、インターネットプロトコル（ＩＰ）セキュリティ（ＩＰＳｅｃ）トンネル、他のタイプのトンネル、またはそれらの組み合わせを挙げることができる。
【００１８】
いくつかの実現例では、複数のローカルＳＤＮインフラストラクチャインスタンス１１０は、第１のトランジットネットワーク１５を介して相互接続され得る。第１のトランジットネットワーク１５は、たとえば別々のローカルＳＤＮインフラストラクチャインスタンス１１０間の通信を可能にして、ローカルＳＤＮインフラストラクチャインスタンス１１０間のモビリティ（または、ローミング）およびシグナリングを処理する。いくつかの実現例では、第１のトランジットネットワーク１５は、ローカルＳＤＮインフラストラクチャインスタンス１１０を中央ＳＤＮインフラストラクチャインスタンス１２０に結合するように構成され得る。第１のトランジットネットワーク１５としては、光ファイバデータネットワーク、インターネットサービスプロバイダ（ＩＳＰ）ネットワーク、または他の通信ネットワークを挙げることができる。第１のトランジットネットワーク１５および複数のローカルＳＤＮインフラストラクチャインスタンス１１０は、単一のエンティティによって管理（もしくは、所有）されてもよく、または別々のエンティティによって管理（もしくは、所有）されてもよい。いくつかの実現例では、第１のトランジットネットワーク１５は、ローカルＳＤＮインフラストラクチャインスタンス１１０とは別に所有または管理されてもよい。すなわち、第１のトランジットネットワーク１５は、分散型ＳＤＮパケットコアシステムの一部ではなく、ローカルＳＤＮインフラストラクチャインスタンス１１０を互いに通信可能に結合するために使用される外部ネットワークであってもよい。
【００１９】
通信環境１０は、複数のデータセンタ９０を含み得る。各データセンタ９０は、コンテンツプロバイダデータ、ウェブページ、クラウドデータ、またはそれらの組み合わせを格納してそれらに対するアクセスを提供するためのコンピューティングデバイスを含み得る。たとえば、データセンタ９０は、ローカルＳＤＮインフラストラクチャインスタンス１１０からデータ要求を受信し、それに応答して、要求されたデータを提供するように構成され得る。データセンタ９０は、ウェブページおよびそれぞれのコンテンツ、ＹｏｕＴｕｂｅもしくはＮｅｔｆｌｉｘなどのビデオストリーミングアプリケーション、ソーシャルメディアアプリケーションおよびコンテンツ、ゲームアプリケーション、エンタープライズアプリケーション、またはその他のクラウドアプリケーションもしくはサービスを提供するように構成され得る。いくつかの実現例では、中央ＳＤＮインフラストラクチャインスタンス１２０は、ホストデータセンタ９１内に実装され得る。
【００２０】
各ローカルＳＤＮインフラストラクチャインスタンス１１０は、１つ以上の第２のトランジットネットワーク１８を介してデータセンタ９０に通信可能に結合され得る。第２のトランジットネットワーク１８は、第１のトランジットネットワーク１５を介してローカルＳＤＮインフラストラクチャインスタンス１１０に結合され得る。いくつかの実現例では、第２のトランジットネットワーク１８は、ローカルＳＤＮインフラストラクチャインスタンス１１０に直接結合されてもよい。いくつかの実現例では、第２のトランジットネットワーク１８は、中央ＳＤＮインフラストラクチャインスタンス１２０をローカルＳＤＮインフラストラクチャインスタンス１１０に結合するように構成され得る。いくつかの実現例では、第２のトランジットネットワーク１８は任意であってもよい。このような実現例では、データセンタ９０が第１のトランジットネットワーク１５に直接結合され得る。いくつかの実現例では、第１および第２のトランジットネットワーク１５および１８は、単一の通信ネットワークの一部であってもよい。
【００２１】
いくつかの実現例では、分散型ＳＤＮパケットコアシステムは、ローカルＳＤＮインフラストラクチャインスタンス１１０と中央ＳＤＮインフラストラクチャインスタンス１２０との組み合わせと見なしてもよい。いくつかの実現例では、分散型ＳＤＮパケットコアシステムは、第１のトランジットネットワーク１５も含み得る。いくつかの実現例では、分散型ＳＤＮパケットコアシステムは、第２のトランジットネットワーク１８も含み得る。（図１を参照して説明する）分散型ＳＤＮパケットコアシステムのアーキテクチャにより、データトラフィックをルーティングして、局所的に、たとえばローカルＳＤＮインフラストラクチャインスタンス１１０で、発生させることができる。ＡＰ３０に非常に近接してローカルＳＤＮインフラストラクチャインスタンス１１０を配置し、そこでデータトラフィックを処理することにより、高速データパケット処理が可能になり、そのため性能を向上させてネットワークリソース消費量を減少させることができる。
【００２２】
分散型ＳＤＮパケットコアシステムは、広い地理的領域（１つ以上の州または１つ以上の国など）に広く分散され、当該広い地理的領域に分散された多数のモバイルデバイス２０のモビリティを追跡して管理するように構成され得る。モビリティの追跡および管理は、分散型ＳＤＮパケットコアシステム内に実装されるＳＤＮベースのモビリティ機能によって行うことができる。モビリティ機能のソフトウェア実装は、このような機能のスケーラビリティおよび最適化を可能にする。しかし、モビリティ機能に関連付けられた待ち時間およびスケーラビリティは、利用されるそれぞれのソフトウェア実装に左右される可能性がある。たとえば、ネットワーク機能仮想化（ＮＦＶ）を利用して、クラウド（データセンタ９０または９１など）内の個別のＲＡＴのために別々のモビリティ機能（ＬＴＥのためのモビリティ管理エンティティ（ＭＭＥ）など）を実装する際、所与のＲＡＴのスケーラビリティは、通常、当該ＲＡＴに関連付けられた全てのモビリティ機能を再現することによって実現される。特にローカルＳＤＮインフラストラクチャインスタンスのサブセット内でより多くのモビリティ処理リソースが必要である場合には、大量の維持された状態に関連付けられた非常に複雑な機能を再現することにより、電力および計算リソースの使用が非効率になる可能性がある。また、モビリティ機能の再現は、それぞれの状態の同期を必要とし、そのためパケットコアシステムの複雑性をさらに増加させることになるであろう。さらに、クラウド内にモビリティ機能を実装することにより、モビリティ処理待ち時間が長くなる可能性がある。特に、ローカルＳＤＮインフラストラクチャインスタンス１１０は、（ユーザまたはそれぞれのモバイルデバイス２０の大きな集合体に関連付けられた）人口中心地に近接して配置され得るが、データセンタ（データセンタ９０および９１など）は、遠隔の地理的位置に位置している傾向がある。したがって、モビリティ機能がクラウド内に実装される場合、各モビリティイベントの処理は、データセンタ９１と１つ以上のローカルＳＤＮインフラストラクチャインスタンス１１０との間の長い通信リンクを介するシグナリングを含むことになる。
【００２３】
本開示では、通信環境１０の異なるエンティティ間でのコントロールプレーン（Ｃ−プレーン）トラフィックおよびデータプレーン（Ｄ−プレーン）トラフィックのルーティング、ならびに、ＳＤＮインフラストラクチャインスタンス１１０とそれぞれのコンピュータデバイス１１５または分散型ＳＤＮパケットコアシステム内のコンピュータデバイス１１５およびＳＤＮをそこで実行するＳＤＮ要素との間での負荷分散のために、階層型負荷分散モデル（ＬＢモデル）が利用される。階層型ＬＢモデルは、さまざまなＳＤＮインフラストラクチャインスタンス１１０間に粗いＬＢを適用し、各ＳＤＮインフラストラクチャインスタンス１１０においては当該ＳＤＮインフラストラクチャインスタンス１１０内のコンピュータデバイス１１５とＳＤＮ要素との間にきめ細かい負荷分散を適用するように構成され得る。また、ＬＢモデルは、ＳＤＮインフラストラクチャインスタンス１１０全体が機能しなくなるかまたは管理上稼働停止させられた際の復元を可能にし得る。
【００２４】
図２は、分散型ＳＤＮパケットコアシステム２００に関連付けられたＳＤＮ要素を示すブロック図である。分散型ＳＤＮパケットコアシステム２００は、クラウドベースの中央ＳＤＮインフラストラクチャインスタンス２２０と、複数のローカルＳＤＮインフラストラクチャインスタンス２１０（リージョナルポッド２１０とも称される）とを含む。クラウドベースの中央ＳＤＮインフラストラクチャインスタンス２２０は、サブスクライバデータベース（サブスクライバＤＢ）２２２と、グローバルＳＤＮモビリティコントローラ２２８と、グローバル負荷分散モジュール２２６と、ポリシーデータベース（ポリシーＤＢ）２２４とを含む。各々のリージョナルポッド２１０は、複数のＷｉＦｉフロントエンド（ＷＦＥ）モジュール２１２ａと、複数のＬＴＥフロントエンドモジュール２１２ｂと、認証・承認および課金（ＡＡＡ）プロキシモジュール２１５と、ポリシーモジュール２１６と、ファイアウォール／ネットワークアドレス変換（ＦＷ／ＮＡＴ）モジュール２１７と、合法的傍受器（lawful interceptor）モジュール２１３と、複数のＤ−プレーンアプリケーションインスタンス２１８と、モビリティマネージャ２１４と、ポッドＬＢマネージャ２１９とを含む。各ＷＦＥモジュール２１２は、１つ以上のＷｉＦｉ  ＡＰ２３０ａに通信可能に結合され、１つ以上のＷｉＦｉ  ＡＰ２３０ａを利用する。各ＬＦＥモジュール２１２は、１つ以上のｅＮｏｄｅＢ２３０ｂに通信可能に結合され、１つ以上のｅＮｏｄｅＢ２３０ｂを利用する。
【００２５】
分散型ＳＤＮパケットコアシステム２００のさまざまな機能は、さまざまな分散戦略を要求する特性を有する。サブスクライバデータベース２２２、ポリシーデータベース２２４、グローバルＬＢモジュール２２６およびグローバルＳＤＮモビリティコントローラ２２８などの特定のネットワーク機能またはモジュールは、本来グローバルであって、大型の集中型データセンタにおいて提供される低コストのコンピューティングおよびストレージを活用することができる。その結果、このような機能（またはモジュール）は、クラウドベースの中央ＳＤＮインフラストラクチャインスタンス２２０に存在するように配置される。しかし、パケット処理機能は、待ち時間に影響されやすく、ＲＡＴに特有のＡＰ２３０のできるだけ近くに配備されることによって恩恵を受けることができる。また、ローカルモビリティイベント（すなわち、単一のリージョナルポッド２１０内で発生するモビリティイベント）は、クラウドベースのモビリティ機能を介して処理するよりもリージョナルポッド２１０に存在するローカルモビリティ機能を介して処理した方が効率的であり得る。ローカルモビリティ機能を利用することによって、ユーザモビリティイベントの大半（８５％、９０％、９５％または他の割合など）がローカルモビリティイベントとして処理されるようにリージョナルポッド２１０を配置することができる。たとえば、各々のリージョナルポッド２１０は、それぞれの都市圏を利用するように配置されてもよく、当該都市圏に居住するユーザに関連付けられたモバイルデバイス２０は、当該都市圏を利用するリージョナルポッド２１０に接続してもよく、それぞれのホームポッドとして当該リージョナルポッド２１０と関連付けてもよい。分散型ＳＤＮパケットコアシステム２００では、待ち時間に影響されやすいネットワーク機能およびローカルな性質のネットワーク機能は、クラウドではなくリージョナルポッド２１０内に存在するように配置される。
【００２６】
サブスクライバデータベース２２２は、ユーザＩＤ、デバイスＩＤ、ユーザ／デバイス承認情報、ユーザ／デバイス認証情報、ユーザ／デバイス課金情報、またはそれらの組み合わせなどの、分散型ＳＤＮパケットコアシステム２００のサブスクライバユーザに関連する情報を維持し得る。ポリシーデータベース２２４は、各々のサブスクライバユーザまたはそれぞれのデバイスに関連付けられた通信（またはセッション）に適用されるポリシーを示す情報を維持し得る。サブスクライバデータベース２２２もポリシーデータベース２２４も、さまざまなリージョナルポッド２１０からクエリを受信して応答するように構成され得る。
【００２７】
グローバルＬＢモジュール２２６は、コントロールプレーンまたはデータプレーン処理要求をリージョナルポッド２１０にルーティングするように構成される。また、グローバルＬＢモジュール２２６は、リージョナルポッド２１０間の処理／計算負荷を分散させるように構成される。グローバルＳＤＮモビリティコントローラ２２８は、ポッド間モビリティイベント（すなわち、モバイルデバイス２０が別々のリージョナルポッド２１０に関連付けられた２つのＡＰ２３０間でローミングを行うイベント）を追跡し、このようなモビリティイベントをさまざまなリージョナルポッドに通知するように構成される。
【００２８】
各々のリージョナルポッド２１０は、複数のＷｉＦｉ  ＡＰ２３０ａおよびｅＮｏｄｅＢ２３０ｂ（本明細書では一般にＲＡＴに特有のＡＰ２３０と称される）を利用するように構成される。一般に、各々のリージョナルポッド２１０は、少なくとも１つのＲＡＴに関連付けられた複数のＲＡＴに特有のＡＰ２３０のそれぞれを利用するように構成され得る。ＲＡＴに特有のＡＰ２３０は、ＷｉＦｉ  ＡＰ（またはＷｉＦｉホットスポットＡＰ）２３０ａ、ＬＴＥに関連付けられた進化型ノードＢ（ｅＮｏｄｅＢ）２３０ｂ、３Ｇネットワークに関連付けられたノードＢ（ＮｏｄｅＢ）、他の無線アクセスポイント、またはそれらの組み合わせを含み得る。すなわち、図２はＷｉ−Ｆｉ  ＡＰ２３０ａとｅＮｏｄｅＢ２３０ｂとを示しているが、一般に、分散型ＳＤＮパケットコアシステム２００は、ＡＰ２３０のいずれかの組み合わせを利用し得る。また、図２は、ＷＦＥモジュール２１２ａおよびＬＦＥモジュール２１２ｂを含むようにリージョナルポッド２１０を示しているが、一般に、各々のリージョナルポッド２１０は、少なくとも１つのＲＡＴに関連付けられた複数のＲＡＴに特有のＦＥモジュール２１２を含み得る。ＲＡＴに特有のＦＥモジュール２１２は、ＷＦＥモジュール２１２ａ、ＬＦＥモジュール、（ＮｏｄｅＢを提供するための）第三世代（３Ｇ）ＦＥモジュール、他のＲＡＴに関連付けられたＦＥモジュール、またはそれらの組み合わせを含み得る。
【００２９】
モバイルデバイス２０は、ＲＡＴに特有のＡＰ２３０のうちの１つを介して分散型ＳＤＮパケットコアシステム２００に接続し得る。たとえば、モバイルデバイス２０は、たとえばリージョナルポッド２１０によってサポートされる各ＲＡＴに関する信号強度、通信コストまたはユーザサブスクリプションに基づいて、所与のＲＡＴに関連付けられた所与のＲＡＴに特有のＡＰ２３０に接続してもよい。所与のＲＡＴに関連付けられた各々のＲＡＴに特有のＡＰ２３０は、メトロポリタンエリアネットワーク１２（図１に図示）を介して、当該ＲＡＴに関連付けられたＲＡＴに特有のＦＥモジュール２１２に通信可能に結合され得る。たとえば、リージョナルポッド２１０によって利用されるＷｉＦｉ  ＡＰ２３０ａは、当該リージョナルポッド２１０内のＷＦＥモジュール２１２ａに通信可能に結合されてもよい。同様に、リージョナルポッド２１０によって利用されるｅＮｏｄｅＢ２３０ｂは、当該リージョナルポッド２１０のＬＦＥモジュール２１２ｂに通信可能に結合されてもよい。一般に、分散型ＳＤＮパケットコアシステム内の少なくとも２つのＬＭＤ２１０の各々は、１つ以上のＲＡＴに関連付けられたＲＡＴに特有のＦＥモジュール２１２を含む。
【００３０】
いくつかの実現例では、各々のＲＡＴに特有のＦＥモジュール２１２は、１つ以上のオーバーレイトランスポートトンネル２３５を介して、ＲＡＴに特有のＡＰ２３０と通信するように構成され得る。たとえば、各ＷＦＥモジュール２１２ａは、イーサネット・オーバー・ＩＰ（ＥｏＩＰ）トンネルを介してＷｉＦｉ  ＡＰ２３０ａと通信するように構成されてもよい。ＥｏＩＰトンネルを使用して、ＷｉＦｉ  ＡＰ２３０ａは、ＵＥ８０２．３フレームなどのデータがＷＦＥモジュール２１２ａを自律的に通り抜けるようにし得る。いくつかの実現例では、ＲＡＴに特有のＡＰ２３０をそれぞれのＲＡＴに特有のＦＥモジュール２１２に結合するオーバーレイトランスポートトンネル２３５としては、ジェネリックＵＤＰカプセル化（ＧＵＥ）トンネル、ジェネリック経路カプセル化（ＧＲＥ）トンネル、イーサネット・オーバー・ＧＲＥトンネル、８０２．１１・オーバー・ＧＵＥトンネル、汎用パケット無線サービス（ＧＰＲＳ）トンネリングプロトコル（ＧＴＰ）トンネル、インターネットプロトコルセキュリティ（ＩＰＳｅｃ）トンネル、または他の通信トンネルを挙げることができる。ＲＡＴに特有のＦＥモジュール２１２は、ＲＡＴ内ポッド内モビリティイベントを処理するように構成される。すなわち、所与のリージョナルポッド２１０内の対応するＲＡＴに関連付けられた各々のＲＡＴに特有のモジュール２１２は、当該ＲＡＴに関連付けられかつ当該所与のリージョナルポッド２１０によって利用されるＲＡＴに特有のＡＰ２３０間のモビリティイベントを処理するように構成される。いくつかの実現例では、各々のＲＡＴに特有のＦＥモジュール２１２は、当該ＲＡＴに特有のＦＥモジュール２１２によって利用される各モバイルデバイス２０を、当該モバイルデバイス２０を利用するＲＡＴに特有のＡＰ２３０にマッピングするレイヤ２（Ｌ２）バインディングのリストを維持するように構成され得る。特に、Ｌ２バインディングは、デバイスＩＤ（デバイス−ＩＤ）とサービングＡＰ  ＩＤ（serving-AP-ID）とのペアリングを含み得る。いくつかの実現例では、デバイス−ＩＤは、モバイルデバイス２０のメディアアクセス制御（ＭＡＣ）アドレスを含み得て、serving-AP-IDは、それぞれのＲＡＴに特有のＡＰ２３０に関連付けられたトンネルエンドポイントＩＤ（ＴＥＩＤ）を含み得る。いくつかの実現例では、各々のＲＡＴに特有のＦＥモジュール２１２は、ＲＡＴ内ポッド内モビリティイベントを処理するためのＲＡＴ  Ｃ−プレーンアプリケーションと、当該ＲＡＴに特有のＦＥモジュール２１２を通り抜けたデータパケットを転送するためのＲＡＴ  Ｄ−プレーンアプリケーションとを含み得る。それぞれのＲＡＴに特有のＦＥモジュール２１２に関連付けられたＲＡＴ  Ｄ−プレーンアプリケーションは、当該ＲＡＴに特有のＦＥモジュール２１２を通り抜けたデータパケットを転送するためのそれぞれのＬ２転送データベース（ＦＤＢ）を利用し得る。
【００３１】
各々のリージョナルポッド２１０は、ＲＡＴ間またはポッド間モビリティイベント（レイヤ３（Ｌ３）モビリティイベントとも称される）を処理するように構成されたモビリティマネージャ２１４を含む。Ｌ３モビリティは、モビリティマネージャ２１４に固定され得る。また、モビリティマネージャ２１４は、分散型ＳＤＮパケットコアシステム２００によって利用されるモバイルデバイス２０のためのインターネットプロトコル（ＩＰ）アンカーの役割を果たすように構成される。特に、各モビリティマネージャ２１４は、Ｌ３  ＵＥ識別子（ＩＰアドレスなど）とそれぞれのＲＡＴに特有のサービングＦＥモジュール２１２の識別子（ＩＰアドレスなど）との間のバインディングを維持し得る。各モビリティマネージャ２１４は、Ｌ３モビリティイベントを処理し、モビリティマネージャ２１４によって維持される転送ルールを更新するように構成された１つ以上のモビリティゲートウェイＣ−プレーンアプリケーションと、モビリティマネージャ２１４において維持されるＬ３転送ルールを使用するデータ転送エンティティの役割を果たすように構成された１つ以上のモビリティゲートウェイＤ−プレーンアプリケーションとを含み得る。モビリティマネージャ２１４に関連付けられたモビリティゲートウェイＤ−プレーンアプリケーションは、モビリティマネージャ２１４を通り抜けたデータパケットを転送するためのそれぞれのＬ３ＦＤＢを利用し得る。Ｌ３ＦＤＢは、分散型ＳＤＮパケットコアシステム２００によって利用される各モバイルデバイス２０について、それぞれのＲＡＴに特有のサービングＦＥモジュール２１２のＩＰアドレスにマッピングされたそれぞれのＩＰアドレスを含み得る。
【００３２】
各々のリージョナルポッド２１０は、当該リージョナルポッド２１０を通り抜けたデータパケットの転送を処理するように構成された複数のＤ−プレーンアプリケーションインスタンス２１８を含む。Ｄ−プレーンアプリケーションインスタンス２１８は、ＲＡＴに特有のＦＥ２１２およびモビリティマネージャ２１４とは別であるものとして図１には示されているが、Ｄ−プレーンアプリケーションインスタンス２１８は、ＲＡＴに特有のＦＥモジュール２１２に関連付けられたＲＡＴ  Ｄ−プレーンアプリケーション２１８と、モビリティマネージャ２１４に関連付けられたモビリティゲートウェイＤ−プレーンアプリケーションとを含んでもよい。
【００３３】
各々のリージョナルポッド２１０は、サブスクライバデータベース２２２からユーザサブスクライバデータを取得し、このようなデータを利用してユーザまたはそれぞれのモバイルデバイス２０を認証、承認または課金するように構成された認証・承認および課金（ＡＡＡ）プロキシモジュール２１５を含む。また、リージョナルポッド２１０は、ポリシーデータベース２２４からユーザポリシー情報を取得し、それぞれのユーザまたはそれぞれのモバイルデバイス２０に関連付けられた通信にユーザポリシーを適用させるように構成されたポリシーモジュール２１６を含む。いくつかの実現例では、リージョナルモジュール２１０は、ＡＡＡプロキシモジュール２１５またはポリシーモジュール２１６の複数のインスタンスを含み得る。
【００３４】
各々のリージョナルモジュール２１０は、サブネットワークまたは所与のユーザグループに関連付けられたデータパケットにたとえばファイアウォールセキュリティ手順を適用するように構成されたＦＷ／ＮＡＴモジュール２１７を含む。いくつかの実現例では、リージョナルポッド２１０は、ＦＷ／ＮＡＴモジュール２１７の複数のインスタンスを含み得る。また、各々のリージョナルモジュール２１０は、データパケットを傍受してそれぞれのヘッダまたはコンテンツ情報さえも検索するように構成された複数の合法的傍受器モジュール２１３を含む。
【００３５】
また、各々のリージョナルポッド２１０は、当該リージョナルポッド２１０内のさまざまなコンピュータデバイスおよびさまざまなＳＤＮ要素のための正常性状態および処理負荷を示す情報を維持するように構成されたポッドＬＢマネージャ２１９を含む。また、ポッドＬＢマネージャ２１９は、それぞれのリージョナルポッド２１０の全体的な正常性状態および処理負荷を示す情報をクラウドベースの中央ＳＤＮインフラストラクチャインスタンス２２０に存在するグローバルＬＢモジュール２２６に通信するように構成され得る。
【００３６】
分散型ＳＤＮパケットコアシステム２００の分散型アーキテクチャおよび多くのＳＤＮ要素のインスタンスにおける冗長性により、分散型ＳＤＮパケットコアシステム２００のロバスト性および復元力を向上させることができる。すなわち、リージョナルポッド２１０またはコンピューティングデバイス１１５がダウンしているかまたは動作していない場合には、他のリージョナルポッド２１０または他のコンピューティングデバイス１１５が、動作していないエンティティの負荷を担うように構成され得る。また、多くのＳＤＮ要素（ＲＡＴに特有のＦＥモジュール２１２、ＬＩモジュール２１３またはＤ−プレーンインスタンス２１８など）のインスタンスにおける冗長性により、処理ボトルネックをもたらし得る単一インスタンスＳＤＮ要素と比較して、それぞれの処理負荷を代わりに分散させることができる。このようなアーキテクチャを最大限に活用するために、階層型であってスケーラブルな負荷分散機構を利用して、リージョナルポッド２１０および／または各々のリージョナルポッド２１０内のコンピューティングデバイス１１５にわたって処理負荷を分散させる。
【００３７】
図３は、図２に示される分散型ＳＤＮパケットコアシステム２００において処理負荷を分散させるための負荷分散（ＬＢ）システム３００およびそれぞれのＬＢ機構を示すブロック図である。ＬＢシステム３００は、クラウド内に存在し、かつ、ＬＢクエリフロントエンドモジュール３４５を含むグローバルＳＤＮ  ＬＢモジュール３４０を含む。また、ＬＢシステム３００は、各々のリージョナルポッド２１０内に、ステートレスＬＢモジュール３２０と、ポッドＬＢマネージャ３３０と、複数のステートフルＬＢモジュール３１５とを含む。以下にさらに詳細に示されるように、ＬＢ機構は、二段階ＬＢプロセスと見なすことができる。
【００３８】
図２および図３を参照して、ＲＡＴに特有のＡＰ２３０などのピアデバイス３０１、または、分散型ＳＤＮパケットコアシステム２００に関連付けられた別のネットワーク要素は、分散型ＳＤＮパケットコアシステム２００のリージョナルポッド２１０によって通知されたサービスＩＰアドレスに基づいて、分散型ＳＤＮパケットコアシステム２００のネットワーク機能インスタンスを発見するように構成され得る。たとえば、ピアデバイス３０１は、分散型ＳＤＮパケットコアシステム２００内で実行されるモビリティコントローラ（またはそのモビリティ機能）を発見しようと試みるｅＮｏｄｅＢ２３０ｂまたはＷｉ−Ｆｉ  ＡＰ２３０ａであってもよい。
【００３９】
いくつかの実現例では、各々のリージョナルポッド２１０は、複数のサービスＩＰアドレスを外部に公開する（expose）（または通知する）ように構成され得る。いくつかの実現例では、所与のリージョナルポッド２１０のための通知されたＩＰアドレスは、必ずしも当該リージョナルポッド２１０のコンピューティングデバイス１１５の数を反映しているとは限らない。通知されたＩＰアドレスの数をコンピューティングデバイス１１５の数から切り離して考えることによって、各々のリージョナルポッド２１０内のそれぞれのコンピューティングデバイス１１５の内部正常性状態および動作状態（メンテナンスイベントなど）は、ピアデバイス３０１から見えにくくなり得る。たとえば、予定されたイベント（たとえば、ソフトウェアアップグレード）または予定外のイベント（たとえば、ハードウェア故障）によって、それぞれのリージョナルポッド２１０内のコンピューティングデバイス１１５が稼働停止させられると、当該リージョナルポッド２１０に接続するためにピアデバイス３０１が使用するＩＰアドレスは、変更する必要がない。いくつかの実現例では、各々のリージョナルポッド２１０について通知されるＩＰアドレスの数は、一般に、リージョナルポッド２１０内のコンピューティングデバイス１１５の数よりもはるかに少ない（たとえば、１つのＩＰアドレス）。
【００４０】
いくつかの実現例では、グローバルＬＢモジュール３４０は、ピアデバイス３０１が特定のリージョナルポッド２１０を位置付けることを可能にするように構成される。特に、ピアデバイス３０１は、分散型ＳＤＮパケットコアシステム２００の特定のネットワーク機能に関してそれぞれのＬＢクエリフロントエンドモジュール３４５を介してグローバルＬＢモジュール３４０に照会し得る。このようなクエリに応答して、グローバルＬＢモジュール３４０は、ピアデバイス３０１を利用するための特定のリージョナルポッド２１０を選択し、その表示をピアデバイス３０１に送信し得る。ＬＢクエリフロントエンドモジュール３４５は、ピアデバイス３０１のタイプに基づいて異なるプロトコルを公開するように構成され得る。たとえば、ＬＢクエリフロントエンドモジュール３４５は、接続アドレスを選択するためにＤＮＳ解決をどのようにして使用するかということしか知らないピアデバイス３０１のＤＮＳインターフェイスを公開してもよい。他のピアデバイス３０１については、ＬＢクエリフロントエンドモジュール３４５は、接続アドレスについてグローバルＬＢモジュール３４０に照会するためにピアデバイス３０１のＨＴＴＰインターフェイスを公開してもよい。
【００４１】
グローバルＬＢモジュール３４０は、ピアデバイス３０１の位置、１つ以上のリージョナルポッド２１０の現在の正常性（または動作）状況および負荷状況、またはそれらの組み合わせに基づいてリージョナルポッド２１０を選択し得る。いくつかの実現例では、グローバルＬＢモジュール３４０は、無線アクセスネットワーク上の（たとえば、各々の／２４  ＩＰｖ４サブネットの）各々の潜在的なサブネットブロックから各々のリージョナルポッド２１０までの待ち時間を示す情報を維持するように構成され得る。また、グローバルＬＢモジュールは、たとえば各々のリージョナルポッド２１０の有効容量（または相対的有効容量）を示す情報をそれぞれのポッドＬＢマネージャ３３０から受信するように構成され得る。たとえば、所与のリージョナルポッドの相対有効容量は、０〜１００の数字であってもよく、１００は、リージョナルポッド２１０がフル容量を有することを意味し、０は、リージョナルポッド２１０がビジー状態であるか、または、動作しておらず要求を提供することができないことを意味する。いくつかの実現例では、要求がピアデバイス３０１から受信されると、グローバルＬＢモジュール３４０は、最低待ち時間を有するリージョナルポッド２１０を選択し得る。２つのリージョナルポッド２１０が同様の待ち時間を有する場合には、グローバルＬＢモジュール３４０は、最も有効な容量を有するリージョナルポッド２１０を選択し得る。いくつかの実現例では、グローバルＬＢモジュール３４０は、待ち時間メトリックとポッド容量メトリックとの加重和として定義されるスコアに基づいてリージョナルポッド２１０を選択するように構成され得る。
【００４２】
ピアデバイス３０１が選択されたリージョナルポッド２１０に向けられると、当該選択されたリージョナルポッド２１０内できめ細かい負荷分散が局所的に実行され得る。リージョナルポッドにおける局所的負荷分散は、２つの負荷分散レベルを含み得る。第１のレベルでは、選択されたリージョナルポッド２１０のステートレスＬＢモジュール３２０によって処理要求（またはそのデータパケット）が受信される。ステートレスＬＢモジュール３２０は、受信したデータパケット（ＩＰ５タプルなど）の１つ以上のフィールドを検索し、検索されたフィールドを使用して、受信したデータパケットをリージョナルポッド２１０内の利用可能なコンピューティングデバイス１１５のうちの１つに仕向けるように構成され得る。いくつかの実現例では、ステートレスＬＢモジュール３２０は、各コンピューティングデバイス１１５によってサポートされるネットワーク機能、１つ以上のコンピューティングデバイスの動作状態、１つ以上のコンピューティングデバイス１１５の負荷状態、またはそれらの組み合わせに基づいて、リージョナルポッド２１０内のコンピューティングデバイス１１５を選択し得る。いくつかの実現例では、ステートレスＬＢモジュール３２０は、ラウンドロビンパターンに従って、ピアデバイス３０１から受信した処理要求をさまざまなコンピューティングデバイス１１５に仕向けるように構成され得る。
【００４３】
いくつの実現例では、ステートレスＬＢモジュール３２０は、受信したデータパケットがステートレスデータパケット処理タスクに関連付けられているかステートフルデータパケット処理タスクに関連付けられているかを判断するように構成され得る。受信したデータパケットがステートレスデータ処理タスクに関連付けられているとステートレスＬＢモジュール３２０が判断すると、ステートレスＬＢモジュール３２０は、選択されたコンピューティングデバイス１１５内でそれぞれのステートレスネットワーク機能を実行するように構成されたＳＤＮ要素３１１に直接データパケットを仕向けるように構成され得る。しかし、受信したデータパケットがステートフルデータ処理タスクに関連付けられているとステートレスＬＢモジュール３２０が判断すると、ステートレスＬＢモジュール３２０は、選択されたコンピューティングデバイス１１５内のステートフルＬＢモジュール３１５にデータパケットを仕向け得る。一般に、局所的負荷分散の第１のレベルは、（たとえば、局所的負荷分散の第２のレベルと比較して）比較的高速で実行され得る。なぜなら、局所的負荷分散の第１のレベルは、データパケットのＩＰ接続フィールドに基づいて実行可能であり、したがって、データパケットの複雑なパージングを伴わないからである。
【００４４】
分散型ＳＤＮパケットコアシステム２００における多くのパケット処理タスクは、ステートフルであり、複数のデータパケットにわたる１つ以上の状態の追跡を必要とする。所与の通信セッションに関連付けられ（またはモバイルデバイス２０に関連付けられ）かつそれぞれのステートフルデータ処理タスクに関連付けられたデータパケットの処理をリージョナルポッド２２０内の複数のコンピューティングデバイス１１５に割り当てることにより、スケーラブルでない局所的負荷分散機構がもたらされるであろう。特に、このような割り当ての結果、複数のコンピューティングデバイス１１５の各々がデータパケットの状態を維持することになり、複数のコンピューティングデバイス１１５間の同期を必要とするであろう。いくつかの実現例では、リージョナルポッド２１０内の特定のコンピューティングデバイス１１５は、所与の通信セッションに関連付けられ（またはモバイルデバイス２０に関連付けられ）かつそれぞれのステートフルデータ処理タスクに関連付けられたデータパケットを処理するように指定され、このようなデータパケットのための「ホームホスト」と称される。たとえば、ＬＦＥモジュール２１２ｂでは、例示的なホームホストは、特定の汎用パケット無線サービス（ＧＰＲＳ）トンネリングプロトコル（ＧＴＰ）セッションのための状態を保持するコンピューティングデバイス１１５であってもよい。いくつかの実現例では、各々のリージョナルポッド２１０内の各コンピューティングデバイス１１５は、受信データパケットを「正しい」ホームホストに仕向けるためのそれぞれのステートフルＬＢモジュール３１５を含む。いくつかの実現例では、リージョナルポッド２１０内のコンピューティングデバイス１１５のサブセットのみがそれぞれのステートフルＬＢモジュール３１５を含む。任意のリージョナルポッド２１０内のステートフルＬＢモジュール３１５は、受信データパケットをそれぞれのホームホストに仕向けるステートフルＬＢ層を形成する。データパケットを受信すると、選択されたコンピューティングデバイス１１５のステートフルＬＢモジュール３１５は、ステートフルデータパケット処理タスクに従ってデータパケットを処理するためのコンピューティングデバイス１１５を決定するように構成され得る。
【００４５】
ステートフルＬＢモジュール３１５は、複雑なパケットヘッダ（種類−長さ−値（ＴＬＶ）構造など）をパーズするように構成され得る。いくつかの実現例では、データパケットヘッダをパーズすることは、ステートフルＬＢモジュール３１５がたとえばデータパケットヘッダを復号化して、特定のアプリケーションを示すアプリケーション識別子、セッション識別子または他のヘッダフィールドパラメータ、データセッション、またはそれぞれのステートフルデータ処理タスクに関連付けられた他の特徴を決定することを含み得る。ステートフルデータパケット処理タスクが判断されると、ステートフルＬＢモジュール３１５は、決定されたステートフルデータパケット処理タスクをデータパケットに適用するためのコンピューティングデバイス１１５を決定し得る。いくつかの実現例では、ステートフルＬＢモジュール３１５は、受信したデータパケットを処理するためにコンピューティングデバイス１１５を割り当てるための１つ以上のデータ構造（ルックアップテーブルなど）を維持して利用し得る。いくつかの実現例では、ステートフルＬＢモジュール３１５は、ＳＤＮ要素３１１（またはそれぞれのネットワーク機能）を示す論理識別（論理ＩＤ）にデータパケットフィールド値をマッピングする第１のルックアップテーブルと、ＳＤＮ要素３１１をそれぞれのホストコンピューティングデバイス１１５にマッピングするための第２のルックアップテーブルとを維持し得る。いくつかの実現例では、ステートフルＬＢモジュール３１５は、データパケットに適用されるステートフルネットワーク機能を示すデータパケットフィールド値を、ステートフルネットワーク機能を実行するためのＳＤＮ要素３１１を提供するコンピューティングデバイス１１５に直接マッピングすることを可能にする単一のルックアップテーブルを維持し得る。いくつかの実現例では、複数のコンピューティングデバイス１１５が、開始されるセッションについてデータパケットに適用されるネットワーク機能を実行するためにＳＤＮ要素３１１を提供すると判断されると、ステートフルＬＢモジュール３１５は、動作しており（または正常であり）かつ複数の判断されたコンピューティングデバイス１１５の中で処理負荷が最も少ないコンピューティングデバイス１１５を選択し得る。コンピューティングデバイスが、ステートフルデータパケット処理タスクを伴う所与の通信セッション（またはモバイルデバイス２０）のためのホームホストとして割り当てられると、当該セッション（またはモバイルデバイス２０）の全てのデータパケットは、割り当てられたホストホームに仕向けられる。
【００４６】
例示的な例として、汎用パケット無線サービス（ＧＰＲＳ）トンネリングプロトコル（ＧＴＰ）に従ってカプセル化されたデータパケットでは、ステートフルＬＢモジュール３１５は、当該データパケットを脱カプセル化して、ＧＴＰユーザプレーン（ＧＴＰ−Ｕ）ヘッダからトンネルエンドポイントＩＤ（ＴＥＩＤ）を検索するように構成され得る。次いで、ステートフルＬＢモジュール３１５は、当該ＴＥＩＤを、コンピューティングデバイス１１５（データパケットを処理するためのＲＡＴに特有のＦＥモジュール２１２を提供するコンピューティングデバイス１１５など）に関連付け得る。いくつかの実現例では、ステートフルＬＢモジュール３１５がデータパケットをサービングコンピューティングデバイス１１５に関連付けるプロセスは、プロトコルに特有であり得る。
【００４７】
各々のリージョナルポッド２１０において適用される局所的負荷分散機構により、たとえば第１のコンピューティングデバイス１１５を稼働停止させなければならない場合に第１のコンピューティングデバイス１１５の役割（またはネットワーク機能）を第２のコンピューティングデバイス１１５に移すことができる。たとえば、第１のコンピューティングデバイス１１５が（何らかの故障により、またはメンテナンスのために）ダウンすると、ステートレスＬＢモジュール３２０は、データトラフィックを第１のコンピューティングデバイス１１５に仕向けることを停止させ得る。このようなデータトラフィックは、その代わりに、第１のコンピューティングデバイス１１５によって以前に実行されたネットワーク機能を実行するように構成された１つ以上の他のコンピューティングデバイス１１５に仕向けられ得る。このような別々のコンピューティングデバイス１１５に割り当てられた役割（またはタスク）の変更は、リージョナルポッド内に内在し、外部ピア３０１に対してトランスペアレントではない。
【００４８】
各々のリージョナルポッド２１０は、当該リージョナルポッド２１０内のさまざまなコンピューティングデバイス１１５およびＳＤＮ要素３１１のための正常性（または動作）情報および負荷情報を収集するように構成されたポッドＬＢマネージャ３３０を含む。正常性（または動作）情報は、各ＳＤＮ要素３１１が正常に動作しているか否か、または、コンピューティングデバイス１１５が動作しているかダウンしているかを示す情報を含む。負荷情報は、中央演算処理装置（ＣＰＵ）利用、メモリ利用、ネットワークリンク利用、ＳＤＮ要素に関連付けられたキューの状態、さまざまなＳＤＮ要素に関連付けられた処理時間、他の要因、またはそれらの組み合わせなどの情報を含む。ポッドＬＢマネージャ３３０は、このような情報を、ＳＤＮ要素３１１、ステートレスＬＢモジュール３２０、ステートフルＬＢモジュール３１５、またはそれらの組み合わせが利用できるようにして、Ｃ−プレーンシグナリングおよび負荷分散で使用されるようにするように構成され得る。たとえば、新たなセッションが確立されると、ステートレスＬＢモジュール３２０またはステートフルＬＢモジュール３１５は、このようなセッションを確立するための要求（またはデータパケット）を、処理負荷が最も少ない正常な（または動作している）コンピューティングデバイス１１５またはＳＤＮ要素３１１に仕向け得る。第１のＳＤＮ要素３１１が第２のＳＤＮ要素３１１のサービスを要求する場合、第１のＳＤＮ要素３１１は、ポッドＬＢマネージャ３３０によって提供される正常性情報および負荷情報を使用して、第２のＳＤＮ要素３１１の正常で負荷が最も少ないインスタンスを判断し得る。
【００４９】
ポッドＬＢマネージャ３３０は、ポッド選択決定を行う際に使用されるリージョナルポッド２１０についての累積正常性情報および負荷情報をグローバルＬＢモジュール３４０に知らせるように構成され得る。グローバルＬＢモジュール３４０に知らせられる情報は、リージョナルポッドの動作状態（動作しているかダウンしているかなど）、リージョナルポッドの相対有効処理容量、リージョナルポッド２１０内の各コンピューティングデバイス１１５の相対有効容量、またはそれらの組み合わせを示す情報を含み得る。いくつかの実現例では、ポッドＬＢマネージャ３３０は、リージョナルポッド２１０内の各コンピューティングデバイス１１５および各ＳＤＮ要素３１１についての正常性情報および負荷情報などの、リージョナルポッド２１０についての詳細な正常性情報および負荷情報をグローバルＬＢモジュール３４０に知らせるように構成され得る。グローバルＬＢモジュール３４０は、正常性情報および負荷情報をさまざまなリージョナルポッド２１０から収集し、収集された情報を使用して、リージョナルポッド２１０間で処理負荷を分散させたり、負荷または動作していないかまたは可用性が低下した（または有効容量が低下した）別のリージョナルポッドの負荷の一部を引き受けるように１つ以上のリージョナルポッド２１０を選択するように構成され得る。いくつかの実現例では、別々のリージョナルポッド２１０によって利用される都市圏間に（またはその境界に）位置するモバイルデバイス２０について、グローバルＬＢモジュール３４０は、リージョナルポッド２１０の正常性情報および負荷情報に基づいて、このようなモバイルデバイス２０に関連付けられたデータパケットを仕向けるように構成され得る。
【００５０】
リージョナルポッド２１０の個別のＳＤＮエンティティ間のシグナリングのための上記のトランスポートプロトコルは、遠隔手続き呼び出し（ＲＰＣ）によって実現されてもよい。すなわち、リージョナルポッド２１０の個別のＳＤＮエンティティ間のメッセージは、シグナリングのために特別なプロトコル層（ＧＴＰ、ＰＭＩＰｖ６など）を必要とすることなく、またはメッセージ検証（ＩＰＳｅｃなど）のためのいかなるさらなる層も必要とすることなく、有効なＲＰＣとして伝えることができる。
【００５１】
本明細書に記載されている主題および動作の実現例は、デジタル電子回路で実現されてもよく、または本明細書に開示されている構造およびそれらの構造的等価物を含む、有形の媒体、ファームウェアもしくはハードウェアに組み入れられたコンピュータソフトウェアで実現されてもよく、またはそれらの１つ以上の組み合わせで実現されてもよい。本明細書に記載されている主題の実現例は、有形の媒体に組み入れられた１つ以上のコンピュータプログラム、すなわちコンピュータプログラム命令の１つ以上のモジュールとして実現されてもよく、当該コンピュータプログラム命令は、１つ以上のコンピュータ記憶媒体上で符号化されて、データ処理装置によって実行され、またはデータ処理装置の動作を制御する。コンピュータ記憶媒体は、コンピュータ読取可能な記憶装置、コンピュータ読取可能な記憶基板、ランダムもしくはシリアルアクセスメモリアレイもしくはデバイス、またはそれらの１つ以上の組み合わせであってもよく、またはそれらに含まれてもよい。また、コンピュータ記憶媒体は、１つ以上の別々のコンポーネントまたは媒体（たとえば、複数のＣＤ、ディスク、または他の記憶装置）であってもよく、またはそれらに含まれてもよい。コンピュータ記憶媒体は、有形であってもよく、非一時的であってもよい。
【００５２】
本明細書に記載されている動作は、１つ以上のコンピュータ読取可能な記憶装置に格納されるかまたは他のソースから受信されるデータに対してデータ処理装置によって実行される動作として実現されてもよい。また、プロセスおよび論理フローは、特殊目的論理回路、たとえばＦＰＧＡ（フィールドプログラマブルゲートアレイ）またはＡＳＩＣ（特定用途向け集積回路）によって実行されてもよく、装置もこのような特殊目的論理回路として実現されてもよい。
【００５３】
本明細書は多くの具体的な実現例の詳細を含んでいるが、これらは、いずれの発明または記載され得る内容の範囲に対しても限定として解釈されるべきではなく、特定の発明の特定の実現例に特有の特徴を説明するものとして解釈されるべきである。別々の実現例の文脈の中で本明細書に記載されている特定の特徴は、組み合わせて単一の実現例において実現されてもよい。逆に、単一の実現例の文脈の中で記載されているさまざまな特徴は、複数の実現例において別々に実現されてもよく、または任意の好適なサブコンビネーションで実現されてもよい。さらに、特徴は特定の組み合わせで機能するものとして上記され、当初はそのようなものとしてクレームされていたが、記載の組み合わせからの１つ以上の特徴は、場合によっては当該組み合わせから削除されてもよく、記載の組み合わせは、サブコンビネーションまたはサブコンビネーションの変形例に向けられてもよい。
【００５４】
「または」への言及は、「または」を使用して記載されているいかなる用語も、記載されている用語のうちの１つ、２つ以上および全てのいずれかを示すように包括的であるものとして解釈され得る。「第１の」、「第２の」、「第３の」などの表示は、必ずしも順序付けを示すよう意図されているわけではなく、一般に同様または類似の項目または要素を区別するために使用しているに過ぎない。
【００５５】
このように、主題の特定の実現例について説明してきた。他の実現例も以下の特許請求の範囲の範囲内である。場合によっては、特許請求の範囲に記載されている動作は、異なる順序で実行されてもよく、それでもなお望ましい結果を達成することができる。また、添付の図面に示されているプロセスは、望ましい結果を達成するために、必ずしも示されている特定の順序またはシーケンシャルな順序を必要とするわけではない。特定の実現例では、マルチタスクまたは並列処理が使用されてもよい。
【図１】
0006513878.tif 000002
【図２】
0006513878.tif 000003
【図３】
0006513878.tif 000004