(57)【要約】  本明細書で開示される実施形態は、待機ノードスイッチオーバーシナリオ中のセキュア接続のための、制御およびデータプランコンテキストを別々に管理するシステムおよび方法に関する。セキュア接続の主ノードおよび待機ノードは両方とも、ＩＰｓｅｃなどのセキュア接続のデータプレーンコンテキストを維持できる。主ノードが非アクティブになる場合には、待機ノードは、待機ノードで維持されているセキュア接続のためのデータプレーンコンテキストを使用して、データプレーントラフィックの処理を即座に開始できる。制御プレーンコンテキストのプログラミングおよびアクティブ化に必要な制御プレーン情報は、必要になるまで保存できる。スイッチオーバー中に、待機ノードはデータプレーントラフィックの処理を開始した後、制御プレーン情報を検索し、制御プレーンコンテキストをアクティブにできる。【選択図】図２
2020522925.tif 000002
【特許請求の範囲】
【請求項１】
セキュア接続のための、制御およびデータコンテキストを別々に管理する方法であって、
アクティブなセキュア接続に関する情報を第２のノードによって受信することであって、前記アクティブなセキュア接続が、第１のノードを通ってルーティングされ、前記アクティブなセキュア接続に関連付けられた制御プレーンパラメータに基づくセキュア制御プレーン接続と、前記アクティブなセキュア接続に関連付けられたデータプレーンパラメータに基づくセキュアデータプレーン接続とを含む、ことと、
前記アクティブなセキュア接続に関連付けられた前記データプレーンパラメータを使用して、待機セキュアデータプレーン接続を前記第２のノードによってプログラミングすることと、
前記アクティブなセキュア接続に関連付けられた前記制御プレーンパラメータの少なくともサブセットを保存することと、
前記第１のノードが非アクティブであるという決定に応じて、
前記待機セキュアデータプレーン接続を通って、前記アクティブなセキュア接続に関連付けられたトラフィックを前記第２のノードによってルーティングすることと、
前記アクティブセキュア接続に関連付けられた前記制御プレーンパラメータの少なくともサブセットを、前記第２のノードによって検索することと、
前記アクティブセキュア接続に関連付けられた前記制御プレーンパラメータの前記検索された少なくともサブセットに基づいて、新しい制御プレーン接続を前記第２のノードによってプログラミングすることと、を含む、方法。
【請求項２】
前記保存することが、前記制御プレーンパラメータの前記少なくともサブセットをデータベースに保存することをさらに含む、請求項１に記載の方法。
【請求項３】
前記データベースが、前記第２のノードに対して物理的に外部にある、請求項２に記載の方法。
【請求項４】
前記保存することが、前記制御プレーンパラメータの前記少なくともサブセットを前記第１のノードによって前記第１のノードおよび前記第２のノードにアクセス可能なデータベースに保存することを含む、請求項１に記載の方法。
【請求項５】
前記決定が、前記アクティブなセキュア接続に関連付けられたデータトラフィックの受信に応じて、前記第２のノードによって行われる、請求項１に記載の方法。
【請求項６】
前記決定が、前記第１のノードが非アクティブであるという通知の受信に応じて、前記第２のノードによって行われる、請求項１に記載の方法。
【請求項７】
前記アクティブなセキュア接続が、インターネットプロトコルセキュリティ（ＩＰＳｅｃ）接続を含む、請求項１に記載の方法。
【請求項８】
前記第１および第２のノードが、仮想進化パケットデータゲートウェイ、システムアーキテクチャ進化（ＳＡＥ）ゲートウェイ、パケットデータネットワーク（「ＰＤＮ」）ゲートウェイ、グローバルデータ同期ネットワーク（ＧＤＳＮ）、またはＮ３ＩＷＦノードを含む、請求項１に記載の方法。
【請求項９】
前記制御プレーンパラメータが、
ＩＰアドレス、
前記アクティブなセキュア接続のための識別子、
前記セキュア制御プレーン接続に関連付けられた認証アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた暗号化アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた少なくとも１つの認証キー、または
前記セキュア制御プレーン接続に関連付けられた少なくとも１つの暗号化キー、のうちの少なくとも１つを含む、請求項１に記載の方法。
【請求項１０】
前記データプレーンパラメータが、
ＩＰアドレス、
前記アクティブなセキュア接続のための識別子、
前記セキュア制御プレーン接続に関連付けられた認証アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた暗号化アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた少なくとも１つの認証キー、または
前記セキュア制御プレーン接続に関連付けられた少なくとも１つの暗号化キー、のうちの少なくとも１つを含む、請求項１に記載の方法。
【請求項１１】
前記アクティブなセキュア接続が、ユーザーと前記第１のノードとの間の接続を含む、請求項１に記載の方法。
【請求項１２】
前記アクティブなセキュア接続が、前記第１のノードとＩＰベースのサーバとの間の接続を含む、請求項１に記載の方法。
【請求項１３】
セキュア接続のための、制御およびデータコンテキストを別々に管理するコンピュータシステムであって、
前記コンピュータシステム内のプロセッサと、
前記プロセッサと通信するメモリと、を備え、前記メモリが、
アクティブなセキュア接続に関する情報を受信することであって、前記アクティブなセキュア接続が、第１のノードを通ってルーティングされ、前記アクティブなセキュア接続に関連付けられた制御プレーンパラメータに基づくセキュア制御プレーン接続と、前記アクティブなセキュア接続に関連付けられたデータプレーンパラメータに基づくセキュアデータプレーン接続とを含む、ことと、
前記アクティブなセキュア接続に関連付けられた前記データプレーンパラメータを使用して、待機セキュアデータプレーン接続をプログラミングすることと、
前記アクティブなセキュア接続に関連付けられた前記制御プレーンパラメータの少なくともサブセットを保存することと、
前記第１のノードが非アクティブであるという決定に応じて、
前記待機セキュアデータプレーン接続を通って、前記アクティブなセキュア接続に関連付けられたトラフィックをルーティングすることと、
前記アクティブなセキュア接続に関連付けられた前記制御プレーンパラメータの少なくともサブセットを検索することと、
前記アクティブなセキュア接続に関連付けられた前記制御プレーンパラメータの前記検索された少なくともサブセットに基づいて、新しい制御プレーン接続をプログラミングすることと、を前記プロセッサに行わせるように構成された命令を含む、コンピュータシステム。
【請求項１４】
前記メモリが、前記プロセッサに、前記制御プレーンパラメータの前記少なくともサブセットをデータベースに保存させる命令をさらに含む、請求項１３に記載のシステム。
【請求項１５】
前記データベースが、前記第２のノードに対して物理的に外部にある、請求項１４に記載のシステム。
【請求項１６】
前記決定が、前記セキュア接続に関連付けられたトラフィックの受信に応じて行われる、請求項１３に記載のシステム。
【請求項１７】
前記決定が、前記第１のノードが非アクティブであるという通知の受信に応じて行われる、請求項１３に記載のシステム。
【請求項１８】
前記セキュア接続が、インターネットプロトコルセキュリティ（ＩＰＳｅｃ）接続を含む、請求項１３に記載のシステム。
【請求項１９】
前記第１および第２のノードが、仮想進化パケットデータゲートウェイ、システムアーキテクチャ進化（ＳＡＥ）ゲートウェイ、パケットデータネットワーク（「ＰＤＮ」）ゲートウェイ、グローバルデータ同期ネットワーク（ＧＤＳＮ）、またはＮ３ＩＷＦノードを含む、請求項１３に記載のシステム。
【請求項２０】
前記制御プレーンパラメータが、
ＩＰアドレス、
前記アクティブなセキュア接続のための識別子、
前記セキュア制御プレーン接続に関連付けられた認証アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた暗号化アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた少なくとも１つの認証キー、または
前記セキュア制御プレーン接続に関連付けられた少なくとも１つの暗号化キー、のうちの少なくとも１つを含む、請求項１３に記載のシステム。
【請求項２１】
前記データプレーンパラメータが、
ＩＰアドレス、
前記アクティブなセキュア接続のための識別子、
前記セキュア制御プレーン接続に関連付けられた認証アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた暗号化アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた少なくとも１つの認証キー、または
前記セキュア制御プレーン接続に関連付けられた少なくとも１つの暗号化キー、のうちの少なくとも１つを含む、請求項１３に記載のシステム。
【請求項２２】
前記アクティブなセキュア接続が、ユーザーと前記第１のノードとの間の接続を含む、請求項１３に記載のシステム。
【請求項２３】
前記アクティブなセキュア接続が、前記第１のノードとＩＰベースのサーバとの間の接続を含む、請求項１３に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
この出願は、２０１７年５月３１日に出願された「ＤＥＣＯＵＰＬＥＤ  ＣＯＮＴＲＯＬ  ＡＮＤ  ＤＡＴＡ  ＰＬＡＮＥ  ＳＹＮＣＨＲＯＮＩＺＡＴＩＯＮ  ＦＯＲ  ＩＰＳＥＣ  ＧＥＯＧＲＡＰＨＩＣ  ＲＥＤＵＮＤＡＮＣＹ」と題する米国特許仮出願第６２／５１２，８９５号に対する、３５Ｕ．Ｓ．Ｃ．§１１９（ｅ）の下での利益を主張し、その内容が参照により本明細書に組み込まれる。
【０００２】
本開示は、モバイルネットワークにおける制御プレーンおよびデータプレーンのトラフィックを制御するシステムおよび方法に関し、特に、インターネットプロトコルセキュリティ（ＩＰｓｅｃ）地理的冗長性のための制御プレーンおよびデータプレーンの同期を分離するシステムおよび方法に関する。
【背景技術】
【０００３】
ＩＰｓｅｃトンネルを終端するＶＰＮゲートウェイおよびｅＰＤＧなどのネットワーク要素のステートフル（ｓｔａｔｅｆｕｌ）な地理的冗長性には、アクティブノードと待機ノード間で大量の長期的なトンネルごとの状態情報の同期が必要である。例えば、ネットワークの異常時には、アクティブノードに障害が発生し、ユーザーのセッションの状態を待機ノードで回復する必要があり、待機ノードはアクティブな役割に切り替わる。待機ノードがアクティブな役割に切り替わると、様々な制御機能とデータパス機能をできるだけ速くプログラミングしてアクティブにする必要がある。アクティブトンネルが多数あるセキュリティゲートウェイの場合、このプログラミング段階は非効率的であり、数秒かかる可能性があり、パケット損失が長くなり、アプリケーションがそこから復旧できなくなる可能性がある。一部の既存の復旧ソリューションでは、制御プレーンおよびデータプレーンの両方の情報が待機ノードに保存される場合がある。ネットワークの異常時には、制御プレーンおよびデータプレーンの両方の機能をプログラミングおよびアクティブ化する必要があり、復旧時間が長くなる。一方、制御プレーンおよび待機ノードのプレーンの両方の「ライブ」セッション情報を維持すると、プロセッサおよびメモリのリソースを大量に消費する。他の復旧ソリューションは、他の優先度の低いセッションを復旧する前に特定の優先セッションを復旧できる優先順位スキームを採用しているため、長い復旧時間の影響を最小限にすることができる。クラウドネイティブまたは制御／データプレーン分離アーキテクチャ向けに明示的に設計し、かつそれを活用して、効率的な復旧を改善し、ユーザープレーン活動の中断を最小限にする、ＩＰｓｅｃ状態同期技術が不足している。
【図面の簡単な説明】
【０００４】
開示された主題の様々な目的、特徴、および利点は、同様の参照番号が同様の要素を同一視する以下の図面に関連して考慮されるとき、開示された主題の以下の詳細な説明を参照してより完全に理解することができる。
【０００５】
【図１】いくつかの実施形態による、地理的冗長ネットワークシステムを示すシステム図である。
【図２】いくつかの実施形態による、地理的冗長ネットワークシステムを示すシステム図である。
【図３】いくつかの実施形態による、アクティブ地理ノードおよび待機地理ノードを示す図である。
【図４】いくつかの実施形態による、アクティブ状態と待機状態との間の移行を示すフローチャートである。
【図５】いくつかの実施形態による、データプレーンおよび制御プレーン状態の複製およびスイッチオーバーを示すフローチャートである。
【発明を実施するための形態】
【０００６】
本開示は、制御プレーン状態の同期をデータプレーン状態の同期から明示的に分離するシステムおよび方法を記載する。アクティブノードと待機ノードとの間で同期された状態パラメータのサブセットは、データ経路パケット処理機能、すなわちパケットの暗号化および復号化に不可欠であるが、一方、状態パラメータの残りは、段階１および段階２トンネルのキー再生成、デッドピア検出、ＳＰＩ割り当て、モビリティおよびマルチホーミングプロトコル（「ＭＯＢＩＫＥ」）サポートなどの制御プレーン機能に必要である。アクティブノードにトンネルが追加されると、トンネルに関連するデータプレーンおよび制御プレーンの両方の状態情報を、ネットワーク内のそれぞれの待機ロケーションに同期させることができる。待機ノードは、アクティブトンネル制御プレーンおよびアクティブデータプレーンに関連する情報をアクティブノードから受信する。この情報は、アクティブノードにあるトンネルを複製するために待機ノードで使用できる。いくつかの実施形態（例えばクラウドネイティブアプリケーションなど）では、制御プレーンデータを外部データベースに保存できる。
【０００７】
いくつかの実施形態では、スイッチオーバーがトリガーされるとすぐにパケットの処理を開始できるように、データプレーンコンポーネントのみがプログラミングされる。制御プレーンコンポーネントのプログラミングとアクティブ化に必要な情報は、スイッチオーバーがトリガーされるまで保存される。プログラミングとは、データチャネルがまだ積極的にデータを処理しているとは限らない場合でも、即座にデータを処理するのか可能であるデータチャネルを確立することを意味する。待機ノードでデータプレーンコンポーネントがプログラミングされると、アクティブノードが使用できなくなった場合に、待機ノードはアクティブトンネルに関連付けられたデータを処理する準備が整う。
【０００８】
いくつかの実施形態では、ネットワークの異常によってスイッチオーバーをトリガーすることができる。例えば、待機ノードは、待機ノードに接続されたインターフェース（ＢＧＰピアリングインターフェースなど）を監視することによって、アクティブノードがアクティブでなくなったことを検出できる。待機ノードは、アクティブノードとの通信リンクに基づいて、アクティブノードがアクティブでなくなったことを推測できる。例えば、リンク上の活動がアクティブノードは非アクティブであることを示している場合、待機ノードはネットワークの異常が発生したと推測し、スイッチオーバー処理を開始できる。待機ノードは、そうでなければ主ノードによって処理されるトラフィックを受信した場合、アクティブノードがアクティブではなくなったことも検出できる。いくつかの実施形態では、待機ノードは、分散ルート最適化手法によって管理されるルートの重みを監視することにより、主ノードが非アクティブであることを検出できる。例えば、アクティブ主ノードはルートコストが５であると報告する場合があるが、待機ノードはルートコストが１０であると報告する場合がある。この第１の状態では、ルートコストが待機ノードよりも低いため、トラフィックはアクティブ主ノードを経由してルーティングされる。主ノードがアクティブでなくなった場合、そのルートコストは１００になる場合がある。このシナリオでは、ルートコストが低いため、待機ノードが優先ルートになる。いくつかの実施形態では、（例えば、ＥＭＳを介した直接通信により）スイッチオーバーは手動でトリガーすることができる。スイッチオーバーがトリガーされた後、制御プレーンの状態をデータベースから検索し、待機制御ノードでプログラミングすることができる。データプレーンコンポーネントは既にプログラミングされているため、データパケットの処理は即座に開始でき、制御プレーンコンポーネントの復元に必要な時間だけ遅れることはない。つまり、待機ノードがデータプレーン上でデータパケットの処理を開始した後、待機プレーンで制御プレーンリソースを復旧できる。制御プレーン情報（例えば暗号化キー、変換、および制御パケットを復号化する方法に関するその他の情報）は、待機状態中に圧縮および／または保存される場合があり、これにより、制御プレーンリソースが実際に使用される前の割り当てとブロックのために制御プレーンリソースが浪費されるのを防ぐ。
【０００９】
また、以下でより詳細に記載するように、本明細書に記載する分離された同期は、１つ以上のデータプレーンノードから分離する１つ以上の制御プレーンノードが存在する可能性がある制御／データプレーン分割アーキテクチャに自然に適合する。このようなアーキテクチャでは、全ての待機データプレーンノードは、ＩＰｓｅｃ操作に必要な暗号キーでプログラミングすることにより、常に準備を整えることができる。したがって、分散データプレーンの全ての要素が着信ＩＰｓｅｃパケットを処理する準備が整っているため、スイッチオーバー時間はルーティング収束時間によってのみ制限される。その上、制御プレーンノードのスタックとリソース（例えば記憶および処理リソース）は、実際に必要な場合にのみ使用できる。状態情報は、それまでデータベースに保存できる。いくつかの実施形態では、状態情報は、外部データベースに保存できる。
【００１０】
分離された同期アプローチの利点の１つは、制御プレーン／ユーザープレーン分割アーキテクチャのニーズに自然に適合し、拡張できることである。いくつかの実施形態では、制御プレーン情報およびデータプレーン情報の分離により、１つの制御プレーンを複数のデータプレーンに関連付けることが可能になる。１つの制御プレーン要素および複数のデータプレーン要素を有する展開では、データプレーンの状態のみをデータプレーン要素に同期する必要がある。その上、データプレーン状態および制御プレーン状態は、ネットワークの異常によりトリガーされる待機からアクティブな役割への切り替え中の異なる時点で必要になるため、リソースを節約でき、セッションの復元時間を改善できる。制御プレーンの状態は、その状態が実際に必要になるまで外部データベースに保存できる。いくつかの実施形態では、制御プレーン情報は、主ノードと待機ノードの両方にアクセス可能な共通データベースに保存される。この例では、主ノードは共通データベースに制御プレーン情報を保存できる。スイッチオーバーシナリオでは、待機データベースは、主データベースによって以前に共通データベースに保存された制御プレーン情報を検索することができる。別の実施形態では、待機ノードは、主ノードから制御プレーン情報を受信するように構成され、ローカルまたは外部データベースのいずれかにそれを保存することができる。外部データベースは、待機ノードにアクセス可能な任意のデータベースである。
【００１１】
図１は、いくつかの実施形態による、地理的冗長ネットワークシステムを示すシステム図である。この例では、ネットワークノード（ＶｅＰＤＧ１０２およびＶｅＰＤＧ１０４）とユーザーとの間に、信頼できないＷｉ−Ｆｉネットワーク（ＷＬＡＮ１０８）を越えてセキュア接続が確立されている。セキュア接続は、信頼できない接続を越えてＷＬＡＮ１０８との接続をブリッジするために使用される。地理的冗長ネットワークシステムには、主仮想進化パケットデータゲートウェイ（ＶｅＰＤＧ）１０２）、待機ＶｅＰＤＧ１０４、パケットデータネットワークゲートウェイ（ＰＧＷ）１０６、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）１０８、他のモバイルネットワークモジュール１１０、モバイルデバイス１１２、要素管理システム（ＥＭＳ）１１４、および地理リンク１１６が含まれる。ＶｅＰＤＧノードを使用する図１に示される例は非限定的であることを理解されたい。このシステムは、ＩＰＳｅｃ接続または同様なセキュア接続を提供する他のシステムノードにも実装できる。例えば、主ノードと待機ノードは、ＩＰｓｅｃトンネルを越えてＶＰＮ機能を提供するＶＰＮまたは企業ＶＰＮノードにすることができる。また、本明細書に記載する方法およびシステムは、通信ネットワークの将来の世代に適用できることも理解されたい。例えば、本明細書に記載される方法およびシステムは、５Ｇセルラーネットワークに適用することができる。そのような一実施形態では、主および待機ノードは、Ｎ３ＩＷＦノードを含むことができる。
【００１２】
ＶｅＰＤＧ１０２は、信頼できない（暗号化されていない）アクセス（例えば、オープンＷｉ−Ｆｉまたは同等のもの）を使用する音声およびデータトラフィック用のゲートウェイである。ＶｅＰＤＧ１０２は、ユーザー機器（ＵＥ）に対する論理インターフェースであるＳＷｕを介してモバイルデバイス１１２に接続する。ＶｅＰＤＧ１０２は、ＳＷｎを通ってアクセスネットワーク（例えば、ＷＬＡＮ１０８）と通信する。ＶｅＰＤＧ１０２は主ノードであり、その責任を待機ノードに転送する必要があるときまでアクティブのままである。この転送は、ＶｅＰＤＧ１０２に関連付けられる障害または他のエラーが原因で発生する可能性がある。また、オペレータまたはＥＭＳ１１４からの指示の結果として発生する可能性がある。ＶｅＰＤＧ１０２は、制御プレーンおよびデータプレーンの両方の状態を追跡することができる。
【００１３】
ＶｅＰＤＧ１０４は、信頼できない（暗号化されていない）アクセス（例えばオープンＷｉＦｉまたは同等のもの）を使用する音声およびデータトラフィック用のゲートウェイである。ＶｅＰＤＧ１０４は、ユーザー機器（ＵＥ）に対する論理インターフェースであるＳＷｕを介してモバイルデバイス１１２に接続する。ＶｅＰＤＧ１０４は、ＳＷｎを通ってアクセスネットワーク（例えば、ＷＬＡＮ１０８）と通信する。ＶｅＰＤＧ１０４は副ノードであり、アクティブノードの責任を引き継ぐ必要があるときまで待機状態のままである。この転送は、主ノードに関連付けられた障害または他のエラーが原因で発生する可能性がある．また、オペレータまたはＥＭＳ１１４からの指示の結果として発生する可能性がある。ＶｅＰＤＧ１０４は、制御プレーンおよびデータプレーンの両方の状態を追跡することができる。
【００１４】
いくつかの実施形態では、状態は地理ノードごとに関連付けられる。それらは、事実上、「アクティブ」（そのノードは現在の制御およびデータプレーンのユーザーセッションを所有する）、または「待機」（例えば、そのノードには、現在の制御およびデータプレーンセッションが知らされる）である。いくつかの実施形態による状態間の移行は、図４およびその付随するテキストに示され、記載されている。
【００１５】
ＶｅＰＤＧ１０２およびＶｅＰＤＧ１０４は、ＰＧＷへのインターフェースであるＳ２ｂを介してＰＧＷ１０６とも通信することができる。
【００１６】
ＶｅＰＤＧ１０２およびＶｅＰＤＧ１０４はまた、ＳＷｍを介して他のモバイルネットワークモジュール１１０と通信することができ、ＳＷｍは３ＧＰＰ  ＡＡＡサーバへのインターフェースである。他のモバイルネットワークモジュールには、充電機能（ＣＧＦ）／オンライン充電システム（ＯＣＳ）／オフライン充電システム（ＯＦＣＳ）（充電用）、ポリシーおよび充電ルール機能（ＰＣＲＦ）（ポリシー用）、直径ルーティングエージェント（ＤＲＡ）または認証、許可、およびアカウンティング（ＡＡＡ）（ユーザー認証用）を含めることができる。
【００１７】
ＥＭＳ１１４は、地理的に離れたノード間の構成の一貫性を保証するために使用できる。いくつかの実施形態では、これにより、待機地理ノードは、アクティブ地理ノードから制御およびデータプレーンセッションを引き継ぐために必要な全てのネットワーク接続性および構成を有することを確実にする。例えば、ネットワーク接続と構成には、ローカルエンティティと外部サーバのホスト名、ＩＰアドレス、ポート番号、および名前空間に関する詳細を含めることができる。いくつかの実施形態では、他の機構を介してオペレータが一貫性を保証することができる。例えば、オペレータはアクティブノードと待機ノードのコマンドラインインターフェースに手動でログインして、それらを同一に構成できる。
【００１８】
地理リンク１１６は、状態情報を転送および同期するためのＶｅＰＤＧ１０２とＶｅＰＤＧ１０４間の通信プロトコルである。いくつかの実施形態では、地理リンク１１６は、複製されたデータベースをシミュレートする独自の通信プロトコルを含むことができる。例えば、地理リンク１１６は、１つのプロセスから１つ以上のプロセスに情報を伝達する独自のメッセージング機構を使用して実装できる。例えば、メッセージング機構は、情報の各一意のカテゴリごとに個別のチャネルを使用できる。ＩＰＳｅｃ接続では、１つは制御プレーン情報用、もう１つはデータプレーン情報用の２つの別々のチャネルを使用して、アクティブ地理ノードから待機地理ノードに情報を通信できる。
【００１９】
図２は、いくつかの実施形態による、地理的冗長ネットワークシステムを示すシステム図である。この例では、ネットワークノード（主および待機）とインターネットを越えてアクセス可能な企業ネットワークとの間に安全な接続が確立される。インターネット接続はセキュアでない可能性があるため、セキュア接続は、インターネットにおける信頼されていない接続をブリッジするために使用される。地理冗長ネットワークシステムは、主ノード２０２、待機ノード２０４、企業ネットワーク２０６、無線アクセスネットワーク（ＲＡＮ）２０８、他のモバイルネットワークモジュール２１０、モバイルデバイス２１２、要素管理システム（ＥＭＳ）２１４、および地理リンク２１６を含む。ＲＡＮ２０８は、任意の他のアクセスネットワークであり得る。例えば、ＲＡＮ２０８はＷＬＡＮ接続であってもよい。主ノード２０２および待機ノード２０４は、ＳＡＥＧＷ、ＰＧＷ、ＧＤＳＮ、または同様のネットワークノードのいずれかであり得る。
【００２０】
主ノード２０２は、インターネットを越えてアクセス可能な企業ネットワークと（例えば、ＳＧｉインターフェースを介して）通信するためのゲートウェイである。主ノード１０２は、Ｓ１−Ｕを介してモバイルデバイス２１２に接続し、Ｓ１−Ｕは、ユーザー機器（ＵＥ）に対する論理インターフェースである。主ノード２０２は、アクセスネットワーク（例えば、ＲＡＮ２０８）Ｓ１−Ｕとも通信する。主ノード２０２は、その責任をバックアップまたは待機ノードに転送する必要があるときまでアクティブのままである。この転送は、主ノード２０２に関連付けられた障害または他のエラーが原因で発生する可能性がある。主ノード２０２は、制御プレーンおよびデータプレーンの両方の状態を追跡することができる。
【００２１】
待機ノード２０４は、インターネットを越えてアクセス可能な企業ネットワークと（例えば、ＳＧｉインターフェースを介して）通信するためのゲートウェイである。待機ノード１０４は、Ｓ１−Ｕを介してモバイルデバイス２１２に接続し、Ｓ１−Ｕは、ユーザー機器（ＵＥ）に対する論理インターフェースである。待機ノード２０４は、Ｓ１−Ｕを通ってアクセスネットワーク（例えば、ＲＡＮ２０８）と通信する。待機ノード１０４は副ノードであり、アクティブノードの責任を引き継ぐ必要があるときまで待機状態に留まる。この転送は、主ノードに関連する障害または他のエラーが原因で発生する可能性がある。待機ノード１０４は、制御プレーンおよびデータプレーンの両方の状態を追跡することができる。主ノード１０２および待機ノード１０４は、企業ネットワークに対するインターフェースであるＳＧｉを介して企業ネットワーク２０６とも通信することができる。
【００２２】
図３は、いくつかの実施形態による、アクティブ地理ノードおよび待機地理ノードを示す図である。いくつかの実施形態では、アクティブ地理ノード３０２はＶｅＰＤＧ１０２に対応でき、待機地理ノード３１２はＶｅＰＤＧ１０４に対応できる。他の実施形態では、アクティブ地理ノード３０２および待機地理ノード３１２は、それぞれ主ノード２０２および待機ノード２０４に対応することができる。
【００２３】
アクティブ地理ノード３０２は、アクティブ制御プレーン３０４とアクティブデータプレーン３１０を含む。アクティブ地理ノード３０２は、地理サーバエンドポイント３０８、地理リンク３２２、および地理クライアントエンドポイント３１８によって定義される経路を介して待機地理ノード３１２と通信する。経路を越えて送信される情報には、（地理冗長性マネージャー間の）地理冗長性制御情報、（アクティブ地理ノード上のアクティブデータベースから待機地理ノード上の待機データベースへの）ユーザー制御データ、および（アクティブ地理ノード上のアクティブデータベースから待機地理ノードのアクティブデータベースへの）ユーザーデータプレーン状態が含まれる。待機地理ノード３１２は、アクティブ地理ノードから受信した任意のユーザー制御データを制御プレーン状態データベース３１４に保存することができる。いくつかの実施形態（図示せず）では、制御プレーンデータベースは待機地理ノード３１２の外部にあってもよい。
【００２４】
図４は、いくつかの実施形態による、アクティブ状態と待機状態との間の移行を示すフローチャートである。
【００２５】
移行の観点から見ると、アクティブ地理ノードと待機地理ノードの両方のデータプレーンは、実際には運用の観点から両方ともアクティブである。言い換えると、待機地理ノードは、アクティブ地理ノードと同様にユーザーデータを処理できる。いくつかの実施形態では、これはデータリソースのホットステージングと呼ばれる。一方、制御プレーンは「待機」から「状態復旧」に移行し、次に「状態復旧」から「アクティブ」に移行する。移行中に、制御プレーンの中断が発生する場合がある。状態がアクティブになるまで、完全な制御プレーン機能は復旧しない。
・地理ノード：待機→アクティブ
・データプレーン：移行なし
・制御プレーン：待機→状態復旧→アクティブ
【００２６】
いくつかの実施形態では、ノードがアクティブから待機に移行するとき、ユーザーデータは、追放され（待機地理ノードが初めて起動したかのように）再びフレッシュになる。古いデータは、追放され、アクティブの地理冗長ノードと同期されて、現在の状態データが復旧される。制御プレーンが待機（例えば、制御データがデータベースにある）間に、データプレーンがアクティブに移行する（例えば、データを処理する準備ができている）ことに留意されたさい。
・地理ノード：アクティブ→待機
・データプレーン：アクティブ→状態追放→同期→アクティブ
・制御プレーン：アクティブ→状態追放→状態追放→同期→待機
【００２７】
図５は、いくつかの実施形態による、データプレーンおよび制御プレーン状態の複製ならびにスイッチオーバーを示すフローチャートである。
【００２８】
ステップ５０２を参照すると、ＶｅＰＤＧ１０２上でセッションが確立される。ステップ５０４を参照すると、データプレーン状態がＶｅＰＤＧ１０４にミラーリングされ、必要なリソースが割り当てられてプログラミングされる（例えば、データプレーンアクティブ状態）。例えば、リソースには、ＩＰアドレス、セキュリティポリシーインデックス（ＳＰＩ）、暗号化および復号化アルゴリズム、ならびに各ＩＰｓｅｃセッションのネゴシエートされた暗号化および復号化キーなどのパラメータが含まれる。いくつかの実施形態では、このプロセスは、設定された時間間隔で、またはプロセスを繰り返すための命令を受信すると繰り返される。
【００２９】
ステップ５０６を参照すると、制御プレーン状態がＶｅＰＤＧ１０４に送信され、状態情報がデータベースに保存される。いくつかの実施形態では、このプロセスは、設定された時間間隔で、またはプロセスを繰り返すための命令を受信すると繰り返される。ステップ５０８を参照すると、ＶｅＰＤＧ１０２で障害が発生する。ステップ５１０を参照すると、地理マネージャーまたはＥＭＳが障害を検出し、ＶｅＰＤＧ１０４のアクティブへの移行を着手する。いくつかの実施形態では、このアクティブへの移行は、障害後できるだけ早く発生する。いくつかの実施形態では、移行期間は複数の要因（例えば、エラー検出、障害伝播）に依存し、いくつかの実施形態では秒単位で測定される。ステップ５１２を参照すると、ＶｅＰＤＧ１０４がアクティブに移行した後、パケットはＶｅＰＤＧ１０４に到着し、正常に処理される（例えば、データプレーンがアクティブ）。
【００３０】
ステップ５１４を参照すると、ＶｅＰＤＧ１０４の制御プレーンは、制御プレーン状態を制御プレーンデータベースから読み取り、再構築する。制御プレーンデータベースから、各ＩＫＥ  ＳＡ（セキュリティアソシエーション）およびＩＰＳＥＣ  ＳＡに関する情報を収集できる。収集される情報には、リモートＩＰアドレス、使用されたＳＰＩ、暗号化アルゴリズム、最終キー再生成時刻、メッセージシーケンス番号などが含まれる。ＩＫＥとＩＰＳＥＣ  ＳＡの間の関連付けもこの時点で構築できる。ルールルックアップデータ構造もこの時点で構築され、これは、いくらかのトンネルではＣＰＵを非常に集中的に使用する可能性がある。このプロセス中にデータプレーン活動は必要なく、データフローは中断されないことに留意されたい。制御プレーンの再構築プロセスは、遅延を引き起こす可能性があるが、制御プレーンメッセージのタイムアウトにより、リモートエンドがトンネルをクリアする前に完了する。ステップ５１６を参照すると、ＶｅＰＤＧ１０４は、制御プレーンおよびデータプレーンの一貫性およびアクティブへの移行を保証する。
【００３１】
本明細書に記載された主題は、デジタル電子回路、または本明細書に開示された構造的手段およびその構造的な同等物を含むコンピュータソフトウェア、ファームウェア、もしくはハードウェア、またはそれらの組み合わせで実装され得る。本明細書に記載された主題は、情報担体（例えば、機械可読記憶装置）に明白に具体化された、またはデータ処理装置（例えば、プログラマブルプロセッサ、コンピュータ、または複数のコンピュータ）による実行のための、もしくはデータ処理装置の動作を制御するための伝播信号に具体化された、１つ以上のコンピュータプログラムなどの１つ以上のコンピュータプログラム製品として実装できる。（プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる）コンピュータプログラムは、コンパイルまたはインタプリタ言語を含む、あらゆる形態のプログラミング言語で記述でき、スタンドアロンプログラムとして、または、コンピューティング環境での使用に適したモジュール、コンポーネント、サブルーチン、もしくはその他のユニットとしてなど、あらゆる形態で展開できる。コンピュータプログラムは、必ずしもファイルに対応しているわけではない。プログラムは、他のプログラムまたはデータを保持するファイルの一部、当該プログラム専用の単一ファイル、または複数の調整されたファイル（例えば、１つ以上のモジュール、サブプログラム、またはコードの一部を格納するファイル）に保存できる。コンピュータプログラムは、１つのコンピュータまたは１つのサイトの複数のコンピュータで実行するように展開することも、複数のサイトに分散して通信ネットワークで相互接続することもできる。
【００３２】
ここに記載した主題の方法ステップを含むこの明細書に記載したプロセスおよび論理フローは、入力データを操作することにより、ここに記載した主題の機能を成し遂げて出力を生成する、１つ以上のコンピュータプログラムを実行する１つ以上のプログラム可能なプロセッサによって成し遂げることができる。プロセスおよび論理フローはまた、本明細書に記載の主題の装置によって成し遂げることもでき、本明細書に記載の主題の装置は、専用論理回路、例えばＦＰＧＡ（フィールドプログラマブルゲートアレイ）またはＡＳＩＣ（特定用途向け集積回路）として実装することができる。
【００３３】
コンピュータプログラムの実行に好適なプロセッサには、例として、汎用および専用マイクロプロセッサの両方、およびあらゆる種類のデジタルコンピュータの１つ以上のプロセッサが含まれる。通常、プロセッサは、読み取り専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令とデータを受け取る。コンピュータの不可欠な要素は、命令を実行するプロセッサと、命令とデータを保存する１つ以上のメモリデバイスである。一般に、コンピュータは、データを保存するための１つ以上の大容量記憶デバイス（例えば、磁気、光磁気ディスク、光ディスク）を、含むか、データを受信もしくは転送または両方をするように動作可能に結合する。コンピュータプログラムの命令およびデータを具体化するのに好適な情報担体には、例として、半導体メモリデバイス（例えば、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリデバイス）、磁気ディスク（例えば、内蔵ハードディスクまたはリムーバブルディスク）、光磁気ディスク、および光ディスク（ＣＤおよびＤＶＤディスク）を含む、あらゆる形態の不揮発性メモリが含まれる。プロセッサとメモリは、専用のロジック回路で補完するか、組み込むことができる。
【００３４】
ユーザーとの相互作用を提供するために、本明細書に記載する主題は、ユーザーに情報を表示するためのディスプレイデバイス、例えばＣＲＴ（陰極線管）またはＬＣＤ（液晶ディスプレイ）モニターと、ユーザーがコンピュータに入力できる、キーボードおよびポインティングデバイス（例えば、マウスまたはトラックボール）とを有するコンピュータ上で実装できる。他の種類のデバイスを使用して、ユーザーとの対話を提供することもできる。例えば、ユーザーに提供されるフィードバックは、任意の形態の感覚フィードバック（例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック）であり、ユーザーからの入力は、音響、音声、または触覚入力を含む任意の形態で受信できる。
【００３５】
本明細書に記載した主題は、バックエンドコンポーネント（例えば、データサーバ）、ミドルウェアコンポーネント（例えば、アプリケーションサーバ）、またはフロントエンドコンポーネント（例えば、ユーザーがここに記載した主題の実装形態と対話できる、グラフィカルユーザーインターフェイスまたはウェブブラウザを有するクライアントコンピュータ）、またはそのようなバックエンド、ミドルウェア、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで実装できる。システムのコンポーネントは、デジタルデータ通信の任意の形態または媒体、例えば、通信ネットワークによって相互接続できる。通信ネットワークの例には、ローカルエリアネットワーク（「ＬＡＮ」）およびワイドエリアネットワーク（「ＷＡＮ」）、例えばインターネットが含まれる。
【００３６】
開示された主題は、その適用において、あとの説明で明らかにされるかまたは図面に示される構成の詳細およびコンポーネントの配設に限定されないことを理解されたい。開示された主題は、他の実施形態が可能であり、様々な方法で実施および果たすことができる。また、本明細書で使用される語法および用語は説明を目的とするものであり、限定と見なされるべきではないことを理解されたい。
【００３７】
そういうものとして、当業者は、この開示の基礎となる概念が、開示された主題のいくつかの目的を果たすための他の構造、方法、およびシステムの設計の基礎として容易に利用できることを理解するであろう。したがって、開示された主題の精神および範囲から逸脱しない限り、そのような同等の構造を含むと見なされることが重要である。
【００３８】
開示された主題は、前述の例示的な実施形態で記載および図示されたが、本開示は例としてのみ行われ、開示された主題の実装の詳細における、おびただしい数の変更が、次の特許請求の範囲によってのみ制限される開示された主題の精神および範囲から逸脱することなく行われ得ることが理解される。
【図１】
2020522925.tif 000003
【図２】
2020522925.tif 000004
【図３】
2020522925.tif 000005
【図４】
2020522925.tif 000006
【図５】
2020522925.tif 000007
【国際調査報告】
2020522925.tif 000008
2020522925.tif 000009
2020522925.tif 000010