JP2019503101A - ハイブリッド・クラウド環境内の第1のクラウドと第2のクラウドとの間の複数のvpnトンネルを管理するための方法、装置、およびコンピュータ・プログラム - Google Patents

ハイブリッド・クラウド環境内の第1のクラウドと第2のクラウドとの間の複数のvpnトンネルを管理するための方法、装置、およびコンピュータ・プログラム Download PDF

Info

Publication number
JP2019503101A
JP2019503101A JP2018524285A JP2018524285A JP2019503101A JP 2019503101 A JP2019503101 A JP 2019503101A JP 2018524285 A JP2018524285 A JP 2018524285A JP 2018524285 A JP2018524285 A JP 2018524285A JP 2019503101 A JP2019503101 A JP 2019503101A
Authority
JP
Japan
Prior art keywords
vpn
cloud
tunnel
vpn tunnel
requirements
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018524285A
Other languages
English (en)
Other versions
JP6712318B2 (ja
Inventor
ホイ、ジェフリー、ロバート
ナガラトナム、ナタラージュ
アイヤー、シリーカンス、ラマクリシュナ
カパディア、カウシャル、キラン
ムスクリシュナン、ラヴィ、クリシュナン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2019503101A publication Critical patent/JP2019503101A/ja
Application granted granted Critical
Publication of JP6712318B2 publication Critical patent/JP6712318B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Abstract

【課題】ハイブリッド・クラウド環境内の第1のクラウドと第2のクラウドとの間の複数のVPNトンネルを管理するための方法、装置およびコンピュータ・プログラム製品を提供する。
【解決手段】VPNマネージャは、第1のクラウド内にある第1のクラウド・アプリケーションから要求を受け取る。要求は、複数のVPNトンネルにおける第1のVPNトンネルに関する第1の組の要件を含む。要求は、第1のクラウド内の第1のシステムに送られ、第1のシステムは、第1の組の要件に従って第1のVPNトンネルを作製する。VPNマネージャは、第1のVPNトンネルに関するイベントを受け取る。イベントに応答して、VPNマネージャは、第2の組の要件を含む変更要求を第1のシステムに送る。第1のシステムは、第2の組の要件に従って第1のVPNトンネルを調整する。第1のVPNトンネルの調整は、第1のVPNトンネルを第2のVPNトンネルと併合すること、または第1のVPNトンネルを第1および第2のVPNトンネルに分割することを含むことができる。
【選択図】図4

Description

本発明は、一般に、「クラウド」コンピューティング環境における通信に関する。より詳細には、本発明は、ハイブリッド・クラウド環境において仮想プライベート・ネットワーク・トンネルを動的に作製することに関する。
新たな情報技術(IT)配信モデルは、クラウド・コンピューティングであり、これにより、共有リソース、ソフトウェアおよび情報が、インターネット上で、オンデマンドでコンピュータおよび他のデバイスに提供される。クラウド・コンピューティングは、ワークロードの最適化およびサービス配信を改善しながら、ITのコストおよび複雑さを著しく低減させることができる。この手法を用いて、アプリケーション・インスタンスは、ホストすることができ、HTTP上で従来のウェブ・ブラウザを通じてアクセス可能なインターネット・ベースのリソースから入手可能となる。例示的なアプリケーションは、電子メール、スケジュール管理、連絡先管理およびインスタント・メッセージングのような共通のメッセージング機能の組を提供するものとすることができる。次に、ユーザは、インターネット上でサービスに直接アクセスする。このサービスを用いて、企業は、その電子メール、予定表、またはコラボレーション・インフラストラクチャをクラウド、あるいはその組み合わせに置き、エンドユーザは、適切なクライアントを用いて、その電子メールにアクセスする、またはカレンダ操作を実施する。
クラウド・コンピューティング・リソースは、一般的に、ハードウェア・アーキテクチャ、いわゆるベア・メタル・クラウド・ホスティングを用いて、または、アプリケーションが、データ・センタ・ファシリティ内の物理サーバにマッピングされる、仮想サーバもしくはいわゆる「仮想マシン」(VM)内で実行される仮想化アーキテクチャを用いて、ネットワーク・アプリケーションを実行する大規模なサーバ・ファーム内に収容される。仮想マシンは、一般的には、物理リソースを仮想マシンに割り当てる制御プログラムであるハイパーバイザで実行される。
コンピューティング・リソースが組織により所有され、その組織のためだけにサービスを提供するプライベート・クラウド、および、別の組織が、ハイブリッド・クラウドを運営する組織を含む複数の「テナント」のためのコンピューティング・サービスを提供するパブリック・クラウドの両方を含むハイブリッド・クラウド環境において、組織がコンピューティング・リソースを構成することが知られている。ハイブリッド・クラウド・モデルの1つの利点は、直接アクセス可能な、オンプレミスのプライベート・インフラストラクチャを有する一方で、デマンドが高い時にパブリック・クラウド環境へのアクセスを提供することである。しかしながら、この統合に伴って、2つの環境の間のセキュア通信に対する必要性がある。通信を確立する1つの方法は、専用仮想パブリック・ネットワーク(VPN)トンネルを通じたものである。
以降では、ハイブリッド・クラウド環境におけるVPN通信を改善するための方法を詳述する。
"Draft NIST Working Definition of Cloud Computing" by Peter Mell and Tim Grance, dated October 7, 2009
ハイブリッド・クラウド環境における第1のクラウドと第2のクラウドとの間の複数のVPNトンネルを管理するための方法、装置およびコンピュータ・プログラムを提供する。またハイブリッド・クラウド環境における動的に定められた仮想プライベート・ネットワーク・トンネルを管理する方法を提供する。
本発明の第1の態様において、第1のVPNマネージャによって実行される方法が、複数のVPNトンネルを管理する。VPNマネージャは、第1のクラウド内にある第1のクラウド・アプリケーションから要求を受け取る。要求は、複数のVPNトンネルにおける第1のVPNトンネルに関する第1の組の要件を含む。要求は、第1のクラウド内の第1のシステムに送られ、第1のシステムは、第1の組の要件に従って第1のVPNトンネルを作製する。VPNマネージャは、第1のVPNトンネルに関するイベントを受け取る。イベントに応答して、VPNマネージャは、第2の組の要件を含む変更要求を第1のシステムに送る。第1のシステムは、第2の組の要件に従って第1のVPNトンネルを調整する。
本発明の別の態様において、プロセッサと、コンピュータ・プログラム命令を保持するコンピュータ・メモリとを含む装置が、複数のVPNトンネルを管理するために使用される。命令は、プロセッサによって実行される。命令は、第1のクラウド内にある第1のクラウド・アプリケーションから第1の要求を受け取るプログラム・コードを含む。第1の要求は、複数のVPNトンネルにおける第1のVPNトンネルに関する第1の組の要件を含む。第1の要求を第1のクラウド内の第1のシステムに送るプログラム・コードも含まれている。第1のシステムは、第1の組の要件に従って第1のVPNトンネルを作製する。第1のクラウド内にある第2のクラウド・アプリケーションから第2の要求を受け取るプログラム・コード。第2の要求は、複数のVPNトンネルにおける第2のVPNトンネルに関する第2の組の要件を含む。プログラム・コードは、第2の要求を第1のクラウド内の第1のシステムに送り、第1のシステムは、第2の組の要件に従って第2のVPNトンネルを作製する。プログラム・コードは次いで、第1のVPNトンネルに関するイベントを受け取る。イベントに応答して、プログラム・コードは、第2のVPNトンネルを第1のVPNトンネルに併合する(merge)併合要求を第1のシステムに送る。第1のシステムは、第2の組の要件に従って第1のVPNトンネルを調整する。
本発明の別の態様において、非一時的なコンピュータ可読媒体内のコンピュータ・プログラム製品が、複数のVPNトンネルを管理するために使用される。コンピュータ・プログラム命令は、第1のクラウド内にある第1のクラウド・アプリケーションから第1の要求を受け取るプログラム・コードを含む。第1の要求は、複数のVPNトンネルにおける第1のVPNトンネルに関する第1の組の要件を含む。プログラム・コードは、第1の要求を第1のクラウド内の第1のシステムに送り、第1のシステムは、第1の組の要件に従って第1のVPNトンネルを作製する。プログラム・コードは、第1のクラウド内にある第2のクラウド・アプリケーションから第2の要求を受け取る。第2の要求は、複数のVPNトンネルにおけるVPNトンネルに関する第2の組の要件を含む。プログラム・コードは、第2の要求を第1のクラウド内の第1のシステムに送り、第1のシステムは、第2の組の要件に従って第1のVPNトンネルを変更する。第1のVPNトンネルは、第1および第2のクラウド・アプリケーションからのトラフィックを搬送する。プログラム・コードは、第1のVPNトンネルに関するイベントを受け取る。イベントに応答して、プログラム・コードは、第1のVPNトンネルを第1のVPNトンネルと第2のVPNトンネルとに分割する分割要求を第1のシステムに送る。第1のシステムは、第1のアプリケーションのトラフィックに関する第1の組の要件に従って第1のVPNトンネルを調整し、かつ、第2のアプリケーションのトラフィックに関する第2の組の要件に従って第2のVPNトンネルを調整する。
上記は、開示される主題のより適切な特徴の一部を概説している。これらの特徴は、単なる例証にすぎないと解釈すべきである。開示される主題を異なる方法で適用すること、または説明されるように本発明を変更することによって、他の多くの有益な結果を得ることができる。
本発明およびその利点のより完全な理解のため、ここで、添付図面と併用される以下の説明を参照する。
本発明の例証となる実施形態の例示的な態様を実装することができる分散型データ処理環境の例示的なブロック図である。 本発明の例証となる実施形態の例示的な態様を実装することができるデータ処理システムの例示的なブロック図である。 本発明の実施形態を実装することができる例示的なクラウド・コンピューティング・アーキテクチャを示す図である。 本発明の好ましい実施形態の高レベルのフロー図である。 本発明の実施形態を実装することができるハイブリッド・クラウド環境を示す図である。 VPNトンネルおよびVPN属性を管理者ユーザに表示することができるグラフィカル・ユーザ・インターフェースを示す図である。 ユーザ・アプリケーション・デマンドの変化に応答した属性の変更を示す図である。 ユーザ・アプリケーション・デマンドの変化に応答したVPNトンネルの併合を示す図である。 ユーザ・アプリケーション・デマンドの変化に応答したVPNトンネルの分割を示す図である。 本発明の一実施形態におけるイベントおよびログ管理のフロー図である。 本発明の一実施形態によるVPNトンネルの作製および変更のフロー図である。 2つの異なるVPNマネージャ・ベースのフェデレーション・モデルにより管理されるクラウド環境間のVPNの作製を示す図である。
ハイブリッド・クラウド環境は、異なるクラウド・ホスティング環境間の、アプリケーション間のセキュア通信に対する必要性を促進する。アプリケーションおよびプラットフォームの数が増大すると、機密保護する必要がある通信経路の数は急速に増大する。今日、顧客は、ハイブリッド・クラウド環境における異なるクラウド間を架橋するために、専用VPNをインストールすることが多いが、専用VPNは、柔軟性の制限、機密保護する必要がある環境内への大きな通信の穴の生成(通信を可能にするためにファイアウォールを開けることによる)を含む多数の欠点を伴う。ハイブリッド・クラウド環境にわたるイベント管理のような高粒度の要件の場合、多量のデバイスから中央サーバに小さいログを送ることはできるが、従来のVPN選択肢は、ソース・デバイスと中央サーバとの間に、少量のデータを伝送するのに必要とされるものをはるかに上回る広い通信チャネルを開けることを必要とする。本発明は、従来技術の解決法に比べて、ハイブリッド・クラウド環境に関するアプリケーション要件およびトポロジ要件に基づく高度に調整されたVPNを提供するための手段を提供する。
「ハイブリッド・クラウド環境」とは、コンピューティング・リソースが組織により所有され、その組織のためだけにサービスを提供するプライベート・クラウド、および、別の組織が、該組織を含む複数の「テナント」のためにコンピューティング・サービスを提供するパブリック・クラウドの両方を含むクラウド環境である。
「ノード」は、任意の電子デバイス、クライアント、サーバ、ピア、サービス、アプリケーション、またはネットワーク内の通信チャネル上で情報を送信、受信、または転送することができる他のオブジェクトとすることができる。
「VPNエージェント」は、トンネルのエンドポイントである2つのノードの1つにおいてVPNトンネルを管理するアプリケーションである。
「VPNマネージャ」は、ハイブリッド・クラウド環境におけるVPNトンネルのインフラストラクチャを管理するクラウド・アプリケーションである。好ましい実施形態において、VPNマネージャはまた、VPNエージェントのインフラストラクチャを管理し、VPNエージェントが、それぞれのVPNトンネルを管理する。
「VPNトンネル」は、任意の適切な暗号トンネリング・プロトコルに従ってデータのインターネット・プロトコル(IP)パケットをカプセル化することによってデータを搬送する、2つのノード間の通信チャネルである。
ここで図面を参照して、特に図1〜図2を参照して、本開示の例証となる実施形態を実装することができるデータ処理環境の例示的な図が提供される。図1〜図2は、例示にすぎず、開示される主題の態様または実施形態を実装することができる環境に関するいずれかの制限を主張することも含意することも意図するものではないことを理解されたい。本発明の思想および範囲から逸脱することなく、示される環境への多くの変更をなすことができる。
ここで図面を参照すると、図1は、例証となる実施形態の態様を実装することができる例示的な分散型データ処理システムの図形的表現を示す。分散型データ処理システム100は、例証となる実施形態の態様を実装することができるコンピュータのネットワークを含むことができる。分散型データ処理システム100は、分散型データ処理システム100内で互いに接続された種々のデバイスおよびコンピュータ間の通信リンクを提供するために使用される媒体である少なくとも1つのネットワーク102を含む。ネットワーク102は、有線、無線通信リンク、または光ファイバ・ケーブルのような接続を含むことができる。
示される例において、サーバ104およびサーバ106は、ストレージ・ユニット108と共に、ネットワーク102に接続される。さらに、クライアント110、112および114もまた、ネットワーク102に接続される。これらのクライアント110、112および114は、例えば、パーソナル・コンピュータ、ネットワーク・コンピュータ等とすることができる。示される例において、サーバ104は、起動ファイル、オペレーティング・システムのイメージおよびアプリケーションのようなデータを、クライアント110、112および114に供給する。示される例において、クライアント110、112および114は、サーバ104に対するクライアントである。分散型データ処理システム100は、付加的なサーバ、クライアントおよび図示されていない他のデバイスを含むことができる。
示される例において、分散型データ処理システム100は、ネットワーク102を有するインターネットであり、インターネットは、互いに通信するためにプロトコルの伝送制御プロトコル/インターネット・プロトコル(TCP/IP)スイートを用いるネットワークおよびゲートウェイのワールドワイドの集合を表す。インターネットの中心には、データおよびメッセージを経路指定する多数の商用、行政用、教育用および他のコンピュータ・システムから成る、主要ノードまたはホスト・コンピュータ間の高速データ通信ラインのバックボーンがある。当然のことながら、分散型データ処理システム100は、例えば、イントラネット、ローカル・エリア・ネットワーク(LAN)、広域ネットワーク(WAN)等のような多数の異なるタイプのネットワークを含むように実装することもできる。上述のように、図1は、一例であることを意図したものであり、開示される主題の異なる実施形態についてのアーキテクチャ上の限定を意図したものではなく、したがって、図1に示される特定の要素は、本発明の例証となる実施形態を実装することができる環境に関する限定であると考えるべきではない。
ここで図2を参照すると、本発明の例証となる実施形態の態様を実装することができる例示的なデータ処理システムのブロック図が示される。データ処理システム200は、図1のクライアント110のようなコンピュータの一例であり、その中に、本発明の例証となる実施形態についてプロセスを実装するコンピュータ使用可能コードまたは命令を配置することができる。
ここで図2を参照すると、本発明の例証となる実施形態を実装することができるデータ処理システムのブロック図が示される。データ処理システム200は、図1のサーバ104またはクライアント110のようなコンピュータの一例であり、その中に、例証となる実施形態についてプロセスを実装するコンピュータ使用可能プログラム・コードまたは命令を配置することができる。この説明に役立つ実例において、データ処理システム200は、プロセッサ・ユニット204、メモリ206、永続的ストレージ208、通信ユニット210、入力/出力(I/O)ユニット212、およびディスプレイ214の間の通信を提供する通信ファブリック202を含む。
プロセッサ・ユニット204は、メモリ206にロードすることができるソフトウェアのための命令を実行する役目を果たす。プロセッサ・ユニット204は、特定の実装形態に応じて、1つもしくは複数のプロセッサの組とすることもでき、またはマルチプロセッサ・コアとすることもできる。さらに、プロセッサ・ユニット204は、主プロセッサが二次プロセッサと共にシングル・チップ上に存在する1つまたは複数の異種プロセッサ・システムを用いて実装することができる。別の説明に役立つ実例として、プロセッサ・ユニット204は、同じタイプの複数のプロセッサを含む対称型マルチプロセッサ(SMP)システムとすることができる。
メモリ206および永続的ストレージ208は、ストレージ・デバイスの例である。ストレージ・デバイスは、情報を一時的にまたは永続的にあるいはその両方で記憶することができるハードウェアのいずれかの一部である。これらの例におけるメモリ206は、例えば、ランダム・アクセス・メモリまたは他のいずれかの適切な揮発性もしくは不揮発性のストレージ・デバイスとすることができる。永続的ストレージ208は、特定の実装形態に応じて種々の形態を取ることができる。例えば、永続的ストレージ208は、1つまたは複数のコンポーネントまたはデバイスを含むことができる。例えば、永続的ストレージ208は、ハード・ドライブ、フラッシュ・メモリ、再書き込み可能光ディスク、再書き込み可能磁気テープ、または上記の何らかの組み合わせとすることができる。永続的ストレージ208によって用いられる媒体は、取り外し可能とすることもできる。例えば、取り外し可能ハード・ドライブを永続的ストレージ208に用いることができる。
これらの例における通信ユニット210は、他のデータ処理システムまたはデバイスとの通信を提供する。これらの例では、通信ユニット210は、ネットワーク・インターフェース・カードである。通信ユニット210は、物理通信リンクおよび無線通信リンクの一方または両方の使用を通じて、通信を提供することができる。
入力/出力ユニット212は、データ処理システム200に接続することができる他のデバイスとの間でデータの入力および出力を可能にする。例えば、入力/出力ユニット212は、キーボードおよびマウスを通じたユーザ入力のための接続を提供することができる。さらに、入力/出力ユニット212は、プリンタに出力を送信することができる。ディスプレイ214は、情報をユーザに表示するための機構を提供する。
オペレーティング・システムおよびアプリケーションまたはプログラムのための命令は、永続的ストレージ208上に配置される。これらの命令は、プロセッサ・ユニット204による実行のためにメモリ206にロードすることができる。異なる実施形態のプロセスは、メモリ206のようなメモリ内に配置することができるコンピュータ実装命令を用いて、プロセッサ・ユニット204によって実施することができる。これらの命令は、プロセッサ・ユニット204内のプロセッサによって読み出して実行することができる、プログラム・コード、コンピュータ使用可能プログラム・コード、またはコンピュータ可読プログラム・コードと呼ばれる。異なる実施形態においては、プログラム・コードは、メモリ206または永続的ストレージ208といった異なる物理または有形コンピュータ可読媒体上に具体化することができる。
プログラム・コード216は、選択的に取り外し可能なコンピュータ可読媒体218上に機能的形態で配置されており、プロセッサ・ユニット204による実行のためにデータ処理システム200にロードまたは転送することができる。これらの例では、プログラム・コード216およびコンピュータ可読媒体218は、コンピュータ・プログラム製品220を形成する。一例において、コンピュータ可読媒体218は、例えば光または磁気ディスクのような有形形態とすることができ、光または磁気ディスクは、永続的ストレージ208の一部であるハード・ドライブのようなストレージ・デバイスへの転送のために、永続的ストレージ208の一部であるドライブまたは他のデバイスに挿入されるまたは置かれる。有形形態において、コンピュータ可読媒体218は、データ処理システム200に接続される、ハード・ドライブ、サム・ドライブ、またはフラッシュ・メモリといった永続的ストレージの形態を取ることもできる。コンピュータ可読媒体218の有形形態は、コンピュータ記録可能ストレージ媒体とも呼ばれる。幾つかの例においては、コンピュータ記録可能媒体218は、取り外しできないようにしてもよい。
代替的に、プログラム・コード216は、通信ユニット210への通信リンクを通じて、または入力/出力ユニット212への接続を通じて、あるいはその両方を通じてコンピュータ可読媒体218からデータ処理システム200へ転送することができる。説明に役立つ例において、通信リンクまたは接続あるいはその両方は、物理的なものであっても、または無線式であってもよい。コンピュータ可読媒体はまた、プログラム・コードを含む通信リンクまたは無線伝送のような無形の媒体の形態を取ることもできる。データ処理システム200に関して示される異なるコンポーネントは、本発明の異なる実施形態を実装することができる方法に対するアーキテクチャ上の制限を与えることを意味するものではない。本発明の異なる例証となる実施形態は、データ処理システム200に関して示されたコンポーネントに追加したまたはその代わりのコンポーネントを含むデータ処理システムにおいて実装することができる。図2に示される他のコンポーネントは、示される説明に役立つ実例とは異なる場合がある。一例として、データ処理システム200内のストレージ・デバイスは、データを記憶することができる任意のハードウェア装置である。メモリ206、永続的ストレージ208およびコンピュータ可読媒体218は、有形の形態のストレージ・デバイスの例である。
別の例では、バス・システムは、通信ファブリック202を実装するのに用いることができ、システム・バスまたは入力/出力バスといった1つまたは複数のバスから構成することができる。当然のことながら、バス・システムは、バス・システムに取り付けられた異なるコンポーネントまたはデバイス間のデータ転送を提供するいずれかの適切なタイプのアーキテクチャを用いて実装することができる。さらに、通信ユニットが、モデムまたはネットワーク・アダプタといった、データの送信および受信に用いられる1つまたは複数のデバイスを含むことができる。さらにメモリは、例えば、メモリ206、または、通信ファブリック202内に存在することがあるインターフェースおよびメモリ・コントローラ・ハブにおいて見られるもののようなキャッシュとすることができる。
本発明の操作を実行するためのコンピュータ・プログラム・コードは、Java(商標)、Smalltalk(R)、C++、C#、Objective−C等のようなオブジェクト指向型プログラミング言語、および、従来の手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組み合わせで記述することができる。プログラム・コードは、全体がユーザのコンピュータ上で実行される場合もあり、一部がユーザのコンピュータ上で実行される場合もあり、独立型ソフトウェア・パッケージとして、一部がユーザのコンピュータ上で実行され、一部が遠隔コンピュータ上で実行される場合もあり、または全体が遠隔コンピュータもしくはサーバ上で実行される場合もある。後者のシナリオにおいては、遠隔コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくは広域ネットワーク(WAN)を含むいずれかのタイプのネットワークを通じてユーザのコンピュータに接続される場合もあり、または外部コンピュータへの接続がなされる場合もある(例えば、インターネット・サービス・プロバイダを用いてインターネットを通じて)。
当業者であれば、図1〜図2のハードウェアは、実装形態に応じて変化し得ることを理解するであろう。図1〜図2に示されるハードウェアに加えてまたはその代わりに、フラッシュ・メモリ、同等の不揮発性メモリ、または光ディスク・ドライブ等といった他の内部ハードウェアもしくは周辺機器を用いることもできる。また、開示される主題の範囲から逸脱することなく、本発明の例証となる実施形態のプロセスを、既述のSMPシステム以外のマルチプロセッサ・データ処理システムに適用することもできる。
見られるように、本明細書で説明される技術は、1つまたは複数のマシンの組上で実行されているインターネットでアクセス可能なウェブ・ベースのポータルとクライアント・マシンが通信する、図1に示されるような標準的なクライアントサーバ・パラダイムと共に動作することができる。エンドユーザは、ポータルにアクセスし、これと対話することができる、インターネットに接続可能なデバイス(例えば、デスクトップ・コンピュータ、ノートブック・コンピュータ、インターネット対応モバイル・デバイス等)を作動させる。一般的には、各クライアントまたはサーバ・マシンは、ハードウェアおよびソフトウェアを含む、図2に示されるようなデータ処理システムであり、これらのエンティティは、インターネット、イントラネット、エクストラネット、プライベート・ネットワーク、または他の任意の通信媒体もしくはリンクのようなネットワーク上で互いに通信する。データ処理システムは、一般的には、1つまたは複数のプロセッサ、オペレーティング・システム、1つまたは複数のアプリケーション、および1つまたは複数のユーティリティを含む。データ処理システム上のアプリケーションは、数ある中でも、HTTP、SOAP、XML、WSDL、UDDIおよびWSFLに関するサポートを含むがそれらには限定されない、ウェブ・サービスに関するネイティブ・サポートを提供する。SOAP、WSDL、UDDIおよびWSFLに関する情報は、これらの標準の開発および維持を担当するワールド・ワイド・ウェブ・コンソーシアム(W3C)から入手可能であり、HTTPおよびXMLに関するさらなる情報は、インターネット技術タスクフォース(IETF)から入手可能である。これらの標準を熟知していることを前提とする。
クラウド・コンピューティングは、最小限の管理労力またはサービス・プロバイダとの対話で迅速にプロビジョニングおよび解放することができる構成可能なコンピューティング・リソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス)の共有プールへの、便利なオンデマンドのネットワーク・アクセスを可能にするサービス配信のモデルである。このクラウド・モデルは、少なくとも5つの特徴、少なくとも3つのサービス・モデル、および少なくとも4つのデプロイメント・モデルを含むことができ、これらは全て、“Draft NIST Working Definition of Cloud Computing” by Peter Mell and Tim Grance, dated October 7, 2009にさらに詳細に記載され、定められている。
特に、以下が典型的な特徴である。
オンデマンド・セルフサービス: クラウド・コンシューマは、必要に応じて、サーバ時間およびネットワーク・ストレージ等のコンピューティング機能を、人間がサービスのプロバイダと対話する必要なく自動的に、一方的にプロビジョニングすることができる。
広範なネットワーク・アクセス: 機能は、ネットワーク上で利用可能であり、異種のシンまたはシック・クライアント・プラットフォーム(例えば、携帯電話、ラップトップ、およびPDA)による使用を促進する標準的な機構を通じてアクセスされる。
リソースのプール化: プロバイダのコンピューティング・リソースは、マルチ・テナント・モデルを用いて、異なる物理および仮想リソースを要求に応じて動的に割り当ておよび再割り当てすることにより、複数のコンシューマにサービスを提供するためにプールされる。コンシューマは、一般に、提供されるリソースの正確な位置について管理することも知ることもないが、より高レベルの抽象化では位置(例えば、国、州、またはデータセンタ)を特定できる場合があるという点で、位置とは独立していると言える。
迅速な弾力性: 機能は、迅速かつ弾力的に、場合によっては自動的に、プロビジョニングして素早くスケール・アウトし、迅速にリリースして素早くスケール・インさせることができる。コンシューマにとって、プロビジョニングに利用可能なこれらの機能は、多くの場合、無制限に見え、いつでもどんな量でも購入することができる。
サービスの測定: クラウド・システムは、サービスのタイプ(例えば、ストレージ、処理、帯域幅、およびアクティブなユーザ・アカウント)に適した何らかの抽象化レベルでの計量機能を利用することによって、リソースの使用を自動的に制御および最適化する。リソース使用を監視し、制御し、報告して、利用されるサービスのプロバイダとコンシューマの両方に対して透明性をもたらすことができる。
サービス・モデルは、一般的に以下の通りである。
Software as a Service(SaaS): コンシューマに提供される機能は、クラウド・インフラストラクチャ上で動作しているプロバイダのアプリケーションを使用することである。これらのアプリケーションは、ウェブ・ブラウザ(例えば、ウェブ・ベースの電子メール)などのシン・クライアント・インターフェースを通じて、種々のクライアント・デバイスからアクセス可能である。コンシューマは、ネットワーク、サーバ、オペレーティング・システム、ストレージ、または個々のアプリケーション機能をも含む基礎をなすクラウド・インフラストラクチャを管理も制御もしないが、考え得る例外は、限定されたユーザ固有のアプリケーション構成設定である。
Platform as a Service(PaaS): コンシューマに提供される機能は、プロバイダによってサポートされるプログラミング言語およびツールを用いて生成した、コンシューマが生成または取得したアプリケーションを、クラウド・インフラストラクチャ上にデプロイすることである。コンシューマは、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む基礎をなすクラウド・インフラストラクチャを管理も制御もしないが、デプロイされたアプリケーション、および場合によってはアプリケーション・ホスティング環境構成を制御する。
Infrastructure as a Service(IaaS): コンシューマに提供される機能は、コンシューマが、オペレーティング・システムおよびアプリケーションを含み得る任意のソフトウェアをデプロイし動作させることができる、処理、ストレージ、ネットワーク、および他の基本的なコンピューティング・リソースをプロビジョニングすることである。コンシューマは、基礎をなすクラウド・インフラストラクチャを管理も制御もしないが、オペレーティング・システム、ストレージ、デプロイされたアプリケーションを制御し、場合によっては、選択したネットワーク化コンポーネント(例えば、ホストのファイアウォール)を制限付きで制御する。
デプロイメント・モデルは、一般的に以下の通りである。
プライベート・クラウド: クラウド・インフラストラクチャは、ある組織のためだけに運営される。このクラウド・インフラストラクチャは、その組織または第三者によって管理することができ、オンプレミスまたはオフプレミスに存在することができる。
コミュニティ・クラウド: クラウド・インフラストラクチャは、幾つかの組織によって共有され、共通の関心事項(例えば、任務、セキュリティ要件、ポリシー、およびコンプライアンス上の考慮事項)を有する特定のコミュニティをサポートする。このクラウド・インフラストラクチャは、それらの組織または第三者によって管理することができ、オンプレミスまたはオフプレミスに存在することができる。
パブリック・クラウド: クラウド・インフラストラクチャは、一般公衆または大規模な業界グループに利用可能であり、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド: クラウド・インフラストラクチャは、固有のエンティティのままであるが、データおよびアプリケーションの移植性を可能にする標準化されたまたは専用の技術(例えば、クラウド間の負荷分散のためのクラウド・バースティング)によって結び付けられる2つまたはそれより多いクラウド(プライベート、コミュニティ、またはパブリック)の混成物である。
クラウド・コンピューティング環境は、無国籍性、低結合性、モジュール性、およびセマンティック相互運用性に焦点を置いたサービス指向である。クラウド・コンピューティングの中心には、相互接続されたノードのネットワークを含むインフラストラクチャがある。代表的なクラウド・コンピューティング・ノードは、上記の図2に示されるようなものである。特に、クラウド・コンピューティング・ノードには、他の多数の汎用または専用コンピューティング・システム環境または構成で動作可能なコンピュータ・システム/サーバが存在する。コンピュータ・システム/サーバと共に用いるのに好適であり得る周知のコンピューティング・システム、環境、または構成、あるいはその組み合わせの例としては、次のものに限定されるものではないが、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、手持ち式またはラップトップ型デバイス、マルチプロセッサ・システム、マイクロプロセッサ・ベースのシステム、セット・トップ・ボックス、プログラム可能民生電子機器、ネットワークPC、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、および、上述のシステムまたはデバイス等のいずれかを含む分散型クラウド・コンピューティング環境が含まれる。コンピュータ・システム/サーバは、コンピュータ・システムによって実行される、プログラム・モジュールなどのコンピュータ・システム実行可能命令の一般的な文脈で説明することができる。一般に、プログラム・モジュールは、特定のタスクを実行するまたは特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、論理、データ構造などを含むことができる。コンピュータ・システム/サーバは、通信ネットワークを通じてリンクされている遠隔処理デバイスによってタスクが実行される分散型クラウド・コンピューティング環境で訓練することができる。分散型クラウド・コンピューティング環境において、プログラム・モジュールは、メモリ・ストレージ・デバイスを含む、ローカルおよび遠隔両方のコンピュータ・システム・ストレージ媒体内に配置することができる。
ここで図3を参照すると、付加的な背景として、クラウド・コンピューティング環境によって提供される機能抽象化層の組が示される。図3に示されるコンポーネント、層、および機能は単に例示であることを意図し、本発明の実施形態はそれらに限定されないことを予め理解されたい。図示されるように、以下の層および対応する機能が提供される。
ハードウェアおよびソフトウェア層300は、ハードウェアおよびソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例として、IBM(R) zSeries(R)システムを一例とするメインフレーム、IBM pSeries(R)システムを一例とするRISC(Reduced Instruction Set Computer(縮小命令セット・コンピュータ))アーキテクチャ・ベースのサーバ、IBM xSeries(R)システム、IBM BladeCenter(R)システム、ストレージ・デバイス、ネットワークおよびネットワーク・コンポーネントが含まれる。ソフトウェア・コンポーネントの例として、IBM WebSphere(R)アプリケーション・サーバ・ソフトウェアを一例とするネットワーク・アプリケーション・サーバ・ソフトウェア、およびIBM DB2(R)データベース・ソフトウェアを一例とするデータベース・ソフトウェアが含まれる。(IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere、およびDB2は、世界中の多数の管轄区域において登録されているインターナショナル・ビジネス・マシーンズ・コーポレーションの商標である)
仮想化層302は、抽象化層を提供し、この抽象化層から、仮想エンティティの以下の例、即ち、仮想サーバ、仮想ストレージ、仮想プライベート・ネットワークを含む仮想ネットワーク、仮想アプリケーションおよびオペレーティング・システム、ならびに仮想クライアントを提供することができる。
一例においては、管理層304は、以下で説明される機能を提供することができる。リソース・プロビジョニングは、クラウド・コンピューティング環境内でタスクを実行するために利用されるコンピューティング・リソースおよび他のリソースの動的な調達を提供する。計量および価格決定は、クラウド・コンピューティング環境内でリソースが利用される際のコスト追跡と、これらのリソースの消費に対する課金または請求とを提供する。一例において、これらのリソースは、アプリケーション・ソフトウェア・ライセンスを含むことができる。セキュリティは、クラウド・コンシューマおよびタスクに対する識別情報の検証と、データおよび他のリソースに対する保護とを提供する。ユーザ・ポータルは、コンシューマおよびシステム管理者のために、クラウド・コンピューティング環境へのアクセスを提供する。サービス・レベル管理は、要求されるサービス・レベルが満たされるように、クラウド・コンピューティング・リソースの割り当ておよび管理を提供する。サービス・レベル・アグリーメント(SLA)の計画および履行は、SLAに従って将来の要件が予測されるクラウド・コンピューティング・リソースの事前配置および調達を提供する。
ワークロード層306は、クラウド・コンピューティング環境を利用することができる機能の例を提供する。この層から提供することができるワークロードおよび機能の例には、マッピングおよびナビゲーション、ソフトウェア開発およびライフサイクル管理、仮想教室教育配信、データ分析処理、トランザクション処理、ならびに他のもの(例えば、プライベート・クラウドにおける企業固有の機能)が含まれる。
本開示は、クラウド・コンピューティングについての詳細な説明を含むが、本明細書で挙げられる教示の実装形態は、クラウド・コンピューティング環境に限定されないことが予め理解される。どちらかと言えば、本発明の実施形態は、現在知られているまたは後に開発される他のいずれのタイプのコンピューティング環境とも共に実施することができる。
ハイブリッド・クラウド環境は、異なるホスティング環境間の、アプリケーション間のセキュア通信に対する必要性を促進する。アプリケーションおよびプラットフォームの数が増大すると、セキュア通信経路の数は急速に増大する。従来技術の専用VPNは、機密保護する必要がある環境内に大容量の通信チャネルを作製する。多くの伝送の必要性は、イベント管理のような高粒度の要件であり、そこでは、ログ・データが、多くのデバイスから中央サーバへ送られ、従来のVPNは、セキュリティ・リスクをもたらす不要な広い通信チャネルを使用する。クラウド間で少量のデータを伝送するアプリケーションの他の例は、例えば月に一度など定期的にデータの同期を試みるアプリケーション、または規則的ではあるが少量のデータを送る監視アプリケーションを含む。
従来技術のソフトウェアVPNは、特定のアプリケーションまたは特定のクラウドのために通信経路を作製することにより、この問題を部分的に解決することができるが、アプリケーション・ベースの解決法は、一般に、単一のアプリケーションのみに適用され、管理が難しい場合があり、監視が難しい場合があり、規模の効率性を生かせない。
本発明の実施形態は、複数のアプリケーションからのアプリケーション要件に基づいて、高度に調整されたVPNを動的にデプロイおよび再構成し、ハイブリッド・クラウド環境のための最適なトポロジを提供するシステムを含む。
高レベルで、本発明の実施形態についての一般的なプロセスが、図4に示される。ステップ401に示されるように、クラウド・アプリケーションが、それらがプライベート・クラウド内にあろうとパブリック・クラウド内にあろうと、中央VPNマネージャと対話して、トンネルの作製を要求する。中央VPNマネージャを、パブリック・クラウドまたはプライベート・クラウドのいずれかにインストールして、SaaS、PaaSまたはIaaS機能として組織に提供することができる。簡単にするために、単一のクラウド・アプリケーションの要求からもたらされるフローが示される。しかしながら、本発明の好ましい実施形態においては、複数のクラウド・アプリケーションが、同時にVPNマネージャと対話し、図4に示されるプロセスは、それぞれのアプリケーションについての異なる段階におけるものとすることができる。ステップ403において、VPNトンネルの作製を要求しているアプリケーションは、プロトコル、ポート、帯域幅制限、および他の特徴、例えばセキュリティ品質およびスループット能力などの、VPNトンネルに関する所望の要件を提供する。
次に、ステップ405において、VPNマネージャは、要求中のマシンまたは同じクラウド内の別のマシン上にインストールするための、VPNエンドポイント・エージェント、または単に「VPNエージェント」を提供する。本発明の好ましい実施形態において、VPNエージェントは次に、ターゲット・マシン内にインストールされる。VPNエンドポイント・エージェントは、例えばLinuxベースのシステム対iOSベースのシステムなど、要求中のマシンの要件に適合するように僅かに変化させることができる。本発明の幾つかの実施形態において、VPNエージェントは、異なるタイプで特殊化し、構成することができ、特定のVPNトンネルに割り当てられたVPNエージェントのタイプは、VPNトンネルについての要求される品質および能力によって異なる。本発明の他の実施形態において、種々のVPNトンネル・タイプを提供できる一般的なフル機能のVPNエージェントが使用される。要求がアプリケーションのものか、または同じマシン上にある別のアプリケーションが以前の要求を行っているかによって、VPNエージェントは、エンドポイントまたは近くのマシンに既に存在し得る。さらに、本発明の実施形態は、VPNエージェントをデプロイするのではなく、シェフ・エージェントなどの既存のエージェントまたは既存のVPNコントローラへのAPIを使用する。したがって、本発明の多くの実施形態において、ステップ405は随意的なものである。ステップ407において、VPNエージェントは、VPNマネージャと通信して、アプリケーションが以前に要求したようなデプロイメント構成の詳細を受け取り、それらの詳細に従って、VPNトンネルをデプロイする。
ステップ409に示されるように、要求中のアプリケーションは、VPNトンネルについてのアプリケーション・ライフサイクル全体にわたって、所望の要求されるセキュリティ品質およびスループット能力を変更することができる。VPNトンネルの「調整」は、トンネルのセキュリティおよび他の能力を変更することができ、または以下に説明されるように、クラウド・アプリケーションの要件の変更に適合させるために、VPNトンネルを併合することまたは分割することを含むことができる。例えば、VPNトンネルの特徴を変更する場合、VPNマネージャは、VPNトンネルを、デプロイメント中に使用される大きなVPNパイプの二方向の迅速なセキュリティ・プロトコル・トンネルから、生産のための小さな一方向の非常にセキュアなVPNパイプであるVPNトンネルに変化させるよう、VPNエージェントに指示することができる。最小数のVPNトンネル上の許可されたアプリケーションが必要とするトラフィックおよび許可のみを可能にすることによりセキュリティを最適化するように、VPNネットワークを調整することができる。可能なセキュリティ・コストで、より多くのVPNトンネルに、より高い許容される帯域幅を提供することによって、トラフィック性能を高めることができる。本発明の1つの好ましい実施形態において、アプリケーションは、VPNマネージャに対して通信し、次いでVPNマネージャは、VPNトンネルの2つのエンドポイント上のVPNエージェントに対して通信する。このステップ、つまり、VPNトンネルのスループットおよびセキュリティ品質を動的に変更することは、アプリケーション・ライフサイクルの全体にわたって繰り返すことができる。
ステップ411に見られるように、アプリケーションは、VPNフィルタ・プラグインをVPNマネージャに提供することができる。VPNフィルタは、VPNトンネルを通り過ぎるトラフィックをフィルタ処理するために使用される。VPNフィルタは、一般にどのIP/ポートを許可または拒否すべきかについてACLフィールドを列挙することによって、VPNトンネルを出た後のトラフィックおよびVPNトンネルに入る前のトラフィックを許可または拒否する能力を提供する。このステップは、要求ステップ403の一部として行うことができ、またはセキュリティ品質の変更の一部として、例えば、ステップ409における変更要求の一部として後で行うことができる。ステップ403において最初に要求されたVPNフィルタが、後で要求されるVPNフィルタに入れ替えられることまたはこれによって補完されることが可能である。新しいVPNフィルタを要求するこのステップは、アプリケーション・ライフサイクル全体にわたって繰り返すことができる。特定のVPNトンネルが他のVPNトンネルと併合されたとき、または複数のVPNトンネルに分割されたとき、そのVPNトンネルの通信帯域幅を共有する他のアプリケーションからの要求に応答して、そのVPNトンネル上のVPNフィルタを変更することができる。
イベントおよびトラフィック・ロギングにより、VPNマネージャは、ステップ413として示されるVPN構成への可視性をもたらす。本発明の最も好ましい実施形態において、イベント・ロギングが提供される。本発明の幾つかの実施形態においては、トラフィック・ロギングも提供される。本発明の1つの好ましい実施形態において、イベントおよびトラフィック・ロギングは、VPNマネージャ関連の監査イベントである。本発明の他の実施形態において、他のアプリケーションに接続するアプリケーションに関連したイベントを、VPNエージェントを介してログ記録することができる。例えば、帯域幅履歴を含む、アプリケーションにより使用される帯域幅を、VPNエージェントによりログ記録することができる。さらに他の実施形態においては、エージェントにより、アプリケーション通信トラフィックをログ記録することができる。セキュリティ侵害を監視するために、セキュリティ・オペレーション・センタ(SOC)により、セキュリティ関連イベントが行われる。イベントおよびトラフィック・ロギングは、図10に関連して以下にさらに詳細に説明される。
本発明の好ましい実施形態において、VPNマネージャは、既存のVPNエージェントにわたるトラフィックを経路指定および再経路指定し、ステップ415で必要に応じて、新しいVPNエージェントをデプロイしてトラフィック・フローを最適化する。例えば、記憶および監視される利用可能なトラフィック・ログを用いてトラフィックの低下を検出したことに応答して、VPNマネージャは、2つのVPNトンネル上のトラフィックに関するセキュリティ要件が両立できる場合、それらのVPNトンネルを併合するよう、VPNエージェントに指示することができる。検出は、アプリケーション・トラフィックを監視するVPNエージェントにおいて実施することができる。代替的に、VPNトンネルの併合は、正常に動作するアプリケーションに応答して、デプロイメント段階から生産段階に移行し、したがって、より少ない帯域幅しか必要としないというメッセージを、VPNマネージャに送ることができる。VPNマネージャは、予想されるデマンドの低下を考慮して、VPNトンネルを併合する機会があると判断する。代替的に、新しいまたは既存のアプリケーションからの新しい要求により、新しいVPNエージェントが作製されて、新しい予期されるロードまたは要件を処理することができる。アプリケーションのセキュリティ要件は、アプリケーション・ライフサイクルに伴って変更することがあり、それにより、新しいVPNエージェントに対する必要性がもたらされ得る。このステップは、異なるVPNエージェントを異なるVPNトンネルに再割り当てすること、不要なVPNエージェントを削除すること、ならびに新しいVPNエージェントを作製および提供して、併合されるVPNトンネルを処理すること、または新しいトラフィックが予想される場合には新しいVPNトンネルを処理することを必要とする。
同じくステップ417として示されるように、アプリケーションのライフサイクル中にアプリケーションによりなされた要求、監視されたトラフィックの変更のために、またはアプリケーションが常駐するマシンにおける変更に起因して、VPNトンネルを再構成する必要がある場合がある。アプリケーション・トポロジが変更され、マシンが移動すると、VPNマネージャは、必要に応じてVPNを再構成、併合、および分割するよう、VPNエージェントに指示する。本発明の好ましい実施形態においては、VPNトンネルの「分割」は、単一のVPNトンネルによって以前に処理された既存のアプリケーションまたはマシンからのトラフィックを、2つのVPNトンネルに再経路指定することを含む。対照的に、新しいVPNトンネルの付加または作製は、VPNマネージャにより以前に供給されなかったアプリケーションからの新しいアプリケーション要求に応えるが、新しいソースからのトラフィックしか含まない。VPNトンネルの分割は、新しいソースからのトラフィックを含むことができるが、分割と見なされるためには、VPNトンネルの各々のトラフィックの一部は、既存のソースから来なければならない。VPNエージェントをVPNトンネルと同時に再構成および再割り当てする必要があり得るので、ある程度、VPNトンネルの再構成およびVPNエージェントを再構成する先行するステップは、類似したステップであるが、図においては、明確にするために、VPNエージェントの再構成およびVPNトンネルの再構成は別個のステップとして示される。
本発明の好ましい実施形態において、VPNマネージャの機能は、エンドポイントにおけるVPNエージェントと協調して、ハイブリッド・クラウド環境内の異なるクラウド間に新しいVPNトンネルを作製する能力を含む。VPNマネージャは、帯域幅閾値(最小および最大)のようなトンネル・ポリシーおよびセキュリティ・ポリシーを構成する能力を有する。VPNマネージャは、他のクラウド環境を管理する他のVPNマネージャとフェデレートする能力を有する。VPNマネージャは、新しい要求、アプリケーション・ライフサイクルの変更、トラフィックの変更、もしくはネットワーク再構成に応答してVPNトンネルを動的に併合もしくは分割すること、または既存のVPNトンネルに関するVPNトンネル仕様を動的に構成することにより、VPNトンネル・インフラストラクチャを最適化することができる。VPNトンネル・ポリシーは、提案された最適化が許容されるかどうか、およびVPNサービスに対する新しい要求が、既存のVPNトンネル・インフラストラクチャにより対応され得るか、それとも、VPNトンネルを併合、付加、分割、または再構成することを必要とするかどうかを判断するためにVPNマネージャにより使用される。
VPNトンネルの作製および維持は、従来技術においてよく知られている。VPNトンネルは、管理者または要求中のアプリケーションにより指定される要件に従って作製することができる。VPNトンネルは、ソフトウェア・アプリケーションによって、または専用ハードウェア・デバイスによって作製することができる。本発明が対処する問題は、従来技術のVPNトンネルが、ひとたび作製されると静的になり、アプリケーション・ライフサイクルの変更およびネットワーク・トポロジの変更といったクラウド環境における変化に適合しなくなることである。静的性質のため、従来技術のVPNトンネルは、本発明の実施形態よりも多くのセキュリティ脆弱化を呈する。本発明の好ましい実施形態は、VPNトンネルのインフラストラクチャを調整して、ハイブリッド・クラウド環境全体におけるクラウド環境間の必要なトラフィックのみを可能にする。
本発明の選択された例証となる実施形態のより詳細な説明が以下に与えられる。
図5に示されるように、本発明の1つの好ましい実施形態が、プライベート・クラウドをホストするオンプレミス・インフラストラクチャ501と、IaaSインフラストラクチャ503上のクラウド・ワークロードと、SaaS環境505内のアプリケーションとを統合するハイブリッド・クラウド環境において用いられる。図は、一般的なクラウド環境507において動作するVPNマネージャ508も示す。VPNマネージャ508が常駐する一般的なクラウド環境507は、プライベート・クラウドまたはパブリック・クラウドのいずれかとすることができる。マシンA〜Dは、IaaSインフラストラクチャ501内にあるように示され、マシンEおよびFは、SaaS環境505内に示され、マシンG〜Jは、プライベート・クラウド501内に示され、マシンKおよびLは、一般的なクラウド環境507内に示される。ログおよびイベント・マネージャ512は、マシンM上にあるように示される。VPNマネージャ508は、マシンKまたはマシンLのいずれかの上にある。
図5に示されるように、VPNトンネル509および511は、本発明の例証となる実施形態に従って構成される。本発明のこの実施形態において、管理者は、ユーザ・インターフェースを用いてVPNトンネルを構成している。本発明の他の実施形態において、VPNマネージャ・アウェア・アプリケーションは、VPNマネージャに直接要求を行う。管理者は、マシンAがVPNマネージャ508に接触して、ログおよびイベント情報をログおよびイベント・マネージャ512に報告できるようにマシンMへのVPNトンネル接続511を要求するようにする。この要求の一部として、マシンAは、VPNトンネルに関する所望の要件513:
プロトコル: SYSLOG
ポート: 541
ソース: 10.1.1.5
ターゲット: 9.1.2.20
帯域幅: 制限なし
フィルタ: A (/^app1[a-z]{0,10}$/)
セキュリティ・ポリシーA
を提供する。
当業者であれば、他のパラメータをVPNトンネル要件として与えることができること、そして、これらは例証にすぎないことを理解するであろう。
セキュリティ・ポリシーを含めることは、随意的である。セキュリティ・ポリシーは、VPNマネージャ・アウェア・アプリケーションに含まれる可能性が最も高いであろう。提供されるセキュリティ・ポリシーの代わりに、VPNマネージャは、要求中のマシンまたはアプリケーションにより与えられる要件からセキュリティ・ポリシーを構成する。さらに、ハイブリッド・クラウド環境内のそれぞれのクラウド間の通信に関するデフォルトのセキュリティ・ポリシーが存在する場合もある。デフォルト・セキュリティ・ポリシーと、提供されるまたは構成されるセキュリティ・ポリシーとの間の競合のイベントにおいて、VPNマネージャは、ユーザ・インターフェースを介して管理者に警告を発行することができ、または提供されるセキュリティ・ポリシーがデフォルト・セキュリティ・ポリシーに優先するといった、こうした競合を解決するための規則を有することができる。本発明の実施形態において、セキュリティ要件およびセキュリティ・ポリシーの両方が用いられることがあるが、本発明の好ましい実施形態において、これらの用語は、以下の意味を有する。「セキュリティ要件」とは、要求中のマシンがVPNトンネル内に存在することを必要とするセキュリティ・タイプのパラメータである。セキュリティ要件の例は、使用されるVPNプロトコルおよび暗号化セキュリティ・プロトコルを含む。「セキュリティ・ポリシー」は、セキュリティ要件がVPNトンネルにおいてどのように使用されるかを示す。セキュリティ・ポリシーは、VPNが、リクエスタにより指定されるセキュリティ要件のみを使用するという指令であってもよい。別の例として、リクエスタがセキュリティ要件を指定した場合、別のリクエスタにより要求されるまたは別のVPNトンネルにより使用される両立性のあるプロトコルの限定されたサブセットが、既存のVPNトンネルへの参加またはVPNトンネルの併合のための候補に関する基礎を形成する。代替的に、セキュリティ・ポリシーは、許容的であり、同じクラウドからのリクエスタにより指定されるいずれのセキュリティ要件もVPNトンネル内に含まれることを許容するが、許可されたマシンにより要求されていない場合、他のセキュリティ・プロトコルがVPNトンネル内に含まれることを許容しない場合もある。別の例として、セキュリティ・ポリシーが、特定のセキュリティ要件は同じVPNトンネル内で両立できなかったと述べることがある。したがって、「セキュリティ・ポリシー」を用いて、複数のアプリケーションまたは複数のVPNトンネルの「セキュリティ要件」が両立できるかどうかを評価することができる。
本発明の1つの好ましい実施形態において、VPNマネージャ508が、マシンMと事前に接触しない場合、VPNマネージャ508は、マシンMからの接続を待つ。この実施形態において、管理者は、マシンMをVPNマネージャに登録する。要求または登録に応答して、VPNマネージャ508は、マシンMおよびマシンA上に、それぞれVPNエージェント515、517をインストールする。次に、インストールされたVPNエージェント515、517を介して作用し、VPNマネージャ508は、マシンAの要求513における指定されたパラメータ(SYSLOG、ポート、単向性、帯域幅等)を有するように、マシンAとマシンMとの間にVPN511を構成する。つまり、VPNマネージャ508は、VPNエージェント(または、他の既存のエンティティ)が実行する命令および構成要件をVPNエージェントに発行する。当業者には周知のように、VPNトンネルは、インターネット・プロトコル・セキュリティ(IPsec)、Secure Socket Layer/Transport Layer Security(SSL/TLS)、またはマルチプロトコル・ラベル・スイッチング(MPLS)のような選択されたVPNセキュリティ技術を用いて、トンネルを機密保護する。他のVPNセキュリティ・プロトコルは、Datagram Transport Layer Security(DTLS)、Microsoft Point−to−Point Encrption(MPPE)、およびSecure Shell(SSH)プロトコルを含む。マシンAにおけるVPNセキュリティ要件は、VPNセキュリティ・プロトコルの選択、ならびにsupport data encryption standards(DES)/Triple DES(3DES)および異なるキーサイズもしくはマルチキャストを有するAdvanced Encryption Standard(AES)、またはグループ暗号化標準のような、異なる暗号化標準に従ってデータを暗号化する能力を含むことができる。VPNセキュリティ要件は、暗号化の前にLempel−Ziv−Stac(LZS)のような標準に従ってデータを圧縮する能力を含むことができる。
管理者は次に、マシンBがVPNマネージャに接触してマシンMへのVPN接続を要求するようにする。この要求の一部として、マシンBは、VPNに関する所望の要件519:
プロトコル: SCP
ポート: 22
ソース: 10.1.1.5
ターゲット: 9.1.2.20
帯域幅: 制限なし
フィルタ: B (/^app2[a-z]{0,30}$/)
セキュリティ・ポリシーB
を提供する。
要求に応答して、VPNマネージャ508は、マシンB上にVPNエージェントをインストールする。VPNマネージャは、マシンAから生じる既存の近くのVPNトンネル511を識別する。マシンAのセキュリティ・ポリシーとマシンBのセキュリティ・ポリシーが両立できることが明らかになった後、VPNマネージャ508は、マシンB上のVPNエージェントを介して、マシンBを、指定されたトラフィックをマシンAに送るように構成する。指定されたトラフィックは、セキュリティ・ポリシーにより許容されるトラフィックである。例えば、特定のセキュリティ・ポリシーは、httpトラフィックのみを許容して、VPNトンネル上のftpトラフィックを許容しないことが可能である。次に、VPNマネージャ508は、AからMへのVPNトンネル511を、マシンBの要件519からのVPNフィルタを含むように再構成する。このように、1つのマシンからの既存のVPNトンネル511を、同じクラウド503内の別のマシンからのトラフィックを通すように再構成することができる。結果として得られるVPNトンネル511には、次の属性521:単向性、2つのパケット・タイプ(アプリケーションの各々から1つ)、2つのプロトコル(SYSLOGおよびSCP)、2つのソースから来る、がある。VPNトンネルについての集合的VPNフィルタは、ここでは2つのソースおよび2つのパケット・タイプからのトラフィックを可能にするという点で、より許容的であるが、本発明の好ましい実施形態において、VPNフィルタは、正しいパケット・タイプが正しいマシンから来ているかを依然としてチェックする。
本発明のこの例証となる実施形態において、VPNマネージャ508は、組織がマシンを有する2つより多いクラウド間のVPNトンネルを管理することができる。例を続けると、管理者は、SaaS環境505内の一般的なSaaSアプリケーションのマシンFからプライベート・クラウド501内のログおよびイベント・マネージャ512までのVPNトンネルを作製することを要求する。管理者または一般的なSaaSアプリケーションの所有者のいずれかが、管理者により与えられた資格証明を用いて、VPNトンネルを作製する要求をVPNマネージャに行う。要求は、VPNに関する所望の要件523:
プロトコル: SCP
ポート: 80
ソース: 15.1.1.5
ターゲット: 9.1.2.20
帯域幅: 制限なし
フィルタ: C (/^app3[a-z]{0,50}$/)
を含む。
要求に応答して、VPNマネージャ508は、マシンF上にVPNエージェント522をインストールする。VPNエージェント522を通じて、VPNマネージャ508は、最初の要求523からの指定されたフィルタを有した状態で、マシンFとマシンMとの間にVPNトンネルを構成する。
本発明のこの例証となる実施形態において、マシンAおよびBは、VPNトンネル511を通じて、ログおよびイベント・データを、マシンM上のログおよびイベント・マネージャに提供し、マシンFは、VPNトンネル509を通じて、そうしたデータを提供する。図に示されるように、同じ場所に配置されたマシンGおよびIも、ログおよびイベント・データをログおよびイベント・マネージャに提供する。マシンGおよびIは、プライベート・クラウド501内のプライベート・ネットワークを通じて、マシンMと直接通信することができるので、VPNマネージャ508を含ませる必要性はない。
上述したステップは、VPNトンネルの初期構成の説明に役立つ実例を提供する。以下に説明されるように、そのライフサイクル中にアプリケーションの必要性が変化するので、正常に動作するアプリケーションは、さらなる要求を発行して、トンネルに必要とされるパラメータを変更することができる。例えば、デプロイメント中または他の負荷の高い期間中、アプリケーションは、トンネルを通る高帯域幅を要求する。またある時には、例えばルーチンの監視中、アプリケーションは、より低い帯域幅を要求する。アプリケーションは、要求される帯域幅を変更するさらなる要求を発行することがある。本発明の代替的な実施形態において、VPNトンネルを管理するVPNエージェントは、1組のアプリケーションから来るトラフィックを監視することができる。監視されるトラフィックが、要求されるものよりもずっと少ない場合、VPNエージェントまたはVPNマネージャは、トンネルを別の適切なものと併合するための、またはより低い帯域幅のためにトンネルを再構成するための機会を認識することができる。例えばアプリケーションがアンインストールされるときなど、寿命の最後に、アンインストール・プロセスの一部として、正常に動作するアプリケーションは、VPNマネージャに、VPNトンネルがもはや必要とされないことを知らせる。アプリケーションのセキュリティ要件は、そのライフサイクル中に変更することもできる。本発明のさらに他の実施形態においては、イベントおよびロギング情報が管理者に提示され、その管理者は、そのイベントおよびロギング情報から、認識されたアプリケーション・ライフサイクルの変化に基づいてVPNエージェントおよびVPNトンネルの構成を変更することを求める要求を発行することができる。
図6は、VPNマネージャにより提供されるサンプル・ダッシュボード内のグラフィカル・ユーザ・インターフェース600における管理者ビューの一実施形態を示す。当業者であれば、本発明の教示に従って、他の代替的なユーザ・インターフェースを提供できることを認識するであろう。この図では、図5と関連して説明される初期構成の直後の、VPNトンネルの現在状況ビューが示される。現在状況ビューのこの実施形態において、既存のVPNトンネル、VPNトンネルにより接続されるクラウド、およびVPNトンネルを用いるマシンだけが示され、ハイブリッド・クラウド環境内の他のコンポーネントは示されない。現在状況ビューの他の実施形態は、他のコンポーネントを示す。プライベート・ネットワーク601内のマシンMは、VPNトンネル611によりIaaSインフラストラクチャ603に、およびVPNトンネル609によりSaaS環境605に結合されるように示される。マシンAからの要求される構成パラメータは、パネル613内に示され、一方、マシンBからの要求される構成パラメータは、パネル619内に示される。結果として得られるVPNトンネル611のVPNパラメータは、パネル621内に示される。同様に、マシンFからの要求される構成パラメータは、パネル623内に示され、一方、結果として得られるVPNトンネル609についてのVPNパラメータは、パネル625内に示される。1つの好ましい実施形態において、パネル613、619、621、623および625の各々は、システム管理者により編集可能である。要求される構成パラメータ・パネル613、619または623の1つを編集することにより、マシンまたはマシン上で実行されているアプリケーションの1つにより所望されるVPN特徴を求める新しい要求が、VPNマネージャに対して行われる。ひとたびその要求が実行されると、適切なVPNパラメータ・パネル621または625内に、VPN特徴の更新が示される。
パネル内に十分な空間が利用可能でなかった場合、スクロール制御を提示し、管理者が、利用可能なパラメータの全てをスクロールすることを可能にする。編集不能なパラメータは、グレー表示方式で提示することができる。本発明の好ましい実施形態においては、ネットワークの他のビューが想定される。例えば、ネットワーク内のマシンの全てを、新しいVPN接続を生成できるように提示することができる。ポイントおよびドラッグ機構を用いて、新しいトンネルを定めることができる。管理者によるポイントおよびドラッグ操作に応答して、デフォルトの編集可能なパラメータを、管理者が編集またはサブミットすることができる要求される構成パネル内にポピュレートすることができる。別の代替的な実施形態において、アプリケーション・ビューを、マシンではなく環境の各々において動作するアプリケーションを示すように提示することができる。
警告を提示することができる。例えば、本発明の1つの好ましい実施形態において、VPNトンネル611またはVPNパラメータ・パネル621が、強調表示方式で提示され、管理者の注意を引くためのアクションを示す。例えば、インターフェース内の2つのトンネルの強調表示は、より効率的なサービスを提供するために2つのトンネルを併合するための機会を示すことができる。単一のトンネルの強調表示は、スループットがトンネルの容量を超えていること、または新しい組の要件と、従来の要求により生成されたトンネルについての既存のVPNパラメータとの間の競合のために、新しいサービス要求を既存のトンネルと適合させることができないことを示すことができる。強調表示されたトンネルが管理者により選択された場合、付加的なパネル内に、警告の原因であったイベント・ログおよびスループットなどの付加的な詳細を提示することができる。
VPNマネージャは、VPNエージェントおよびVPNトンネルを手動で追加、削除および再構成する選択肢を示す。本発明の1つの好ましい実施形態において、ユーザ・インターフェース(UI)は、UI+REST APIインターフェースである。ウェブ・ベースのUIは、REST APIを使用し、または外部アプリケーションは、REST APIを直接使用することができる。
図7において、VPNトンネルの再構成の例証となる実施形態が示される。この例は、VPNマネージャ708に、ハイブリッド・クラウドのVPNトンネル・インフラストラクチャを変更させるネットワーク・トポロジ変更の一例を示す。例において、これは、クラウドの1つからのマシンの除去である。他のネットワーク・トポロジ変更は、クラウド・アプリケーションの追加または除去、例えば負荷バランシングのための、別のマシンと同じクラウド・アプリケーションを有する「クローン」マシンの追加、1つのマシンから別のマシンへのクラウド・アプリケーションの移動、および1つのクラウドから別のクラウドへの、例えばプライベート・クラウドからパブリック・クラウドへのクラウド・アプリケーションの移動を含む。本発明の好ましい実施形態において、この種のネットワーク・トポロジ変更は、「イベント」としてVPNマネージャ708に送られ、VPNマネージャ708は、VPNトンネル・インフラストラクチャの自動再構成を行うか、またはVPNトンネル再構成の候補である状況として警告を管理者に提示する。
「X」で示されるように、管理者は、IaaSインフラストラクチャ703からマシンAを除去し、そのことは、マシンAにより処理されるマシンBのトラフィックの再構成をトリガする。管理者がマシンAの除去を開始すると、マシンA上のVPNエージェント704は、クラウド707内のVPNマネージャに接触する。VPNマネージャは、VPNトンネル711内の結合したVPN接続を分析し、この場合、マシンAから生じるVPNトンネル711は、マシンBからのトラフィックも処理する。VPNマネージャ708は、既存の要件、即ちマシンB、およびVPNトンネル711を用いていたIaaSインフラストラクチャ703内の他のいずれかのマシンからの既存の要件を用いて、マシンBからマシンMまでのVPNトンネル720を作製するよう、マシンB上のVPNエージェント712に命令する。マシンAは除去されているので、その要件のどれも関連しない。トンネルについてのVPNフィルタを設定するとき、マシンBの要件のみが用いられる。図において、VPNサービスを要求するときのマシンBの要件が示される。マシンBは、VPNに関する所望の要件719:
プロトコル: SCP
ポート: 22
ソース: 10.1.1.5
ターゲット: 9.1.2.20
帯域幅: 制限なし
フィルタ: B (/^app2[a-z]{0,30}$/)
セキュリティ・ポリシーB
を提供した。
示されるように、新しいVPNトンネル720についてのVPNパラメータ721は、図5に示される結合したVPNトンネル511についてのパラメータ521、またはこの図のVPNトンネル711とは異なる。VPNトンネル711は、「X」で示されるように除去される。現在のVPNトンネルの必要性を有する認識されたマシンからの要求されたパラメータに適合させることだけにより、セキュリティが向上する。
図7は、マシンAからのアプリケーションの除去を検討するために用いることもできる。この場合、ひとたび新しいVPNトンネル720が作製されると、VPNマネージャ708は、随意的にAからMへのVPNトンネル711を除去する。同じく随意的に、VPNマネージャ708は、マシンA上のVPNエージェント704をアンインストールする。これらの随意的なステップは、正常に動作するシステムを生成し、マシンA上に常駐する許可されたサブスクライビング・アプリケーションがないときにVPNトンネルおよびVPNエージェントを保持することのセキュリティ上のリスクを低減させる。しかしながら、本発明の代替的な実施形態は、VPNトンネルまたはVPNエージェントをアライブのままにして、新しいアプリケーション要求がVPNマネージャに対してなされた場合に新しいVPNエージェントを開始するオーバーヘッドを低減させることができる。
本発明の実施形態において、VPNトンネルを併合し、分割するための規則の組がある。セキュリティ・ベースの規則は、VPNトンネルにより支援されるまたは場合によっては支援されるアプリケーションの各々のセキュリティ要件またはポリシーが、他のアプリケーションのセキュリティ要件またはポリシーと両立できるかどうかに関係している。候補VPNトンネルにより支援されるアプリケーションのセキュリティ要件と両立できることは、VPNトンネルの併合の必要条件である。本発明の実施形態において、セキュリティ要件の両立性は、クラウド間の通信についてのアプリケーションのセキュリティ・ポリシーまたはVPNマネージャのセキュリティ・ポリシーに基づいて解釈される。例えば、アプリケーション・セキュリティ・ポリシーのために、1つのVPNトンネルがhttpトラフィックのみを許可し、別のVPNトンネルがftpトラフィックのみを許可する場合、2つのトンネルを併合することはできない。しかしながら、両方のトンネルが、httpトラフィックまたは全てのトラフィックを許可する場合、それらを併合することができる。別の例として、2つの異なるVPNトンネル上の2つのアプリケーションが、2つの異なるセキュリティまたは暗号化プロトコルを必要とすることがあり、2つのクラウド間の通信のための有効なVPNマネージャのセキュリティ・ポリシーは、単一の暗号化プロトコルの使用を必要とする。したがって、アプリケーション・セキュリティ要件またはポリシーは、そのアプリケーション・セキュリティ要件またはポリシーがなければスループット効率のために併合される可能性があるVPNトンネルの併合を防止することができる。
新しいセキュリティ要件の組を含むアプリケーションからの新しい要求を考慮して、両立性規則を考慮した現在のVPNの評価により、現在のVPNトンネルが分割されることが可能である。本発明の好ましい実施形態において、可能性のある併合の両立性は、直接的な競合に関して、2つのVPNトンネルにおけるセキュリティ要件およびVPNフィルタを評価することによって判断される。競合が見つかった場合、本発明の幾つかの実施形態において、ユーザ・インターフェースは、候補VPNトンネルを管理者に表示して、競合と、VPNトンネルを両立性があるようにするのに必要な変更とを表示する。このように、管理者は、VPNフィルタを変更する場合に、現在のVPNへの付加的なタイプのトラフィックもしくはセキュリティもしくは暗号プロトコルの追加が、セキュリティ上の観点から許容可能かどうかを判断することができる。本発明の1つの実施形態において、VPNトンネルを分割できる別の場合は、共有VPNトンネルを使用するアプリケーションの1つのセキュリティ要件の変更の際である。例えば、アプリケーションがここではオリジナルのhttpトラフィックに加えてftpトラフィックを伝送したいと望み、現在のVPNトンネルがftpトラフィックを許可しない場合、VPNトンネルを分割することができる。別の例として、アプリケーションの1つが現在のVPNトンネルよりも高レベルの暗号化を望む場合、全てのトラフィック上でより高いオーバーヘッドを被るよりも、現在のVPNトンネルを分割する方が理にかなっていることがある。本発明の他の実施形態において、セキュリティ・ベースのパラメータ以外のパラメータについての他の両立性ベースの規則が用いられる。
別の規則の組は、VPNトンネルの帯域幅またはスループットに基づいている。帯域幅の規則は、例えば、帯域幅上の上限閾値または下限閾値に基づくことができる。複数のアプリケーションのトラフィックが、許容可能なトンネル限界(帯域幅)を横断している場合、VPNトンネルの分割を行うことができる。この場合、VPNマネージャは次に、トンネルを分割する。1つまたは複数の両立性のあるVPNトンネルが、トンネル帯域幅の下限を下回る帯域幅を有する場合、VPNトンネルの併合を行うことができる。
図8において、VPNトンネルを併合することの再構成の例証となる実施形態が示される。この例は、VPNトンネル711および720の併合を可能にする低減した帯域幅要件のためにマシンAおよびB上のアプリケーションからのデマンドが変化した場合を示す。VPNトンネルの併合を可能にする別の場合は、アプリケーションの1つについてのセキュリティ・プロトコルの変更であり、その結果、新しいセキュリティ・プロトコルの組が、有効なセキュリティ・ポリシーに従って両立できるようになる。示されるように、VPNトンネル711は、他のVPNトンネル720が総デマンドに適合できるので、クラウド701とクラウド703との間で除去されている。本発明の好ましい実施形態において、2つのVPNトンネル上のトラフィック(セキュリティ要件に加えて)は、併合のために両立性があることが必要である。本発明の好ましい実施形態において、VPNマネージャ708は、マシンAおよびマシンBに割り当てられたVPNエージェント704および712から情報を受け取る。VPNマネージャは、マシンB上のVPNエージェント712を、マシンBからマシンMへのVPNトンネル720を変更して、要件、即ちVPNトンネル711を使用していたマシンAからの既存の要件を付加するように再構成する。図において、マシンAの要件739およびマシンBの要件719が示される。マシンAは、VPNトンネルに関する所望の要件739:
プロトコル: SYSLOG
ポート: 541
ソース: 10.1.1.5
ターゲット: 9.1.2.20
帯域幅: 制限なし
フィルタ: A (/^app1[a-z]{0,10}$/)
を提供する。
マシンBは、VPNに関する所望の要件719:
プロトコル: SCP
ポート: 22
ソース: 10.1.1.5
ターゲット: 9.1.2.20
帯域幅: 制限なし
フィルタ: B (/^app2[a-z]{0,30}$/)
を提供した。
示されるように、変更されたVPNトンネル720についてのVPNパラメータ751は、個々のVPNトンネル711および720が単一のアプリケーションをサポートしていたときのそれらのVPNトンネル711および720からのパラメータとは異なる。認識されるマシンからの要求されるパラメータのみを適合させることによって、セキュリティが向上する。この図において、マシンA上のVPNエージェント704は、マシンAからのトラフィックをマシンB上のVPNエージェント712に転送するので、VPNトンネル720は、結合したトラフィックを処理することができる。
図9において、VPNトンネル720を分割する例証となる実施形態が示される。この例において、VPNトンネル720は、もはやマシンAおよびマシンBの両方からの通信を処理するのに適切ではない。VPNトンネルの分割は、その要件が変更されたことまたは間もなく変更されることを示す管理者アクションまたはVPNマネージャ・アウェア・アプリケーションによる要求の結果とすることができる。VPNマネージャは、マシンBから生じてマシンAからのトラフィックも処理するVPNトンネル720における結合したVPN接続を分析し、ユーザ・インターフェースを介して、警告を管理者に表示することができる。この例において、双方向性VPNトンネルおよび新しいセキュリティ暗号化プロトコルを必要とする更新に起因する予想されるデマンドの増大を示す新しい要件759の組を、マシンA上で実行されているアプリケーションから受け取る。これらの新しい要件759をVPNトンネル720で履行することができない、または少なくとも、新しい要件に応答したVPNトンネル720の変更が、セキュリティ上またはスループット上の観点から最適ではないとの認識において、VPNマネージャ708は、新しい要件を用いてマシンAからマシンMへの新しいVPNトンネル763を作製するように、マシンA上のVPNエージェント704を再構成する。したがって、古いVPNトンネル720は、マシンA上のソースからのトラフィックとして「分割」され、マシンBは、新しいVPNトンネル・インフラストラクチャ内の2つのVPNトンネルにより支援される。
マシンAは、VPNトンネル763に関する所望の要件759:
プロトコル: SYSLOG
暗号化プロトコル: ECC
ポート: 541
ソース: 10.1.1.5
ターゲット: 9.1.2.20
帯域幅: 制限なし 双方向性
フィルタ: A (/^app1[a-z]{0,10}$/)
を提供する。
マシンB上のVPNエージェント712は、マシンBの要件:
プロトコル: SCP
ポート: 22
ソース: 10.1.1.5
ターゲット: 9.1.2.20
帯域幅: 制限なし
フィルタ: B (/^app2[a-z]{0,30}$/)
のみをVPNトンネル720が使用するように、VPNトンネル720を再構成する。
再び、認識されたマシンからの要求されるパラメータだけを適合させることによって、セキュリティが向上し、したがって、修正されたVPNトンネル720についての新しいVPNパラメータ761は、図8に示される結合したVPNトンネル720についてのパラメータ751とは異なる。同様に、新しく生成されたVPNトンネル757についてのVPNパラメータ763は、マシンAに関する要件759のみを反映する。
図10は、VPNマネージャのイベント報告およびロギング動作のフロー図である。イベントおよびトラフィック・ロギングは、VPNマネージャが、どのアプリケーションがどの他のアプリケーションと通信しているかを理解することを可能にする。イベントおよびトラフィック・ロギングは、VPNマネージャが、どのクラウドが相互接続されているか、どのデータが通信されているかを理解することも可能にする。さらに、イベント報告およびロギング動作は、セキュリティ・オペレーション・センタ(SOC)によるポリシー違反またはセキュリティ侵害の検出を可能にする。
ステップ801において、VPNマネージャは、VPNエージェントによるイベントの報告を待つ。イベントを受け取ると(ステップ803)、イベントがログ記録される(ステップ805)。ステップ807において、VPNマネージャは、受け取ったイベントが規則をトリガするかどうかを判断する。規則をトリガするために、直近に受け取ったイベントを、既にログ記録されたイベントと相関させる必要があり得る。既述したように、規則の一例は、トラフィック閾値規則である。VPN上のトラフィックが閾値を上回っているかまたは上回ると予測される場合、VPNマネージャは、単一のVPNトンネルを2つのトンネルに分割するよう、命令をVPNエージェントに発行する。別のトラフィック閾値規則は、最小トラフィック規則である。隣接するVPNトンネルが、閾値を下回るトラフィックを有する場合、VPNマネージャは、VPNトンネルを併合するよう、命令をVPNエージェントに発行することができる。規則の別の例は、セキュリティ関連規則である。VPNトンネルに関連したセキュリティ・イベントがあった場合、VPNマネージャは、そのトンネルについてのセキュリティ・パラメータを変更するように、命令をVPNエージェントに発行することができる。例えば、VPNトンネルにより支援されているマシンの1つに関する検出された侵入イベントでは、さらなる精密な調査をもたらす問題のあるイベントが生じている。したがって、VPNマネージャは、そのトンネルに関するVPNエージェントに、そのマシンからのイベントをより緊密に監視するよう、またはVPNトンネルを分割するよう、命令を発行することができ、それによって、影響を受けるマシンからのイベントが監視できるようになり、即ち、新しいトンネルからの全てのイベントが監視され、その一方で、他の影響を受けないマシンからのイベントの侵入検出オーバーヘッドがより低くなることが可能になる。
イベントが、VPNマネージャ・アウェア・アプリケーションによりなされた変更要求である場合、デフォルト規則は、要求に従うことであることが可能である。この場合、VPNマネージャは、変更要求と整合している命令をVPNエージェントに発行する。別の規則は、変更要求が、そのVPNトンネルについて実施されているセキュリティ・ポリシーと整合しているかどうかを評価すること、そして整合していない場合には、さらなるアクションを取るよう管理者に警告することであろう。
イベントにより規則がトリガされた場合、ステップ809において、VPNマネージャは、VPNトンネルを適切に調整するよう、命令をVPNエージェントに発行する。上記に説明されているように、VPNトンネルの調整は、VPNトンネル上のパラメータを変更すること、VPNトンネルを併合すること、またはVPNトンネルを2つもしくはそれより多いVPNトンネルに分割することを含む。本発明の1つの好ましい実施形態において、規則は、ユーザ・インターフェースにおいて警告をトリガして、管理者が、VPNエージェントへの命令の確認/または変更、あるいはその両方を行うことを可能にする。プロセスは、ステップ801における新しいイベントの待機に戻る。
図11は、本発明の一実施形態による、トラフィック・フローを最適化し、VPNを併合および分割するプロセスを示す。ステップ901において、VPNマネージャが既存のVPNトンネルを監視することからプロセスが開始される。このステップは、スループットと、図10に関連して上述したイベントとの監視を含む。1つの好ましい実施形態において、各々のトンネル・エンドポイントで確立されたVPNエージェント、ならびにサブスクライブしているマシンまたはアプリケーション、あるいはその両方が、関連情報をVPNマネージャに報告する(ステップ903)。VPNマネージャがVPNエージェントに対して通信する必要があるいずれの命令も、このステップにおいて伝送される。VPNマネージャがVPNエージェントに対して通信する命令の例は、所定のアプリケーションまたはマシンからのトラフィックに対してどのVPNトンネルを使用すべきか、VPNトンネルをどのエンド・ポイント(例えば、アプリケーション)に接続すべきか、どのフィルタ設定を有するべきか、VPNエージェントおよびエージェント構成関連データ等を含む。
受け取った情報に基づいて、ステップ905において、既存のVPNインフラストラクチャへの変更が示されるかどうかについての決定を行う。肯定的決定は、多くの要因に基づき得る。第一に、上述のように、VPNトンネル設定への変更に対する新しい管理者またはアプリケーション・ベースの要求がある場合がある。新しい要求は、新しいアプリケーションもしくは新しいマシンのための新しい接続に、または既にサブスクライブしているマシン間の既存のVPNトンネルへの変更に関する場合がある。第二に、変更は、VPNエージェントによるスループット測定により示すことができる。VPNトンネルは、最初に、高帯域幅要件が存在するアプリケーション・ライフサイクルの開発段階において、アプリケーションにより作製することができる。したがって、必要な帯域幅を提供するために、別々のVPNトンネルが作製される。後に、アプリケーション・ライフサイクルの生産段階において、アプリケーションの帯域幅要件はより低く、したがって、セキュリティ要件がアプリケーションの間で両立性がある場合、VPNトンネルを併合することができる。第三に、アプリケーション・ライフサイクルの最後に、アプリケーションが除去されるとき、そのアプリケーションについてのVPNトンネルおよびVPNエージェントを除去または変更して、エンド・ポイントにおいて依然として存在するアプリケーションだけをサポートすることができる。VPNエージェントは、VPNトンネルが十分に利用されておらず、したがって、他のVPNトンネルとの併合の候補であることを報告する。VPNマネージャは、その制御下にある既存のVPNトンネルの全てのマップを有しており、例えば、閉鎖されるべきVPNトンネルに関する既存の要件の組を第1のVPNエージェントに送って、第1のVPNトンネルを開いたままにするように制御するなどの、併合のための必要とされるコマンド、第1のVPNトンネルのVPN特徴を新しい要件のものに変更するためのコマンド、閉鎖されるべき第2のVPNトンネルを現在制御している第2のVPNエージェントからの通信を代わりに第1のVPNエージェントへ転送するためのコマンド等を発行する。
変更は、新しい帯域幅またはセキュリティ要件のためにVPNトンネルを分割する必要があるという表示とすることができる。以前に併合したVPNトンネルは、多くの場合、複数のトンネルに分割するための主要な候補である。アプリケーション・ライフサイクルの間には、例えば、更新中に、またはクラウド・アプリケーションの1つの示された侵入に応答して、帯域幅またはセキュリティ要件が変更される期間、即ち、特別なセキュリティ処理を必要とする期間があり得る。VPNトンネルを分割する必要がある別の理由は、付加的なマシンまたはアプリケーションによる新しい要求に起因する。図5を参照して上述した例において、VPNトンネル511は、マシンAおよびマシンBを支援するのに適切であったが、アプリケーションまたは管理者要求は、マシンCおよびマシンDのためのVPNサービスに対してなされ、単一のVPNトンネルが、4つのマシン全てに関する帯域幅要件を履行することができなかったと仮定する。1つの選択肢は、マシンCおよびDを支援する新しいVPNトンネルを作製することであり得る。しかしながら、VPNマネージャは、マシンAおよびCに関する要件が、マシンAおよびBよりも両立性があり、したがって、1つのVPNトンネルにマシンAおよびCを支援させ、第2のVPNトンネルにマシンBおよびDを支援させるのが最も効率的である旨を明らかにすることができる。変更が示されない場合、プロセスは、VPNトンネルの監視(ステップ901)に戻る。
ステップ907において、変更が既存のVPNトンネルの組により達成できるかどうかを判断する。一般に、これはより効率的であり、クラウドはセキュリティ攻撃を受けにくく、維持される2つのクラウド間のVPNトンネルがより少ない。要求される帯域幅、現在の帯域幅、および現在のトンネルの利用可能な帯域幅の比較を行う。それぞれのアプリケーションにより要求されるセキュリティ・パラメータの両立性を判断するために、既存のセキュリティ・パラメータおよび要求されるセキュリティ・パラメータの比較を行う。既存のVPNトンネルの併合を含めて、既存のVPNトンネルを使用することができる場合、既存のVPNエージェントは、VPNトンネルへの何らかの必要な変更を行うために、所望の要件を発行される。VPNトンネルを使用できる場合、要求中のマシン内にVPNエージェントが既にインストールされている可能性が高い。しかしながら、例えば一般的なVPNエージェントではなく特化されたVPNエージェントが使用される本発明の実施形態において、新しいVPNエージェントが必要とされる場合、ステップ911において、VPNマネージャは、新しいVPNエージェントをマシン・エンドポイントに送る。次に、プロセスは、既存のVPNインフラストラクチャの監視(ステップ901)を続行する。
一方、変更が、新しいVPNトンネルを要求する場合、プロセスは次に、ステップ913において、VPNエージェントが既にインストールされているかどうかを判断する。インストールされていない場合、ステップ915において、VPNマネージャは、新しいVPNエージェントを、それを必要とするエンドポイントに送る。ステップ917において、新しいVPNトンネルが、新しいまたは既存の、あるいはその両方のVPNエージェントを通じて作製される。新しいVPNトンネルは、既存のトンネルの分割であると考えることができる。プロセスは次に、起こり得る変更のためにVPNインフラストラクチャを監視するためのステップ901に戻る。
本発明の好ましい実施形態において、中央VPNマネージャが、単一のシステムまたはクラウド・プロバイダにより制御される。例えば、クラウド環境において、IaaSおよびPaaSプロバイダが、本発明が可能にするVPN能力をこれらの環境に提供するのは価値があろう。
フェデレーション・モデルは、1つのクラウド・プロバイダにより1つのVPNマネージャが提供される場合に使用することができ、そのクラウド・プロバイダは、フェデレーテッド・アイデンティティ(OAuth、OpenID等)に類似したモデルを用いて、クライアント・ネットワークと他のクラウド・ネットワークとの間の信頼モデルを作製する。1つの組織に属するアプリケーションがVPNトンネルを望む場合、そのアプリケーションは、その組織のVPNサーバによるフェデレーション型認証を用いて、クラウド・プロバイダのVPNマネージャとの間で確立された信頼を有することができる。
本発明の1つの実施形態が、図12に示される。第1の組織のためのアプリケーションが、クラウドの第1の組1001の1つにおけるマシンM上にあり、異なる組織に属するクラウドの第2の組1003の1つにおけるマシンFと通信するように作製されたVPNトンネルを必要とする。クラウドの組1001におけるマシン間のVPNトンネルは、VPNマネージャ1005により管理され、一方、クラウドの組1003におけるVPNトンネルは、VPNマネージャ1007により管理される。
次に、アプリケーションがVPNトンネルを望むとき、それらのアプリケーションは、各自のVPNプロバイダ・サーバに要求を行い、例えば、マシンM上のアプリケーションは、VPNマネージャ1005に接触する。VPNマネージャ1005は、その相手方のVPNマネージャ1007と通信して、新しいVPNトンネル1011を設定する。したがって、クライアントは、VPNトンネルを用いて他の信頼できるクライアントと通信して、アクセス・ポイントおよび暗号化を提供する。VPNトンネルは、中央サーバに通すことができ、またはVPNマネージャは、付加的な軽量トンネルを生成することができる。ハイブリッド・クラウド環境内のVPNトンネルについての上記の説明と同様に、2つのクラウド環境1001と1003との間で管理されるVPNトンネルを再構成、併合、および分割して、アプリケーションのライフサイクル中におけるそれらのアプリケーションの必要性に適合させることができる。
上述の主題は、多くの利点を提供する。本発明の好ましい実施形態において、VPNトンネルの併合および分割は、ネットワークの最適化を可能にする。VPNマネージャは、VPNの位置および組み合わせに関して決定を行うとき、利用可能な帯域幅、利用可能なマシン・コンピュート、ネットワーク・トポロジおよびVPNオーバーヘッドを考慮に入れることができる。従来技術は、クラウド環境間のセキュリティを提供するために、専用VPNトンネルを用いる。所定のVPNトンネルにおけるスループットを監視することにより、VPNマネージャは、大量のトラフィックを処理するVPNを分割するために付加的なVPNトンネルの生成を提案すること、または同じクラウド内の位置で終了する十分に活用されていないVPNの併合を提案することができる。
十分な特権を有した状態でクラウド環境に統合されるとき、VPNマネージャは、VPNトラフィックのオフロードのために、専用マシンを自動的にデプロイすることができる。VPNマネージャが、利用可能なクラウド管理者の資格証明を有する場合、VPNマネージャは、それらの資格証明を用いて、クラウド内にVMを自動的に作製し、それをVPNトラフィックの処理専用にし、したがって、負荷を共有するために新しいVPNマネージャを作製することができる。このことは、VPNマネージャを実行している既存のマシン上の負荷を軽減するのを助け、VPNマネージャをハイブリッド・クラウドのためにさらに拡大縮小可能にもする。次に、全てのまたは一部のVPNエージェントが、新しいVPNマネージャとの通信を開始する。本発明の別の実施形態において、VPNマネージャは、可用性に応じて、専用VPN機器にオフロードすることもできる。VPNマネージャがVPN機器を検出した場合、そのVPN機器は、VPNマネージャをインストールすること(または既にインストールされたVPNマネージャを使用すること)ができ、次に、クラウドVMに類似した方法で、VPNマネージャは、VPN機器へのトラフィックのオフロードを開始して、既存のVPNマネージャ上のワークロードの一部を緩和することができる。本発明の幾つかの好ましい実施形態においては、本発明の実施形態の大部分が自律的であり得るが、管理者は、ユーザ・インターフェースを通じてVPNトンネルを手動で調整することができる。本発明の自律的な実施形態において、ユーザ・インターフェースを提供して、管理者に、VPNマネージャが取ったアクションを警告することができる。管理者は、エージェントにより検出されたイベントのログ、およびVPNマネージャにより取られた、またはVPNマネージャにより取られるように指示された後続のアクションを調べて、自律的ポリシーを調整すること、またはVPNマネージャにより取られたアクションを無効にすることができる。管理者は、物理VPN機器をインストールすること、およびそれらの機器をデフォルトで明示的に使用するようにVPNマネージャを構成することができる。
代替的な実施形態において、上述したエージェント・ベースの管理ではなく、VPNマネージャは、クラウドAPIまたは既存のエージェント(シェフ・クライアント・エージェントのような)を利用して、VPNトンネルのエンドポイントを再構成することができる。本発明のこれらの実施形態において、VPNエージェントにより取られる上述したアクションは、シェフ・エージェント、またはクラウド・インフラストラクチャ内に既にある機構を制御する他のVPNのような他のネットワーク・エンティティにより代わりに取られる。クラウドAPIを使用する際、1つ1つのマシン上にエージェントをデプロイする代わりに、ソフトウェア定義ネットワーク(SDN)に接続される全てのVMに対するVPNトンネルを作製するために用いることができる、クラウド内で利用可能なソフトウェア・ベースのネットワーキングが存在し得る。
上述のように、アプリケーションは、アプリケーションのライフサイクルが変更されると、VPNトンネルについてのVPNパラメータを変更することができる。例えば、アプリケーション・デプロイメント・プロセスの間、アプリケーションが、異なる通信帯域幅およびセキュリティ・プロトコルを要求することがある。例えば、VPNトンネル上のSSHプロトコルは、製品の実行中ではなく、製品のインストール中に必要とされることがある。アプリケーションは、動的VPNトンネル再構成に関する新しい要件の組をVPNマネージャに提供することができる。
VPNマネージャは、組織のネットワーク内のアプリケーションまたはマシンの組により供給される詳細かつ動的な要件に応答して、動的なVPNのデプロイメント、管理および再構成を提供する。複数の柔軟なVPNトンネルの併合および分割を可能にすることにより、ハイブリッド・クラウドの効率およびセキュリティが改善される。さらに、組織は、本発明を用いて、パートナーまたは他の信頼できるエンティティにより制御されるクラウド環境とのフェデレーションを有するVPNトンネリング能力を提供することができる。異なる組織に属するVPNマネージャ間の信頼の確立を通じたVPN能力のフェデレーションは、アプリケーション自体が複数の組織に加わることを必要とせずに、アプリケーションが既存の信頼関係を利用することを可能にする。
本発明の実施形態は、より効率的な管理、およびVPNアクティビティのオフロードのために、クラウドによりホストされるハードウェアの自動化されたデプロイメントおよび除去に応じて、VPNトンネル・トポロジを変更することを可能にする。VPN技術の選択は、環境の変化および要求中のアプリケーションの要件に対応する。クラウド・インフラストラクチャ(API、自動化デプロイメント・ツール)を利用することにより、VPNマネージャは、最小の付加的なインフラストラクチャで、VPNトンネルを管理することができる。本発明の実施形態は、アプリケーション駆動コマンドに基づく許可されたプロトコルのリアルタイムの変更など、アプリケーション・ライフサイクルに基づいて通信を応答可能なように変更する。管理者またはアプリケーションの組により与えられるVPNトンネル要件を連続的に監視することにより、本発明の実施形態は、動的なVPNトンネルの再構成を提供する。
従来技術に優る本発明の多くの利点がある。本発明の実施形態は、アプリケーションにより与えられる詳細かつ動的な要件に応答して、動的なVPNデプロイメント、管理および再構成を提供する。さらに、複数のVPNマネージャが、別々のクラウド内でVPNを管理することができ、VPNマネージャ間の信頼の確立を通じたVPN能力のフェデレーションを通じて、アプリケーションは、既存の信頼関係を利用して、異なるクラウドからの信頼できるVPNマネージャにVPNを要求することができる。
複数の柔軟なVPNトンネルを結合して単一のVPNトンネルにすることにより、クラウド間の通信の効率およびセキュリティが改善される。必要な場合は、新しいデマンドを満たすために、結合したVPNの分割を達成することもできる。本発明の実施形態において、VPN機能を提供するために用いられるハードウェアが、より効率的な管理のために、自動的にデプロイされ、除去される。所定のトンネルを作製するために選択されるVPN技術は、クラウド環境、およびアプリケーションにより指定される要件に対応する。専用VPNエージェントが用いられる場合、専用VPNエージェントは、VPNトンネルを要求しているアプリケーションまたはマシンにより要求される要件を提供するように構成される。クラウド・インフラストラクチャ自体は柔軟性があり、マシン間のタスクの再割り当てを可能にする。必要に応じて、そうしたリソースを付加的な管理VPNに動的に割り当てることによって、この柔軟性を、VPN管理プロセス(API、自動化デプロイメント・ツール)において利用することができる。
VPNトンネルを対応して変更して、アプリケーション・ライフサイクルに基づく通信チャネルの拡張または制限、ならびに、アプリケーション駆動コマンドに基づくVPNトンネルにおける許可されたプロトコルのリアルタイムの変更をもたらすことができる。本発明の好ましい実施形態において、VPNエージェントは、動的なVPN再構成のために、管理者またはアプリケーション、またはアプリケーションの組により与えられるVPN要件、ならびにアプリケーションにより求められている実際のスループットを連続的に監視する。既述のように、本明細書での手法は、手動でまたは自動化した方法で、全体的にまたは部分的に実施することができる。
好ましい動作環境および使用事例が説明されたが、本明細書における技術は、サービスをデプロイすることが望まれる他のいずれの動作環境でも使用することができる。
説明されたように、上述の機能は、例えば、1つまたは複数のハードウェア・プロセッサにより実行される1つまたは複数のソフトウェア・ベースの機能など、独立型の手法として実装することができ、またはマネージド・サービスとして(SOAP/XMLインターフェースを介したウェブ・サービスとして等)利用可能であり得る。本明細書で説明される特定のハードウェアおよびソフトウェア実装の詳細は、説明のためのものにすぎず、説明される主題の範囲を制限することを意図したものではない。
より一般的には、開示される主題の文脈内のコンピューティング・デバイスはそれぞれ、ハードウェアおよびソフトウェアを含むデータ処理システム(図2に示されるような)であり、これらのエンティティは、インターネット、イントラネット、エクストラネット、プライベート・ネットワーク、または他のいずれかの通信媒体もしくはリンクのようなネットワーク上で互いに通信する。データ処理システム上のアプリケーションは、数ある中でも、HTTP、FTP、SMTP、SOAP、XML、WSDL、UDDIおよびWSFLに関するサポートを含むがそれらには限定されない、ウェブおよび他の周知のサービスおよびプロトコルに関するネイティブ・サポートを提供する。SOAP、WSDL、UDDIおよびWSFLに関する情報は、これらの標準の開発および維持を担当するワールド・ワイド・ウェブ・コンソーシアム(W3C)から入手可能であり、HTTP、FTP、SMTP、およびXMLに関するさらなる情報は、インターネット技術タスクフォース(IETF)から入手可能である。
クラウド・ベースの環境に加えて、本明細書で説明される技術は、簡単なn階層アーキテクチャ、ウェブ・ポータル、フェデレーテッド・システム等を含む種々のサーバサイドのアーキテクチャにおいてまたはこれと共に実装することができる。
さらに一般的には、本明細書で説明される主題は、完全にハードウェアの実施形態、本発明の完全にソフトウェアの実施形態、またはハードウェアの要素とソフトウェアの要素の両方を含む本発明の実施形態の形態を取ることができる。本発明の好ましい実施形態において、信頼できるプラットフォーム・モジュール機能は、ファームウェア、常駐ソフトウェア、マイクロコード等を含むがこれらに限定されないソフトウェアの形で実装される。さらに、ダウンロードおよび削除インターフェースおよび機能は、コンピュータまたはいずれかの命令実行システムによりまたはこれと共に使用されるプログラム・コードを提供するコンピュータ使用可能またはコンピュータ可読媒体からアクセス可能なコンピュータ・プログラム製品の形を取ることができる。この説明の目的のために、コンピュータ使用可能またはコンピュータ可読媒体は、命令実行システム、装置、またはデバイスによりまたはこれと共に使用されるプログラムを収容または記憶することができる任意の装置とすることができる。媒体は、電子、磁気、光学、電磁気、赤外線または半導体のシステム(もしくは装置もしくはデバイス)とすることができる。コンピュータ可読媒体の例として、半導体またはソリッド・ステート・メモリ、磁気テープ、取り外し可能なコンピュータ・ディスケット、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、剛性磁気ディスクおよび光ディスクが挙げられる。光ディスクの現在の例として、コンパクト・ディスク−読み出し専用メモリ(CD−ROM)、コンパクト・ディスク−読み出し/書き込み(CD−R/W)およびDVDが挙げられる。コンピュータ可読媒体は、有形の非一時的な項目である。
コンピュータ・プログラム製品は、説明される機能の1つまたは複数を実施するためのプログラム命令(またはプログラム・コード)を有する製品とすることができる。これらの命令またはコードは、遠隔データ処理システムからネットワーク上でダウンロードされた後、データ処理システムのコンピュータ可読ストレージ媒体内に記憶することができる。あるいは、これらの命令またはコードは、サーバ・データ処理システムのコンピュータ可読ストレージ媒体内に記憶し、遠隔データ処理システム内のコンピュータ可読ストレージ媒体で使用するために、ネットワーク上でその遠隔システムにダウンロードするように適合させることができる。
本発明の代表的な実施形態において、技術は、専用コンピューティング・プラットフォーム内で、好ましくは1つまたは複数のプロセッサにより実行されるソフトウェアの形で実装される。ソフトウェアは、1つまたは複数のプロセッサと関連した1つまたは複数のデータ・ストアまたはメモリ内に保持し、かつ、1つまたは複数のコンピュータ・プログラムとして実装することができる。まとめると、この専用ハードウェアおよびソフトウェアは、上述の機能を含む。
本発明の好ましい実施形態において、本明細書で与えられる機能は、既存のクラウド・コンピュート・デプロイメント管理の解決法への付加物または拡張として実装される。
上記は、本発明の特定の実施形態により実施される動作の特定の順序を説明しているが、本発明の代替的な実施形態は、それらの動作を異なる順序で実施すること、特定の動作を組み合わせること、特定の動作を重ねること等が可能であるので、そのような順序は例示的なものであることを理解されたい。本明細書における本発明の所定の実施形態への参照は、説明される実施形態が特定の特徴、構造、または特性を含むことができるが、本発明のあらゆる実施形態が必ずしもその特定の特徴、構造、または特性を含まなくてもよいことを指し示す。
最後に、本システムの所定のコンポーネントが個別に説明されたが、所定の命令、プログラム・シーケンス、コード部分等において機能の一部を組み合わせることまたは共有することができることを当業者であれば理解するであろう。

