IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マイクロソフト テクノロジー ライセンシング,エルエルシーの特許一覧

特許7234141IPSECの地理的冗長性のための分離した制御プレーンおよびデータプレーンの同期
<>
  • 特許-IPSECの地理的冗長性のための分離した制御プレーンおよびデータプレーンの同期 図1
  • 特許-IPSECの地理的冗長性のための分離した制御プレーンおよびデータプレーンの同期 図2
  • 特許-IPSECの地理的冗長性のための分離した制御プレーンおよびデータプレーンの同期 図3
  • 特許-IPSECの地理的冗長性のための分離した制御プレーンおよびデータプレーンの同期 図4
  • 特許-IPSECの地理的冗長性のための分離した制御プレーンおよびデータプレーンの同期 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-27
(45)【発行日】2023-03-07
(54)【発明の名称】IPSECの地理的冗長性のための分離した制御プレーンおよびデータプレーンの同期
(51)【国際特許分類】
   H04L 45/247 20220101AFI20230228BHJP
   H04W 24/04 20090101ALI20230228BHJP
   H04W 12/08 20210101ALI20230228BHJP
【FI】
H04L45/247
H04W24/04
H04W12/08
【請求項の数】 14
(21)【出願番号】P 2019565886
(86)(22)【出願日】2018-05-31
(65)【公表番号】
(43)【公表日】2020-07-30
(86)【国際出願番号】 US2018035345
(87)【国際公開番号】W WO2018222838
(87)【国際公開日】2018-12-06
【審査請求日】2021-05-31
(31)【優先権主張番号】62/512,895
(32)【優先日】2017-05-31
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】314015767
【氏名又は名称】マイクロソフト テクノロジー ライセンシング,エルエルシー
(74)【代理人】
【識別番号】100118902
【弁理士】
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100106208
【弁理士】
【氏名又は名称】宮前 徹
(74)【代理人】
【識別番号】100120112
【氏名又は名称】中西 基晴
(74)【代理人】
【識別番号】100173565
【弁理士】
【氏名又は名称】末松 亮太
(72)【発明者】
【氏名】バイド,アカシュ
(72)【発明者】
【氏名】チェリアン,ヴィネイ
(72)【発明者】
【氏名】リビー,マーク
(72)【発明者】
【氏名】ルオ,ナン
【審査官】野元 久道
(56)【参考文献】
【文献】国際公開第2014/077313(WO,A1)
【文献】特表2014-509798(JP,A)
【文献】米国特許出願公開第2015/0295818(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 45/00
H04W 24/04
H04W 12/08
(57)【特許請求の範囲】
【請求項1】
セキュア接続のために、制御およびデータコンテキストを別々に管理する方法であって、
第1のノードによって送信された、アクティブなセキュア接続に関する情報を第2のノードによって受信するステップであって、
前記アクティブなセキュア接続が、前記第1のノードを通ってルーティングされ、前記アクティブなセキュア接続に関連付けられた制御プレーンパラメータに基づくセキュア制御プレーン接続と、前記アクティブなセキュア接続に関連付けられたデータプレーンパラメータに基づくセキュアデータプレーン接続とを含み、
前記情報が前記データプレーンパラメータを少なくとも含み、
前記セキュア制御プレーン接続と前記セキュアデータプレーン接続とが、分割アーキテクチャにしたがって分離される、ステップと、
前記第1のノードがアクティブである間に前記第2のノードのデータプレーンがアクティブ状態となるように、前記データプレーンパラメータを使用して待機セキュアデータプレーン接続を、前記第2のノードによってプログラミングするステップであって、
前記第1のノードがアクティブである間に前記第2のノードの制御プレーンがスタンバイ状態となる、ステップと、
前記第2のノードによる、前記第1のノードが非アクティブであるという決定に応じて、
前記待機セキュアデータプレーン接続を通って、前記アクティブなセキュア接続に関連付けられたデータプレーントラフィックを、前記第2のノードによってルーティングするステップと、
前記第2のノードの制御プレーンを、状態復旧の状態に移行するステップと、
前記制御プレーンパラメータを、前記第1のノードおよび前記第2のノードにアクセス可能である外部データベースから前記第2のノードによって検索するステップであって、前記制御プレーンパラメータが、前記第1のノードによって前記外部データベース内に保存されている、ステップと、
前記検索された制御プレーンパラメータに基づいて、新しいセキュア制御プレーン接続を、前記第2のノードによってプログラミングするステップと、
前記第2のノードの制御プレーンが前記状態復旧の状態から前記アクティブ状態に移行した後に、前記新しいセキュア制御プレーン接続を通って前記アクティブなセキュア接続に関連付けられた制御プレーントラフィックを、前記第2のノードによってルーティングするステップと、
を含
前記データプレーンパラメータおよび前記制御プレーンパラメータが、それぞれ、
IPアドレス、
前記アクティブなセキュア接続のための識別子、
前記セキュア制御プレーン接続に関連付けられた認証アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた暗号化アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた少なくとも1つの認証キー、または
前記セキュア制御プレーン接続に関連付けられた少なくとも1つの暗号化キー、
のうちの少なくとも1つを含む、方法。
【請求項2】
前記決定が、前記アクティブなセキュア接続に関連付けられたデータトラフィックの受信に応じて、前記第2のノードによって行われる、請求項1に記載の方法。
【請求項3】
前記決定が、前記第1のノードが非アクティブであるという通知の受信に応じて、前記第2のノードによって行われる、請求項1に記載の方法。
【請求項4】
前記アクティブなセキュア接続が、インターネットプロトコルセキュリティ(IPSec)接続を含む、請求項1に記載の方法。
【請求項5】
前記第1のノードおよび前記第2のノードが、仮想進化パケットデータゲートウェイ、システムアーキテクチャ進化(SAE)ゲートウェイ、パケットデータネットワーク(「PDN」)ゲートウェイ、グローバルデータ同期ネットワーク(GDSN)、またはN3IWFノードを含む、請求項1に記載の方法。
【請求項6】
前記アクティブなセキュア接続が、ユーザーと前記第1のノードとの間の接続を含む、請求項1に記載の方法。
【請求項7】
前記アクティブなセキュア接続が、前記第1のノードとIPベースのサーバとの間の接続を含む、請求項1に記載の方法。
【請求項8】
セキュア接続のために、制御およびデータコンテキストを別々に管理するコンピュータシステムであって、
前記コンピュータシステム内のプロセッサと、
前記プロセッサと通信するメモリと、を備え、前記メモリが、
第1のノードによって送信された、アクティブなセキュア接続に関する情報を第2のノードにおいて受信することであって、
前記アクティブなセキュア接続が、前記第1のノードを通ってルーティングされ、前記アクティブなセキュア接続に関連付けられた制御プレーンパラメータに基づくセキュア制御プレーン接続と、前記アクティブなセキュア接続に関連付けられたデータプレーンパラメータに基づくセキュアデータプレーン接続とを含み、
前記情報が前記データプレーンパラメータを少なくとも含み、
前記セキュア制御プレーン接続と前記セキュアデータプレーン接続とが、分割アーキテクチャにしたがって分離される、ことと、
前記第1のノードがアクティブである間に前記第2のノードのデータプレーンがアクティブ状態となるように、前記データプレーンパラメータを使用して待機セキュアデータプレーン接続をプログラミングすることであって、
前記第1のノードがアクティブである間に前記第2のノードの制御プレーンがスタンバイ状態となる、ことと、
前記第2のノードによる、前記第1のノードが非アクティブであるという決定に応じて、
前記待機セキュアデータプレーン接続を通って、前記アクティブなセキュア接続に関連付けられたデータプレーントラフィックをルーティングすることと、
前記第2のノードの制御プレーンを、状態復旧の状態に移行することと、
前記制御プレーンパラメータを、前記第1のノードおよび前記第2のノードにアクセス可能である外部データベースから検索することであって、前記制御プレーンパラメータが、前記第1のノードによって前記外部データベース内に保存されている、ことと、
前記検索された制御プレーンパラメータに基づいて、新しいセキュア制御プレーン接続をプログラミングすることと、
前記第2のノードの制御プレーンが前記状態復旧の状態から前記アクティブ状態に移行した後に、前記新しいセキュア制御プレーン接続を通って前記アクティブなセキュア接続に関連付けられた制御プレーントラフィックをルーティングすることと、
を前記プロセッサに行わせるように構成された命令を含
前記データプレーンパラメータおよび前記制御プレーンパラメータが、それぞれ
IPアドレス、
前記アクティブなセキュア接続のための識別子、
前記セキュア制御プレーン接続に関連付けられた認証アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた暗号化アルゴリズムのための識別子、
前記セキュア制御プレーン接続に関連付けられた少なくとも1つの認証キー、または
前記セキュア制御プレーン接続に関連付けられた少なくとも1つの暗号化キー、
のうちの少なくとも1つを含む、システム。
【請求項9】
前記決定が、前記セキュア接続に関連付けられたトラフィックの受信に応じて行われる、請求項に記載のシステム。
【請求項10】
前記決定が、前記第1のノードが非アクティブであるという通知の受信に応じて行われる、請求項に記載のシステム。
【請求項11】
前記セキュア接続が、インターネットプロトコルセキュリティ(IPSec)接続を含む、請求項に記載のシステム。
【請求項12】
前記第1のノードおよび前記第2のノードが、仮想進化パケットデータゲートウェイ、システムアーキテクチャ進化(SAE)ゲートウェイ、パケットデータネットワーク(「PDN」)ゲートウェイ、グローバルデータ同期ネットワーク(GDSN)、またはN3IWFノードを含む、請求項に記載のシステム。
【請求項13】
前記アクティブなセキュア接続が、ユーザーと前記第1のノードとの間の接続を含む、請求項に記載のシステム。
【請求項14】
前記アクティブなセキュア接続が、前記第1のノードとIPベースのサーバとの間の接続を含む、請求項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
この出願は、2017年5月31日に出願された「DECOUPLED CONTROL AND DATA PLANE SYNCHRONIZATION FOR IPSEC GEOGRAPHIC REDUNDANCY」と題する米国特許仮出願第62/512,895号に対する、35U.S.C.§119(e)の下での利益を主張し、その内容が参照により本明細書に組み込まれる。
【0002】
本開示は、モバイルネットワークにおける制御プレーンおよびデータプレーンのトラフィックを制御するシステムおよび方法に関し、特に、インターネットプロトコルセキュリティ(IPsec)地理的冗長性のための制御プレーンおよびデータプレーンの同期を分離するシステムおよび方法に関する。
【背景技術】
【0003】
IPsecトンネルを終端するVPNゲートウェイおよびePDGなどのネットワーク要素のステートフル(stateful)な地理的冗長性には、アクティブノードと待機ノード間で大量の長期的なトンネルごとの状態情報の同期が必要である。例えば、ネットワークの異常時には、アクティブノードに障害が発生し、ユーザーのセッションの状態を待機ノードで回復する必要があり、待機ノードはアクティブな役割に切り替わる。待機ノードがアクティブな役割に切り替わると、様々な制御機能とデータパス機能をできるだけ速くプログラミングしてアクティブにする必要がある。アクティブトンネルが多数あるセキュリティゲートウェイの場合、このプログラミング段階は非効率的であり、数秒かかる可能性があり、パケット損失が長くなり、アプリケーションがそこから復旧できなくなる可能性がある。一部の既存の復旧ソリューションでは、制御プレーンおよびデータプレーンの両方の情報が待機ノードに保存される場合がある。ネットワークの異常時には、制御プレーンおよびデータプレーンの両方の機能をプログラミングおよびアクティブ化する必要があり、復旧時間が長くなる。一方、制御プレーンおよび待機ノードのプレーンの両方の「ライブ」セッション情報を維持すると、プロセッサおよびメモリのリソースを大量に消費する。他の復旧ソリューションは、他の優先度の低いセッションを復旧する前に特定の優先セッションを復旧できる優先順位スキームを採用しているため、長い復旧時間の影響を最小限にすることができる。クラウドネイティブまたは制御/データプレーン分離アーキテクチャ向けに明示的に設計し、かつそれを活用して、効率的な復旧を改善し、ユーザープレーン活動の中断を最小限にする、IPsec状態同期技術が不足している。
【図面の簡単な説明】
【0004】
開示された主題の様々な目的、特徴、および利点は、同様の参照番号が同様の要素を同一視する以下の図面に関連して考慮されるとき、開示された主題の以下の詳細な説明を参照してより完全に理解することができる。
【0005】
図1】いくつかの実施形態による、地理的冗長ネットワークシステムを示すシステム図である。
図2】いくつかの実施形態による、地理的冗長ネットワークシステムを示すシステム図である。
図3】いくつかの実施形態による、アクティブ地理ノードおよび待機地理ノードを示す図である。
図4】いくつかの実施形態による、アクティブ状態と待機状態との間の移行を示すフローチャートである。
図5】いくつかの実施形態による、データプレーンおよび制御プレーン状態の複製およびスイッチオーバーを示すフローチャートである。
【発明を実施するための形態】
【0006】
本開示は、制御プレーン状態の同期をデータプレーン状態の同期から明示的に分離するシステムおよび方法を記載する。アクティブノードと待機ノードとの間で同期された状態パラメータのサブセットは、データ経路パケット処理機能、すなわちパケットの暗号化および復号化に不可欠であるが、一方、状態パラメータの残りは、段階1および段階2トンネルのキー再生成、デッドピア検出、SPI割り当て、モビリティおよびマルチホーミングプロトコル(「MOBIKE」)サポートなどの制御プレーン機能に必要である。アクティブノードにトンネルが追加されると、トンネルに関連するデータプレーンおよび制御プレーンの両方の状態情報を、ネットワーク内のそれぞれの待機ロケーションに同期させることができる。待機ノードは、アクティブトンネル制御プレーンおよびアクティブデータプレーンに関連する情報をアクティブノードから受信する。この情報は、アクティブノードにあるトンネルを複製するために待機ノードで使用できる。いくつかの実施形態(例えばクラウドネイティブアプリケーションなど)では、制御プレーンデータを外部データベースに保存できる。
【0007】
いくつかの実施形態では、スイッチオーバーがトリガーされるとすぐにパケットの処理を開始できるように、データプレーンコンポーネントのみがプログラミングされる。制御プレーンコンポーネントのプログラミングとアクティブ化に必要な情報は、スイッチオーバーがトリガーされるまで保存される。プログラミングとは、データチャネルがまだ積極的にデータを処理しているとは限らない場合でも、即座にデータを処理するのか可能であるデータチャネルを確立することを意味する。待機ノードでデータプレーンコンポーネントがプログラミングされると、アクティブノードが使用できなくなった場合に、待機ノードはアクティブトンネルに関連付けられたデータを処理する準備が整う。
【0008】
いくつかの実施形態では、ネットワークの異常によってスイッチオーバーをトリガーすることができる。例えば、待機ノードは、待機ノードに接続されたインターフェース(BGPピアリングインターフェースなど)を監視することによって、アクティブノードがアクティブでなくなったことを検出できる。待機ノードは、アクティブノードとの通信リンクに基づいて、アクティブノードがアクティブでなくなったことを推測できる。例えば、リンク上の活動がアクティブノードは非アクティブであることを示している場合、待機ノードはネットワークの異常が発生したと推測し、スイッチオーバー処理を開始できる。待機ノードは、そうでなければ主ノードによって処理されるトラフィックを受信した場合、アクティブノードがアクティブではなくなったことも検出できる。いくつかの実施形態では、待機ノードは、分散ルート最適化手法によって管理されるルートの重みを監視することにより、主ノードが非アクティブであることを検出できる。例えば、アクティブ主ノードはルートコストが5であると報告する場合があるが、待機ノードはルートコストが10であると報告する場合がある。この第1の状態では、ルートコストが待機ノードよりも低いため、トラフィックはアクティブ主ノードを経由してルーティングされる。主ノードがアクティブでなくなった場合、そのルートコストは100になる場合がある。このシナリオでは、ルートコストが低いため、待機ノードが優先ルートになる。いくつかの実施形態では、(例えば、EMSを介した直接通信により)スイッチオーバーは手動でトリガーすることができる。スイッチオーバーがトリガーされた後、制御プレーンの状態をデータベースから検索し、待機制御ノードでプログラミングすることができる。データプレーンコンポーネントは既にプログラミングされているため、データパケットの処理は即座に開始でき、制御プレーンコンポーネントの復元に必要な時間だけ遅れることはない。つまり、待機ノードがデータプレーン上でデータパケットの処理を開始した後、待機プレーンで制御プレーンリソースを復旧できる。制御プレーン情報(例えば暗号化キー、変換、および制御パケットを復号化する方法に関するその他の情報)は、待機状態中に圧縮および/または保存される場合があり、これにより、制御プレーンリソースが実際に使用される前の割り当てとブロックのために制御プレーンリソースが浪費されるのを防ぐ。
【0009】
また、以下でより詳細に記載するように、本明細書に記載する分離された同期は、1つ以上のデータプレーンノードから分離する1つ以上の制御プレーンノードが存在する可能性がある制御/データプレーン分割アーキテクチャに自然に適合する。このようなアーキテクチャでは、全ての待機データプレーンノードは、IPsec操作に必要な暗号キーでプログラミングすることにより、常に準備を整えることができる。したがって、分散データプレーンの全ての要素が着信IPsecパケットを処理する準備が整っているため、スイッチオーバー時間はルーティング収束時間によってのみ制限される。その上、制御プレーンノードのスタックとリソース(例えば記憶および処理リソース)は、実際に必要な場合にのみ使用できる。状態情報は、それまでデータベースに保存できる。いくつかの実施形態では、状態情報は、外部データベースに保存できる。
【0010】
分離された同期アプローチの利点の1つは、制御プレーン/ユーザープレーン分割アーキテクチャのニーズに自然に適合し、拡張できることである。いくつかの実施形態では、制御プレーン情報およびデータプレーン情報の分離により、1つの制御プレーンを複数のデータプレーンに関連付けることが可能になる。1つの制御プレーン要素および複数のデータプレーン要素を有する展開では、データプレーンの状態のみをデータプレーン要素に同期する必要がある。その上、データプレーン状態および制御プレーン状態は、ネットワークの異常によりトリガーされる待機からアクティブな役割への切り替え中の異なる時点で必要になるため、リソースを節約でき、セッションの復元時間を改善できる。制御プレーンの状態は、その状態が実際に必要になるまで外部データベースに保存できる。いくつかの実施形態では、制御プレーン情報は、主ノードと待機ノードの両方にアクセス可能な共通データベースに保存される。この例では、主ノードは共通データベースに制御プレーン情報を保存できる。スイッチオーバーシナリオでは、待機データベースは、主データベースによって以前に共通データベースに保存された制御プレーン情報を検索することができる。別の実施形態では、待機ノードは、主ノードから制御プレーン情報を受信するように構成され、ローカルまたは外部データベースのいずれかにそれを保存することができる。外部データベースは、待機ノードにアクセス可能な任意のデータベースである。
【0011】
図1は、いくつかの実施形態による、地理的冗長ネットワークシステムを示すシステム図である。この例では、ネットワークノード(VePDG102およびVePDG104)とユーザーとの間に、信頼できないWi-Fiネットワーク(WLAN108)を越えてセキュア接続が確立されている。セキュア接続は、信頼できない接続を越えてWLAN108との接続をブリッジするために使用される。地理的冗長ネットワークシステムには、主仮想進化パケットデータゲートウェイ(VePDG)102)、待機VePDG104、パケットデータネットワークゲートウェイ(PGW)106、ワイヤレスローカルエリアネットワーク(WLAN)108、他のモバイルネットワークモジュール110、モバイルデバイス112、要素管理システム(EMS)114、および地理リンク116が含まれる。VePDGノードを使用する図1に示される例は非限定的であることを理解されたい。このシステムは、IPSec接続または同様なセキュア接続を提供する他のシステムノードにも実装できる。例えば、主ノードと待機ノードは、IPsecトンネルを越えてVPN機能を提供するVPNまたは企業VPNノードにすることができる。また、本明細書に記載する方法およびシステムは、通信ネットワークの将来の世代に適用できることも理解されたい。例えば、本明細書に記載される方法およびシステムは、5Gセルラーネットワークに適用することができる。そのような一実施形態では、主および待機ノードは、N3IWFノードを含むことができる。
【0012】
VePDG102は、信頼できない(暗号化されていない)アクセス(例えば、オープンWi-Fiまたは同等のもの)を使用する音声およびデータトラフィック用のゲートウェイである。VePDG102は、ユーザー機器(UE)に対する論理インターフェースであるSWuを介してモバイルデバイス112に接続する。VePDG102は、SWnを通ってアクセスネットワーク(例えば、WLAN108)と通信する。VePDG102は主ノードであり、その責任を待機ノードに転送する必要があるときまでアクティブのままである。この転送は、VePDG102に関連付けられる障害または他のエラーが原因で発生する可能性がある。また、オペレータまたはEMS114からの指示の結果として発生する可能性がある。VePDG102は、制御プレーンおよびデータプレーンの両方の状態を追跡することができる。
【0013】
VePDG104は、信頼できない(暗号化されていない)アクセス(例えばオープンWiFiまたは同等のもの)を使用する音声およびデータトラフィック用のゲートウェイである。VePDG104は、ユーザー機器(UE)に対する論理インターフェースであるSWuを介してモバイルデバイス112に接続する。VePDG104は、SWnを通ってアクセスネットワーク(例えば、WLAN108)と通信する。VePDG104は副ノードであり、アクティブノードの責任を引き継ぐ必要があるときまで待機状態のままである。この転送は、主ノードに関連付けられた障害または他のエラーが原因で発生する可能性がある.また、オペレータまたはEMS114からの指示の結果として発生する可能性がある。VePDG104は、制御プレーンおよびデータプレーンの両方の状態を追跡することができる。
【0014】
いくつかの実施形態では、状態は地理ノードごとに関連付けられる。それらは、事実上、「アクティブ」(そのノードは現在の制御およびデータプレーンのユーザーセッションを所有する)、または「待機」(例えば、そのノードには、現在の制御およびデータプレーンセッションが知らされる)である。いくつかの実施形態による状態間の移行は、図4およびその付随するテキストに示され、記載されている。
【0015】
VePDG102およびVePDG104は、PGWへのインターフェースであるS2bを介してPGW106とも通信することができる。
【0016】
VePDG102およびVePDG104はまた、SWmを介して他のモバイルネットワークモジュール110と通信することができ、SWmは3GPP AAAサーバへのインターフェースである。他のモバイルネットワークモジュールには、充電機能(CGF)/オンライン充電システム(OCS)/オフライン充電システム(OFCS)(充電用)、ポリシーおよび充電ルール機能(PCRF)(ポリシー用)、直径ルーティングエージェント(DRA)または認証、許可、およびアカウンティング(AAA)(ユーザー認証用)を含めることができる。
【0017】
EMS114は、地理的に離れたノード間の構成の一貫性を保証するために使用できる。いくつかの実施形態では、これにより、待機地理ノードは、アクティブ地理ノードから制御およびデータプレーンセッションを引き継ぐために必要な全てのネットワーク接続性および構成を有することを確実にする。例えば、ネットワーク接続と構成には、ローカルエンティティと外部サーバのホスト名、IPアドレス、ポート番号、および名前空間に関する詳細を含めることができる。いくつかの実施形態では、他の機構を介してオペレータが一貫性を保証することができる。例えば、オペレータはアクティブノードと待機ノードのコマンドラインインターフェースに手動でログインして、それらを同一に構成できる。
【0018】
地理リンク116は、状態情報を転送および同期するためのVePDG102とVePDG104間の通信プロトコルである。いくつかの実施形態では、地理リンク116は、複製されたデータベースをシミュレートする独自の通信プロトコルを含むことができる。例えば、地理リンク116は、1つのプロセスから1つ以上のプロセスに情報を伝達する独自のメッセージング機構を使用して実装できる。例えば、メッセージング機構は、情報の各一意のカテゴリごとに個別のチャネルを使用できる。IPSec接続では、1つは制御プレーン情報用、もう1つはデータプレーン情報用の2つの別々のチャネルを使用して、アクティブ地理ノードから待機地理ノードに情報を通信できる。
【0019】
図2は、いくつかの実施形態による、地理的冗長ネットワークシステムを示すシステム図である。この例では、ネットワークノード(主および待機)とインターネットを越えてアクセス可能な企業ネットワークとの間に安全な接続が確立される。インターネット接続はセキュアでない可能性があるため、セキュア接続は、インターネットにおける信頼されていない接続をブリッジするために使用される。地理冗長ネットワークシステムは、主ノード202、待機ノード204、企業ネットワーク206、無線アクセスネットワーク(RAN)208、他のモバイルネットワークモジュール210、モバイルデバイス212、要素管理システム(EMS)214、および地理リンク216を含む。RAN208は、任意の他のアクセスネットワークであり得る。例えば、RAN208はWLAN接続であってもよい。主ノード202および待機ノード204は、SAEGW、PGW、GDSN、または同様のネットワークノードのいずれかであり得る。
【0020】
主ノード202は、インターネットを越えてアクセス可能な企業ネットワークと(例えば、SGiインターフェースを介して)通信するためのゲートウェイである。主ノード102は、S1-Uを介してモバイルデバイス212に接続し、S1-Uは、ユーザー機器(UE)に対する論理インターフェースである。主ノード202は、アクセスネットワーク(例えば、RAN208)S1-Uとも通信する。主ノード202は、その責任をバックアップまたは待機ノードに転送する必要があるときまでアクティブのままである。この転送は、主ノード202に関連付けられた障害または他のエラーが原因で発生する可能性がある。主ノード202は、制御プレーンおよびデータプレーンの両方の状態を追跡することができる。
【0021】
待機ノード204は、インターネットを越えてアクセス可能な企業ネットワークと(例えば、SGiインターフェースを介して)通信するためのゲートウェイである。待機ノード104は、S1-Uを介してモバイルデバイス212に接続し、S1-Uは、ユーザー機器(UE)に対する論理インターフェースである。待機ノード204は、S1-Uを通ってアクセスネットワーク(例えば、RAN208)と通信する。待機ノード104は副ノードであり、アクティブノードの責任を引き継ぐ必要があるときまで待機状態に留まる。この転送は、主ノードに関連する障害または他のエラーが原因で発生する可能性がある。待機ノード104は、制御プレーンおよびデータプレーンの両方の状態を追跡することができる。主ノード102および待機ノード104は、企業ネットワークに対するインターフェースであるSGiを介して企業ネットワーク206とも通信することができる。
【0022】
図3は、いくつかの実施形態による、アクティブ地理ノードおよび待機地理ノードを示す図である。いくつかの実施形態では、アクティブ地理ノード302はVePDG102に対応でき、待機地理ノード312はVePDG104に対応できる。他の実施形態では、アクティブ地理ノード302および待機地理ノード312は、それぞれ主ノード202および待機ノード204に対応することができる。
【0023】
アクティブ地理ノード302は、アクティブ制御プレーン304とアクティブデータプレーン310を含む。アクティブ地理ノード302は、地理サーバエンドポイント308、地理リンク322、および地理クライアントエンドポイント318によって定義される経路を介して待機地理ノード312と通信する。経路を越えて送信される情報には、(地理冗長性マネージャー間の)地理冗長性制御情報、(アクティブ地理ノード上のアクティブデータベースから待機地理ノード上の待機データベースへの)ユーザー制御データ、および(アクティブ地理ノード上のアクティブデータベースから待機地理ノードのアクティブデータベースへの)ユーザーデータプレーン状態が含まれる。待機地理ノード312は、アクティブ地理ノードから受信した任意のユーザー制御データを制御プレーン状態データベース314に保存することができる。いくつかの実施形態(図示せず)では、制御プレーンデータベースは待機地理ノード312の外部にあってもよい。
【0024】
図4は、いくつかの実施形態による、アクティブ状態と待機状態との間の移行を示すフローチャートである。
【0025】
移行の観点から見ると、アクティブ地理ノードと待機地理ノードの両方のデータプレーンは、実際には運用の観点から両方ともアクティブである。言い換えると、待機地理ノードは、アクティブ地理ノードと同様にユーザーデータを処理できる。いくつかの実施形態では、これはデータリソースのホットステージングと呼ばれる。一方、制御プレーンは「待機」から「状態復旧」に移行し、次に「状態復旧」から「アクティブ」に移行する。移行中に、制御プレーンの中断が発生する場合がある。状態がアクティブになるまで、完全な制御プレーン機能は復旧しない。
・地理ノード:待機→アクティブ
・データプレーン:移行なし
・制御プレーン:待機→状態復旧→アクティブ
【0026】
いくつかの実施形態では、ノードがアクティブから待機に移行するとき、ユーザーデータは、追放され(待機地理ノードが初めて起動したかのように)再びフレッシュになる。古いデータは、追放され、アクティブの地理冗長ノードと同期されて、現在の状態データが復旧される。制御プレーンが待機(例えば、制御データがデータベースにある)間に、データプレーンがアクティブに移行する(例えば、データを処理する準備ができている)ことに留意されたさい。
・地理ノード:アクティブ→待機
・データプレーン:アクティブ→状態追放→同期→アクティブ
・制御プレーン:アクティブ→状態追放→状態追放→同期→待機
【0027】
図5は、いくつかの実施形態による、データプレーンおよび制御プレーン状態の複製ならびにスイッチオーバーを示すフローチャートである。
【0028】
ステップ502を参照すると、VePDG102上でセッションが確立される。ステップ504を参照すると、データプレーン状態がVePDG104にミラーリングされ、必要なリソースが割り当てられてプログラミングされる(例えば、データプレーンアクティブ状態)。例えば、リソースには、IPアドレス、セキュリティポリシーインデックス(SPI)、暗号化および復号化アルゴリズム、ならびに各IPsecセッションのネゴシエートされた暗号化および復号化キーなどのパラメータが含まれる。いくつかの実施形態では、このプロセスは、設定された時間間隔で、またはプロセスを繰り返すための命令を受信すると繰り返される。
【0029】
ステップ506を参照すると、制御プレーン状態がVePDG104に送信され、状態情報がデータベースに保存される。いくつかの実施形態では、このプロセスは、設定された時間間隔で、またはプロセスを繰り返すための命令を受信すると繰り返される。ステップ508を参照すると、VePDG102で障害が発生する。ステップ510を参照すると、地理マネージャーまたはEMSが障害を検出し、VePDG104のアクティブへの移行を着手する。いくつかの実施形態では、このアクティブへの移行は、障害後できるだけ早く発生する。いくつかの実施形態では、移行期間は複数の要因(例えば、エラー検出、障害伝播)に依存し、いくつかの実施形態では秒単位で測定される。ステップ512を参照すると、VePDG104がアクティブに移行した後、パケットはVePDG104に到着し、正常に処理される(例えば、データプレーンがアクティブ)。
【0030】
ステップ514を参照すると、VePDG104の制御プレーンは、制御プレーン状態を制御プレーンデータベースから読み取り、再構築する。制御プレーンデータベースから、各IKE SA(セキュリティアソシエーション)およびIPSEC SAに関する情報を収集できる。収集される情報には、リモートIPアドレス、使用されたSPI、暗号化アルゴリズム、最終キー再生成時刻、メッセージシーケンス番号などが含まれる。IKEとIPSEC SAの間の関連付けもこの時点で構築できる。ルールルックアップデータ構造もこの時点で構築され、これは、いくらかのトンネルではCPUを非常に集中的に使用する可能性がある。このプロセス中にデータプレーン活動は必要なく、データフローは中断されないことに留意されたい。制御プレーンの再構築プロセスは、遅延を引き起こす可能性があるが、制御プレーンメッセージのタイムアウトにより、リモートエンドがトンネルをクリアする前に完了する。ステップ516を参照すると、VePDG104は、制御プレーンおよびデータプレーンの一貫性およびアクティブへの移行を保証する。
【0031】
本明細書に記載された主題は、デジタル電子回路、または本明細書に開示された構造的手段およびその構造的な同等物を含むコンピュータソフトウェア、ファームウェア、もしくはハードウェア、またはそれらの組み合わせで実装され得る。本明細書に記載された主題は、情報担体(例えば、機械可読記憶装置)に明白に具体化された、またはデータ処理装置(例えば、プログラマブルプロセッサ、コンピュータ、または複数のコンピュータ)による実行のための、もしくはデータ処理装置の動作を制御するための伝播信号に具体化された、1つ以上のコンピュータプログラムなどの1つ以上のコンピュータプログラム製品として実装できる。(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)コンピュータプログラムは、コンパイルまたはインタプリタ言語を含む、あらゆる形態のプログラミング言語で記述でき、スタンドアロンプログラムとして、または、コンピューティング環境での使用に適したモジュール、コンポーネント、サブルーチン、もしくはその他のユニットとしてなど、あらゆる形態で展開できる。コンピュータプログラムは、必ずしもファイルに対応しているわけではない。プログラムは、他のプログラムまたはデータを保持するファイルの一部、当該プログラム専用の単一ファイル、または複数の調整されたファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部を格納するファイル)に保存できる。コンピュータプログラムは、1つのコンピュータまたは1つのサイトの複数のコンピュータで実行するように展開することも、複数のサイトに分散して通信ネットワークで相互接続することもできる。
【0032】
ここに記載した主題の方法ステップを含むこの明細書に記載したプロセスおよび論理フローは、入力データを操作することにより、ここに記載した主題の機能を成し遂げて出力を生成する、1つ以上のコンピュータプログラムを実行する1つ以上のプログラム可能なプロセッサによって成し遂げることができる。プロセスおよび論理フローはまた、本明細書に記載の主題の装置によって成し遂げることもでき、本明細書に記載の主題の装置は、専用論理回路、例えばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)として実装することができる。
【0033】
コンピュータプログラムの実行に好適なプロセッサには、例として、汎用および専用マイクロプロセッサの両方、およびあらゆる種類のデジタルコンピュータの1つ以上のプロセッサが含まれる。通常、プロセッサは、読み取り専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令とデータを受け取る。コンピュータの不可欠な要素は、命令を実行するプロセッサと、命令とデータを保存する1つ以上のメモリデバイスである。一般に、コンピュータは、データを保存するための1つ以上の大容量記憶デバイス(例えば、磁気、光磁気ディスク、光ディスク)を、含むか、データを受信もしくは転送または両方をするように動作可能に結合する。コンピュータプログラムの命令およびデータを具体化するのに好適な情報担体には、例として、半導体メモリデバイス(例えば、EPROM、EEPROM、フラッシュメモリデバイス)、磁気ディスク(例えば、内蔵ハードディスクまたはリムーバブルディスク)、光磁気ディスク、および光ディスク(CDおよびDVDディスク)を含む、あらゆる形態の不揮発性メモリが含まれる。プロセッサとメモリは、専用のロジック回路で補完するか、組み込むことができる。
【0034】
ユーザーとの相互作用を提供するために、本明細書に記載する主題は、ユーザーに情報を表示するためのディスプレイデバイス、例えばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニターと、ユーザーがコンピュータに入力できる、キーボードおよびポインティングデバイス(例えば、マウスまたはトラックボール)とを有するコンピュータ上で実装できる。他の種類のデバイスを使用して、ユーザーとの対話を提供することもできる。例えば、ユーザーに提供されるフィードバックは、任意の形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であり、ユーザーからの入力は、音響、音声、または触覚入力を含む任意の形態で受信できる。
【0035】
本明細書に記載した主題は、バックエンドコンポーネント(例えば、データサーバ)、ミドルウェアコンポーネント(例えば、アプリケーションサーバ)、またはフロントエンドコンポーネント(例えば、ユーザーがここに記載した主題の実装形態と対話できる、グラフィカルユーザーインターフェイスまたはウェブブラウザを有するクライアントコンピュータ)、またはそのようなバックエンド、ミドルウェア、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで実装できる。システムのコンポーネントは、デジタルデータ通信の任意の形態または媒体、例えば、通信ネットワークによって相互接続できる。通信ネットワークの例には、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、例えばインターネットが含まれる。
【0036】
開示された主題は、その適用において、あとの説明で明らかにされるかまたは図面に示される構成の詳細およびコンポーネントの配設に限定されないことを理解されたい。開示された主題は、他の実施形態が可能であり、様々な方法で実施および果たすことができる。また、本明細書で使用される語法および用語は説明を目的とするものであり、限定と見なされるべきではないことを理解されたい。
【0037】
そういうものとして、当業者は、この開示の基礎となる概念が、開示された主題のいくつかの目的を果たすための他の構造、方法、およびシステムの設計の基礎として容易に利用できることを理解するであろう。したがって、開示された主題の精神および範囲から逸脱しない限り、そのような同等の構造を含むと見なされることが重要である。
【0038】
開示された主題は、前述の例示的な実施形態で記載および図示されたが、本開示は例としてのみ行われ、開示された主題の実装の詳細における、おびただしい数の変更が、次の特許請求の範囲によってのみ制限される開示された主題の精神および範囲から逸脱することなく行われ得ることが理解される。
図1
図2
図3
図4
図5