Claims (20)

  1. 方法であって、
    第1のVPNマネージャにおいて、ハイブリッド・クラウド環境内の第1のクラウドと第2のクラウドとの間の複数のVPNトンネルを管理するステップと、
    前記第1のクラウド内にある第1のクラウド・アプリケーションから要求を受け取るステップであって、前記要求は、前記複数のVPNトンネルにおける第1のVPNトンネルに関する第1の組の要件を含む、前記ステップと、
    前記要求を第1のクラウド内の第1のシステムに送るステップであって、前記第1のシステムは、前記第1の組の要件に従って前記第1のVPNトンネルを作製する、前記ステップと、
    前記第1のVPNトンネルに関するイベントを受け取るステップと、
    前記イベントに応答して、第2の組の要件を含む変更要求を前記第1のシステムに送るステップであって、前記第1のシステムは、第2の組の要件に従って前記第1のVPNトンネルを調整する、前記ステップと
    を含む方法。
  2. 第1のVPNエージェントを前記第1のシステムに送るステップと、
    前記第1のシステムにおいて前記第1のVPNエージェントをインストールするステップとをさらに含み、
    前記VPNマネージャは、前記第1のVPNトンネルの前記管理に関する要求および情報を前記第1のVPNエージェントに送る、
    請求項1に記載の方法。
  3. 前記第1の組の要件は、セキュリティ要件の組を含む、請求項1に記載の方法。
  4. 前記イベントは、前記第1のVPNトンネルに関する第2の組の要件を含む変更要求を前記第1のクラウド・アプリケーションから受け取ることと、前記第1のVPNトンネルに関する第2の組の要件を含む要求を第2のクラウド・アプリケーションから受け取ることと、前記第1のVPNトンネル内のトラフィック帯域幅の変更、前記第1のVPNトンネルを変更する管理者要求、前記第1のクラウド・アプリケーションに関するアプリケーション・ライフサイクルの変更、前記第1のクラウドについてのネットワーク・トポロジの変更、および前記第1のクラウド・アプリケーションに関するセキュリティ要件の変更を検出することとから成る群から選択される、請求項1に記載の方法。
  5. 前記第1のクラウド内にある第2のクラウド・アプリケーションから要求を受け取るステップであって、前記要求は、第1のVPNトンネルに関する第2の組の要件を含む、前記ステップと、
    前記要求を第1のクラウド内の前記第1のシステムに送るステップであって、前記第1のシステムは、前記第2の組の要件に従って前記第1のVPNトンネルを変更して、前記第1および第2のクラウド・アプリケーションからのトラフィックに適合させる、前記ステップとをさらに含み、
    前記第1のクラウドは、プライベート・クラウドであり、前記第2のクラウドは、前記ハイブリッド・クラウド環境内のパブリック・クラウドであり、前記イベントに応答して前記第1のVPNトンネルを調整することは、前記第1のVPNトンネルを、前記第1のクラウド・アプリケーションからのトラフィックに適合させるための前記第1のVPNトンネルと、前記第2のクラウド・アプリケーションからのトラフィックに適合させるための第2のVPNトンネルとに分割することを含む、
    請求項1に記載の方法。
  6. 前記第2の組の要件に従って作製された第2のVPNトンネルを前記第1のVPNトンネルと併合するステップであって、前記第1のVPNトンネルは、前記第1および第2の組の要件に従って変更される、前記ステップ
    をさらに含む、請求項1に記載の方法。
  7. 第1の組織の第1のハイブリッド・クラウド環境を管理する前記第1のVPNマネージャと、第2の組織の第2のハイブリッド・クラウド環境を管理する第2のVPNマネージャとの間の信頼関係を確立するステップと、
    前記第1のハイブリッド・クラウド内の第1のマシンと、前記第2のハイブリッド・クラウド内の第2のマシンとの間の第2のVPNトンネルを作製するステップと
    をさらに含む、請求項1に記載の方法。
  8. VPNトンネルに関する第2の組の要件を含む要求を第2のクラウド・アプリケーションから受け取るステップと、
    前記第1および第2のクラウド・アプリケーションからのトラフィックが両立できるかどうかを前記第1および第2の組の要件に基づいて判断するステップと、
    前記第1および第2のクラウド・アプリケーションからの前記トラフィックが両立できるかどうかを判断したことに基づいて前記第1のVPNトンネルを調整するステップと
    をさらに含む、請求項1に記載の方法。
  9. 装置であって、
    プロセッサと、
    ハイブリッド・クラウド環境内の第1のクラウドと第2のクラウドとの間の複数のVPNトンネルを管理するために前記プロセッサにより実行されるコンピュータ・プログラム命令を保持するコンピュータ・メモリと
    を含み、前記コンピュータ・プログラム命令は、
    前記第1のクラウド内にある第1のクラウド・アプリケーションから第1の要求を受け取るように動作可能なプログラム・コードであって、前記第1の要求は、前記複数のVPNトンネルにおける第1のVPNトンネルに関する第1の組の要件を含む、前記プログラム・コードと、
    前記第1の要求を第1のクラウド内の第1のシステムに送るように動作可能なプログラム・コードであって、前記第1のシステムは、前記第1の組の要件に従って前記第1のVPNトンネルを作製する、前記プログラム・コードと、
    前記第1のクラウド内にある第2のクラウド・アプリケーションから第2の要求を受け取るように動作可能なプログラム・コードであって、前記第2の要求は、前記複数のVPNトンネルにおける第2のVPNトンネルに関する第2の組の要件を含む、前記プログラム・コードと、
    前記第2の要求を前記第1のクラウド内の前記第1のシステムに送るように動作可能なプログラム・コードであって、前記第1のシステムは、前記第2の組の要件に従って前記第2のVPNトンネルを作製する、前記プログラム・コードと、
    前記第1のVPNトンネルに関するイベントを受け取るように動作可能なプログラム・コードと、
    前記イベントに応答して、前記第2のVPNトンネルを前記第1のVPNトンネルに併合する併合要求を前記第1のシステムに送るように動作可能なプログラム・コードであって、前記第1のシステムは、第2の組の要件に従って前記第1のVPNトンネルを調整する、前記プログラム・コードとを含む、装置。
  10. 第1のVPNエージェントを前記第1のシステムに送るように動作可能なプログラム・コードと、
    前記第1のシステムにおいて前記第1のVPNエージェントをインストールするように動作可能なプログラム・コードと、
    前記第1のVPNトンネルの前記管理に関する要求および情報を前記第1のVPNエージェントに伝達するように動作可能なプログラム・コードと
    をさらに含む、請求項9に記載の装置。
  11. 前記第1の組の要件は、第1の組のセキュリティ要件を含み、前記第2の組の要件は、第2の組のセキュリティ要件を含み、前記装置は、前記第1のVPNトンネルと前記第2のVPNトンネルを併合する前に、前記第1および第2の組のセキュリティ要件が両立できるかどうかを判断するように動作可能なプログラム・コードをさらに含む、請求項9に記載の装置。
  12. 前記イベントは、前記第1のVPNトンネルにおけるトラフィック帯域幅の変更を検出することである、請求項9に記載の装置。
  13. ユーザ・インターフェース内に前記複数のVPNトンネルの表示を表示するように動作可能なプログラム・コードと、
    前記第1のVPNトンネルと前記第2のVPNトンネルの可能な併合を示す警告を表示するように動作可能なプログラム・コードと、
    ユーザ入力に応答して、前記第1のVPNトンネルと前記第2のVPNトンネルを併合するための命令を前記第1のシステムに送るように動作可能なプログラム・コードと
    をさらに含む、請求項9に記載の装置。
  14. 前記イベントは、前記第1のクラウド・アプリケーションのアプリケーション・ライフサイクルの変化を検出することである、請求項9に記載の装置。
  15. 第1のセキュリティ・ポリシーを記憶するように動作可能なプログラム・コードをさらに含み、前記第1のVPNトンネルと前記第2のVPNトンネルを併合する前に、前記第1および第2の組のセキュリティ要件が両立できるかどうかを判断するように動作可能な前記プログラム・コードは、前記第1のセキュリティ・ポリシーを参照して判断を行う、請求項11に記載の装置。
  16. 前記第1のVPNトンネルに関する第2のイベントを受け取るように動作可能なプログラム・コードと、
    前記第2のイベントに応答して、前記第1のVPNトンネルを第3のVPNトンネルおよび前記第1のVPNトンネルに分割する分割要求を前記第1のシステムに送るように動作可能なプログラム・コードと
    をさらに含む、請求項9に記載の装置。
  17. データ処理システムで用いられる非一時的なコンピュータ可読媒体内のコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品は、ハイブリッド・クラウド環境内の第1のクラウドと第2のクラウドとの間の複数のVPNトンネルを管理するためにプロセッサにより実行されるコンピュータ・プログラム命令を保持し、前記コンピュータ・プログラム命令は、
    前記第1のクラウド内にある第1のクラウド・アプリケーションから第1の要求を受け取るように動作可能なプログラム・コードであって、前記第1の要求は、前記複数のVPNトンネルにおける第1のVPNトンネルに関する第1の組の要件を含む、前記プログラム・コードと、
    前記第1の要求を第1のクラウド内の第1のシステムに送るように動作可能なプログラム・コードであって、前記第1のシステムは、前記第1の組の要件に従って前記第1のVPNトンネルを作製する、前記プログラム・コードと、
    前記第1のクラウド内にある第2のクラウド・アプリケーションから第2の要求を受け取るように動作可能なプログラム・コードであって、前記第2の要求は、前記複数のVPNトンネルにおけるVPNトンネルに関する第2の組の要件を含む、前記プログラム・コードと、
    前記第2の要求を前記第1のクラウド内の前記第1のシステムに送るように動作可能なプログラム・コードであって、前記第1のシステムは、前記第2の組の要件に従って前記第1のVPNトンネルを変更し、前記第1のVPNトンネルは、前記第1および第2のクラウド・アプリケーションからのトラフィックを搬送する、前記プログラム・コードと、
    前記第1のVPNトンネルに関するイベントを受け取るように動作可能なプログラム・コードと、
    前記イベントに応答して、前記第1のVPNトンネルを前記第1のVPNトンネルと第2のVPNトンネルとに分割する分割要求を前記第1のシステムに送るように動作可能なプログラム・コードであって、前記第1のシステムは、前記第1のアプリケーションのトラフィックに関する前記第1の組の要件に従って前記第1のVPNトンネルを調整し、かつ、前記第2のアプリケーションのトラフィックに関する第2の組の要件に従って前記第2のVPNトンネルを調整する、前記プログラム・コードとを含む、コンピュータ・プログラム製品。
  18. 第1のVPNエージェントを前記第1のシステムに送るように動作可能なプログラム・コードと、
    前記第1のシステムにおいて前記第1のVPNエージェントをインストールするように動作可能なプログラム・コードと、
    前記第1のVPNトンネルの前記管理に関する要求および情報を前記第1のVPNエージェントに伝達するように動作可能なプログラム・コードと
    をさらに含む、請求項17に記載のコンピュータ・プログラム製品。
  19. 前記イベントは、前記第1のクラウド・アプリケーションに関するセキュリティ要件の変更である、請求項17に記載のコンピュータ・プログラム製品。
  20. 前記第1のクラウド・アプリケーションからのトラフィックが前記第2のクラウド・アプリケーションからのトラフィックと両立できないと判断するように動作可能なプログラム・コードをさらに含む、請求項17に記載のコンピュータ・プログラム製品。
JP2018524285A 2015-12-15 2016-09-29 ハイブリッド・クラウド環境内の第1のクラウドと第2のクラウドとの間の複数のvpnトンネルを管理するための方法、装置、およびコンピュータ・プログラム Active JP6712318B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/970,493 US9571457B1 (en) 2015-12-15 2015-12-15 Dynamically defined virtual private network tunnels in hybrid cloud environments
US14/970,493 2015-12-15
PCT/IB2016/055834 WO2017103699A1 (en) 2015-12-15 2016-09-29 Dynamically defined virtual private network tunnels in hybrid cloud environments

Publications (2)

Publication Number Publication Date
JP2019503101A true JP2019503101A (ja) 2019-01-31
JP6712318B2 JP6712318B2 (ja) 2020-06-17

Family

ID=57965043

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018524285A Active JP6712318B2 (ja) 2015-12-15 2016-09-29 ハイブリッド・クラウド環境内の第1のクラウドと第2のクラウドとの間の複数のvpnトンネルを管理するための方法、装置、およびコンピュータ・プログラム

Country Status (6)

Country Link
US (1) US9571457B1 (ja)
JP (1) JP6712318B2 (ja)
CN (1) CN108370340B (ja)
DE (1) DE112016003726B4 (ja)
GB (1) GB2557767B (ja)
WO (1) WO2017103699A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102204237B1 (ko) * 2020-04-30 2021-01-18 주식회사 지에스아이티엠 클라우드를 이용한 통합 수율 관리 시스템

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8423631B1 (en) * 2009-02-13 2013-04-16 Aerohive Networks, Inc. Intelligent sorting for N-way secure split tunnel
US10673838B2 (en) * 2016-05-13 2020-06-02 MobileIron, Inc. Unified VPN and identity based authentication to cloud-based services
US10523660B1 (en) 2016-05-13 2019-12-31 MobileIron, Inc. Asserting a mobile identity to users and devices in an enterprise authentication system
US10305935B2 (en) 2016-06-09 2019-05-28 LGS Innovations LLC Methods and systems for enhancing cyber security in networks
US10637890B2 (en) 2016-06-09 2020-04-28 LGS Innovations LLC Methods and systems for establishment of VPN security policy by SDN application
US10601777B2 (en) * 2017-02-17 2020-03-24 Corrata Limited Data inspection system and method
US10623374B2 (en) 2017-06-09 2020-04-14 Microsoft Technology Licensing, Llc Automatic network identification for enhanced communications administration
US10887130B2 (en) 2017-06-15 2021-01-05 At&T Intellectual Property I, L.P. Dynamic intelligent analytics VPN instantiation and/or aggregation employing secured access to the cloud network device
US10170304B1 (en) 2017-10-25 2019-01-01 Globalfoundries Inc. Self-aligned nanotube structures
US10742690B2 (en) 2017-11-21 2020-08-11 Juniper Networks, Inc. Scalable policy management for virtual networks
US10728288B2 (en) * 2017-11-21 2020-07-28 Juniper Networks, Inc. Policy-driven workload launching based on software defined networking encryption policies
JP6777663B2 (ja) * 2018-02-22 2020-10-28 日本電信電話株式会社 ポリシー競合検出システム及びポリシー競合検出方法
US10778724B1 (en) 2018-06-29 2020-09-15 Juniper Networks, Inc. Scalable port range management for security policies
US11303524B2 (en) 2019-02-04 2022-04-12 Hewlett Packard Enterprise Development Lp Network bandwidth configuration
EP3949315A1 (en) * 2019-03-27 2022-02-09 British Telecommunications public limited company Reactive secure communications
US11700236B2 (en) 2020-02-27 2023-07-11 Juniper Networks, Inc. Packet steering to a host-based firewall in virtualized environments
US11663013B2 (en) 2021-08-24 2023-05-30 International Business Machines Corporation Dependency skipping execution

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1412973A (zh) * 2001-10-18 2003-04-23 富士通株式会社 虚拟个人网络服务管理系统及其服务管理器和服务代理器
US20050088977A1 (en) * 2000-12-14 2005-04-28 Nortel Networks Limited Dynamic virtual private network (VPN) tunnel quality of service (QoS) treatment
JP2005269009A (ja) * 2004-03-17 2005-09-29 Nec Corp 専用線構築システム及び専用線相互接続制御プログラム
JP2006262131A (ja) * 2005-03-17 2006-09-28 Japan Telecom Co Ltd 通信制御システム及び方法
US20060245362A1 (en) * 2005-01-07 2006-11-02 Choyi Vinod K Method and apparatus for providing route-optimized secure session continuity between mobile nodes
US20100027552A1 (en) * 2008-06-19 2010-02-04 Servicemesh, Inc. Cloud computing gateway, cloud computing hypervisor, and methods for implementing same
US20100154050A1 (en) * 2008-12-15 2010-06-17 Prakash Umasankar Mukkara Identity driven peer-to-peer (p2p) virtual private network (vpn)
JP2013229924A (ja) * 2013-07-08 2013-11-07 Ntt Communications Kk 仮想ネットワークシステム、構成変更方法、トンネル終端装置、トンネル接続装置、及びプログラム
US20130298182A1 (en) * 2012-05-01 2013-11-07 Fortinet, Inc. Policy-based configuration of internet protocol security for a virtual private network
US20130311778A1 (en) * 2012-05-16 2013-11-21 Cisco Technology, Inc. System and method for secure cloud service delivery with prioritized services in a network environment
US20150009038A1 (en) * 2013-07-02 2015-01-08 Icf International Method and apparatus for visualizing network security alerts
US20150096011A1 (en) * 2013-10-01 2015-04-02 Racemi, Inc. Migration of complex applications within a hybrid cloud environment
JP2015522996A (ja) * 2012-05-23 2015-08-06 アルカテル−ルーセント 接続サービス調整器
US20150372982A1 (en) * 2014-06-20 2015-12-24 Zscaler, Inc. Intelligent, cloud-based global virtual private network systems and methods

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7209479B2 (en) * 2001-01-18 2007-04-24 Science Application International Corp. Third party VPN certification
US7574738B2 (en) 2002-11-06 2009-08-11 At&T Intellectual Property Ii, L.P. Virtual private network crossovers based on certificates
US7542476B2 (en) * 2003-08-29 2009-06-02 Flash Networks Ltd Method and system for manipulating IP packets in virtual private networks
US7561586B2 (en) * 2003-09-19 2009-07-14 Nortel Networks Limited Method and apparatus for providing network VPN services on demand
EP1699181A1 (de) * 2005-03-01 2006-09-06 Swisscom AG Verfahren und System zur automatisierten Konfiguration eines Subnetzwerks innerhalb eines Netzwerkes
US8189481B2 (en) * 2005-04-08 2012-05-29 Avaya, Inc QoS-based routing for CE-based VPN
US20090328192A1 (en) * 2006-08-02 2009-12-31 Alan Yang Policy based VPN configuration for firewall/VPN security gateway appliance
CN1921438A (zh) * 2006-09-15 2007-02-28 深圳市深信服电子科技有限公司 一种应用代理实现网间应用加速的方法
US8503453B2 (en) * 2006-11-20 2013-08-06 Cisco Technology, Inc. Adaptive quality of service in an easy virtual private network environment
DE102008012386A1 (de) * 2008-03-04 2009-09-10 Gateprotect Aktiengesellschaft Germany Konfigurationsvorrichtung und -verfahren
US8806015B2 (en) * 2011-05-04 2014-08-12 International Business Machines Corporation Workload-aware placement in private heterogeneous clouds
US9154327B1 (en) * 2011-05-27 2015-10-06 Cisco Technology, Inc. User-configured on-demand virtual layer-2 network for infrastructure-as-a-service (IaaS) on a hybrid cloud network
US20140032733A1 (en) * 2011-10-11 2014-01-30 Citrix Systems, Inc. Policy-Based Application Management
US9609020B2 (en) * 2012-01-06 2017-03-28 Optio Labs, Inc. Systems and methods to enforce security policies on the loading, linking, and execution of native code by mobile applications running inside of virtual machines
US9203784B2 (en) * 2012-04-24 2015-12-01 Cisco Technology, Inc. Distributed virtual switch architecture for a hybrid cloud
US8990901B2 (en) * 2012-05-05 2015-03-24 Citrix Systems, Inc. Systems and methods for network filtering in VPN
US8892766B1 (en) 2012-06-28 2014-11-18 Trend Micro Incorporated Application-based network traffic redirection for cloud security service
CN102891790B (zh) * 2012-09-21 2016-03-02 中国电信股份有限公司 一种访问虚拟私有云的vpn虚拟化方法和系统
US20140109171A1 (en) * 2012-10-15 2014-04-17 Citrix Systems, Inc. Providing Virtualized Private Network tunnels
US20140109176A1 (en) * 2012-10-15 2014-04-17 Citrix Systems, Inc. Configuring and providing profiles that manage execution of mobile applications
CN102938734A (zh) * 2012-11-26 2013-02-20 杭州华三通信技术有限公司 Mpls网络中隧道的选择方法及pe设备
US9389893B2 (en) * 2013-08-13 2016-07-12 Vmware, Inc. Method and system for migration of virtual machines and virtual applications between cloud-computing facilities through multiplexed secure tunnels
US9667486B2 (en) 2013-08-30 2017-05-30 Vmware, Inc. System and method for network address administration and management in federated cloud computing networks
US9665079B2 (en) * 2014-03-26 2017-05-30 Honeywell International Inc. Controller having a version control system
US9553887B2 (en) * 2014-10-13 2017-01-24 Vmware, Inc. Virtual machine compliance checking in cloud environments
US9723065B2 (en) * 2014-10-13 2017-08-01 Vmware, Inc. Cross-cloud object mapping for hybrid clouds

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050088977A1 (en) * 2000-12-14 2005-04-28 Nortel Networks Limited Dynamic virtual private network (VPN) tunnel quality of service (QoS) treatment
CN1412973A (zh) * 2001-10-18 2003-04-23 富士通株式会社 虚拟个人网络服务管理系统及其服务管理器和服务代理器
JP2003124986A (ja) * 2001-10-18 2003-04-25 Fujitsu Ltd Vpnサービス管理システム、vpnサービスマネージャ及びvpnサービスエージェント
JP2005269009A (ja) * 2004-03-17 2005-09-29 Nec Corp 専用線構築システム及び専用線相互接続制御プログラム
US20060245362A1 (en) * 2005-01-07 2006-11-02 Choyi Vinod K Method and apparatus for providing route-optimized secure session continuity between mobile nodes
JP2006262131A (ja) * 2005-03-17 2006-09-28 Japan Telecom Co Ltd 通信制御システム及び方法
US20100027552A1 (en) * 2008-06-19 2010-02-04 Servicemesh, Inc. Cloud computing gateway, cloud computing hypervisor, and methods for implementing same
US20100154050A1 (en) * 2008-12-15 2010-06-17 Prakash Umasankar Mukkara Identity driven peer-to-peer (p2p) virtual private network (vpn)
US20130298182A1 (en) * 2012-05-01 2013-11-07 Fortinet, Inc. Policy-based configuration of internet protocol security for a virtual private network
US20130311778A1 (en) * 2012-05-16 2013-11-21 Cisco Technology, Inc. System and method for secure cloud service delivery with prioritized services in a network environment
JP2015522996A (ja) * 2012-05-23 2015-08-06 アルカテル−ルーセント 接続サービス調整器
US20150009038A1 (en) * 2013-07-02 2015-01-08 Icf International Method and apparatus for visualizing network security alerts
JP2013229924A (ja) * 2013-07-08 2013-11-07 Ntt Communications Kk 仮想ネットワークシステム、構成変更方法、トンネル終端装置、トンネル接続装置、及びプログラム
US20150096011A1 (en) * 2013-10-01 2015-04-02 Racemi, Inc. Migration of complex applications within a hybrid cloud environment
US20150372982A1 (en) * 2014-06-20 2015-12-24 Zscaler, Inc. Intelligent, cloud-based global virtual private network systems and methods

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102204237B1 (ko) * 2020-04-30 2021-01-18 주식회사 지에스아이티엠 클라우드를 이용한 통합 수율 관리 시스템

Also Published As

Publication number Publication date
CN108370340A (zh) 2018-08-03
US9571457B1 (en) 2017-02-14
GB2557767A (en) 2018-06-27
WO2017103699A1 (en) 2017-06-22
DE112016003726B4 (de) 2021-06-10
JP6712318B2 (ja) 2020-06-17
GB2557767B (en) 2021-11-10
GB201803075D0 (en) 2018-04-11
DE112016003726T5 (de) 2018-05-09
CN108370340B (zh) 2020-11-03

Similar Documents

Publication Publication Date Title
CN106888143B (zh) 用于混合云环境中虚拟私有网络通信的方法和装置
JP6712318B2 (ja) ハイブリッド・クラウド環境内の第1のクラウドと第2のクラウドとの間の複数のvpnトンネルを管理するための方法、装置、およびコンピュータ・プログラム
CN107085524B (zh) 用于云环境中的保证的日志管理的方法和装置
US10171591B2 (en) Connecting public cloud with private network resources
US9942273B2 (en) Dynamic detection and reconfiguration of a multi-tenant service
US9888040B2 (en) Secure application zones for cloud burst environments
US20190052735A1 (en) Chaining Virtual Network Function Services via Remote Memory Sharing
US20210255884A1 (en) Migration of a desktop workload
Naik et al. Workload monitoring in hybrid clouds
US11032073B2 (en) Seamless abort and reinstatement of TLS sessions
CA3116392A1 (en) Migration of a desktop workload
US20150067681A1 (en) Method and apparatus for intelligent virtual machine sleep modes
US11349936B2 (en) System and related methods providing channel switching between appliances
Galluzzo Automatic and Seamless Switching of Cloud Native Services Running in the “Cloud Continuum”(POLITO/LINKS Foundation)
Keeriyattil et al. NSX Log Insight and Network Insight
US20150067131A1 (en) Method and apparatus for displaying logical views of collision domain networks

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180815

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190225

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191119

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200217

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200508

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200526

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200529

R150 Certificate of patent or registration of utility model

Ref document number: 6712318

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150