(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-11-08
(54)【発明の名称】クラウドベースの仮想プライベートネットワークを無線式ネットワーク上のユーザ機器に拡張
(51)【国際特許分類】
H04L 41/0895 20220101AFI20241031BHJP
H04L 41/40 20220101ALI20241031BHJP
H04L 61/2592 20220101ALI20241031BHJP
H04L 61/5007 20220101ALI20241031BHJP
【FI】
H04L41/0895
H04L41/40
H04L61/2592
H04L61/5007
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024529439
(86)(22)【出願日】2022-11-25
(85)【翻訳文提出日】2024-05-16
(86)【国際出願番号】 US2022080470
(87)【国際公開番号】W WO2023097307
(87)【国際公開日】2023-06-01
(32)【優先日】2021-11-24
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】506329306
【氏名又は名称】アマゾン テクノロジーズ インコーポレイテッド
(74)【代理人】
【識別番号】110000855
【氏名又は名称】弁理士法人浅村特許事務所
(72)【発明者】
【氏名】グプタ、ディワカール
(72)【発明者】
【氏名】フー、カイシャン
(72)【発明者】
【氏名】ヴォイトヴィッツ、ベンジャミン
(72)【発明者】
【氏名】シェヴァデ、ウペンドラ バールチャンドラ
(72)【発明者】
【氏名】ホール、シェーン アシュレイ
(57)【要約】
クラウドベースの仮想プライベートネットワークを無線式ネットワーク上のユーザ機器に拡張するための様々な実施形態が開示される。一実施形態では、無線式ネットワークからのサービスに対する要求がクライアントデバイスから受信される。無線式ネットワークからのサービスに対するクライアントデバイスからの要求の受信に応答して、クライアントデバイスに、無線式ネットワークを介した仮想プライベートクラウドネットワークへのアクセスを提供する。無線式ネットワークと、仮想プライベートクラウドネットワーク上の1つまたは複数のリソースをホストするクラウドプロバイダネットワークとの間のネットワークリンクを介して、カプセル化されたネットワークトラフィックがクライアントデバイスから仮想プライベートクラウドネットワークに転送される。
【特許請求の範囲】
【請求項1】
クラウドプロバイダネットワークへのネットワークリンクを有する無線式ネットワークと、
関連するインターネットプロトコル(IP)アドレス範囲を有する仮想プライベートクラウドネットワークをホストする前記クラウドプロバイダネットワークと
を備えるシステムであって、前記クラウドプロバイダネットワークは、
前記無線式ネットワーク内に前記仮想プライベートクラウドネットワークのサブネットを作成することと、
クライアントデバイスの加入者識別モジュールを前記仮想プライベートクラウドネットワークに登録することと、
前記加入者識別モジュールに、前記仮想プライベートクラウドネットワークの前記関連するIPアドレス範囲からIPアドレスを割り当てることと、
前記無線式ネットワークへの前記ネットワークリンクを介して、前記仮想プライベートクラウドネットワークから前記クライアントデバイスにネットワークトラフィックを転送することと
を少なくとも行うように構成された少なくとも1つのコンピューティングデバイスを備える、
前記システム。
【請求項2】
前記無線式ネットワークが、前記仮想プライベートクラウドネットワーク上の前記クライアントデバイスの前記IPアドレスを前記無線式ネットワーク上の前記クライアントデバイスの別のネットワークアドレスに変換することに少なくとも部分的に基づいて、前記仮想プライベートクラウドネットワークからの前記ネットワークトラフィックを少なくともデカプセル化するように構成されたゲートウェイをさらに備え、前記ゲートウェイは、
前記クライアントデバイスから他のネットワークトラフィックを受信することと、
前記仮想プライベートクラウドネットワーク上の仮想マシンインスタンスの第1のネットワークアドレスを前記クラウドプライベートネットワーク上の特定のコンピューティングデバイスの第2のネットワークアドレスに変換することに少なくとも部分的に基づいて、前記他のネットワークトラフィックをカプセル化することであって、前記仮想マシンインスタンスは、前記特定のコンピューティングデバイス上で実行される、前記カプセル化することと、
前記カプセル化された他のネットワークトラフィックを前記ネットワークリンクを介して前記仮想プライベートクラウドネットワークに転送することと
を少なくとも行うようにさらに構成される、
請求項1に記載のシステム。
【請求項3】
前記ネットワークリンクが、前記無線式ネットワークと前記クラウドプロバイダネットワークの間の専用プライベートリンクに対応する、請求項1に記載のシステム。
【請求項4】
前記クライアントデバイスが、前記ネットワークトラフィックをデカプセル化し、前記クラウドプロバイダネットワーク上の送信元IPアドレスを前記仮想プライベートクラウドネットワーク上の送信元IPアドレスに変換するように構成される、請求項1に記載のシステム。
【請求項5】
無線式ネットワークからのサービスに対するクライアントデバイスからの要求を受信することと、
前記無線式ネットワークからの前記サービスに対する前記クライアントデバイスからの前記要求の受信に応答して、前記クライアントデバイスに、前記無線式ネットワークを介した仮想プライベートクラウドネットワークへのアクセスを提供することと、
前記仮想プライベートクラウドネットワークに関連付けられたネットワークアドレスのプールから前記クライアントデバイスにネットワークアドレスを割り当てることと、
前記無線式ネットワークと、前記仮想プライベートクラウドネットワーク上の1つまたは複数のリソースをホストするクラウドプロバイダネットワークとの間のネットワークリンクを介して、カプセル化されたネットワークトラフィックを前記クライアントデバイスから前記仮想プライベートクラウドネットワークに転送することと
を含む、コンピュータ実装方法。
【請求項6】
前記無線式ネットワークの無線式アクセスネットワークまたは前記無線式ネットワークのコアネットワークに実装されたゲートウェイによって、前記クライアントデバイスから受信したネットワークトラフィックをカプセル化することによって、前記カプセル化されたネットワークトラフィックを生成することと、
前記仮想プライベートクラウドネットワーク上の仮想マシンインスタンスの第1のネットワークアドレスを前記クラウドプライベートネットワーク上のコンピューティングデバイスの第2のネットワークアドレスに、前記ゲートウェイによって変換することとをさらに含み、前記仮想マシンインスタンスは、前記コンピューティングデバイス上で実行される、
請求項5に記載のコンピュータ実装方法。
【請求項7】
前記ゲートウェイが、前記コアネットワークのカスタム化されたユーザプレーン機能で実装される、請求項6に記載のコンピュータ実装方法。
【請求項8】
ルールセットに少なくとも部分的に基づいて、前記仮想プライベートクラウドネットワークに転送されるべき前記クライアントデバイスからのネットワークトラフィックを識別することをさらに含む、請求項5に記載のコンピュータ実装方法。
【請求項9】
前記無線式ネットワークを介して前記仮想プライベートクラウドネットワークへのアクセスを前記クライアントデバイスに提供することが、前記クライアントデバイスの加入者識別モジュールに少なくとも部分的に基づく、請求項5に記載のコンピュータ実装方法。
【請求項10】
前記無線式ネットワークにおいて、前記仮想プライベートクラウドネットワークに対応するネットワークスライスを構成することをさらに含む、請求項5に記載のコンピュータ実装方法。
【請求項11】
前記無線式ネットワークを介して複数の仮想プライベートクラウドネットワークへのアクセスを前記クライアントデバイスに提供することをさらに含む、請求項5に記載のコンピュータ実装方法。
【請求項12】
クライアントデバイスにより、無線式ネットワークにサービスを要求することと、
前記クライアントデバイスにより、前記無線式ネットワークを介して仮想プライベートクラウドネットワークに接続することと、
前記クライアントデバイスにより、前記仮想プライベートクラウドネットワークに対応するネットワークアドレスのプールからネットワークアドレスの割り当てを受信することと、
前記クライアントデバイスで実行されるアプリケーションからのネットワークトラフィックであって、前記仮想プライベートクラウドネットワーク上の仮想マシンインスタンスの第1のネットワークアドレス宛である前記ネットワークトラフィックを受信することと、
前記クライアントデバイスにより、前記第1のネットワークアドレスをクラウドプロバイダネットワーク上のコンピューティングデバイスの第2のネットワークアドレスに変換することに少なくとも部分的に基づいて、前記ネットワークトラフィックをカプセル化することであって、前記仮想マシンインスタンスは前記コンピューティングデバイス上で実行される、前記カプセル化することと、
前記クライアントデバイスにより、前記カプセル化されたネットワークトラフィックを前記無線式ネットワークに転送することと
を含む、コンピュータ実装方法。
【請求項13】
前記無線式ネットワークから、前記第1のネットワークアドレスを前記第2のネットワークアドレスに変換するためのネットワークアドレス変換データを受信することをさらに含み、前記クライアントデバイスで実行される別のアプリケーションが、前記ネットワークトラフィックをカプセル化する、または前記クライアントデバイスで実行されるオペレーティングシステムが、前記ネットワークトラフィックをカプセル化する、請求項12に記載のコンピュータ実装方法。
【請求項14】
前記クライアントデバイスにより、前記仮想プライベートクラウドネットワークの制御プレーンを介してセキュリティグループルールまたはネットワークアクセス制御リスト(ACL)のうちの少なくとも1つを受信することと、
前記クライアントデバイスにより、前記ネットワークトラフィックに対する前記セキュリティグループルールまたは前記ネットワークACLのうちの前記少なくとも1つの適用に少なくとも部分的に基づいて、前記ネットワークトラフィックの転送を判断することと
をさらに含む、請求項12に記載のコンピュータ実装方法。
【請求項15】
前記カプセル化されたネットワークトラフィックを転送することが、前記仮想プライベートクラウドネットワークに対応するネットワークスライスを介して、前記カプセル化されたネットワークトラフィックを前記無線式ネットワークに転送することをさらに含む、請求項12に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2021年11月24日に出願された「EXTENDING CLOUD-BASED VIRTUAL PRIVATE NETWORKS TO USER EQUIPMENT ON RADIO-BASED NETWORKS」と題する米国特許出願第17/535,564号の優先権及び利益を主張するものであり、この出願の全体を参照により本明細書に組み込む。
【背景技術】
【0002】
5Gは、ブロードバンドセルラネットワークの第5世代技術規格であり、最終的には第4世代(4G)規格のロングタームエボリューション(LTE)に取って代わることが計画されている。5G技術は、大幅に増加した帯域幅を提供することによって、スマートフォンを超えてセルラ市場を広げて、デスクトップ、セットトップボックス、ラップトップ、モノのインターネット(IoT)デバイスなどへのラストマイル接続性を提供する。5Gセルには4Gと同様の周波数スペクトルを使用できるものがあり、その一方でミリ波帯の周波数スペクトルを使用できる5Gセルもある。ミリ波帯のセルのカバレッジエリアは比較的小さいが、4Gよりもはるかに高いスループットを提供する。
【発明の概要】
【0003】
本開示の多くの態様は、以下の図面を参照して、より良く理解することができる。図面のコンポーネントは、必ずしも縮尺通りになっているとは限らず、代わりに本開示の原理を明確に示すことに重点を置いている。さらに、図面において、同様の参照番号は、いくつかの図において対応する部分を指定する。
【図面の簡単な説明】
【0004】
【
図1】本開示の様々な実施形態に従って、デプロイされ、管理される通信ネットワークの例の図面である。
【
図2A】本開示のいくつかの実施形態による、クラウドプロバイダネットワークを含み、さらに、
図1の通信ネットワーク内の様々なロケーションで使用され得るクラウドプロバイダネットワークの様々なプロバイダサブストレートエクステンションを含むネットワーク環境の例を示す。
【
図2B】本開示のいくつかの実施形態による、
図1の通信ネットワークのセルラ化及び地理的分散の例を示す。
【
図3A】本開示のいくつかの実施形態による、地理的に分散したプロバイダサブストレートエクステンションを含む
図2Aのネットワーク環境の例を示す。
【
図3B】本開示のいくつかの実施形態による、仮想プライベートクラウドネットワークを含む
図2Aのネットワーク環境の例を示す。
【
図4】本開示の様々な実施形態による、
図2Aのネットワーク環境の概略ブロック図である。
【
図5】本開示の様々な実施形態による、
図4のネットワーク環境における無線式ネットワーク及び仮想プライベートクラウドネットワークの一部として実装される機能の例を示すフローチャートである。
【
図6】本開示の様々な実施形態による、
図4のネットワーク環境における無線式ネットワークで実行される仮想プライベートクラウドゲートウェイの一部として実装される機能の例を示すフローチャートである。
【
図7】本開示の様々な実施形態による、
図4のネットワーク環境におけるクライアントデバイスで実行される仮想プライベートクラウドアプリケーションの一部として実装される機能の例を示すフローチャートである。
【
図8】本開示の様々な実施形態による、
図4のネットワーク環境で使用されるコンピューティング環境の一例を提供する概略ブロック図である。
【発明を実施するための形態】
【0005】
本開示は、クラウドベースの仮想プライベートネットワークを無線式ネットワーク上のユーザ機器に拡張することに関する。仮想プライベートクラウド(VPC)は、クラウドプロバイダネットワーク等の他のネットワーク内のカスタム定義された仮想ネットワークである。VPCは、クラウドサービス、例えば、計算クラウドもしくはエッジクラウドのための、またはクラウド上で実行する顧客アプリケーションもしくはワークロードのための基礎ネットワーク層を提供することができる。VPCは、少なくともそのアドレス空間、内部構造(例えば、VPCを構成するコンピューティングリソース)、及び通過パスによって定義することができる。VPCリソースは通常、クラウドプロバイダネットワーク内でホストされ、プロビジョニングされるが、顧客所有のネットワークは、ゲートウェイを介してVPCに接続することができる。VPCをホストする際に、クラウドプロバイダネットワークは、クラウドプロバイダネットワークの物理的リソース、及び任意選択で仮想リソースを使用して、VPCをプロビジョニングするための論理的構成を実装する。
【0006】
無線式ネットワークは、ワイヤレスデバイスにネットワーク接続を提供するために1つまたは複数の無線アクセスネットワーク(RAN)と関連するコアネットワークとを含む。RANは、Wi-Fi(登録商標)、4G、5G、第6世代(6G)、及び他のアクセス技術を使用して動作することができる。無線式ネットワークは、顧客及び顧客のアプリケーションに関してサービス品質(QoS)要件を満たすことを確実にするために、ネットワークスライシングをサポートすることができる。無線式ネットワークの個々のネットワークスライスは、潜在的に規定された期間、アプリケーションまたはデバイスのセットに対してRANと関連するコアネットワークの両方のネットワーク容量を予約することによって、1つまたは複数のQoSパラメータを満たす。QoSパラメータは、待ち時間、帯域幅、バースト帯域幅、ネットワークホップの数等に関するものであってよく、最大、最小、平均、または他の閾値で定義されてよい。
【0007】
本開示の様々な実施形態は、VPCの概念を無線式ネットワーク上のユーザ機器に拡張して、特定の無線式ネットワークに接続された、スマートフォン、モノのインターネット(IoT)デバイス、及び/または他のワイヤレスデバイス等のユーザ機器をVPC上に配置することができ、それによって、デバイスは、VPC上の他のリソースにアクセスすることができる。このようにして、無線式ネットワークに接続されたユーザ機器は、VPC上にある無線式ネットワーク上の他のユーザ機器と通信することができ、同じユーザ機器が、クラウドプロバイダネットワーク内のVPC上にある他のデバイス及びリソースと通信することができる。さらに、いくつかの実施形態では、無線式ネットワーク上の個々のネットワークスライスは、それぞれ、異なるVPC、またはVPCの異なるサブネットワーク(サブネット)へのアクセスを提供することができ、これらは、異なるアクセス制御によって管理される異なるリソースと関連付けられてよい。いくつかのシナリオでは、ワイヤレスデバイスは、トンネリング等の仮想ネットワークインタフェースを通してではなく、ワイヤレスデバイスの現実のネットワークインタフェースを介して、VPCとデータ通信している。
【0008】
いくつかの実施形態では、ユーザ機器上のアプリケーション、またはユーザ機器のオペレーティングシステムは、トンネル及びパケットカプセル化によって、ネットワークトラフィックをVPCにルーティングする。このような実施形態では、アプリケーションまたはオペレーティングシステムは、アクセス制御のためのセキュリティグループルールの施行や、VPCネットワークアドレスをネクストホップネットワークアドレスにマッピングするVPCルーティングテーブルの維持など、様々なVPC機能を実行するように構成されてよい。他の実施形態では、無線アクセスネットワークまたはコアネットワークのいずれかにおける無線式ネットワークのコンポーネントは、トンネル及びパケットカプセル化によって、ユーザ機器とVPCの間でネットワークトラフィックをルーティングするために、VPCプロキシとして機能する。後者の実施形態では、トンネリング及びカプセル化がユーザ機器上で直接行われないため、ユーザ機器上のリソース消費を軽減することができる。
【0009】
VPCは、特定の顧客アカウント(または同じビジネス組織に属する異なる顧客アカウントなど、関連する顧客アカウントのセット)専用の仮想ネットワークである。VPCは、クラウド内の他の仮想ネットワークから論理的に分離されている。顧客は、計算インスタンスなどのリソースをVPC内に起動することができる。VPCを作成するとき、顧客は、クラスレスドメイン間ルーティング(CIDR)ブロックの形式でVPCのIPv4及び/またはIPv6アドレスの範囲を指定することができる。VPCは、特定のリージョン内のすべてのアベイラビリティゾーンにわたってよい。VPCを作成した後、顧客は各アベイラビリティゾーンまたはエッジロケーションに1つまたは複数のサブネットを追加することができる。本開示によれば、顧客はVPCのサブネットをネットワークスライスに追加することもできる。顧客は、例えばクラウドプロバイダネットワークへのAPIコールを介して、特定のクライアントデバイス(またはクライアントデバイスのセット)の加入者識別モジュールをネットワークスライスとVPCの一方または両方に登録するように要求することができる。これに応じて、クラウドプロバイダネットワークは、インターネットプロトコル(IP)アドレスをVPCのIPアドレス範囲から加入者識別モジュールに割り当てることができる。これにより、クライアントデバイスは、さらなるアクセス制御の対象であるVPCのリソースに無線式ネットワークのネットワークスライスの使用によってアクセスできるようになる。
【0010】
アクセス制御は、セキュリティグループまたはネットワークアクセス制御リストを参照することができる。セキュリティグループ(様々な実施態様では、ネットワークセキュリティグループ、アプリケーションセキュリティグループ、クラウドセキュリティグループ、または計算エンジンファイアウォールルールとも呼ばれる)は、仮想マシンインスタンスの仮想ファイアウォールとして機能して、インバウンドトラフィック及びアウトバウンドトラフィックを制御する。顧客は、特定のインスタンスに適用できるポリシーとしてセキュリティグループを定義することができる。顧客は、VPCでインスタンスを起動するときに、1つまたは複数のセキュリティグループをインスタンスに割り当てることができる。セキュリティグループは、サブネットレベルではなくインスタンスレベルで機能してよい。したがって、サブネット内の各インスタンスを異なるセットのセキュリティグループに割り当てることができる。セキュリティグループごとに、顧客はインスタンスへのインバウンドトラフィックを制御するルールと、アウトバウンドトラフィックを制御する別のセットのルールを追加することができる。セキュリティグループは、リターントラフィックが自動的に許可されるという点でステートフルであり得る。
【0011】
顧客は、VPCに追加のセキュリティ層を追加するために、セキュリティグループと同様のルールを使用してネットワークアクセス制御リスト(ACL)を設定することもできる。ネットワークACLはサブネットレベルで動作し、許可ルールと拒否ルールをサポートし、関連付けられている任意のサブネット内のすべてのインスタンスに自動的に適用される。ネットワークACLは、リターントラフィックがルールによって明示的に許可される必要があるという点で、ステートフルではない場合がある。
【0012】
無線式ネットワークは、コアネットワークインフラストラクチャを使用してよく、コアネットワークインフラストラクチャは、動的にプロビジョニングされ、複数の通信サービスプロバイダによって運営される複数の異なる無線アクセスネットワークと併せて使用される。無線式ネットワークはオンデマンドでプロビジョニングされるが、無線式ネットワークは動的にスケールアップまたはスケールダウンしたり、終了したりすることもできるため、特定の期間、またはスケジュールに従って定期的に存在し得る一時的な無線式ネットワークを作成する能力を組織に提供する。さらに、セルサイトは、オンデマンドで動的に無線式ネットワークに追加したり、無線式ネットワークから削除したりすることができる。様々なシナリオにおいて、組織は、本開示の実施形態を使用して、内部使用のみのためのプライベート無線式ネットワーク、またはサードパーティ顧客に公開された無線式ネットワークのいずれかを作成することができる。
【0013】
これまでの無線式ネットワークのデプロイは、プロセスの各ステップでの手動によるデプロイ及び構成に依存していた。これには、多大な時間と費用を必要とすることが判明した。さらに、前世代では、ソフトウェアは本質的にベンダ独自のハードウェアに縛られており、顧客が代替ソフトウェアをデプロイするのを阻んでいた。対照的に、5Gでは、ハードウェアがソフトウェアスタックから切り離されるため、柔軟性が高まり、無線式ネットワークのコンポーネントをクラウドプロバイダのインフラストラクチャ上で実行できるようになる。5Gネットワークなどの無線式ネットワークにクラウド配信モデルを使用すると、他のタイプのネットワークよりも高速、低待ち時間、及び大容量で配信しながらも、数百から数十億の接続デバイスや計算集約型アプリケーションからのネットワークトラフィックの処理を容易にすることができる。
【0014】
これまで、企業は、企業接続ソリューションを評価する際に、パフォーマンスか価格かのどちらかを選択しなければならなかった。セルラネットワークは、高パフォーマンス、優れた屋内外のカバレッジ、及び高度なサービス品質(QoS)の接続機能を提供することができるが、プライベートセルラネットワークは高価で管理が複雑になる可能性がある。イーサネット及びWi-Fiは初期投資が少なく管理が容易になるが、多くの場合、企業は、それらの信頼性が低く、最適なカバレッジを得るには多くの作業が必要であり、ビットレートや待ち時間そして信頼性の保証などのQoS機能を提供していないことに気付く。
【0015】
企業は、様々な5Gデバイスやセンサを企業全体(工場のフロア、倉庫、ロビー、及び通信センタ)にわたって自由にデプロイし、管理コンソールからこれらのデバイスの管理、ユーザの登録、及びQoSの割り当てを行うことができる。開示された技術を使用すると、顧客は、すべてのデバイス(カメラ、センサ、またはIoTデバイスなど)に一定のビットレートのスループットを割り当て、工場フロアで稼働するデバイスに信頼できる低待ち時間接続を割り当て、すべてのハンドヘルドデバイスにブロードバンド接続を割り当てることができる。開示されたサービスは、指定された制約と要件とを満たす接続性を提供するために必要なすべてのソフトウェアを管理することができる。これにより、Wi-Fiネットワーク上で従来は実行できなかった、厳格なQoS要件または高IoTデバイス密度要件を持つ全く新しいアプリケーションのセットが可能になる。さらに、開示されたサービスは、QoSのような5G機能を公開し、管理するアプリケーションデプロイアプリケーションプログラムインタフェース(API)を提供できるため、顧客が、ネットワークの詳細を理解する必要なく、ネットワークの待ち時間と帯域幅の能力を最大限に活用できるアプリケーションを構築することを可能にする。
【0016】
さらに、開示されたサービスは、クラウドプロバイダネットワーク内でローカルアプリケーションを実行するためのプライベートゾーンを提供することができる。このプライベートゾーンは、より広範なリージョナルゾーンに接続して事実上その一部になることができ、顧客は、クラウドプロバイダネットワークで使用されているものと同じAPIとツールとを使用してこのプライベートゾーンを管理することができる。アベイラビリティゾーンと同様に、プライベートゾーンには仮想プライベートネットワークサブネットが割り当てられてよい。APIを使用して、サブネットを作成し、これを、プライベートゾーンや既存の他のゾーンを含む、顧客が使用したいすべてのゾーンに割り当てることができる。管理コンソールは、プライベートゾーンを作成するための簡略化されたプロセスを提供することができる。仮想マシンのインスタンス及びコンテナは、リージョナルゾーンとまったく同様にプライベートゾーンでも起動することができる。顧客は、ルートの定義、IPアドレスの割り当て、ネットワークアドレス変換(NAT)のセットアップなどを行うようにネットワークゲートウェイを構成することができる。自動スケーリングを使用すると、プライベートゾーンでの必要に応じて仮想マシンインスタンスまたはコンテナの容量のスケール変更を行うことができる。クラウドプロバイダネットワークと同じ管理API及び認証APIをプライベートゾーン内で使用することができる。場合によっては、リージョナルゾーンで利用可能なクラウドサービスには、安全な接続を介してプライベートゾーンからリモートでアクセスできるため、ローカルデプロイをアップグレードまたは変更する必要なく、これらのクラウドサービスにアクセスすることができる。
【0017】
本開示の様々な実施形態はまた、クラウドコンピューティングモデルからの弾力性及びユーティリティコンピューティングの概念を、無線式ネットワーク及び関連するコアネットワークに取り入れることができる。例えば、開示された技術は、コア及び無線アクセスネットワーク機能、ならびに関連する制御プレーン管理機能をクラウドプロバイダインフラストラクチャ上で実行し、クラウドネイティブコアネットワーク及び/またはクラウドネイティブ無線アクセスネットワーク(RAN)を作成することができる。そのようなコア及びRANネットワーク機能は、いくつかの実施態様では、第3世代パートナーシッププロジェクト(3GPP(登録商標))仕様に基づくことができる。クラウドネイティブな無線式ネットワークを提供することにより、顧客は利用、待ち時間要件、及び/または他の要因に基づいて無線式ネットワークを動的にスケール変更することができる。また、顧客は、動的ネットワーキング及びワークロードの要件に基づいて、新しいインフラストラクチャのプロビジョニング、または既存のインフラストラクチャのプロビジョニング解除をより効果的に管理するために、無線式ネットワーク使用量及びプロビジョニングされたインフラストラクチャの超過容量使用量に関するアラートを受信するために閾値を構成する場合もある。
【0018】
当業者であれば、この開示に照らして理解するように、特定の実施形態は、以下の一部またはすべてを含む特定の利点を達成し得る。すなわち、(1)仮想プライベートクラウドネットワーク上で利用可能なリソースに無線式ネットワーク上のデバイスを接続するために、ポイントツーポイント暗号化及びエンドツーエンド暗号化の組み合わせを可能にすることによって無線式ネットワークのセキュリティを向上させる、(2)仮想プライベートクラウドネットワークを4Gネットワーク及び5Gネットワークを含む無線式ネットワークに拡張することを可能にすることによって、地理的に分散したネットワークの柔軟性を向上させる、(3)サービス品質要件を満たすために、無線式ネットワークセグメント上でネットワークスライシングを実施することによって、仮想プライベートクラウドネットワーク上のサービスの信頼性及びパフォーマンスを改善することなど。
【0019】
本開示の利点の中には、ネットワーク機能をデプロイして連鎖させて、指定された制約及び要件を満たすエンドツーエンドサービスを配信する機能がある。本開示によれば、マイクロサービスに編成されたネットワーク機能が連携してエンドツーエンド接続を提供する。あるセットのネットワーク機能は無線ネットワークの一部であり、基地局で動作し、無線信号からIPへの変換を実行する。他のネットワーク機能は、加入者関連のビジネスロジックを実行し、インターネットとの間でIPトラフィックをルーティングする大規模なデータセンタで実行される。アプリケーションが低待ち時間通信や予約帯域幅などの5Gの新機能を使用するには、これらのタイプのネットワーク機能の両方が連携して、無線スペクトルを適切にスケジュール及び予約し、リアルタイムの計算とデータ処理とを実行する必要がある。ここで開示される技術は、セルサイトからインターネットブレークアウトまで、ネットワーク全体にわたって実行されるネットワーク機能と統合されたエッジロケーションハードウェア(以下にさらに説明する)を提供し、必要なサービス品質(QoS)制約を満たすようにネットワーク機能をオーケストレートする。これにより、工場ベースのモノのインターネット(IoT)から拡張現実(AR)、仮想現実(VR)、ゲームストリーミング、コネクテッド車両の自律ナビゲーションサポートに至るまで、これまではモバイルネットワーク上で実行不可能だった、厳格なQoS要件を持つまったく新しいアプリケーションのセットが可能になる。
【0020】
説明されている「弾力的な5G」サービスは、ネットワークの構築に必要なすべてのハードウェア、ソフトウェア、及びネットワーク機能を提供しかつ管理する。いくつかの実施形態では、ネットワーク機能はクラウドサービスプロバイダによって開発され、管理され得るが、説明された制御プレーンは、顧客が単一セットのAPIを使用して、クラウドインフラストラクチャ上で選択したネットワーク機能を呼び出して管理できるように、様々なプロバイダにわたってネットワーク機能を管理することができる。弾力的な5Gサービスには、ハードウェアからネットワーク機能に至るまでエンドツーエンドの5Gネットワークの作成を自動化し、それによって、デプロイにかかる時間と、ネットワーク運用にかかる運用コストとを削減するという利点がある。ネットワーク機能を公開するAPIを提供することで、開示された弾力的な5Gサービスにより、アプリケーションは、所望のQoSを制約として指定し、その後、ネットワーク機能をデプロイして連鎖させるだけで、指定された要件を満たすエンドツーエンドのサービスを配信できるようになり、したがって新しいアプリケーションを容易に構築することが可能になる。
【0021】
本開示は、クラウドネイティブ5Gコア及び/またはクラウドネイティブ5G RAN、ならびに関連する制御プレーンコンポーネントの作成及び管理に関する実施形態について記載する。クラウドネイティブとは、動的なスケーラビリティ、分散コンピューティング、及び高可用性(地理的分散、冗長性、及びフェイルオーバを含む)などのクラウドコンピューティング配信モデルの利点を活用するアプリケーションを構築及び実行するアプローチを指す。クラウドネイティブとは、これらのアプリケーションがパブリッククラウドでのデプロイに適したものとなるように作成され、デプロイされる方法を指す。クラウドネイティブアプリケーションは、パブリッククラウドで実行することもできる(実行されることが多い)が、オンプレミスのデータセンタで実行することもできる。一部のクラウドネイティブアプリケーションはコンテナ化することができ、例えば、アプリケーションの異なる部分、機能、またはサブユニットを独自のコンテナにパッケージ化し、これを各部分がリソースの利用を最適化するようにアクティブにスケジュールされ管理されるように、動的にオーケストレートすることができる。これらのコンテナ化されたアプリケーションは、アプリケーションの全体的なアジリティと保守性とを向上させるために、マイクロサービスアーキテクチャを使用して構築することができる。
【0022】
マイクロサービスアーキテクチャでは、アプリケーションは、互いに独立してデプロイ及びスケール変更でき、ネットワーク経由で相互に通信できる、より小さなサブユニット(「マイクロサービス」)の集合として配置される。これらのマイクロサービスは、特定の技術的及び機能的な粒度を持ち、多くの場合、軽量の通信プロトコルを実装しているという点で、通常、粒度が細かい。アプリケーションのマイクロサービスは、互いに異なる機能を実行することができ、独立してデプロイ可能であってよく、互いに異なるプログラミング言語、データベース、及びハードウェア/ソフトウェア環境を使用する場合がある。アプリケーションをより小さなサービスに分解すると、アプリケーションのモジュール性が有益に向上し、必要に応じて個々のマイクロサービスを置き換えることが可能になり、チームが互いに独立してそのマイクロサービスの開発、デプロイ、及び保守することができるようになることで開発が並列化される。マイクロサービスは、いくつかの例では、仮想マシン、コンテナ、またはサーバレス機能を使用してデプロイされる場合がある。開示されたコア及びRANソフトウェアは、記載された無線式ネットワークが、オンデマンドでデプロイされスケール変更できる独立したサブユニットで構成されるように、マイクロサービスアーキテクチャに従い得る。
【0023】
ここで、
図1を参照すると、本開示の様々な実施形態に従って、デプロイされ、管理される通信ネットワーク100の例が示されている。通信ネットワーク100は、高速パケットアクセス(HSPA)ネットワーク、第4世代(4G)ロングタームエボリューション(LTE)ネットワーク、第5世代(5G)ネットワーク、第6世代(6G)ネットワーク、4G及び5G RANの両方を備えた4G-5Gハイブリッドコア、またはワイヤレスネットワークアクセスを提供する他のネットワークなどのセルラネットワークに対応し得る無線式ネットワーク(RBN)103を含む。無線式ネットワーク103は、企業、非営利団体、学校組織、政府機関、または他の組織のためにクラウドサービスプロバイダによって運営されてよい。無線式ネットワーク103は、様々な実施形態においてプライベートネットワークアドレスまたはパブリックネットワークアドレスを使用することができる。
【0024】
無線式ネットワーク103の様々なデプロイは、コアネットワーク及びRANネットワークのうちの1つまたは複数、ならびにクラウドプロバイダインフラストラクチャ上でコアネットワーク及び/またはRANネットワークを実行するための制御プレーンを含み得る。上記のように、これらのコンポーネントは、トラフィックとトランザクションとを効率的にスケール変更するために集中制御と分散処理とが使用されるように、例えばマイクロサービスアーキテクチャを使用して、クラウドネイティブ方式で開発することができる。これらのコンポーネントは、制御プレーンとユーザプレーンとの処理が分離されたアプリケーションアーキテクチャ(CUPSアーキテクチャ)に従うことにより、3GPP(登録商標)仕様に基づくことができる。
【0025】
無線式ネットワーク103は、モバイルデバイスまたは固定ロケーションデバイスであり得る複数のワイヤレスデバイス106にワイヤレスネットワークアクセスを提供する。様々な例において、ワイヤレスデバイス106は、スマートフォン、コネクテッド車両、IoTデバイス、センサ、(製造施設などの)機械、ホットスポットなどのデバイスを含み得る。ワイヤレスデバイス106は、ユーザ機器(UE)または加入者宅内機器(CPE)と呼ばれることもある。
【0026】
この例では、クラウドプロバイダネットワークの2つの仮想プライベートクラウドネットワーク107a及び107bが、無線式ネットワーク103内に拡張され、クライアントデバイスとしてのワイヤレスデバイス106を包含するように示されている。仮想プライベートクラウドネットワーク107aは、4つのワイヤレスデバイス106を含むものとして示され、一方、仮想プライベートクラウドネットワーク107bは、2つのワイヤレスデバイス106を含むものとして示されている。これは、単一の無線式ネットワーク103が複数の異なる仮想プライベートクラウドネットワーク107へのアクセスを提供し、場合によってはセルごとに有効化できることを示している。個々の仮想プライベートクラウドネットワーク107には、1つまたは複数のサービス品質要件を満たすように構成されたワイヤレスデバイス106によって使用される1つまたは複数のネットワークスライスが割り当てられてよい。
【0027】
特定の仮想プライベートクラウドネットワーク107内でグループ化されたワイヤレスデバイス106は、無線式ネットワーク103内の異なるセルまたはポイントに物理的に接続されている場合でも、あたかも単一のネットワークセグメント上にあるかのように相互に通信することができる。さらに、特定の仮想プライベートクラウドネットワーク107内のワイヤレスデバイス106は、あたかもローカルネットワーク上にあるかのように、仮想プライベートクラウドネットワーク107上でホストされるサービス及び他のリソースと通信することができる。このようなリソースは、無線式ネットワーク103内(例えば、セルサイト、中間サイト、または中央ロケーション)またはクラウドプロバイダネットワークのリージョナルデータセンタ内に位置し得る。
【0028】
無線式ネットワーク103は、複数のセル109を通じて複数のワイヤレスデバイス106にワイヤレスネットワークアクセスを提供する1つまたは複数の無線アクセスネットワーク(RAN)上にプロビジョニングされた容量を含み得る。RANは、異なる通信サービスプロバイダによって運営されてよい。セル109のそれぞれには、ワイヤレスデバイス106との間でワイヤレスデータ信号を送受信する1つまたは複数のアンテナならびに1つまたは複数の無線ユニットが備えられてよい。アンテナは1つまたは複数の周波数帯域用に構成されてよく、無線ユニットもまた周波数アジャイルまたは周波数調整可能であってよい。信号を特定の方向または方位角範囲に集中させるために、アンテナには特定のゲインまたはビーム幅と関連付けられてよく、これにより、異なる方向での周波数の再利用が可能になり得る。さらに、アンテナは、水平偏波、垂直偏波、または円偏波であってもよい。いくつかの例では、無線ユニットは、多入力多出力(MIMO)技術を利用して信号を送信及び受信することができる。したがって、RANは、ワイヤレスデバイス106との無線接続を可能にする無線アクセス技術を実装し、無線式ネットワークのコアネットワークとの接続を提供する。RANのコンポーネントは、所与の物理エリアをカバーする基地局及びアンテナだけでなく、RANへの接続を管理するための必要なコアネットワークアイテムを含み得る。
【0029】
データトラフィックは、多くの場合、層3ルータの複数のホップ(例えば、アグリゲーションサイトなど)で構成されるファイバトランスポートネットワークを介してコアネットワークにルーティングされる。コアネットワークは通常、1つまたは複数のデータセンタに収容される。通常、コアネットワークは、エンドデバイスからのデータトラフィックを集約し、加入者及びデバイスを認証し、パーソナライズされたポリシーを適用し、デバイスのモビリティを管理してから、トラフィックをオペレータサービスまたはインターネットにルーティングする。例えば、5Gコアは、制御プレーンとユーザプレーンとを分離して、いくつかのマイクロサービス要素に分解することができる。5Gコアは、物理的なネットワーク要素ではなく、(例えばマイクロサービスとしてデプロイされた)仮想化されたソフトウェアベースのネットワーク機能を含み得るため、マルチアクセスエッジコンピューティング(MEC)クラウドインフラストラクチャ内でインスタンス化することができる。コアネットワークのネットワーク機能は、ユーザプレーン機能(UPF)、アクセス及びモビリティ管理機能(AMF)、ならびにセッション管理機能(SMF)を含み得るが、これらについては以下でさらに詳しく説明する。通信ネットワーク100の外部のロケーションを宛先とするデータトラフィックの場合、ネットワーク機能は通常、ファイアウォールを備え、ファイアウォールを通して、トラフィックは、インターネットもしくはクラウドプロバイダネットワークなどの外部ネットワークへの通信ネットワーク100に出入りすることができる。いくつかの実施形態では、通信ネットワーク100は、コアネットワークからさらに下流のサイト(例えば、アグリゲーションサイトまたは無線式ネットワーク103)にトラフィックが出入りできるようにする設備を含み得ることに留意されたい。
【0030】
UPFは、モバイルインフラストラクチャとデータネットワーク(DN)との間の相互接続ポイント、つまり、ユーザプレーンの汎用パケット無線サービス(GPRS)トンネリングプロトコル(GTP-U)のカプセル化及びデカプセル化を提供する。UPFは、1つまたは複数のエンドマーカパケットをRAN基地局に送信するなど、RAN内でモビリティを提供するためのセッションアンカポイントを提供することもできる。UPFは、トラフィック一致フィルタに基づいてフローを特定のデータネットワークに誘導するなど、パケットのルーティング及び転送を処理することもできる。UPFのもう1つの機能には、アップリンク(UL)及びダウンリンク(DL)のトランスポートレベルのパケットマーキングやレート制限など、フローごとまたはアプリケーションごとのQoS処理が含まれる。UPFは、最新のマイクロサービス手法を使用してクラウドネイティブネットワーク機能として実装することができ、例えば、(マネージドサービスを介してコードが実行される基盤となるインフラストラクチャを抽象化する)サーバレスフレームワーク内にデプロイ可能である。
【0031】
AMFは、ワイヤレスデバイス106またはRANから接続及びセッション情報を受信することができ、接続及びモビリティ管理タスクを処理することができる。例えば、AMFは、RAN内の基地局間のハンドオーバを管理することができる。いくつかの例では、AMFは、特定のRAN制御プレーン及びワイヤレスデバイス106のトラフィックを終了させることにより、5Gコアへのアクセスポイントとみなすことができる。AMFは、暗号化及び完全性保護アルゴリズムを実装することができる。
【0032】
SMFは、例えば、プロトコルデータユニット(PDU)セッションの作成、更新、及び削除を行い、UPF内のセッションコンテキストを管理することにより、セッションの確立または変更を処理することができる。SMFは、動的ホスト構成プロトコル(DHCP)及びIPアドレス管理(IPAM)を実装することもできる。SMFは、最新のマイクロサービス手法を使用してクラウドネイティブネットワーク機能として実装することができる。
【0033】
無線式ネットワーク103を実装するための様々なネットワーク機能は、ネットワーク機能を実行するように構成された汎用コンピューティングデバイスに対応し得る分散コンピューティングデバイス112にデプロイされてよい。例えば、分散コンピューティングデバイス112は、ネットワーク機能を実施する1つまたは複数のサービスを実行するように順番に構成される1つまたは複数の仮想マシンインスタンスを実行することができる。一実施形態では、分散コンピューティングデバイス112は、各セルサイトにデプロイされる耐久性の高いマシンである。
【0034】
対照的に、1つまたは複数の集中コンピューティングデバイス115は、顧客が運営する中央サイトで様々なネットワーク機能を実行し得る。例えば、集中コンピューティングデバイス115は、顧客構内の空調されたサーバルームに集約的に配置されてよい。集中コンピューティングデバイス115は、ネットワーク機能を実施する1つまたは複数のサービスを実行するように順番に構成される1つまたは複数の仮想マシンインスタンスを実行することができる。
【0035】
1つまたは複数の実施形態では、無線式ネットワーク103からのネットワークトラフィックは、顧客のサイトからリモートに位置する1つまたは複数のデータセンタに配置され得る1つまたは複数のコアコンピューティングデバイス118にバックホールされる。コアコンピューティングデバイス118はまた、インターネット及び/または他の外部のパブリックもしくはプライベートネットワークに対応し得るネットワーク121への、及びネットワーク121からのネットワークトラフィックのルーティングを含む、様々なネットワーク機能を実行し得る。コアコンピューティングデバイス118は、通信ネットワーク100の管理に関連する機能(例えば、請求、モビリティ管理など)と、通信ネットワーク100と他のネットワークとの間のトラフィックを中継するためのトランスポート機能とを実行し得る。
【0036】
図2Aは、いくつかの実施形態による、クラウドプロバイダネットワーク203を含み、さらに、
図1の通信ネットワーク100内のオンプレミス顧客デプロイと組み合わせて使用され得るクラウドプロバイダネットワーク203の様々なプロバイダサブストレートエクステンションを含むネットワーク環境200の例を示す。クラウドプロバイダネットワーク203(単に「クラウド」と呼ばれることもある)は、ネットワークアクセス可能なコンピューティングリソース(計算、ストレージ、及びネットワーキングリソース、アプリケーション、ならびにサービスなど)のプールを指し、これらは仮想化されてもよく、ベアメタルであってもよい。クラウドは、顧客のコマンドに応答して、プログラムでプロビジョニング及びリリースされ得る構成可能なコンピューティングリソースの共有プールへの便利なオンデマンドネットワークアクセスを提供することができる。これらのリソースは、変動する負荷に合わせて調整されるように、動的にプロビジョニングし、再構成することができる。したがって、クラウドコンピューティングは、公的にアクセス可能なネットワーク(インターネット、セルラ通信ネットワークなど)を介してサービスとして配信されるアプリケーションと、それらのサービスを提供するクラウドプロバイダのデータセンタ内のハードウェア及びソフトウェアの両方と見なすことができる。
【0037】
クラウドプロバイダネットワーク203は、ネットワークを介してオンデマンドでスケーラブルなコンピューティングプラットフォームをユーザに提供することができ、例えば、(中央処理装置(CPU)及びグラフィックス処理装置(GPU)の一方または両方を使用することによって、任意選択でローカルストレージを用いて、計算インスタンスを提供する)計算サーバ及び(指定された計算インスタンスに仮想化された永続的なブロックストレージを提供する)ブロックストアサーバを使用して、ユーザがスケーラブルな「仮想コンピューティングデバイス」を自由に持つことができるようにする。これらの仮想コンピューティングデバイスは、ハードウェア(様々なタイプのプロセッサ、ローカルメモリ、ランダムアクセスメモリ(RAM)、ハードディスク、及び/またはソリッドステートドライブ(SSD)ストレージ)、選ばれたオペレーティングシステム、ネットワーク機能、及びプリロードされたアプリケーションソフトウェアを含むパーソナルコンピューティングデバイスの属性を有する。各仮想コンピューティングデバイスはまた、そのコンソール入出力(例えば、キーボード、ディスプレイ、及びマウス)を仮想化してよい。この仮想化により、ユーザは、自身の仮想コンピューティングデバイスをパーソナルコンピューティングデバイスであるかのように構成及び使用するために、ブラウザ、API、ソフトウェア開発キット(SDK)などのコンピュータアプリケーションを使用して自身の仮想コンピューティングデバイスに接続する。ユーザが利用可能な固定量のハードウェアリソースを所有するパーソナルコンピューティングデバイスとは異なり、仮想コンピューティングデバイスに関連付けられたハードウェアは、ユーザが必要とするリソースに応じてスケールアップまたはスケールダウンすることができる。
【0038】
前述のとおり、ユーザは、中間ネットワーク(複数可)212経由で、様々なインタフェース206(例えば、API)を使用して、仮想化コンピューティングデバイス及び他のクラウドプロバイダネットワーク203のリソース及びサービスに接続し、5Gネットワークなどの電気通信ネットワークを構成して管理することができる。APIは、クライアントが事前定義されたフォーマットで要求を行った場合に、クライアントが特定のフォーマットで応答を受信する、または定義されたアクションを開始させる必要があるように、クライアントデバイス215とサーバとの間のインタフェース206及び/または通信プロトコルを参照する。クラウドプロバイダネットワークの文脈では、APIは、顧客がクラウドプロバイダネットワーク203からデータを取得したり、クラウドプロバイダネットワーク203内でアクションを実行したりできるようにすることで、顧客がクラウドインフラストラクチャにアクセスするためのゲートウェイを提供し、クラウドプロバイダネットワーク203でホストされているリソースやサービスと対話するアプリケーションの開発を可能にする。APIは、クラウドプロバイダネットワーク203の異なるサービス同士が相互にデータを交換可能にすることもできる。ユーザは自身の仮想コンピューティングシステムをデプロイして、自身で使用するための、及び/または自身の顧客もしくはクライアントが使用するための、ネットワークベースのサービスを提供することを選ぶことができる。
【0039】
クラウドプロバイダネットワーク203は、サブストレートと呼ばれる物理ネットワーク(例えば、シートメタルボックス、ケーブル、ラックハードウェア)を含み得る。サブストレートは、プロバイダネットワークのサービスを実行する物理ハードウェアを含むネットワークファブリックと見なすことができる。サブストレートは、クラウドプロバイダネットワーク203の残りの部分から隔離されてよい。例えば、サブストレートネットワークアドレスから、クラウドプロバイダのサービスを実行するプロダクションネットワーク内のアドレス、または顧客リソースをホストする顧客ネットワークにルーティングすることが可能でない場合がある。
【0040】
クラウドプロバイダネットワーク203は、サブストレート上で実行される仮想化コンピューティングリソースのオーバーレイネットワークも含み得る。少なくともいくつかの実施形態では、ネットワークサブストレート上のハイパーバイザまたは他のデバイスもしくはプロセスは、カプセル化プロトコル技術を使用してネットワークパケット(例えば、クライアントIPパケット)をカプセル化し、プロバイダネットワーク内の異なるホスト上のクライアントリソースインスタンス間でネットワークサブストレート上でネットワークパケット(例えば、クライアントIPパケット)をルーティングすることができる。カプセル化プロトコル技術は、カプセル化されたパケット(ネットワークサブストレートパケットとも呼ばれる)を、オーバーレイネットワークパスまたはルートを介してネットワークサブストレート上のエンドポイント間でルーティングするように、ネットワークサブストレート上で使用されてよい。カプセル化プロトコル技術は、ネットワークサブストレート上にオーバーレイされた仮想ネットワークトポロジを提供するものと見なされてよい。そのため、ネットワークパケットは、オーバーレイネットワーク内の構成(例えば、仮想プライベートクラウド(VPC)と呼ばれ得る仮想ネットワーク、セキュリティグループと呼ばれ得るポート/プロトコルファイアウォール構成)に従って、サブストレートネットワークに沿ってルーティングすることができる。マッピングサービス(図示せず)は、これらのネットワークパケットのルーティングを連係させることができる。マッピングサービスは、オーバーレイインターネットプロトコル(IP)とネットワーク識別子との組み合わせをサブストレートIPにマッピングするリージョナル分散ルックアップサービスであってよく、分散サブストレートコンピューティングデバイスがパケットの送信先を検索できるようにする。
【0041】
説明すると、各物理ホストデバイス(例えば、計算サーバ、ブロックストアサーバ、オブジェクトストアサーバ、制御サーバ)は、サブストレートネットワーク内にIPアドレスを有することができる。ハードウェア仮想化技術によって、複数のオペレーティングシステムをホストコンピュータ上で、例えば、計算サーバ上の仮想マシン(VM)として、同時に実行することが可能になり得る。ホスト上のハイパーバイザ、または仮想マシンモニタ(VMM)は、ホスト上の様々なVMにホストのハードウェアリソースを割り振り、VMの実行を監視する。各VMには、オーバーレイネットワーク内の1つまたは複数のIPアドレスが与えられてよく、ホスト上のVMMは、ホスト上のVMのIPアドレスを認識している場合がある。VMM(及び/またはネットワークサブストレート上の他のデバイスもしくはプロセス)は、カプセル化プロトコル技術を使用してネットワークパケット(例えば、クライアントIPパケット)をカプセル化し、クラウドプロバイダネットワーク203内の異なるホスト上の仮想化リソース間でネットワークサブストレート上でネットワークパケット(例えば、クライアントIPパケット)をルーティングすることができる。カプセル化プロトコル技術は、カプセル化されたパケットを、オーバーレイネットワークパスまたはルートを介してネットワークサブストレート上のエンドポイント間でルーティングするように、ネットワークサブストレート上で使用されてよい。カプセル化プロトコル技術は、ネットワークサブストレート上にオーバーレイされた仮想ネットワークトポロジを提供するものと見なされてよい。カプセル化プロトコル技術は、IPオーバーレイアドレス(例えば、顧客に見えるIPアドレス)をサブストレートIPアドレス(顧客に見えないIPアドレス)にマッピングするマッピングディレクトリを維持するマッピングサービスを含み得る。このマッピングディレクトリには、エンドポイント間でパケットをルーティングするためにクラウドプロバイダネットワーク203上の様々なプロセスがアクセスすることができる。
【0042】
説明したように、クラウドプロバイダネットワークサブストレートのトラフィック及び動作は、様々な実施形態において、論理制御プレーン218上で実行される制御プレーントラフィック、及び論理データプレーン221上で実行されるデータプレーンオペレーションという2つのカテゴリに大まかに細分され得る。データプレーン221は、分散コンピューティングシステムを介したユーザデータの移動を表し、制御プレーン218は、分散コンピューティングシステムを介した制御信号の移動を表す。制御プレーン218は、一般に、1つまたは複数の制御サーバに分散され、1つまたは複数の制御サーバによって実装される1つまたは複数の制御プレーンコンポーネントまたはサービスを含む。制御プレーントラフィックは一般に、様々な顧客向けに分離された仮想ネットワークの確立、リソースの使用量や健全性の監視、要求された計算インスタンスが起動される特定のホストまたはサーバの識別、必要に応じた追加ハードウェアのプロビジョニングなどの管理動作を含む。データプレーン221は、クラウドプロバイダネットワーク203上に実装される顧客リソース(例えば、計算インスタンス、コンテナ、ブロックストレージボリューム、データベース、ファイルストレージ)を含む。データプレーントラフィックは、一般に、顧客リソースとの間のデータ転送などの非管理動作を含む。
【0043】
制御プレーンコンポーネントは、通常、データプレーンサーバとは別個のサーバのセットに実装され、制御プレーントラフィックとデータプレーントラフィックとは別個の/異なるネットワーク経由で送信されてよい。いくつかの実施形態では、制御プレーントラフィックとデータプレーントラフィックとは、異なるプロトコルによってサポートされてよい。いくつかの実施形態では、クラウドプロバイダネットワーク203を介して送信されるメッセージ(例えば、パケット)は、トラフィックが制御プレーントラフィックであるかデータプレーントラフィックであるかを示すフラグを含む。いくつかの実施形態では、トラフィックのペイロードを検査して、そのタイプ(例えば、制御プレーンかデータプレーンか)を判断することができる。トラフィックタイプを区別するための他の技術も可能である。
【0044】
説明するように、データプレーン221は、1つまたは複数の計算サーバを含むことができ、計算サーバは、ベアメタル(例えば、単一テナント)であってもよく、または1または複数の顧客向けに複数のVM(「インスタンス」と呼ばれることもある)もしくはマイクロVMを実行するために、ハイパーバイザによって仮想化されてもよい。これらの計算サーバは、クラウドプロバイダネットワーク203の仮想化コンピューティングサービス(または「ハードウェア仮想化サービス」)をサポートすることができる。仮想化コンピューティングサービスは、制御プレーン218の一部であってよく、顧客がインタフェース206(例えば、API)を介してコマンドを発行して、アプリケーションのための計算インスタンス(例えば、VM、コンテナ)を起動し、管理することを可能にする。仮想化コンピューティングサービスは、様々な計算リソース及び/またはメモリリソースを備えた仮想計算インスタンスを提供し得る。一実施形態では、仮想計算インスタンスのそれぞれは、いくつかのインスタンスタイプのうちの1つに対応してよい。インスタンスタイプは、そのハードウェアタイプ、計算リソース(例えば、CPUまたはCPUコアの数、タイプ、及び構成)、メモリリソース(例えば、ローカルメモリの容量、タイプ、及び構成)、ストレージリソース(例えば、ローカルにアクセス可能なストレージの容量、タイプ、及び構成)、ネットワークリソース(例えば、そのネットワークインタフェースの特性及び/またはネットワーク能力)、及び/または他の適切な記述的特性によって特徴付けられてよい。インスタンスタイプ選択機能を使用して、例えば、顧客からの入力に(少なくとも部分的に)基づいて、顧客に合わせてインスタンスタイプを選択してよい。例えば、顧客は、事前定義されたインスタンスタイプのセットからインスタンスタイプを選択してよい。別の例として、顧客は、インスタンスタイプの所望のリソース及び/またはインスタンスが実行するワークロードの要件を指定することがあり、インスタンスタイプ選択機能が、そのような仕様に基づいてインスタンスタイプを選択してよい。
【0045】
データプレーン221はまた、1つまたは複数のブロックストアサーバを備えることができ、ブロックストアサーバは、顧客データボリュームを記憶するための永続ストレージ、及びこれらのボリュームを管理するためのソフトウェアを含み得る。これらのブロックストアサーバは、クラウドプロバイダネットワーク203のマネージドブロックストレージサービスをサポートすることができる。マネージドブロックストレージサービスは、制御プレーン218の一部であってよく、顧客がインタフェース206(例えば、API)を介してコマンドを発行して、計算インスタンス上で実行されるアプリケーションのボリュームを作成し、管理することを可能にする。ブロックストアサーバは、データがブロックとして記憶される1つまたは複数のサーバを含む。ブロックはバイトまたはビットのシーケンスであり、通常はブロックサイズの最大長を有する整数個の記録を含む。ブロック化されたデータは通常、データバッファに記憶され、一度にブロック全体が読み書きされる。一般に、ボリュームは、ユーザに代わって維持されるデータのセットなどの、論理的なデータの集合体に対応し得る。例えば1GBから1テラバイト(TB)以上のサイズの範囲の個々のハードドライブとして扱うことができるユーザボリュームは、ブロックストアサーバに記憶された1つまたは複数のブロックで構成される。個々のハードドライブとして扱われるが、ボリュームは、1つまたは複数の基盤となる物理ホストデバイス上に実装された1つまたは複数の仮想化デバイスとして記憶され得ることは理解されよう。ボリュームは、少ない回数(例えば、最大16回)パーティション分割されてよく、各パーティションが異なるホストによってホストされる。ボリュームのデータは、ボリュームの複数のレプリカを提供するために、クラウドプロバイダネットワーク203内の複数のデバイス間で複製されてよい(そのようなレプリカは、コンピューティングシステム上のボリュームを集合的に表し得る)。分散コンピューティングシステムにおけるボリュームのレプリカは、有益なことに、例えば、ユーザがボリュームの一次レプリカ、またはブロックレベルで一次レプリカと同期されたボリュームの二次レプリカのいずれかにアクセスできるようにして、一次または二次レプリカのいずれかの障害によって、ボリュームの情報へのアクセスが妨げられないようにすることで、自動的なフェイルオーバ及びリカバリを提供することができる。一次レプリカの役割は、ボリュームでの読み取りと書き込み(「入出力操作」または単に「I/O操作」と呼ばれることもある)を容易にし、書き込みを二次レプリカに(非同期複製も使用できるが、好ましくはI/Oパスで同期的に)伝達することである。二次レプリカは、一次レプリカと同期して更新され、フェイルオーバ動作中にシームレスな移行を提供することができ、これにより、二次レプリカが一次レプリカの役割を引き継ぎ、以前の一次レプリカが二次レプリカとして指定されるか、または新しい代替二次レプリカがプロビジョニングされる。本明細書の特定の例では、一次レプリカと二次レプリカとについて説明するが、当然ながら、論理ボリュームは複数の二次レプリカを含み得る。計算インスタンスは、クライアント経由でボリュームへのそのI/Oを仮想化することができる。クライアントは、計算インスタンスがリモートデータボリューム(例えば、ネットワーク経由でアクセスされる物理的に別個のコンピューティングデバイスに記憶されているデータボリューム)に接続し、I/O操作を実行できるようにする命令を表す。クライアントは、計算インスタンスの処理装置(例えば、CPUまたはGPU)を含むサーバのオフロードカード上に実装されてよい。
【0046】
データプレーン221はまた、クラウドプロバイダネットワーク203内の別のタイプのストレージを表す、1つまたは複数のオブジェクトストアサーバを備えることができる。オブジェクトストレージサーバは、バケットと呼ばれるリソース内にオブジェクトとしてデータが記憶される1つまたは複数のサーバを含み、クラウドプロバイダネットワーク203のマネージドオブジェクトストレージサービスをサポートするために使用することができる。各オブジェクトは通常、記憶されているデータと、記憶されたオブジェクトの分析に関するオブジェクトストレージサーバの様々な機能を可能にする可変量のメタデータと、オブジェクトを取り出すために使用できるグローバルに一意の識別子もしくはキーとを含む。各バケットは、所与のユーザアカウントに関連付けられる。顧客は自身のバケット内に所望の数のオブジェクトを記憶することができ、自身のバケット内にオブジェクトの書き込み、読み出し、及び削除を行うことができ、自身のバケット及びその中に含まれているオブジェクトへのアクセスを制御することができる。さらに、いくつかの異なるオブジェクトストレージサーバが上述のリージョンのうちの異なるリージョンに分散された実施形態では、ユーザは、例えば待ち時間を最適化するために、バケットが記憶されるリージョン(複数可)を選ぶことができる。顧客は、バケットを使用して、VMの起動に使用できるマシンイメージや、ボリュームのデータの特定時点のビューを表すスナップショットなど、様々なタイプのオブジェクトを記憶することができる。
【0047】
プロバイダサブストレートエクステンション224(「PSE」)は、電気通信ネットワークなどの別個のネットワーク内でクラウドプロバイダネットワーク203のリソース及びサービスを提供し、それによってクラウドプロバイダネットワーク203の機能を新しいロケーションに拡張する(例えば、顧客デバイスとの通信の待ち時間、法的遵守、セキュリティなどに関連する理由のため)。いくつかの実施態様では、PSE224は、電気通信ネットワーク内で実行するクラウドベースのワークロードに容量を提供するように構成することができる。いくつかの実施態様では、PSE224は、電気通信ネットワークのコア及び/またはRAN機能を提供するように構成することができ、追加のハードウェア(例えば、無線アクセスハードウェア)を用いて構成されてよい。いくつかの実施態様は、例えば、コア及び/またはRAN機能によって未使用の容量をクラウドベースのワークロードの実行に使用できるようにすることにより、両方を可能にするように構成されてよい。
【0048】
示されているように、そのようなプロバイダサブストレートエクステンション224は、他の可能なタイプのサブストレートエクステンションの中でもとりわけ、クラウドプロバイダネットワークマネージドプロバイダサブストレートエクステンション227(例えば、クラウドプロバイダネットワーク203に関連するものとは別のクラウドプロバイダ管理の施設内に位置するサーバによって形成される)、通信サービスプロバイダサブストレートエクステンション230(例えば、通信サービスプロバイダ施設に関連付けられたサーバによって形成される)、顧客マネージドプロバイダサブストレートエクステンション233(例えば、顧客またはパートナー施設のオンプレミスに位置するサーバによって形成される)を含み得る。
【0049】
例示的なプロバイダサブストレートエクステンション224に示すように、プロバイダサブストレートエクステンション224は、同様に、クラウドプロバイダネットワーク203の制御プレーン218とデータプレーン221とをそれぞれ拡張する、制御プレーン236とデータプレーン239との間の論理的分離を含み得る。プロバイダサブストレートエクステンション224は、様々なタイプのコンピューティング関連リソースをサポートするために、ソフトウェア及び/またはファームウェア要素とハードウェアとの適切な組み合わせを用いて、そうするためにクラウドプロバイダネットワーク203を使用する経験を反映するように、例えばクラウドプロバイダネットワークオペレータによって事前に構成されてよい。例えば、1つまたは複数のプロバイダサブストレートエクステンションロケーションサーバが、プロバイダサブストレートエクステンション224内にデプロイするためにクラウドプロバイダによってプロビジョニングされてよい。上記のように、クラウドプロバイダネットワーク203は、事前定義されたインスタンスタイプのセットを提供してよく、それぞれが基盤となる様々なタイプ及び量のハードウェアリソースを有する。各インスタンスタイプは、様々なサイズで提供される場合もある。顧客がリージョン内で使用しているのと同じインスタンスのタイプ及びサイズをプロバイダサブストレートエクステンション224で使用し続けることができるように、サーバは異種サーバであってよい。異種サーバは、同じタイプの複数のインスタンスサイズを同時にサポートすることができ、その基盤となるハードウェアリソースによってサポートされているいかなるインスタンスタイプもホストするように再構成することもできる。異種サーバの再構成は、サーバの利用可能な容量を使用してオンザフライで実行することができる、つまり、他のVMがまだ実行中であり、プロバイダサブストレートエクステンションロケーションサーバの他の容量を消費している間に、実行することができる。これにより、サーバ上で実行中のインスタンスをより適切にパッキング可能にすることによって、エッジロケーション内のコンピューティングリソースの利用を改善することができ、また、クラウドプロバイダネットワーク203及びクラウドプロバイダネットワークマネージドプロバイダサブストレートエクステンション227にわたるインスタンスの使用に関するシームレスな体験を提供することもできる。
【0050】
プロバイダサブストレートエクステンションサーバは、1つまたは複数の計算インスタンスをホストすることができる。計算インスタンスは、コードとその依存関係のすべてとをパッケージ化するVMまたはコンテナであってよく、アプリケーションがコンピューティング環境(例えば、VM及びマイクロVMを含む)全体で迅速かつ確実に実行できるようにする。さらに、顧客の希望に応じて、サーバは1つまたは複数のデータボリュームをホストしてよい。クラウドプロバイダネットワーク203のリージョンでは、そのようなボリュームは専用のブロックストアサーバ上でホストされてよい。しかしながら、プロバイダサブストレートエクステンション224の容量がリージョン内よりも著しく小さい可能性があるため、プロバイダサブストレートエクステンション224がそのような専用ブロックストアサーバを含む場合、最適な利用体験が提供されない可能性がある。したがって、ブロックストレージサービスは、VMの1つがブロックストアソフトウェアを実行してボリュームのデータを記憶するように、プロバイダサブストレートエクステンション224内で仮想化されてよい。クラウドプロバイダネットワーク203のリージョンにおけるブロックストレージサービスの動作と同様に、プロバイダサブストレートエクステンション224内のボリュームは、耐久性及び可用性のために複製されてよい。ボリュームは、プロバイダサブストレートエクステンション224内の独自の分離された仮想ネットワーク内でプロビジョニングされてよい。計算インスタンス及び任意のボリュームは、プロバイダサブストレートエクステンション224内のプロバイダネットワークデータプレーン221のデータプレーンエクステンション239を集合的に構成する。
【0051】
プロバイダサブストレートエクステンション224内のサーバは、いくつかの実施態様では、特定のローカル制御プレーンコンポーネント、例えば、クラウドプロバイダネットワーク203に戻る接続が切断された場合にプロバイダサブストレートエクステンション224が機能し続けることを可能にするコンポーネントをホストしてよい。これらのコンポーネントの例には、可用性を維持するために必要に応じてプロバイダサブストレートエクステンションサーバ間で計算インスタンスを移動できるマイグレーションマネージャや、ボリュームレプリカのロケーションを示すキー値データストアが含まれる。しかしながら、一般に、プロバイダサブストレートエクステンション224の制御プレーン236の機能は、顧客がプロバイダサブストレートエクステンション224のリソース容量をできるだけ多く使用できるようにするために、クラウドプロバイダネットワーク203にとどまる。
【0052】
マイグレーションマネージャは、PSEサーバ(及びクラウドプロバイダのデータセンタのサーバ)上で実行されるローカルコントローラだけでなく、リージョン内で実行される集中連係コンポーネントを有し得る。集中連係コンポーネントは、マイグレーションがトリガされたときにターゲットエッジロケーション及び/またはターゲットホストを識別することができ、ローカルコントローラはソースホストとターゲットホストとの間のデータ転送を連係させることができる。異なるロケーションにあるホスト間での説明したリソースの移動は、いくつかのマイグレーション形式のうちの1つを取り得る。マイグレーションとは、クラウドコンピューティングネットワーク内のホスト間で、またはクラウドコンピューティングネットワーク外のホストとクラウド内のホストとの間で、仮想マシンインスタンス(及び/または他のリソース)を移動することを指す。ライブマイグレーションやリブートマイグレーションなど、様々な種類のマイグレーションがある。リブートマイグレーション中、顧客は仮想マシンインスタンスの電源停止と効果的な電源入れ直しとを経験する。例えば、制御プレーンサービスは、元のホスト上の現在のドメインを破棄し、その後、新しいホスト上に仮想マシンインスタンス用の新しいドメインを作成することを含むリブートマイグレーションワークフローを連係させることができる。インスタンスは、元のホストでシャットダウンされ、新しいホストで再度起動させることによって、リブートされる。
【0053】
ライブマイグレーションとは、仮想マシンの可用性を大幅に損なうことなく(例えば、仮想マシンのダウンタイムがエンドユーザに気付かれないように)実行中の仮想マシンまたはアプリケーションを異なる物理マシン間で移動するプロセスを指す。制御プレーンが、ライブマイグレーションワークフローを実行するとき、インスタンスに関連付けられた新しい「非アクティブ」ドメインを作成することができるが、インスタンスの元のドメインは引き続き「アクティブ」ドメインとして実行される。仮想マシンのメモリ(実行中のアプリケーションの任意のメモリ内状態を含む)、ストレージ、及びネットワーク接続性は、アクティブなドメインを持つ元のホストから非アクティブなドメインを持つ宛先ホストに転送される。仮想マシンは、メモリコンテンツを宛先ホストに転送している間、状態の変化を防ぐために、短く一時停止されてよい。制御プレーンは、非アクティブドメインをアクティブドメインに移行させ、元のアクティブドメインを降格させて非アクティブドメインにすることができ(「フリップ」とも呼ばれる)、その後、非アクティブドメインを破棄することができる。
【0054】
様々なタイプのマイグレーション技術には、クリティカルフェーズ(顧客が仮想マシンインスタンスを利用できない時間)の管理が含まれており、このフェーズはできるだけ短くする必要がある。現在開示されているマイグレーション技術では、1つまたは複数の中間ネットワーク212を介して接続され得る地理的に離れたロケーションにあるホスト間でリソースが移動されるので、これは、特に困難となる可能性がある。ライブマイグレーションの場合、開示された技術は、例えば、ロケーション間の待ち時間、ネットワーク帯域幅/使用パターン、及び/またはインスタンスによってどのメモリページが最も頻繁に使用されるかに基づいて、事前に(例えば、インスタンスがまだソースホスト上で実行されている間に)コピーするメモリ状態データの量、及び事後に(例えば、インスタンスが宛先ホスト上で実行を開始した後に)コピーするメモリ状態データの量を動的に判断することができる。さらに、メモリ状態データが転送される特定の時間は、ロケーション間のネットワークの条件に基づいて動的に判断することができる。この分析は、リージョン内のマイグレーション管理コンポーネントによって、またはソースエッジロケーションでローカルに実行されているマイグレーション管理コンポーネントによって、実行されてよい。インスタンスが仮想化ストレージにアクセスできる場合、ソースドメインとターゲットドメインとの両方をストレージに同時にアタッチして、マイグレーション中やソースドメインへのロールバックが必要な場合に、そのデータへの中断のないアクセスを可能にすることができる。
【0055】
プロバイダサブストレートエクステンション224で実行されるサーバソフトウェアは、クラウドプロバイダサブストレートネットワーク上で実行されるようにクラウドプロバイダによって設計されてよく、このソフトウェアは、ローカルネットワークマネージャ(複数可)242を使用することによって、プロバイダサブストレートエクステンション224内で修正されずに実行可能にされて、エッジロケーション内にサブストレートネットワークのプライベートレプリカ(「シャドウサブストレート」)を作成することができる。ローカルネットワークマネージャ(複数可)242は、プロバイダサブストレートエクステンション224のサーバ上で実行することができ、例えば、プロバイダサブストレートエクステンション224とクラウドプロバイダネットワーク203のプロキシ245、248との間の仮想プライベートネットワーク(VPN)エンドポイント(複数可)として機能することによって、かつ、(データプレーンプロキシ248からの)データプレーントラフィック及び(制御プレーンプロキシ245からの)制御プレーントラフィックを適切なサーバ(複数可)に関連付けるための(トラフィックのカプセル化及びデカプセル化)のマッピングサービスを実施することによって、シャドウサブストレートをプロバイダサブストレートエクステンション224ネットワークにブリッジすることができる。プロバイダネットワークのサブストレートオーバーレイマッピングサービスのローカルバージョンを実装することにより、ローカルネットワークマネージャ(複数可)242は、プロバイダサブストレートエクステンション224内のリソースがクラウドプロバイダネットワーク203内のリソースとシームレスに通信できるようにする。いくつかの実施態様では、単一のローカルネットワークマネージャ242が、プロバイダサブストレートエクステンション224内の計算インスタンスをホストするすべてのサーバに対してこれらのアクションを実行することができる。他の実施態様では、計算インスタンスをホストするサーバのそれぞれが、専用のローカルネットワークマネージャ242を有し得る。マルチラックエッジロケーションでは、ローカルネットワークマネージャ242が互いに開いたトンネルを維持して、ラック間通信はローカルネットワークマネージャ242を経由することができる。
【0056】
プロバイダサブストレートエクステンションロケーションは、例えば、プロバイダサブストレートエクステンション224ネットワーク及び(パブリックインターネットを含み得る)任意の他の中間ネットワーク212を通過する際に、顧客データのセキュリティを維持するため、プロバイダサブストレートエクステンション224ネットワークを経由してクラウドプロバイダネットワーク203に至る安全なネットワークトンネルを利用することができる。クラウドプロバイダネットワーク203内では、これらのトンネルは、分離された仮想ネットワーク(例えば、オーバーレイネットワーク内)、制御プレーンプロキシ245、データプレーンプロキシ248、及びサブストレートネットワークインタフェースを含む仮想インフラストラクチャコンポーネントから構成される。このようなプロキシ245、248は、計算インスタンス上で実行されるコンテナとして実装されてよい。いくつかの実施形態では、計算インスタンスをホストするプロバイダサブストレートエクステンション224のロケーションにある各サーバは、少なくとも2つのトンネルを利用することができる。1つは制御プレーントラフィック(例えば、制約されたアプリケーションプロトコル(CoAP)トラフィック)用であり、もう1つはカプセル化されたデータプレーントラフィック用である。クラウドプロバイダネットワーク203内の接続マネージャ(図示せず)は、これらのトンネル及びそのコンポーネントのクラウドプロバイダネットワーク側のライフサイクルを、例えば、必要に応じてそれらを自動的にプロビジョニングし、それらを健全な動作状態に維持することによって、管理する。いくつかの実施形態では、プロバイダサブストレートエクステンション224ロケーションとクラウドプロバイダネットワーク203との間の直接接続を、制御プレーン通信及びデータプレーン通信に使用することができる。他のネットワークを介したVPNと比較して、直接接続は、そのネットワークパスが比較的固定され安定しているため、一定の帯域幅とより一貫したネットワークパフォーマンスとを提供することができる。
【0057】
制御プレーン(CP)プロキシ245は、エッジロケーションにおける特定のホスト(複数可)を代表するために、クラウドプロバイダネットワーク203内にプロビジョニングすることができる。CPプロキシ245は、クラウドプロバイダネットワーク203内の制御プレーン218とプロバイダサブストレートエクステンション224の制御プレーン236内の制御プレーンターゲットとの間の仲介役である。つまり、CPプロキシ245は、プロバイダサブストレートエクステンションサーバ宛の管理APIトラフィックをリージョンサブストレートからプロバイダサブストレートエクステンション224へトンネリングさせるためのインフラストラクチャを提供する。例えば、クラウドプロバイダネットワーク203の仮想化コンピューティングサービスは、プロバイダサブストレートエクステンション224のサーバのVMMにコマンドを発行して、計算インスタンスを起動することができる。CPプロキシ245は、プロバイダサブストレートエクステンション224のローカルネットワークマネージャ242へのトンネル(例えば、VPN)を維持する。CPプロキシ245内に実装されたソフトウェアは、適格なAPIトラフィックのみがサブストレートから出てサブストレートに戻ることを保証する。CPプロキシ245は、サブストレートのセキュリティマテリアル(例えば、暗号化キー、セキュリティトークン)がクラウドプロバイダネットワーク203から流出するのを保護しながら、クラウドプロバイダサブストレート上のリモートサーバを公開するメカニズムを提供する。CPプロキシ245によって課される一方向の制御プレーントラフィックトンネルはまた、任意の(不正アクセスされた可能性のある)デバイスがサブストレートにコールバックすることを防ぐ。CPプロキシ245は、プロバイダサブストレートエクステンション224のサーバと1対1でインスタンス化されてよい、あるいは同じプロバイダサブストレートエクステンション224内の複数のサーバの制御プレーントラフィックを管理可能であってよい。
【0058】
データプレーン(DP)プロキシ248もまた、プロバイダサブストレートエクステンション224内の特定のサーバ(複数可)を代表するために、クラウドプロバイダネットワーク203にプロビジョニングすることができる。DPプロキシ248は、サーバ(複数可)のシャドウまたはアンカとして機能し、ホストの健全性(可用性、使用済み/空きの計算及び容量、使用済み/空きのストレージ及び容量、ならびにネットワーク帯域幅の使用量/可用性を含む)を監視するために、クラウドプロバイダネットワーク203内のサービスによって使用することができる。DPプロキシ248はまた、クラウドプロバイダネットワーク203内のサーバ(複数可)のプロキシとして機能することにより、分離された仮想ネットワークがプロバイダサブストレートエクステンション224とクラウドプロバイダネットワーク203とに及ぶことを可能にする。各DPプロキシ248は、パケット転送計算インスタンスまたはコンテナとして実装することができる。図示するように、各DPプロキシ248は、DPプロキシ248が代表するサーバ(複数可)へのトラフィックを管理するローカルネットワークマネージャ242とのVPNトンネルを維持することができる。このトンネルは、プロバイダサブストレートエクステンションサーバ(複数可)とクラウドプロバイダネットワーク203との間でデータプレーントラフィックを送信するために使用することができる。プロバイダサブストレートエクステンション224とクラウドプロバイダネットワーク203との間を流れるデータプレーントラフィックは、そのプロバイダサブストレートエクステンション224に関連付けられたDPプロキシ248を通過することができる。プロバイダサブストレートエクステンション224からクラウドプロバイダネットワーク203に流れるデータプレーントラフィックの場合、DPプロキシ248は、カプセル化されたデータプレーントラフィックを受信し、その正確性を検証し、それがクラウドプロバイダネットワーク203に入るのを許可することができる。DPプロキシ248は、カプセル化されたトラフィックをクラウドプロバイダネットワーク203からプロバイダサブストレートエクステンション224に直接、転送することができる。
【0059】
ローカルネットワークマネージャ(複数可)242は、クラウドプロバイダネットワーク203内に確立されたプロキシ245、248との安全なネットワーク接続性を提供することができる。ローカルネットワークマネージャ(複数可)242とプロキシ245、248との間の接続性が確立された後、顧客は、クラウドプロバイダネットワーク203内でホストされる計算インスタンスに関してコマンドが発行されるのとよく似た方法でプロバイダサブストレートエクステンションリソースを使用して、インタフェース206を介してそのようなコマンドを発行して計算インスタンスをインスタンス化(及び/または計算インスタンスを使用して他の動作を実行)してよい。顧客の観点からすれば、顧客は、プロバイダサブストレートエクステンション224内のローカルリソース(及び所望であればクラウドプロバイダネットワーク203にあるリソース)をシームレスに使用できるようになる。プロバイダサブストレートエクステンション224でサーバ上にセットアップされた計算インスタンスは、所望に応じて、同じネットワーク内にある電子デバイス、及びクラウドプロバイダネットワーク203内にセットアップされた他のリソースの両方と通信し得る。プロバイダサブストレートエクステンション224と、そのエクステンションに関連付けられたネットワーク(例えば、通信サービスプロバイダサブストレートエクステンション230の例における通信サービスプロバイダネットワーク)との間のネットワーク接続性を提供するために、ローカルゲートウェイ251を実装することができる。
【0060】
状況によっては、オブジェクトストレージサービスとプロバイダサブストレートエクステンション(PSE)224の間でのデータの転送が必要になる場合がある。例えば、オブジェクトストレージサービスは、VMの起動に使用されるマシンイメージ、及びボリュームの特定時点のバックアップを表すスナップショットを記憶する場合がある。オブジェクトゲートウェイは、PSEサーバまたは特殊なストレージデバイス上に設けることができ、顧客のワークロードに対するPSEリージョンの待ち時間の影響を最小限に抑えるために、PSE224内のオブジェクトストレージバケットのコンテンツの構成可能なバケットごとのキャッシュを顧客に提供することができる。オブジェクトゲートウェイは、PSE224内のボリュームのスナップショットからのスナップショットデータを一時的に記憶し、その後、可能な場合にはリージョン内のオブジェクトサーバと同期することもできる。オブジェクトゲートウェイは、顧客がPSE224内または顧客の構内で使用するために指定したマシンイメージを記憶することもできる。いくつかの実施態様では、PSE224内のデータは一意のキーで暗号化されてよく、クラウドプロバイダは、セキュリティ上の理由から、キーがリージョンからPSE224に共有されることを制限することができる。したがって、オブジェクトストアサーバとオブジェクトゲートウェイとの間で交換されるデータは、暗号化キーまたは他の機密データに関するセキュリティ境界を維持するために、暗号化、復号化、及び/または再暗号化を利用してよい。変換仲介者はこれらの操作を実行でき、PSEバケットを(オブジェクトストアサーバ上に)作成して、PSE暗号化キーを使用してスナップショットデータとマシンイメージデータとを記憶することができる。
【0061】
上記のようにして、PSE224は、従来のクラウドプロバイダデータセンタの外側で顧客デバイスのより近くでクラウドプロバイダネットワーク203のリソース及びサービスを提供するという点で、PSE224はエッジロケーションを形成する。本明細書で言及されるエッジロケーションは、いくつかの方法で構築することができる。いくつかの実施態様では、エッジロケーションは、(例えば、顧客のワークロードの近くに位置し、どのアベイラビリティゾーンからも離れている可能性がある、小規模なデータセンタ、またはクラウドプロバイダの他の施設の)アベイラビリティゾーンの外側に提供される限られた量の容量を含む、クラウドプロバイダネットワークサブストレートのエクステンションであってよい。このようなエッジロケーションは、「ファーゾーン」(他のアベイラビリティゾーンから遠いため)または「ニアゾーン」(顧客のワークロードに近いため)と呼ばれる場合がある。ニアゾーンは、インターネットなどの公的にアクセス可能なネットワークに、例えば直接、別のネットワーク経由で、またはリージョンへのプライベート接続経由で、様々な方法で接続されてよい。通常、ニアゾーンは、リージョンに比べ容量が限られているが、場合によっては、ニアゾーンが、数千ラック以上などのかなりの容量を有することもある。
【0062】
いくつかの実施態様では、エッジロケーションは、顧客またはパートナー施設のオンプレミスに配置された1つまたは複数のサーバによって形成されるクラウドプロバイダのネットワークサブストレートのエクステンションであってよく、そのようなサーバ(複数可)はネットワーク(例えば、インターネットなどの公的にアクセス可能なネットワーク)を介して、クラウドプロバイダネットワーク203の近くのアベイラビリティゾーンまたはリージョンと通信する。クラウドプロバイダネットワークデータセンタの外側に位置するこのタイプのサブストレートエクステンションは、クラウドプロバイダネットワーク203の「アウトポスト」と呼ぶことができる。いくつかのアウトポストは、例えば、電気通信データセンタ、電気通信アグリゲーションサイト、及び/または電気通信ネットワーク内の電気通信基地局にわたって広がる物理的インフラストラクチャを有するマルチアクセスエッジコンピューティング(MEC)サイトとして、通信ネットワークに統合されてよい。オンプレミスの例では、アウトポストの限られた容量は、その施設を所有する顧客(及び顧客が許可した任意の他のアカウント)のみが使用できる場合がある。電気通信の例では、アウトポストの限られた容量は、電気通信ネットワークのユーザにデータを送信するいくつかのアプリケーション(例えば、ゲーム、仮想現実アプリケーション、ヘルスケアアプリケーション)間で共有されてよい。
【0063】
エッジロケーションは、クラウドプロバイダネットワーク203の近くのアベイラビリティゾーンの制御プレーンによって少なくとも部分的に制御されるデータプレーン容量を含み得る。したがって、アベイラビリティゾーングループは、「親」アベイラビリティゾーンと、親アベイラビリティゾーンをホームとする(例えば、少なくとも部分的にその制御プレーンによって制御される)任意の「子」エッジロケーションとを含み得る。特定の限られた制御プレーン機能(例えば、顧客リソースとの低待ち時間の通信を必要とする機能、及び/または親アベイラビリティゾーンから切断されたときにエッジロケーションが機能し続けることを可能にする機能)もまた、いくつかのエッジロケーションに存在し得る。したがって、上記の例では、エッジロケーションは、顧客デバイス及び/またはワークロードに近い、クラウドプロバイダネットワーク203のエッジに位置する少なくともデータプレーン容量のエクステンションを指す。
【0064】
図1の例では、分散コンピューティングデバイス112(
図1)、集中コンピューティングデバイス115(
図1)、及びコアコンピューティングデバイス118(
図1)は、クラウドプロバイダネットワーク203のプロバイダサブストレートエクステンション224として実装されてよい。通信ネットワーク100内でのプロバイダサブストレートエクステンション224の設置または配置は、通信ネットワーク100の特定のネットワークトポロジまたはアーキテクチャに応じて変わり得る。プロバイダサブストレートエクステンション224は、一般に、通信ネットワーク100がパケットベースのトラフィック(例えば、IPベースのトラフィック)をブレークアウトできるどこにでも接続することができる。さらに、所与のプロバイダサブストレートエクステンション224とクラウドプロバイダネットワーク203との間の通信は、通常、通信ネットワーク100の少なくとも一部を(例えば、安全なトンネル、仮想プライベートネットワーク、直接接続などを介して)安全に通過する。
【0065】
5Gワイヤレスネットワーク開発の取り組みでは、エッジロケーションがマルチアクセスエッジコンピューティング(MEC)の実装の可能性として考慮される場合がある。このようなエッジロケーションは、ユーザプレーン機能(UPF)の一部としてデータトラフィックのブレークアウトを提供する5Gネットワーク内の様々なポイントに接続することができる。古いワイヤレスネットワークでも、エッジロケーションを組み込むことができる。例えば、3Gワイヤレスネットワークでは、エッジロケーションは、サービング汎用パケット無線サービスサポートノード(SGSN)またはゲートウェイ汎用パケット無線サービスサポートノード(GGSN)など、通信ネットワーク100のパケット交換ネットワーク部分に接続することができる。4Gワイヤレスネットワークでは、エッジロケーションは、コアネットワークまたは進化したパケットコア(EPC)の一部として、サービングゲートウェイ(SGW)またはパケットデータネットワークゲートウェイ(PGW)に接続することができる。いくつかの実施形態では、プロバイダサブストレートエクステンション224とクラウドプロバイダネットワーク203との間のトラフィックは、コアネットワークを介してルーティングすることなく、通信ネットワーク100からブレークアウトすることができる。
【0066】
いくつかの実施形態では、プロバイダサブストレートエクステンション224は、各顧客に関連付けられた複数の通信ネットワークに接続することができる。例えば、各顧客の2つの通信ネットワークが共通点を介してトラフィックを共有またはルーティングするとき、プロバイダサブストレートエクステンション224は両方のネットワークに接続することができる。例えば、各顧客は、そのネットワークアドレス空間の一部をプロバイダサブストレートエクステンション224に割り当てることができ、プロバイダサブストレートエクステンション224は、通信ネットワーク100のそれぞれと交換されるトラフィックを区別可能なルータまたはゲートウェイ251を含み得る。例えば、あるネットワークからプロバイダサブストレートエクステンション224に宛てられたトラフィックは、別のネットワークから受信したトラフィックとは異なる宛先IPアドレス、送信元IPアドレス、及び/または仮想ローカルエリアネットワーク(VLAN)タグを有する可能性がある。プロバイダサブストレートエクステンション224からネットワークの1つにある宛先に向かうトラフィックも同様に、適切なVLANタグ、(例えば、宛先ネットワークアドレス空間からプロバイダサブストレートエクステンション224に割り振られたプールからの)送信元IPアドレス、及び宛先IPアドレスを有するように、カプセル化することができる。
【0067】
図2Bは、高可用性ユーザプレーン機能(UPF)を提供するための通信ネットワーク100(
図1)のセルラ化及び地理的分散の例253を示す。
図2Bにおいて、ユーザデバイス254は、要求ルータ255と通信して、複数の制御プレーンセル257a及び257bのうちの1つに要求をルーティングする。各制御プレーンセル257は、ネットワークサービスAPIゲートウェイ260、ネットワークスライス構成262、ネットワークサービス監視用機能264、サイトプラニングデータ266(レイアウト、デバイスタイプ、デバイス数量など、顧客のサイト要件を記述する)、ネットワークサービス/機能カタログ268、ネットワーク機能オーケストレータ270、及び/または他のコンポーネントを含み得る。大規模なエラーが広範囲の顧客に影響を与える可能性を減らすために、独立して動作する1つまたは複数のセルを、例えば、顧客ごとに、ネットワークごとに、またはリージョンごとに設けることにより、大きな制御プレーンをセルに分割することができる。
【0068】
ネットワークサービス/機能カタログ268は、NFリポジトリ機能(NRF)とも呼ばれる。サービスベースアーキテクチャ(SBA)5Gネットワークでは、制御プレーン機能と共通データリポジトリとは、マイクロサービスアーキテクチャを使用して構築された相互接続ネットワーク機能のセットを介して配信することができる。NRFは、利用可能なNFインスタンスとそのサポートされるサービスとの記録を維持することができ、他のNFインスタンスがサブスクライブし、所与のタイプのNFインスタンスからの登録を通知されることを可能にする。したがって、NRFは、NFインスタンスからの発見要求を受信することによってサービス発見をサポートすることができ、どのNFインスタンスが特定のサービスをサポートするかを詳述する。ネットワーク機能オーケストレータ270は、インスタンス化、スケールアウト/イン、パフォーマンス測定、イベント相関付け、及び終了を含むNFライフサイクル管理を実行することができる。ネットワーク機能オーケストレータ270は、新しいNFをオンボードすること、既存のNFの新しいバージョンまたは更新されたバージョンへのマイグレーションを管理すること、特定のネットワークスライスまたはより大きなネットワークに適したNFセットを識別すること、ならびに無線式ネットワーク103(
図1)を構成する様々なコンピューティングデバイス及びサイトにわたってNFをオーケストレートすることができる。
【0069】
制御プレーンセル257は、RANインタフェース273を介して1つまたは複数のセルサイト272、1つまたは複数の顧客ローカルデータセンタ274、1つまたは複数のローカルゾーン276、及び1つまたは複数のリージョナルゾーン278と通信してよい。RANインタフェース273は、セルサイト272においてサードパーティ通信サービスプロバイダによって運営されるRANにおける容量のプロビジョニングまたは解放を容易にするアプリケーションプログラミングインタフェース(API)を含み得る。セルサイト272は、1つまたは複数の分散ユニット(DU)ネットワーク機能282を実行するコンピューティングハードウェア280を含む。顧客ローカルデータセンタ274は、コンピューティングハードウェア283を備え、コンピューティングハードウェア283は、1つまたは複数のDUもしくは中央ユニット(CU)ネットワーク機能284、ネットワークコントローラ285、UPF286、顧客のワークロードに対応する1つまたは複数のエッジアプリケーション287、及び/または他のコンポーネントを実行する。
【0070】
ローカルゾーン276は、クラウドサービスプロバイダによって運営されるデータセンタにあってよく、AMF、SMF、他のネットワーク機能のサービス及び能力を安全に公開するネットワーク公開機能(NEF)、認可、登録、及びモビリティ管理のために加入者データを管理する統合データ管理(UDM)機能などの1つまたは複数のコアネットワーク機能288を実行してよい。ローカルゾーン276は、UPF286、メトリック処理用サービス289、ならびに1つまたは複数のエッジアプリケーション287も実行してよい。
【0071】
リージョナルゾーン278は、クラウドサービスプロバイダによって運営されるデータセンタにあってよく、1つまたは複数のコアネットワーク機能288、UPF286、ネットワーク管理システム、サービス配信、サービス履行、サービス保証、及び顧客ケアをサポートするオペレーションサポートシステム(OSS)290、インターネットプロトコルマルチメディアサブシステム(IMS)291、製品管理、顧客管理、収益管理、及び/または注文管理をサポートするビジネスサポートシステム(BSS)292、1つまたは複数のポータルアプリケーション293、及び/または他のコンポーネントを実行し得る。
【0072】
この例では、通信ネットワーク100は、個々のコンポーネントの爆発半径を低減するために、セルラアーキテクチャを採用する。最上位レベルでは、個々の制御プレーンの障害がすべてのデプロイに影響を与えるのを防ぐために、制御プレーンは複数の制御プレーンセル257にある。
【0073】
各制御プレーンセル257内には、必要に応じてトラフィックを二次スタックにシフトする制御プレーンを備えた複数の冗長スタックを設けることができる。例えば、セルサイト272は、そのデフォルトのコアネットワークとして近くのローカルゾーン276を利用するように構成されてよい。ローカルゾーン276が停止した場合、制御プレーンはセルサイト272をリダイレクトして、リージョナルゾーン278内のバックアップスタックを使用することができる。インターネットからローカルゾーン276に通常、ルーティングされるトラフィックは、リージョナルゾーン278のエンドポイントにシフトすることができる。各制御プレーンセル257は、複数のサイト(アベイラビリティゾーンまたはエッジサイトなど)にわたって共通のセッションデータベースを共有する「ステートレス」アーキテクチャを実装することができる。
【0074】
図3Aは、いくつかの実施形態による、地理的に分散したプロバイダサブストレートエクステンション224(
図2A)(または「エッジロケーション303」)を含む例示的なクラウドプロバイダネットワーク203を示す。図示するように、クラウドプロバイダネットワーク203は、複数のリージョン306として形成することができ、リージョン306は、クラウドプロバイダが1つまたは複数のデータセンタ309を有する別個の地理的エリアである。各リージョン306は、例えばファイバ通信接続などのプライベート高速ネットワークを介して互いに接続された2つ以上のアベイラビリティゾーン(AZ)を含み得る。アベイラビリティゾーンとは、他のアベイラビリティゾーンに対して、別個の電源、別個のネットワーク、及び別個の冷却を備えた1つまたは複数のデータセンタ施設を含む、分離された障害ドメインを指す。クラウドプロバイダは、自然災害、大規模な停電、または他の予期せぬ事象によって同時に複数のアベイラビリティゾーンがオフラインにならないように、リージョン306内でアベイラビリティゾーンを相互に十分に離して配置するよう努めてよい。顧客は、公的にアクセス可能なネットワーク(例えば、インターネット、セルラ通信ネットワーク、通信サービスプロバイダネットワーク)を介して、クラウドプロバイダネットワーク203のアベイラビリティゾーン内のリソースに接続することができる。トランジットセンタ(TC)は、顧客をクラウドプロバイダネットワーク203にリンクさせる主要なバックボーンロケーションであり、他のネットワークプロバイダ施設(例えば、インターネットサービスプロバイダ、電気通信プロバイダ)と同じ場所に設置されてよい。各リージョン306は、冗長性のために2つ以上のTCを運営することができる。リージョン306は、各リージョン306を少なくとも1つの他のリージョンに接続するプライベートネットワークインフラストラクチャ(例えば、クラウドサービスプロバイダによって制御されるファイバ接続)を含むグローバルネットワークに接続される。クラウドプロバイダネットワーク203は、エッジロケーション303及びリージョナルエッジキャッシュサーバを介して、これらのリージョン306の外部にあるが、これらのリージョン306とネットワーク化されているポイントオブプレゼンス(「PoP」)からコンテンツを配信することができる。コンピューティングハードウェアのこの区分化及び地理的分散により、クラウドプロバイダネットワーク203は、高度のフォールトトレランス及び安定性を有する地球規模の低待ち時間リソースアクセスを顧客に提供することができる。
【0075】
リージョナルデータセンタまたはアベイラビリティゾーンの数と比較して、エッジロケーション303の数は、はるかに多くなる可能性がある。このようにエッジロケーション303を広範にデプロイすると、(リージョナルデータセンタにたまたま非常に近いエンドユーザデバイスと比較して)はるかに大きなグループのエンドユーザデバイスに対して、クラウドへの低待ち時間接続を提供することができる。いくつかの実施形態では、各エッジロケーション303は、クラウドプロバイダネットワーク203の一部(例えば、親アベイラビリティゾーンまたはリージョナルデータセンタ)にピアリングすることができる。このようなピアリングにより、クラウドプロバイダネットワーク203内で動作する様々なコンポーネントがエッジロケーション303のコンピューティングリソースを管理できるようになる。場合によっては、複数のエッジロケーション303が同じ施設(例えば、コンピュータシステムの別個のラック)に配置または設置され、追加の冗長性を提供するように異なるゾーンまたはデータセンタ309によって管理されてよい。本明細書では、エッジロケーション303は通常、通信サービスプロバイダネットワークまたは無線式ネットワーク103(
図1)内として示されているが、クラウドプロバイダネットワーク施設が通信サービスプロバイダ施設に比較的近い場合など、場合によっては、エッジロケーション303は、ファイバまたは他のネットワークリンクを介して通信サービスプロバイダネットワークに接続されながら、クラウドプロバイダネットワーク203の物理的敷地内に留まり得ることに留意されたい。
【0076】
エッジロケーション303は、いくつかの方法で構築することができる。いくつかの実施態様では、エッジロケーション303は、(例えば、顧客のワークロードの近くに位置し、どのアベイラビリティゾーンからも離れている可能性がある、小規模なデータセンタ309の、またはクラウドプロバイダの他の施設の)アベイラビリティゾーンの外側に提供される限られた量の容量を含む、クラウドプロバイダネットワークサブストレートのエクステンションであってよい。そのようなエッジロケーション303は、(従来のアベイラビリティゾーンよりもユーザのグループにローカルまたは近いため)ローカルゾーンと呼ばれることがある。ローカルゾーンは、インターネットなどの公的にアクセス可能なネットワークに、例えば直接、別のネットワーク経由で、またはリージョン306へのプライベート接続経由で、様々な方法で接続されてよい。通常、ローカルゾーンは、リージョン306に比べ容量が限られているが、場合によっては、ローカルゾーンが、数千ラック以上などのかなりの容量を有することがある。ローカルゾーンの中には、本明細書で説明するエッジロケーション303のインフラストラクチャの代わりに、典型的なクラウドプロバイダデータセンタと同様のインフラストラクチャを使用するものもある。
【0077】
本明細書に示すように、クラウドプロバイダネットワーク203は、いくつかのリージョン306として形成することができ、各リージョン306は、クラウドプロバイダがデータセンタ309をクラスタ化する地理的エリアを表す。各リージョン306は、プライベート高速ネットワーク、例えばファイバ通信接続を介して互いに接続された複数の(例えば、2つ以上の)アベイラビリティゾーン(AZ)をさらに含み得る。AZは、別のAZとは別個の電源、別個のネットワーク、及び別個の冷却を備えた1つまたは複数のデータセンタ施設を含む、分離された障害ドメインを提供し得る。リージョン306内のAZは、同じ自然災害(または他の障害を引き起こす事象)が複数のAZに同時に影響を与えたり、オフラインにしたりしないように、互いに十分に離れたロケーションに配置することが好ましい。顧客は、公的にアクセス可能なネットワーク(インターネット、セルラ通信ネットワークなど)を介して、クラウドプロバイダネットワークの203のAZに接続することができる。
【0078】
クラウドプロバイダネットワーク203のAZまたはリージョン306に対する所与のエッジロケーション303のペアレンティングは、いくつかの要因に基づき得る。そのようなペアレンティング要因の1つはデータ主権である。例えば、ある国の通信ネットワークから発信されたデータをその国内に保持するために、その通信ネットワーク内にデプロイされたエッジロケーション303をその国内のAZまたはリージョン306にペアレンティングすることができる。もう1つの要因は、サービスの可用性である。例えば、一部のエッジロケーション303は、顧客データ用のローカル不揮発性ストレージ(例えば、ソリッドステートドライブ)、グラフィックスアクセラレータなどのコンポーネントの有無など、異なるハードウェア構成を有し得る。一部のAZまたはリージョン306には、それらの追加リソースを活用するためのサービスを欠いている可能性があるため、エッジロケーション303は、それらのリソースの使用をサポートするAZまたはリージョン306に対してペアレンティングされてよい。別の要因は、AZまたはリージョン306とエッジロケーション303との間の待ち時間である。通信ネットワーク内にエッジロケーション303をデプロイすると、待ち時間の利点があるが、エッジロケーション303を離れたAZまたはリージョン306にペアレンティングすることによって、エッジロケーション303のリージョントラフィックに大幅な待ち時間が導入されて、それらの利点が打ち消される可能性がある。したがって、エッジロケーション303は、多くの場合、(ネットワーク待ち時間の観点から)近くのAZまたはリージョン306に対してペアレンティングされる。
【0079】
図3Bは、ワイヤレスデバイス106(
図1)または他のユーザ機器など、無線式ネットワーク103に接続されているクライアントデバイス215を含むように、クラウドプロバイダネットワーク203に及ぶ仮想プライベートクラウドネットワーク107(
図1)を含むネットワーク環境200の例を示す。クラウドプロバイダネットワーク203は、1つまたは複数のクラウドサービス320、1つまたは複数のファイアウォール323、1つまたは複数のゲートウェイ326、1つまたは複数の仮想ルータ329、及び/または他のコンポーネントを含み得る。仮想プライベートクラウドネットワーク107は、異種の物理ネットワーク及び論理ネットワークの上に、または、それらの中に仮想的に存在するソフトウェア定義ネットワークに対応し得る。1つの仮想プライベートクラウドネットワーク107が示されているが、当然ながら、1つまたは複数のクライアントデバイス215が複数の仮想プライベートクラウドネットワーク107に接続されてよい。
【0080】
無線式ネットワーク103は、プライベートネットワークリンク332を介してクラウドプロバイダネットワーク203に接続されてよい。プライベートネットワークリンク332は、光ファイバリンク、マイクロ波リンク、Tキャリアリンク、または別のタイプのデータリンクなどの専用ネットワークリンクであってよい。プライベートネットワークリンク332は、ターゲット待ち時間特性、ターゲット帯域幅特性などのより高いサービス品質を提供するために、パブリックインターネットから分離されてよい。プライベートネットワークリンク332は、無線式ネットワーク103の無線アクセスネットワーク部分及び/または無線式ネットワーク103のコアネットワーク部分で終端されてよい。場合によっては、無線式ネットワーク103のコアネットワーク機能の一部またはすべてがクラウドプロバイダネットワーク203で実行される。プライベートネットワークリンク332の使用は、パブリックインターネットを介して仮想プライベートクラウドネットワーク107に接続するクライアントデバイス215と比較して、仮想プライベートクラウドネットワーク107への接続性のサービス品質の改善(例えば、待ち時間の改善)を提供し得る。
【0081】
仮想プライベートクラウドネットワーク107は、仮想プライベートクラウドネットワーク107全体(例えば、サブネットワーク全体にわたって適用されるACLまたはステートレスなファイアウォールルール)にわたって適用することができるアクセス制御及びセキュリティ管理、ならびに仮想プライベートクラウドネットワーク107のサブセット内に適用することができるアクセス制御及びセキュリティ管理(例えば、マシンインスタンスまたはネットワークインタフェースに適用されるセキュリティグループまたはステートフルなファイアウォールルール)をサポートし得る。仮想プライベートクラウドネットワーク107は、企業、教育機関、政府、または別の組織などの顧客向けのクラウドプロバイダによって運営されてよい。仮想プライベートクラウドネットワーク107は、クラウドプロバイダネットワーク203とは別個の、顧客によって運営される1つまたは複数のオンプレミスネットワークへの1つまたは複数のプライベートネットワークリンクを含むことができ、それらのオンプレミスネットワーク上のデバイスも仮想プライベートクラウドネットワーク107に接続される。
【0082】
クラウドサービス320は、多種多様な機能を可能にするように構成されてよい。様々な実施形態において、個々のクラウドサービス320は、マシンインスタンス、データが各バケットに記憶される最終的に整合性のあるデータストレージサービス、キー/値及びドキュメントデータ構造をサポートするデータベースサービス、分散メッセージキューイングサービス、ワークフロー管理サービス、及び/または他のサービスなどの物理的なまたは仮想のコンピューティングリソースを顧客が動的に起動及び管理できるようにするサービスを提供し得る。クラウドサービス320のそれぞれは、それぞれのクラウドサービス320が実行できる一連のコールまたは操作をサポートする対応するアプリケーションプログラミングインタフェース(API)に関連付けられてよい。APIを呼び出すと、一連の様々なサービスやエージェントが呼び出され、操作が実行され、データが処理され得る。
【0083】
ファイアウォール323は、仮想プライベートクラウドネットワーク107内でどのタイプのネットワークトラフィックを送信できるかを構成するルールセット内で構成されてよい。ファイアウォール323は、ロギング、侵入検出、サービス拒否防御、マルウェアフィルタリングなどの様々な機能をサポートすることができる。ゲートウェイ326は、ネットワークトラフィックを選択的に転送して、仮想プライベートクラウドネットワーク107が、インターネット、他の仮想プライベートクラウドネットワーク、または仮想プライベートクラウドネットワーク107内にないクラウドプロバイダネットワーク203内の他のリソースなどの外部ネットワークと通信できるようにすることができる。いくつかの実施態様では、ゲートウェイ326は、ネットワークアドレス変換(NAT)を実行して、仮想プライベートクラウドネットワーク107上のプライベートネットワークアドレスを有するデバイスに公的にルーティング可能なネットワークアドレスを提供することができる。
図3Bでは、ファイアウォール323及びゲートウェイ326は、クラウドプロバイダネットワーク203内に位置するものとして示されているが、他の例では、ファイアウォール323及び/またはゲートウェイ326は、プロバイダサブストレートエクステンション224(
図2A)によってエッジロケーション303(
図3A)に実装されてもよい。
【0084】
いくつかの実施形態では、クライアントデバイス215は、管理エージェントを用いてモバイルデバイス管理ソフトウェアを実行してもよい。このようなモバイルデバイス管理ソフトウェアは、データ漏洩を防止するために、クライアントデバイス215が他のネットワークではなく、仮想プライベートクラウドネットワーク107のみを介して接続することができる。あるいは、モバイルデバイス管理ソフトウェアは、機密性の高いアプリケーションが仮想プライベートクラウドネットワーク107を通じてのみ通信することを要求する場合がある。
【0085】
所与の仮想ルータ329は、ローカルにキャッシュされたルーティングまたは転送アクションを迅速に実行するように構成された高速パスノードと、クライアント指定のポリシーと分離されたネットワークの接続性要件とに基づいて異なるパケットフローに対して取るべきアクションを決定する例外パスノードとを含む多層パケット処理サービスのノードの集合を含む。ルーティング情報交換プロトコル(例えば、ボーダーゲートウェイプロトコル(BGP)に類似したプロトコル)を使用して、分離されたネットワークのペア間のアプリケーションデータトラフィックに対して動的ルーティングが実装されるシナリオでは、動的ルーティング情報を含むメッセージの処理を、仮想ルータノードから他のデバイスで実行されているプロトコル処理エンジンにオフロードすることができ、それによって、仮想ルータノードはルールベースのパケット転送という主なタスクに専念し続けることができる。
【0086】
(例えば、異なる州、国、または大陸のデータセンタにあるリソースを使用して)異なる地理的リージョンで実装される仮想ルータ329は、プログラム的に互いに接続(または「ピアリング」)することができて、BGPに類似したプロトコルを使用して、異なるリージョンの分離されたネットワークに関する動的ルーティング情報を取得し、自動的に交換するように構成することができて、分離されたネットワーク間で流れるトラフィックに対して静的ルートをクライアントが苦労して構成する必要を排除する。クライアントは、様々なパラメータと設定(使用する特定のプロトコルバージョン、仮想ルータ329との間で通知されるルーティング情報をフィルタリングするルールなど)を指定して、仮想ルータ329間でルーティング情報が転送される方法を制御することができる。広域ネットワーク(WAN)サービスは、動的ルーティングを有効にしたプログラム的に接続された仮想ルータを使用して、プロバイダネットワークで実装することができ、クライアントが、クライアントの構内と世界中に分散されているセルラネットワークスライスとの間のトラフィックに対して(様々な他のサービスのユーザに代わって、プロバイダネットワークのデータセンタ間のトラフィックに既に使用されている)プロバイダネットワークのプライベートファイババックボーンリンクを利用するのを可能にし、また、仮想化インタフェースを有する使い易いツールを使用して遠距離トラフィックを管理するのを可能にする。仮想ルータ329は、仮想プライベートクラウドネットワーク107の異なるサブネットに対応する1つまたは複数の無線式ネットワーク103の異なるネットワークスライス間の接続を提供し得る。
【0087】
いくつかの実施形態では、無線式ネットワーク103は、VPCゲートウェイ335を備え、VPCゲートウェイ335は、クライアントデバイス215が仮想プライベートクラウドネットワーク107と通信できるように、クライアントデバイス215に代わってカプセル化/デカプセル化及びトンネリング機能を実行するプロキシとして機能することができる。VPCゲートウェイ335は、ルールセットに少なくとも部分的に基づいて、仮想プライベートクラウドネットワーク107に転送されるクライアントデバイス215からの特定のネットワークトラフィックを識別することができる。例えば、IoTテレメトリトラフィックは、特定のタグまたはポートによって特徴付けられてよく、このトラフィックは、対応するテレメトリサービスを有する特定の仮想プライベートクラウドネットワーク107に転送されるようにルールセットで指定されてよい。
【0088】
VPCゲートウェイ335は、仮想プライベートクラウドネットワーク107上の仮想マシンインスタンスのネットワークアドレスと、クラウドプロバイダネットワーク203内で仮想マシンインスタンスが実行されるコンピューティングデバイスのネットワークアドレスとの間のネットワークアドレス変換を実行することができる。VPCゲートウェイ335は、仮想プライベートクラウドネットワーク107上のクライアントデバイス215のネットワークアドレスと、無線式ネットワーク103上の同じクライアントデバイス215のネットワークアドレスとの間のネットワークアドレス変換を実行することもできる。VPCゲートウェイ335はまた、インターネットプロトコルセキュリティ(IPsec)及び/または他のプロトコルを使用して暗号化及び復号化機能を実行することもできる。場合によっては、VPCゲートウェイ335は、1つまたは複数のクライアントデバイス215上のリソース制約(例えば、プロセッサ、メモリ)のために使用される。一実施形態では、VPCゲートウェイ335は、無線式ネットワーク103のコアネットワーク内のカスタマイズされたユーザプレーン機能で実装される。
【0089】
クライアントデバイス215は、VPCアプリケーション338及びオペレーティングシステム341を含み得る。VPCアプリケーション338は、VPCゲートウェイ335に関連して説明した機能を実行することができるが、クライアントデバイス215のアプリケーション内で実行される。例えば、そのような機能には、カプセル化/デカプセル化、暗号化/復号化、トンネリング、及び仮想プライベートクラウドネットワーク107と無線式ネットワーク103またはクラウドプロバイダネットワーク203との間のネットワークアドレス変換を含み得る。この目的のために、VPCアプリケーション338は、仮想プライベートクラウドネットワーク107からネットワークアドレス変換情報を受信することができる。したがって、アプリケーションが仮想プライベートクラウドネットワーク107上の仮想マシンインスタンスにデータパケットを送信するとき、VPCアプリケーション338は、データパケットを、仮想マシンインスタンスが実行されるクラウドプロバイダネットワーク203内のコンピューティングデバイスに対応する宛先ネットワークアドレスでカプセル化することができる。いくつかの実施形態では、VPCアプリケーション338の機能は、クライアントデバイス215のオペレーティングシステム341に統合されてよい。
【0090】
図4を参照すると、様々な実施形態によるネットワーク環境400が示されている。ネットワーク環境400は、コンピューティング環境403、1つまたは複数のクライアントデバイス406、1つまたは複数の無線アクセスネットワーク(RAN)409、スペクトル予約サービス410、ならびに1つまたは複数の無線式ネットワーク103を含み、これらは、ネットワーク412を介して相互にデータ通信する。ネットワーク412は、例えば、インターネット、イントラネット、エクストラネット、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、有線ネットワーク、ワイヤレスネットワーク、ケーブルネットワーク、衛星ネットワーク、もしくは他の適切なネットワークなど、または2つ以上のこのようなネットワークの任意の組み合わせを含む。RAN409は、複数の異なる通信サービスプロバイダによって運営される場合がある。場合によっては、RAN409のうちの1つまたは複数は、クラウドプロバイダネットワーク203(
図2A)またはクラウドプロバイダネットワーク203の顧客によって運営されてよい。
【0091】
コンピューティング環境403は、例えば、サーバコンピュータまたは計算能力を提供する任意の他のシステムを含み得る。代わりに、コンピューティング環境403は、例えば、1つまたは複数のサーババンクまたはコンピュータバンクまたは他の配置で配置し得る複数のコンピューティングデバイスを採用し得る。このようなコンピューティングデバイスは、単独の施設に位置してよい、または多くの異なる地理的なロケーション間に分散されてよい。例えば、コンピューティング環境403は、ホストコンピューティングリソース、グリッドコンピューティングリソース、及び/または任意の他の分散コンピューティング配置を一緒に備え得る複数のコンピューティングデバイスを含み得る。場合によっては、コンピューティング環境403は、処理、ネットワーク、ストレージ、または他のコンピューティング関連リソースの割り当て容量が経時的に変化し得る弾力的な計算リソースに対応してよい。例えば、コンピューティング環境403は、クラウドプロバイダネットワーク203に対応してよく、顧客は、ユーティリティコンピューティングモデルに基づくコンピューティングリソースの使用量に応じて請求される。
【0092】
いくつかの実施形態では、コンピューティング環境403は、例えばハイパーバイザによって物理コンピューティングハードウェア上で実行される仮想マシンインスタンスを含む物理ネットワーク内の仮想化プライベートネットワークに対応し得る。仮想マシンインスタンスとこれらのインスタンス上で実行されている任意のコンテナとは、ルータやスイッチなどの物理ネットワークコンポーネントによって有効にされる仮想化ネットワークコンポーネントを介してネットワーク接続性が与えられてよい。
【0093】
様々なアプリケーション及び/または他の機能は、様々な実施形態に従って、コンピューティング環境403で実行されてよい。また、様々なデータは、コンピューティング環境403にアクセス可能であるデータストア415に記憶される。データストア415は、理解されるように、複数のデータストア415を代表してよい。データストア415に記憶されるデータは、例えば、以下に記載する様々なアプリケーション及び/または機能エンティティの動作に関連付けられる。
【0094】
ユーティリティコンピューティングサービスを提供するクラウドプロバイダネットワークの一部としてのコンピューティング環境403は、コンピューティングデバイス418及び他のタイプのコンピューティングデバイスを含む。コンピューティングデバイス418は、様々なタイプのコンピューティングデバイス418に対応してよく、様々なコンピューティングアーキテクチャを有し得る。コンピューティングアーキテクチャは、x86、x86_64、ARM、スケーラブルプロセッサアーキテクチャ(SPARC)、PowerPCなどの異なるアーキテクチャを有するプロセッサを利用することで異なる場合がある。例えば、一部のコンピューティングデバイス418はx86プロセッサを有してよく、他のコンピューティングデバイス418はARMプロセッサを有してよい。コンピューティングデバイス418は、ローカルストレージ、グラフィックス処理装置(GPU)、機械学習エクステンション、及び他の特性など、利用可能なハードウェアリソースも異なる場合がある。
【0095】
コンピューティングデバイス418は、仮想マシン(VM)インスタンス、コンテナ、サーバレス機能などを含み得る、様々な形態の割り振られたコンピューティング容量421を有し得る。VMインスタンスは、VMイメージからインスタンス化されてよい。この目的のために、顧客は、仮想マシンインスタンスが他のタイプのコンピューティングデバイス418ではなく、特定のタイプのコンピューティングデバイス418内で起動されるべきであることを指定することがある。様々な例において、1つのVMインスタンスが特定のコンピューティングデバイス418上で単独で実行されてもよく、または複数のVMインスタンスが特定のコンピューティングデバイス418上で実行されてもよい。また、特定のコンピューティングデバイス418は、異なるタイプのVMインスタンスを実行することができ、それらは、コンピューティングデバイス418を介して利用可能な異なる量のリソースを提供することができる。例えば、あるタイプのVMインスタンスは、他のタイプのVMインスタンスよりも多くのメモリ及び処理能力を提供する場合がある。
【0096】
コンピューティング環境403上で実行されるコンポーネントは、例えば、仮想プライベートクラウド(VPC)管理サービス424、1つまたは複数のネットワークサービス427、ならびに本明細書では詳細に説明しない他のアプリケーション、サービス、プロセス、システム、エンジン、もしくは機能を含む。VPC管理サービス424は、ネットワーク環境400によって実装される1つまたは複数の仮想プライベートクラウドネットワーク107(
図1)の動作を構成及び管理するために実行される。この目的のために、VPC管理サービス424は、一連のユーザインタフェースを生成するか、仮想プライベートクラウドネットワーク107を最初に作成し、その後変更できるようにするアプリケーションプログラミングインタフェース(API)をサポートすることができる。VPC管理サービス424は、アクセス制御リスト、セキュリティグループ、ネットワークスライス、暗号化、復号化、ネットワークアドレス割り当て及びルーティング、弾力的なネットワークインタフェース、ゲートウェイ、ファイアウォール、及び/または仮想プライベートクラウドネットワーク107の他のコンポーネントの構成を可能にすることができる。
【0097】
ネットワークサービス427は、仮想プライベートクラウドネットワーク107とその基盤となる物理ネットワーク及び論理ネットワークとをサポートする様々なサービスを含む。この目的のために、ネットワークサービス427は、ルーティング、ブリッジング、変換、ファイアウォール、トンネリング、暗号化、復号化、ロギング、及び/またはネットワーク環境400全体にわたるネットワークトラフィックのフローをサポートする他の機能を実行することができる。
【0098】
データストア415に記憶されるデータには、例えば、1つまたは複数のネットワークプラン439、1つまたは複数のセルラトポロジ442、1つまたは複数のスペクトル割り当て445、デバイスデータ448、1つまたは複数のRBNメトリック451、顧客請求データ454、無線ユニット構成データ457、アンテナ構成データ460、ネットワーク機能構成データ463、1つまたは複数のネットワーク機能ワークロード466、1つまたは複数の顧客ワークロード469、1つまたは複数のネットワークスライス470、1つまたは複数のサービス品質(QoS)要件471、1つまたは複数のアドレス構成472、1つまたは複数のアクセス制御リスト473、1つまたは複数の暗号化構成474、1つまたは複数のファイアウォールルールセット475、ネットワークアドレス変換データ476、1つまたは複数のセキュリティグループ477、及び他の可能なデータが含まれる。
【0099】
ネットワークプラン439は、顧客のためにデプロイされる無線式ネットワーク103の仕様である。例えば、ネットワークプラン439は、カバーされる施設のロケーションもしくは地理的エリア、セルの数、デバイス識別情報及び許可、所望の最大ネットワーク待ち時間、1つまたは複数のクラスのデバイスの所望の帯域幅もしくはネットワークスループット、アプリケーションもしくはサービスの1つまたは複数のサービスパラメータ品質、RBN103によってカバーされる1つまたは複数のルート、RBN103もしくはRBN103の一部のカバレッジのスケジュール、RBN103もしくはRBN103の一部のカバレッジの定期的なスケジュール、RBN103もしくはRBN103の一部の開始時間、ならびに、RBN103もしくはRBN103の一部の終了時間、RBN103の様々なロケーションでどの仮想プライベートクラウドネットワーク107をサポートすべきか、及び/または無線式ネットワーク103を作成するために使用できる他のパラメータを含み得る。顧客は、ユーザインタフェースを介してこれらのパラメータの1つまたは複数を手動で指定することができる。パラメータの1つまたは複数が、デフォルトパラメータとして事前にポピュレートされてよい。場合によっては、ネットワークプラン439は、無人航空機を使用した自動現場調査に少なくとも部分的に基づいて顧客向けに生成されてよい。ネットワークプラン439を規定するパラメータの値は、クラウドサービスプロバイダがユーティリティコンピューティングモデルの下で顧客に請求するための基礎として使用されてよい。例えば、顧客は、サービスレベル契約(SLA)において、低い待ち時間ターゲット及び/または高い帯域幅ターゲットに対して高い金額を請求されてよく、顧客は、サービスされる地理的エリアに基づいて、スペクトル可用性に基づいて、など、デバイスごとに、セルごとに請求されてよい。場合によっては、ネットワークプラン439は、顧客の既存のプライベートネットワークの自動プローブに少なくとも部分的に基づいて決定された閾値及び参照パラメータを組み込むことができる。
【0100】
セルラトポロジ442は、セルのロケーションを考慮して可能な場合には、周波数スペクトルの再利用を考慮した、顧客のための複数のセルの配置を含む。セルラトポロジ442は、サイト調査を行って自動的に生成することができる。場合によっては、セルラトポロジ442内のセルの数は、カバーされることになる所望の地理的エリア、様々なサイトでのバックホール接続性の可用性、信号伝播、利用可能な周波数スペクトル、及び/または他のパラメータに基づいて自動的に決定されてよい。無線式ネットワーク103の場合、セルラトポロジ442は、組織構内の1つまたは複数の建物、学区内の1つまたは複数の学校、大学もしくは大学システム内の1つまたは複数の建物、ならびに他のエリアをカバーするように開発されてよい。
【0101】
スペクトル割り当て445には、無線式ネットワーク103に割り振られるのに利用可能な周波数スペクトルと、無線式ネットワーク103に現在割り振られている周波数スペクトルとが含まれる。周波数スペクトルは、制限なく公的にアクセス可能なスペクトル、顧客が個人的に所有またはリースしているスペクトル、プロバイダが所有またはリースしているスペクトル、無料で使用できるが予約が必要なスペクトルなどを含み得る。
【0102】
デバイスデータ448は、無線式ネットワーク103への接続が許可されるワイヤレスデバイス106を記述するデータに対応する。このデバイスデータ448には、対応するユーザ、アカウント情報、請求情報、データプラン、許可されたアプリケーションまたは用途、ワイヤレスデバイス106がモバイルであるか固定であるかの指示、ロケーション、現在のセル、ネットワークアドレス、デバイス識別子(例えば、国際モバイル機器識別(IMEI)番号、機器シリアル番号(ESN)、メディアアクセス制御(MAC)アドレス、加入者識別モジュール(SIM)番号等)などが含まれる。一実施態様では、SIMは、クライアントデバイス215(
図3B)を特定の仮想プライベートクラウドネットワーク107にマッピングするために使用されてよい。個々のワイヤレスデバイス106は、物理的な取り外し可能なSIMの代わりに、またはそれに加えて、組み込みSIM(eSIM)を使用することができる。また、場合によっては、ワイヤレスデバイス106は、複数のSIM及び/または複数のeSIMを有してよく、これらのそれぞれは、複数の仮想プライベートクラウドネットワーク107のそれぞれに関連付けられてよい。
【0103】
RBNメトリック451は、無線式ネットワーク103のパフォーマンスまたは健全性を示す様々なメトリックまたは統計を含む。このようなRBNメトリック451は、帯域幅メトリック、ドロップパケットメトリック、信号強度メトリック、待ち時間メトリックなどを含み得る。RBNメトリック451は、デバイスごとに、セルごとに、顧客ごとになどで集約されてよい。
【0104】
顧客請求データ454は、プロバイダによる顧客のための無線式ネットワーク103の運用に対して顧客が負担すべき料金を指定する。料金は、顧客にデプロイされた機器に基づく固定費及び/または追跡される使用メトリックによって決定される利用に基づく使用費を含み得る。場合によっては、顧客が、前払いで機器を購入している場合があり、帯域幅またはバックエンドネットワークのコストのみが請求される場合がある。他の場合には、顧客は、前払い費用を負担しない場合があり、純粋に利用に基づいて請求される場合がある。ユーティリティコンピューティングモデルに基づいて機器が顧客に提供されるので、クラウドサービスプロバイダは、不必要なハードウェアのオーバプロビジョニングを回避しながら、顧客のターゲットパフォーマンスメトリックを満たすために、機器の最適な構成を選択することができる。
【0105】
無線ユニット構成データ457は、無線式ネットワーク103にデプロイされる無線ユニットの構成設定に対応し得る。このような設定は、使用すべき周波数、使用すべきプロトコル、変調パラメータ、帯域幅、ネットワークルーティング及び/またはバックホール構成などを含み得る。
【0106】
アンテナ構成データ460は、使用すべき周波数、方位角、垂直もしくは水平配向、ビーム傾斜、及び/または、(例えば、アンテナ上のネットワーク接続されたモータ及び制御装置によって)自動的に、または特定の方法でアンテナを取り付けるもしくはアンテナに物理的な変更を加えるようにユーザに指示することによって手動で、制御され得る他のパラメータを含む、アンテナの構成設定に対応し得る。
【0107】
ネットワーク機能構成データ463は、無線式ネットワーク103の様々なネットワーク機能の動作を構成する構成設定に対応する。様々な実施形態において、ネットワーク機能は、セルサイト、顧客アグリゲーションサイト、または顧客からリモートに位置するデータセンタにあるコンピューティングデバイス418にあるVMインスタンスまたはコンテナにデプロイされてよい。ネットワーク機能の非限定的な例は、アクセス及びモビリティ管理機能、セッション管理機能、ユーザプレーン機能、ポリシー制御機能、認証サーバ機能、統合データ管理機能、アプリケーション機能、ネットワーク公開機能、ネットワーク機能リポジトリ、ネットワークスライス選択機能、及び/またはその他を含み得る。ネットワーク機能ワークロード466は、1つまたは複数のネットワーク機能を実行するため、割り振られたコンピューティング容量421内で起動されることになるマシンイメージ、コンテナ、または機能に対応する。
【0108】
顧客ワークロード469は、割り振られたコンピューティング容量421内のネットワーク機能ワークロード466と並行に、またはその代わりに、実行され得る顧客のマシンイメージ、コンテナ、または機能に対応する。例えば、顧客ワークロード469は、顧客アプリケーションまたはサービスを提供しまたはサポートし得る。様々な例において、顧客ワークロード469は、工場自動化、自律ロボット工学、拡張現実、仮想現実、設計、監視などに関連する。
【0109】
ネットワークスライス470は、1つまたは複数の特定のサービス品質要件471に対して指定されたネットワークトラフィックのフローに対応する。フローは、特定のクライアントデバイス406上で実行される特定のアプリケーションに関連付けられたフロー、特定のクライアントデバイス406からのすべてのネットワークトラフィック、すべてのクライアントデバイス406からの特定の宛先へのフロー、特定のクライアントデバイス406から特定の宛先へのフロー、仮想プライベートクラウドネットワーク107に関連付けられたフロー、仮想プライベートクラウドネットワーク107内のサブネットに関連付けられたフローなどに対応し得る。一例では、ネットワークスライス470は、送信元ポート、送信元ネットワークアドレス、宛先ポート、宛先ネットワークアドレス、及び/または他の情報によって識別される。ネットワークスライス470は、特定の期間または特定の量のデータに対して有効であってもよいし、ネットワークスライス470は、キャンセルまたは解放されるまで有効であってもよい。一例では、ネットワークスライス470は、クライアントデバイス406上で実行される特定のアプリケーションに対してオンデマンドで割り当てられる。いくつかのシナリオでは、ネットワークスライス470が特定の繰り返し有効期間(例えば、毎週平日の午前0時から午前5時まで)を有している、あるいはネットワークスライス470のサービス品質要件471が、繰り返し期間、現在のコストレベル、及び/または他の要因もしくはイベントに基づいて変化し得る。
【0110】
さらに、ネットワークスライス470は、単一の仮想プライベートクラウドネットワーク107に関連付けられた潜在的に複数であるネットワークスライス470に対して差別化された管理を提供するために、異なるセキュリティプロパティに関連付けられてよい。例えば、第1のネットワークスライス470は、より大きなアクセスを有する管理サーバに対応してよく、第2のネットワークスライス470は、より制限されたアクセスを有するエンドユーザのクライアントデバイス215(
図3B)に対応してよい。
【0111】
サービス品質要件471は、最小または最大の帯域幅、最小または最大の待ち時間、最小または最大の信頼性尺度、最小または最大の信号強度などに対応し得る。サービス品質要件471は、固定コンポーネント、使用量ベースのコンポーネント、及び/または輻輳ベースのコンポーネントを含み得る対応するコストレベルに関連付けられてよい。例えば、サービス品質要件471は、毎月の経常の固定コスト、セッションごともしくはメガバイトごとのコスト、及び/またはセルサイトもしくは特定のネットワークリンクでの輻輳に基づく動的コストに関連付けられてよい。場合によっては、顧客は高レベルのサービスを提供するサービス品質要件471を選択する場合がある。しかしながら、他の場合には、顧客は、低レベルのコストを提供するが、特定の時間または特定の面においてサービス品質の低いサービス品質要件471を選択することもある。例えば、顧客は、ネットワークを介して低コストでバックアップデータを送信するために、夜間の高スループットを可能にするが、それ以外は優先度の低いスループットを可能にするサービス品質要件471を選択する場合がある。
【0112】
アドレス構成472は、仮想プライベートクラウドネットワーク107の個々のクライアントデバイス215へのネットワークアドレスの割り当てを構成する。このようなネットワークアドレスは、IPv4アドレス、IPv6アドレス、及び/または他の種類のアドレスを含み得る。例えば、仮想プライベートクラウドネットワーク107は、複数のサブネットを有するプライベートネットワークアドレス空間を有してよく、異なるサブネットは、異なるアクセス制御リスト473、セキュリティグループ、ネットワークスライス470、QoS要件471などに関連付けられてよい。アドレス構成472は、デバイスデータ448内で(例えば、SIMによって)識別された特定のデバイスにネットワークアドレスがどのように割り当てられるか、及びどのネットワークアドレスブロックから割り当てられるかを提供する。場合によっては、アドレス構成472は、公的にルーティング可能なネットワークアドレスが割り当てられていることを示し得る。
【0113】
ネットワークアクセス制御リスト473(ACL)は、仮想プライベートクラウドネットワーク107内のサブネットレベルで動作し、許可ルール及び拒否ルールをサポートし、関連付けられた任意のサブネット内のすべてのインスタンスに自動的に適用され得るアクセス制御のタイプに対応する。ネットワークACL473は、リターントラフィックがルールによって明示的に許可される必要があるという点で、ステートフルではない場合がある。
【0114】
暗号化構成474は、仮想プライベートクラウドネットワーク107内で使用される暗号化及び復号化を定義することができる。場合によっては、暗号化構成474は、ポイントツーポイント暗号化とエンドツーエンド暗号化の組み合わせが使用されることを定義することができる。エンドツーエンド暗号化は、仮想プライベートクラウドネットワーク107内の各ネットワークホスト上で実行されるサービス(例えば、VPCアプリケーション338(
図3B))、または各ホストが通信する初期ゲートウェイ326(
図3B)によって実装されてよい。ポイントツーポイント暗号化は、例えば、顧客のオンプレミスネットワークへのプライベートリンク、またはプライベートネットワークリンク332(
図3B)のような無線式ネットワーク103との間のリンクなど、ネットワーク内の異なるリンクに対して実装されてよい。
【0115】
ファイアウォールルールセット475は、仮想プライベートクラウドネットワーク107のファイアウォール323(
図3B)によって使用される様々なルールを定義することができる。これらのルールは、ネットワークトラフィックがいつドロップされるか、どのネットワークトラフィックがログされるか、サービス拒否防御、マルウェア防御、及び/または他の種類のファイアウォールルールを構成することができる。
【0116】
ネットワークアドレス変換データ476は、(例えば、クライアントデバイス215または仮想マシンインスタンスの)仮想プライベートクラウドネットワーク107上のネットワークアドレスを、無線式ネットワーク103またはクラウドプロバイダネットワーク203上のコンピューティングデバイスのネットワークアドレスにマッピングする情報を提供する。
【0117】
セキュリティグループ477は、インスタンスごと、アプリケーションごと、またはポートごとに特定のアクセス制御を定義することができる。セキュリティグループ477は、グループのすべてのメンバーに影響を及ぼす可能性のあるVPC管理サービス424による管理アクションの対象となる、仮想プライベートクラウドネットワーク107内のデバイスの異なるサブセットを指してよい。一実施形態では、セキュリティグループ477は、仮想マシンインスタンスの仮想ファイアウォールとして機能し、インバウンドトラフィック及びアウトバウンドトラフィックを制御する。顧客は、特定のインスタンスに適用できるポリシーとしてセキュリティグループ477を定義することができる。顧客が仮想プライベートクラウドネットワーク107内でインスタンスを起動するとき、顧客はそのインスタンスに1つまたは複数のセキュリティグループ477を割り当てることができる。セキュリティグループ477は、ネットワークACL473と同様にサブネットレベルではなくインスタンスレベルで機能する場合がある。したがって、サブネット内の各インスタンスをセキュリティグループ477の異なるセットに割り当てることができる。セキュリティグループ477ごとに、顧客はインスタンスへのインバウンドトラフィックを制御するルールと、アウトバウンドトラフィックを制御する別のルールのセットを追加することができる。セキュリティグループ477は、リターントラフィックが自動的に許可されるという点でステートフルであり得る。
【0118】
クライアントデバイス406は、ネットワーク412に結合され得る複数のクライアントデバイス406を表す。クライアントデバイス406は、例えば、コンピュータシステム等のプロセッサベースのシステムを含み得る。このようなコンピュータシステムは、デスクトップコンピュータ、ラップトップコンピュータ、パーソナルデジタルアシスタント、携帯電話、スマートフォン、セットトップボックス、音楽プレーヤ、ウェブパッド、タブレットコンピュータシステム、ゲーム機、電子書籍リーダ、スマートウォッチ、ヘッドマウントディスプレイ、音声インタフェースデバイス、または他のデバイスの形で具体化されてよい。クライアントデバイス406は、例えば、液晶ディスプレイ(LCD)ディスプレイ、ガスプラズマベースのフラットパネルディスプレイ、有機発光ダイオード(OLED)ディスプレイ、電子インク(Eインク)ディスプレイ、LCDプロジェクタ、または他の種類のディスプレイデバイス等の1つまたは複数のデバイスを含むディスプレイを備えてよい。
【0119】
クライアントデバイス406は、クライアントアプリケーション436及び/または他のアプリケーション等の様々なアプリケーションを実行するよう構成されてよい。クライアントアプリケーション436は、例えば、コンピューティング環境403及び/または他のサーバによって提供されるネットワークコンテンツにアクセスするためにクライアントデバイス406で実行され、それによってディスプレイ上にユーザインタフェースをレンダリングすることができる。この目的のために、クライアントアプリケーション436は、例えば、ブラウザ、専用アプリケーションなどを備えることができ、ユーザインタフェースは、ネットワークページ、アプリケーション画面などを含み得る。クライアントデバイス406は、クライアントアプリケーション436に加えて、例えば、eメールアプリケーション、ソーシャルネットワーキングアプリケーション、ワードプロセッサ、スプレッドシート、及び/または他のアプリケーション等のアプリケーションを実行するよう構成されてよい。
【0120】
いくつかの実施形態では、スペクトル予約サービス410は、RAN409で顧客が使用するために周波数スペクトルの予約を提供する。1つのシナリオでは、スペクトル予約サービス410は、公的にアクセス可能なスペクトルにおける予約及び共存を管理するために、サードパーティなどのエンティティによって運営される。このようなスペクトルの一例は、市民ブロードバンド無線サービス(CBRS)であり得る。別のシナリオでは、スペクトル予約サービス410は、プロバイダが所有またはライセンスを付与したスペクトルの部分を販売またはサブライセンスするために、電気通信サービスプロバイダによって運営される。
【0121】
次に
図5を参照すると、様々な実施形態による、仮想プライベートクラウドネットワーク107(
図1)の一部の動作が無線式ネットワーク103(
図1)に拡張された一例を提供するフローチャート500が示されている。当然ながら、フローチャート500は、本明細書に記載の仮想プライベートクラウドネットワーク107の一部の動作を実施するように採用され得る多くの異なるタイプの機能配置の一例を提供するにすぎない。代替として、フローチャート500は、1つまたは複数の実施形態による、コンピューティング環境403(
図4)で実施された方法の要素の例を示していると見なされてよい。
【0122】
ボックス501から始まり、VPC管理サービス424(
図4)は、無線式ネットワーク103の仮想プライベートクラウドネットワーク107のサブネットを作成する。例えば、VPC管理サービス424は、クラウドプロバイダネットワーク203(
図2A)において、仮想プライベートクラウドネットワーク107に関連付けられた顧客アカウントからサブネットを作成するためのAPI要求の受信に応答して、サブネットを作成することができる。場合によっては、サブネットはネットワークスライス470(
図4)に作成されてよい。ネットワークスライス470は、1つまたは複数のQoS要件471(
図4)と、ネットワークスライス470のために無線式ネットワーク103内の容量を予約する他のパラメータとに関連付けられてよい。容量は、帯域幅、ネットワーク機能処理能力(例えば、ユーザプレーン機能(UPF)または別のネットワーク機能のリソース)、より低い待ち時間を提供するリソースなどを含み得る。
【0123】
ボックス502において、VPC管理サービス424は、無線式ネットワーク103を介して仮想プライベートクラウドネットワーク107へのアクセスを許可されるべきクライアントデバイス215(
図3B)に関連付けられた1つまたは複数の加入者識別モジュール(SIM)または組み込みSIM(eSIM)を登録する。SIMまたはeSIMに関連付けられた識別子は、デバイスデータ448(
図4)及び/またはセキュリティグループ477(
図4)に記録されてよい。例えば、VPC管理サービス424は、ネットワークスライス470及び/または仮想プライベートクラウドネットワーク107の一方または両方にSIMまたはeSIMを登録するためのAPI要求の受信に応答して、ネットワークスライス470及び/または仮想プライベートクラウドネットワーク107にSIMまたはeSIMを登録することができる。API要求は、仮想プライベートクラウドネットワーク107またはネットワークスライス470に関連付けられた顧客アカウントから受信されてよい。
【0124】
ボックス503では、無線式ネットワーク103からのサービスに対する要求がクライアントデバイス215から受信される。例えば、クライアントデバイス215は、電源がオンになり、無線式ネットワーク103の無線アクセスネットワーク409(
図4)からのネットワーク接続についてネゴシエーションを開始するワイヤレスデバイス106(
図1)であってよい。クライアントデバイス215は、無線アクセスネットワーク409のセルサイトにある無線ユニットと通信することができる。
【0125】
ボックス506において、無線式ネットワーク103はクライアントデバイス215を識別する。例えば、無線式ネットワーク103は、SIMまたはeSIMからクライアントデバイス215によって提示される識別子を決定することができる。場合によっては、クライアントデバイス215は複数のSIMまたはeSIMを有し得る。他の識別子は、国際モバイル機器ID(IMEI:International Mobile Equipment Identity)番号、機器シリアル番号(ESN)、メディアアクセス制御(MAC)アドレス、及び/または他の識別子を含み得る。
【0126】
ボックス507において、VPC管理サービス424または無線式ネットワーク103のコアネットワーク内のサービスは、クライアントデバイス215がアクセスを許可される仮想プライベートクラウドネットワーク107を決定する。場合によっては、複数の仮想プライベートクラウドネットワーク107が、無線式ネットワーク103を介してアクセス可能であってもよい。1つのシナリオでは、無線式ネットワーク103は、単一の仮想プライベートクラウドネットワーク107を有する組織によって運営されるプライベートネットワークである。場合によっては、クライアントデバイス215は、複数の仮想プライベートクラウドネットワーク107へのアクセスを許可されてよい。VPC管理サービス424は、(例えば、SIMからの)識別子とセキュリティグループ477に列挙された識別子との比較に基づいて、クライアントデバイス215がアクセス権を有するかどうかを判断することができる。例えば、クライアントデバイス215内の潜在的に複数のSIMまたはeSIMのうちの特定のSIMまたはeSIMは、別個の仮想プライベートクラウドネットワーク107へのアクセスを許可することができる。また、クライアントデバイス215は、仮想プライベートクラウドネットワーク107へのアクセスを許可され得るが、仮想プライベートクラウドネットワーク107は、無線式ネットワーク103内のセルサイトごとに有効または無効にされ得る。
【0127】
ボックス509では、無線式ネットワーク103は、仮想プライベートクラウドネットワーク107に少なくとも部分的に基づいたルールセットに従って、インターネットプロトコル(IP)アドレスなどのネットワークアドレスをクライアントデバイス215に割り当てる。無線式ネットワーク103に接続する任意のクライアントデバイス215にネットワークアドレスを割り当てることができるが、この場合に割り当てられるネットワークアドレスは、仮想プライベートクラウドネットワーク107に関連付けられたアドレス構成472(
図4)に少なくとも部分的に基づいて選択される。すなわち、仮想プライベートクラウドネットワーク107上の他のホストには、潜在的に、それらが無線式ネットワーク103に接続されておらず、クラウドプロバイダネットワーク203(
図2A)に接続されている場合、同じアドレスブロック内のネットワークアドレスが与えられてよい。場合によっては、クライアントデバイス215の異なるグループが、仮想プライベートクラウドネットワーク107内の異なるサブネットに割り当てられてもよく、これにより、QoS要件471(
図4)を備えたアクセス制御及び/またはネットワークスライス470(
図4)の差別化された処理が可能になり得る。
【0128】
ボックス512において、VPC管理サービス424は、暗号化構成474(
図4)に従って、仮想プライベートクラウドネットワーク107内のクライアントデバイス215への、及び/またはクライアントデバイス215からのネットワークトラフィックの暗号化を構成する。これは、エンドツーエンド暗号化及び/またはポイントツーポイント暗号化を含み得る。例えば、仮想プライベートクラウドネットワーク107上のネットワークホストは、エンドツーエンドの暗号化及びトンネリングを実行するエージェントまたはサービスを実行するように構成されてよい。さらに、無線式ネットワーク103及び仮想プライベートクラウドネットワーク107内のゲートウェイは、ポイントツーポイント暗号化及びトンネリングを実行するように構成されてよい。場合によっては、暗号化は、クライアントデバイス215のSIMから生成されるか、またはSIMに記憶されているセキュリティキーを使用することができる。
【0129】
ボックス513において、VPC管理サービス424は、ルールセットに従ってクライアントデバイス215のネットワークスライス470を構成するか、またはルールセットに従って、待ち時間、帯域幅などに関連する1つまたは複数のQoS要件471を有し得るクライアントデバイス215を無線式ネットワーク103内の既存のネットワークスライス470に割り当てる。例えば、無線式ネットワーク103は、ロボット工場にデプロイされてよく、第1のロボットのセットが日中動作して製造作業を実行し、第2のロボットのセットが夜間に動作して清掃作業を実行する。第1のロボットのセットには、第2のロボットのセットとは異なるネットワークアドレスのサブネット及び異なるネットワークスライス470が割り当てられてよい。さらに、QoS要件471は、例えば、ネットワーク容量が主に夜間に第2のロボットセットに利用可能になるように、タイムスケジュールに従って変更することができる。ネットワークスライス470は、QoS要件471を満たして待ち時間を短縮するために、無線アクセスネットワーク409内の帯域幅及びコアネットワーク内の処理容量を予約することができ、その結果、ネットワーク機能ワークロード466をクラウドプロバイダネットワーク203からセルサイトまたはプロバイダサブストレートエクステンション224(
図2A)の他のエッジロケーション303(
図3A)に転送することができる。
【0130】
ボックス515において、VPC管理サービス424は、無線式ネットワーク103を介して仮想プライベートクラウドネットワーク107へのアクセスをクライアントデバイス215に提供する。これは、(4Gまたは5Gネットワークに接続する場合のように)、クライアントデバイス215が単に無線式ネットワーク103に接続し、そしてクライアントデバイス215は仮想プライベートクラウドネットワーク107に自動的に接続されるという点で、仮想プライベートネットワーク(VPN)トンネルまたはプライベートリンクを介してクライアントデバイス215を仮想プライベートクラウドネットワーク107に手動で接続することとは異なり得ることに留意されたい。例えば、いくつかの実施態様では、ユーザ名やパスワードなどの認証情報による追加の認証が回避される場合がある。また、クライアントデバイス215に与えられるネットワークアドレスは、仮想プライベートクラウドネットワーク107のアドレスブロック内にあり、パブリックアドレスではなく、無線式ネットワーク103の他のサブネット内にもない。
【0131】
ボックス518では、無線式ネットワーク103及びネットワークサービス427は、セキュリティグループ477(
図4)またはネットワークACL473(
図4)を施行することができる1つまたは複数のファイアウォール323(
図3B)と1つまたは複数のゲートウェイ326(
図3B)を潜在的に使用して、仮想プライベートクラウドネットワーク107を介して、1つまたは複数のクラウドサービス320(
図3B)とクライアントデバイス215との間で、ネットワークトラフィックをルーティングまたは転送する。セキュリティグループ477またはネットワークACL473はまた、無線式ネットワーク103内のクラウドプロバイダネットワーク203のプロバイダサブストレートエクステンション224でホストされる1つまたは複数のリソースへのアクセスを制御することができる。ネットワークトラフィックは、クライアントデバイス215にプロビジョニングされ、1つまたは複数のQoS要件471が適用されるネットワークスライス470の対象であってよい。ネットワークトラフィックは、パブリックインターネットではなく、クライアントデバイス215とクラウドプロバイダネットワーク203との間のプライベートネットワークリンク332(
図3B)を通過することができ、それによって待ち時間が改善される。
【0132】
ファイアウォール323は、ファイアウォールルールセット475(
図4)で定義されたルールを施行して、パケットのフィルタリング、データのトランスコード、接続のドロップもしくはブロック、トラフィックのログなどを実行することができる。いくつかのシナリオでは、クラウドサービス320、ゲートウェイ326、及びファイアウォール323は、サービス品質要件471を満たすために、無線式ネットワーク103内(セルサイト、顧客サイト、または他の中間ロケーションなど)のプロバイダサブストレートエクステンション224にデプロイされてよい。このような場合、ネットワークトラフィックは完全に無線式ネットワーク103内、または無線式ネットワーク103内のエッジロケーション/ローカルゾーン内に留まり、リージョナルデータセンタには入らない可能性がある。いくつかのシナリオでは、無線式ネットワーク103は、クライアントデバイス215と、仮想プライベートクラウドネットワーク107上にある無線式ネットワーク103に接続された他のクライアントデバイス215との間の通信を可能にし得る。他のシナリオでは、クライアントデバイス215は、無線式ネットワーク103ではなく、クラウドプロバイダネットワーク203及び仮想プライベートクラウドネットワーク107上にあるクラウドサービス320と通信する。一例では、仮想ルータ329(
図3B)を使用して、第1のネットワークスライス470を第2のネットワークスライス470に接続することができ、第1及び第2のネットワークスライス470は、仮想プライベートクラウドネットワーク107の異なるサブネットに関連付けられる。その後、フローチャート500は終了する。
【0133】
図6に移ると、様々な実施形態による、無線式ネットワーク103(
図1)のVPCゲートウェイ335(
図3B)の一部の動作の一例を提供するフローチャートが示されている。当然ながら、
図6のフローチャートは、本明細書に記載のVPCゲートウェイ335の一部の動作を実施するために採用され得る多くの異なるタイプの機能配置のうちの一例を提供しているに過ぎない。代替として、
図6のフローチャートは、1つまたは複数の実施形態による、コンピューティング環境403(
図4)で実施される方法の要素の例を示していると見なされてよい。
【0134】
ボックス603から始まり、無線式ネットワーク103は、クライアントデバイス215(
図3B)から無線式ネットワーク103へのサービス要求を受信する。クライアントデバイス215は、加入者識別モジュール(SIM)または組み込みSIMからのデータによって識別することができる。ボックス606において、VPCゲートウェイ335は、クライアントデバイス215に仮想プライベートクラウドネットワーク107(
図3B)へのアクセスを提供する。例えば、VPCゲートウェイ335は、SIMまたはeSIMに少なくとも部分的に基づいてクライアントデバイス215を認証することができ、またはクライアントデバイス215は、認証のための証明書、キー、パスワード、または他のセキュリティ認証情報を提供することができる。VPCゲートウェイ335は、仮想プライベートクラウドネットワーク107に対応するネットワークアドレスのプールから、仮想プライベートクラウドネットワーク107上のネットワークアドレスをクライアントデバイス215に割り当てることができる。
【0135】
ボックス609で、VPCゲートウェイ335は、仮想プライベートクラウドネットワーク107上を宛先とするネットワークトラフィックをクライアントデバイス215から受信する。例えば、宛先ネットワークアドレスは、クラウドサービス320(
図3B)の仮想マシンインスタンスに対応し得る。ボックス610において、VPCゲートウェイ335は、VPC制御プレーンを介して取得された1つまたは複数のVPCセキュリティグループ477(
図4)ルールまたはネットワークACL473(
図4)を適用して、ネットワークトラフィックのその宛先への転送が許可されているかどうかを判断することができる。例えば、クライアントデバイス215からのネットワークトラフィックは、仮想プライベートクラウドネットワーク107を運営する組織内でクライアントデバイス215に関連付けられた役割またはユーザに基づいて、宛先に転送することが許可されない場合がある。
【0136】
ボックス612で、VPCゲートウェイ335はネットワークトラフィックをカプセル化する。例えば、VPCゲートウェイ335は、ネットワークトラフィック内のデータパケットに1つまたは複数のヘッダを追加することができる。また、VPCゲートウェイ335は、宛先ネットワークアドレスを、仮想マシンインスタンスをホストするクラウドプロバイダネットワーク203(
図3B)上のコンピューティングデバイス418(
図4)の宛先ネットワークアドレスに変換することができる。VPCゲートウェイ335は、ネットワークアドレス変換データ476(
図4)を参照して変換を行ってよい。VPCゲートウェイ335は、仮想プライベートクラウドネットワーク107上のクライアントデバイス215の送信元ネットワークアドレスを無線式ネットワーク103上の送信元ネットワークアドレスに変換することもできる。VPCゲートウェイ335は、ネットワークトラフィックを暗号化することもできる。
【0137】
ボックス615において、VPCゲートウェイ335は、カプセル化されたネットワークトラフィックを、ネットワークリンク332(
図3B)を介して無線式ネットワーク103からクラウドプロバイダネットワーク203に転送する。VPCゲートウェイ335は、転送決定を行うために、仮想プライベートクラウドネットワーク107の制御プレーンを介してポピュレートされたVPCルーティングテーブルを維持することができる。ボックス618で、VPCゲートウェイ335は、ネットワークリンク332を介してクラウドプロバイダネットワーク203からカプセル化されたネットワークトラフィックを受信する。カプセル化されたネットワークトラフィックは、仮想プライベートクラウドネットワーク107上の1つまたは複数のホストによって送信される。
【0138】
ボックス621において、VPCゲートウェイ335は、ネットワークトラフィックをデカプセル化する。これは、(例えば、コンピューティングデバイスの)クラウドプロバイダネットワーク203上の送信元ネットワークアドレスを仮想プライベートクラウドネットワーク107上の送信元ネットワークアドレスに変換すること、及び、無線式ネットワーク103上のクライアントデバイス215の宛先ネットワークアドレスを、仮想プライベートクラウドネットワーク107上の宛先ネットワークアドレスに変換することを含み得る。これは、カプセル化によって追加されたヘッダを単純に削除することを含み得る。VPCゲートウェイ335は、ネットワークトラフィックを復号化することもできる。ボックス624で、VPCゲートウェイ335は、ネットワークトラフィックをクライアントデバイス215に転送する。その後、VPCゲートウェイ335の部分の動作が終了する。
【0139】
ここで
図7に目を向けると、様々な実施形態による、無線式ネットワーク103(
図1)のVPCアプリケーション338(
図3B)の一部の動作の一例を提供するフローチャートが示されている。当然ながら、
図7のフローチャートが本明細書に記載のVPCアプリケーション338の一部の動作を実施するために採用され得る多くの異なるタイプの機能配置の一例を提供しているに過ぎない。代替として、
図7のフローチャートは、1つまたは複数の実施形態による、クライアントデバイス215(
図3B)で実施される方法の要素の例を示すと見なされてよい。
【0140】
ボックス703から始まり、クライアントデバイス215は無線式ネットワーク103にサービスを要求する。クライアントデバイス215は、加入者識別モジュール(SIM)または組み込みSIMからのデータによって識別することができる。ボックス706では、VPCアプリケーション338は、無線式ネットワーク103を介して仮想プライベートクラウドネットワーク107(
図3B)に接続する。例えば、VPCアプリケーション338は、SIMまたはeSIMに少なくとも部分的に基づいてクライアントデバイス215を認証することができ、またはVPCアプリケーション338は、認証のための証明書、キー、パスワード、または他のセキュリティ認証情報を提供することができる。VPCアプリケーション338は、仮想プライベートクラウドネットワーク107に対応するネットワークアドレスのプールから仮想プライベートクラウドネットワーク107上のネットワークアドレスを受信することができる。
【0141】
ボックス709で、VPCアプリケーション338は、クライアントデバイス215上の別のアプリケーションから、仮想プライベートクラウドネットワーク107上を宛先とするネットワークトラフィックを受信する。例えば、宛先ネットワークアドレスは、クラウドサービス320(
図3B)の仮想マシンインスタンスに対応し得る。ボックス710において、VPCアプリケーション338は、VPC制御プレーンを介して取得された1つまたは複数のVPCセキュリティグループ477(
図4)ルールまたはネットワークACL473(
図4)を適用して、ネットワークトラフィックのその宛先への転送が許可されているかどうかを判断することができる。例えば、クライアントデバイス215からのネットワークトラフィックは、仮想プライベートクラウドネットワーク107を運営する組織内でクライアントデバイス215に関連付けられた役割またはユーザに基づいて、宛先に転送することが許可されない場合がある。
【0142】
ボックス712で、VPCアプリケーション338はネットワークトラフィックをカプセル化する。例えば、VPCアプリケーション338は、ネットワークトラフィック内のデータパケットに1つまたは複数のヘッダを追加することができる。また、VPCアプリケーション338は、宛先ネットワークアドレスを、仮想マシンインスタンスをホストするクラウドプロバイダネットワーク203(
図3B)上のコンピューティングデバイス418(
図4)の宛先ネットワークアドレスに変換することができる。VPCアプリケーション338は、ネットワークアドレス変換データ476(
図4)を参照して変換を行ってよい。VPCアプリケーション338は、仮想プライベートクラウドネットワーク107上のクライアントデバイス215の送信元ネットワークアドレスを無線式ネットワーク103上の送信元ネットワークアドレスに変換することもできる。VPCアプリケーション338は、ネットワークトラフィックを暗号化することもできる。
【0143】
ボックス715で、VPCアプリケーション338は、カプセル化されたネットワークトラフィックを無線式ネットワーク103に転送する。VPCアプリケーション338は、仮想プライベートクラウドネットワーク107の制御プレーンを介して、VPCルーティングテーブルのデータを受信して、転送決定を行うことができる。ボックス718で、VPCアプリケーション338は、無線式ネットワーク103からカプセル化されたネットワークトラフィックを受信する。カプセル化されたネットワークトラフィックは、仮想プライベートクラウドネットワーク107上の1つまたは複数のホストによって送信される。
【0144】
ボックス721において、VPCアプリケーション338は、ネットワークトラフィックをデカプセル化する。これは、(例えば、コンピューティングデバイスの)クラウドプロバイダネットワーク203上の送信元ネットワークアドレスを仮想プライベートクラウドネットワーク107上の送信元ネットワークアドレスに変換すること、及び、無線式ネットワーク103上のクライアントデバイス215の宛先ネットワークアドレスを、仮想プライベートクラウドネットワーク107上の宛先ネットワークアドレスに変換することを含み得る。これは、カプセル化によって追加されたヘッダを単純に削除することを含み得る。VPCアプリケーション338は、ネットワークトラフィックを復号化することもできる。ボックス724で、VPCアプリケーション338は、ネットワークトラフィックをクライアントデバイス215上の他のアプリケーションに転送する。例えば、VPCアプリケーション338は、転送決定を行うためにVPCルーティングテーブルを使用してよい。また、VPCアプリケーション338は、ネットワークトラフィックを他のアプリケーションに転送するかどうかを決定するために、仮想プライベートクラウドネットワーク107内の1つまたは複数のセキュリティグループ477ルールまたはネットワークACL473を参照することができる。その後、VPCアプリケーション338の一部の動作が終了する。
【0145】
図8を参照すると、本開示の実施形態による、コンピューティング環境403の概略ブロック図が示されている。コンピューティング環境403は、1つまたは複数のコンピューティングデバイス800を含む。各コンピューティングデバイス800は、例えば、プロセッサ803及びメモリ806を有する少なくとも1つのプロセッサ回路を含み、プロセッサ803及びメモリ806は両方とも、ローカルインタフェース809に結合される。このために、各コンピューティングデバイス800は、例えば、少なくとも1つのサーバコンピュータまたは同様のデバイスを含み得る。ローカルインタフェース809は、理解されるように、例えば、付随するアドレス/制御バスを含むデータバスまたは他のバス構造を含み得る。
【0146】
メモリ806に記憶されるのは、データと、プロセッサ803によって実行可能ないくつかのコンポーネントとの両方である。具体的には、メモリ806に記憶され、かつプロセッサ803により実行可能であるのは、VPN管理サービス424、ネットワークサービス427、及び他の可能なアプリケーションである。また、メモリ806に記憶されるのは、データストア415及び他のデータであってよい。さらに、オペレーティングシステムは、メモリ806に記憶され、かつプロセッサ803により実行可能であってよい。
【0147】
当然ながら、メモリ806に記憶され、かつプロセッサ803により実行可能である他のアプリケーションが存在してもよいことが理解される。本明細書に説明される任意のコンポーネントが、ソフトウェアの形態で実装される場合、例えばC、C++、C#、Objective C、Java(登録商標)、JavaScript(登録商標)、Perl、PHP、Visual Basic(登録商標)、Python(登録商標)、Ruby、Flash(登録商標)、または他のプログラミング言語等のいくつかのプログラミング言語のうちの任意のものを採用し得る。
【0148】
いくつかのソフトウェアコンポーネントが、メモリ806に記憶され、プロセッサ803によって実行可能である。この点において、「実行可能」という用語は、プロセッサ803により最終的に実行することができる形式のプログラムファイルを意味する。実行可能なプログラムの例は、例えば、メモリ806のランダムアクセス部分にロードでき、かつプロセッサ803により実行できるフォーマットで機械コードに変換することができるコンパイルされたプログラム、メモリ806のランダムアクセス部分にロードすることができ、かつプロセッサ803により実行することができるオブジェクトコード等の適切なフォーマットで表現され得るソースコード、またはプロセッサ803により実行されるようにメモリ806のランダムアクセス部分で命令を生成する別の実行可能なプログラムにより解釈され得るソースコード等であってよい。実行可能なプログラムは、例えば、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、ハードドライブ、ソリッドステートドライブ、USBフラッシュドライブ、メモリカード、コンパクトディスク(CD)もしくはデジタル多用途ディスク(DVD)等の光ディスク、フロッピーディスク、磁気テープ、または他のメモリコンポーネントを含むメモリ806の任意の部分またはコンポーネントに記憶されてよい。
【0149】
メモリ806は、揮発性メモリ及び不揮発性メモリの両方とデータストレージコンポーネントとを含むものとして本明細書に定義される。揮発性コンポーネントは、電源喪失時にデータ値を保持しないものである。不揮発性コンポーネントは、電源喪失時にデータを保持するものである。したがって、メモリ806は、例えば、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、ハードディスクドライブ、ソリッドステートドライブ、USBフラッシュドライブ、メモリカードリーダを介してアクセスされるメモリカード、関連するフロッピーディスクドライブを介してアクセスされるフロッピーディスク、光ディスクドライブを介してアクセスされる光ディスク、適切なテープドライブを介してアクセスされる磁気テープ、及び/または他のメモリコンポーネント、あるいはこれらのメモリコンポーネントのうちの任意の2つ以上の組み合わせを含み得る。さらに、RAMは、例えば、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、または磁気ランダムアクセスメモリ(MRAM)、ならびに他のこのようなデバイスを含み得る。ROMは、例えば、プログラマブル読み取り専用メモリ(PROM)、消去可能プログラマブル読み取り専用メモリ(EPROM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM)、または他の同様のメモリデバイスを含み得る。
【0150】
また、プロセッサ803は、複数のプロセッサ803及び/または複数のプロセッサコアを表してよく、メモリ806は、それぞれ並列処理回路で動作する複数のメモリ806を表してよい。このような場合、ローカルインタフェース809は、複数のプロセッサ803のうちの任意の2つの間、任意のプロセッサ803とメモリ806のうちのいずれかとの間、またはメモリ806のうちの任意の2つの間等の通信を容易にする適切なネットワークであってよい。ローカルインタフェース809は、例えば、ロードバランシングの実施を含むこの通信を調整するように設計された追加のシステムを備えてよい。プロセッサ803は、電気的構造またはいくつかの他の利用可能な構造であってよい。
【0151】
本明細書に記載のVPC管理サービス424、ネットワークサービス427、及び他の様々なシステムは、上述のように、汎用ハードウェアにより実行されるソフトウェアまたはコードで具体化され得るが、代替として、同様のものが専用ハードウェアまたはソフトウェア/汎用ハードウェアと専用ハードウェアとの組み合わせで具体化されてもよい。専用ハードウェアで具体化される場合、各々は、多数の技術のうちの任意の1つまたはその組み合わせを用いる回路または状態機械として実装することができる。これらの技術は、1つまたは複数のデータ信号の印可時に様々な論理機能を実施するための論理ゲートを有する離散論理回路、適切な論理ゲートを有する特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または他のコンポーネント等を含み得るが、これらに限定されない。このような技術は、概して、当業者により周知であることから、本明細書に詳細に記載しない。
【0152】
図5~
図7のフローチャートは、無線式ネットワーク103及び仮想プライベートクラウドネットワーク107の一部の実施態様の機能及び動作を示す。ソフトウェアで具体化される場合、各ブロックは、特定の論理機能(複数可)を実施するために、プログラム命令を含むコードのモジュール、セグメント、または部分を表し得る。プログラム命令は、プログラミング言語で書かれる人間が読める命令文を含むソースコード、またはコンピュータシステムもしくは他のシステム内のプロセッサ803等の適切な実行システムにより認識可能な数値命令を含む機械コードの形式で具体化されてよい。機械コードは、ソースコード等から変換されてよい。ハードウェアで具体化する場合、各ブロックは、特定の論理機能(複数可)を実施するために、回路または多数の相互接続された回路を表し得る。
【0153】
図5~
図7のフローチャートは、具体的な実行順序を示すが、実行順序が図示する順序と異なってもよいことは当然である。例えば、2つ以上のブロックの実行順序は、図示する順序を入れ替えてもよい。また、
図5~
図7に連続して示される2つ以上のブロックは、同時に、または一部同時に実行されてよい。さらに、いくつかの実施形態では、
図5~
図7に示される1つまたは複数のブロックは、飛ばされるまたは省かれる場合もある。さらに、ユーティリティの向上、会計処理、パフォーマンス測定、またはトラブルシューティングの手掛かりの提供等の目的で、任意の数のカウンタ、状態変数、警告セマフォ、またはメッセージを、本明細書に記載する論理フローに加えてもよい。当然ながら、すべてのこのような変形は、本開示の範囲内にある。
【0154】
また、ソフトウェアまたはコードを備える、VPC管理サービス424及びネットワークサービス427を含む、本明細書に記載の任意の論理またはアプリケーションは、例えば、コンピュータシステムまたは他のシステム内のプロセッサ803等の命令実行システムが使用する、またはそれに関連して使用する、任意の非一時的なコンピュータ可読媒体で具体化することができる。この意味では、論理は、例えば、コンピュータ可読媒体からフェッチでき、かつ命令実行システムにより実行できる命令及び宣言を含む記述を含み得る。本開示の文脈において、「コンピュータ可読媒体」は、命令実行システムが使用する、またはそれに関連して使用する、本明細書に記載の論理またはアプリケーションを包含、記憶、または保持することができる任意の媒体であってよい。
【0155】
コンピュータ可読媒体は、例えば、磁気、光学、または半導体媒体等の多数の物理媒体のうちの任意の1つを含み得る。適切なコンピュータ可読媒体のより具体的な例は、磁気テープ、磁気フロッピーディスケット、磁気ハードドライブ、メモリカード、ソリッドステートドライブ、USBフラッシュドライブ、または光ディスクを含むが、これらに限定されない。また、コンピュータ可読媒体は、例えば、スタティックランダムアクセスメモリ(SRAM)及びダイナミックランダムアクセスメモリ(DRAM)、または磁気ランダムアクセスメモリ(MRAM)を含むランダムアクセスメモリ(RAM)であってよい。さらに、コンピュータ可読媒体は、読み取り専用メモリ(ROM)、プログラマブル読み取り専用メモリ(PROM)、消去可能プログラマブル読み取り専用メモリ(EPROM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM)、または他の種類のメモリデバイスであってよい。
【0156】
また、VPC管理サービス424及びネットワークサービス427を含む、本明細書に記載の任意の論理またはアプリケーションは、様々な方法で実装され、構築されてよい。例えば、記載した1つまたは複数のアプリケーションは、単一のアプリケーションのモジュールまたはコンポーネントとして実装されてよい。さらに、本明細書に記載した1つまたは複数のアプリケーションは、共有されたコンピューティングデバイスもしくは別々のコンピューティングデバイス、またはそれらの組み合わせで実行されてよい。例えば、本明細書に記載の複数のアプリケーションは、同じコンピューティングデバイス800で、または同じコンピューティング環境403の複数のコンピューティングデバイス800で実行されてよい。
【0157】
特に明記しない限り、句「X、YまたはZのうちの少なくとも1つ」などの離接的な文言は、項目、用語等がX、YもしくはZのいずれか、またはそれらの任意の組み合わせ(例えば、X、Y、及び/またはZ)であってよいことを示すために一般的に用いられるとして文脈の中で理解される。ゆえに、このような離接的な文言は、特定の実施形態がXの少なくとも1つ、Yの少なくとも1つ、またはZの少なくとも1つがそれぞれ存在することを必要とすることを一般的に意図しておらず、示唆してもいない。
【0158】
本開示の実施形態は、以下の条項のうちの1つまたは複数によって説明することができる。
【0159】
条項1.クラウドプロバイダネットワークへのネットワークリンクを有する無線式ネットワークと、関連するインターネットプロトコル(IP)アドレス範囲を有する仮想プライベートクラウドネットワークをホストする前記クラウドプロバイダネットワークとを備えるシステムであって、前記クラウドプロバイダネットワークは、前記無線式ネットワークに前記仮想プライベートクラウドネットワークのサブネットを作成することと、前記仮想プライベートクラウドネットワークにクライアントデバイスの加入者識別モジュールを登録することと、前記仮想プライベートクラウドネットワークの前記関連するIPアドレス範囲から前記加入者識別モジュールにIPアドレスを割り当てることと、前記無線式ネットワークへの前記ネットワークリンクを介して前記仮想プライベートクラウドネットワークから前記クライアントデバイスにネットワークトラフィックを転送することとを行うように少なくとも構成された少なくとも1つのコンピューティングデバイスを含む、前記システム。
【0160】
条項2.前記無線式ネットワークが、前記仮想プライベートクラウドネットワーク上の前記クライアントデバイスの前記IPアドレスを前記無線式ネットワーク上の前記クライアントデバイスの別のネットワークアドレスに変換することに少なくとも部分的に基づいて、前記仮想プライベートクラウドネットワークからの前記ネットワークトラフィックをデカプセル化するように少なくとも構成されたゲートウェイをさらに備える、条項1に記載のシステム。
【0161】
条項3.前記ゲートウェイが、前記クライアントデバイスから他のネットワークトラフィックを受信することと、前記仮想プライベートクラウドネットワーク上の仮想マシンインスタンスの第1のネットワークアドレスを前記クラウドプライベートネットワーク上の特定のコンピューティングデバイスの第2のネットワークアドレスに変換することに少なくとも部分的に基づいて、前記他のネットワークトラフィックをカプセル化することであって、前記仮想マシンインスタンスは前記特定のコンピューティングデバイス上で実行される、前記カプセル化することと、前記カプセル化された他のネットワークトラフィックを前記ネットワークリンクを介して前記仮想プライベートクラウドネットワークに転送することとを少なくとも行うようにさらに構成される、条項2に記載のシステム。
【0162】
条項4.前記ネットワークリンクが、前記無線式ネットワークと前記クラウドプロバイダネットワークとの間の専用プライベートリンクに対応する、条項1~3に記載のシステム。
【0163】
条項5.前記クライアントデバイスが、前記ネットワークトラフィックをデカプセル化し、前記クラウドプロバイダネットワーク上の送信元IPアドレスを前記仮想プライベートクラウドネットワーク上の送信元IPアドレスに変換するように構成される、条項1~4に記載のシステム。
【0164】
条項6.無線式ネットワークからのサービスに対するクライアントデバイスからの要求を受信することと、前記無線式ネットワークからの前記サービスに対する前記クライアントデバイスからの前記要求の受信に応答して、前記クライアントデバイスに、前記無線式ネットワークを介した仮想プライベートクラウドネットワークへのアクセスを提供することと、前記仮想プライベートクラウドネットワークに関連付けられたネットワークアドレスのプールからネットワークアドレスを前記クライアントデバイスに割り当てることと、カプセル化されたネットワークトラフィックを、前記無線式ネットワークと、前記仮想プライベートクラウドネットワーク上の1つまたは複数のリソースをホストするクラウドプロバイダネットワークとの間のネットワークリンクを介して、前記クライアントデバイスから前記仮想プライベートクラウドネットワークに転送することとを含む、コンピュータ実装方法。
【0165】
条項7.前記無線式ネットワーク内のゲートウェイによって、前記クライアントデバイスから受信したネットワークトラフィックをカプセル化することによって、前記カプセル化されたネットワークトラフィックを生成することをさらに含む、条項6に記載のコンピュータ実装方法。
【0166】
条項8.前記ゲートウェイによって、前記仮想プライベートクラウドネットワーク上の仮想マシンインスタンスの第1のネットワークアドレスを、前記クラウドプライベートネットワーク上のコンピューティングデバイスの第2のネットワークアドレスに変換することをさらに含み、前記仮想マシンインスタンスは、前記コンピューティングデバイス上で実行される、条項7に記載のコンピュータ実装方法。
【0167】
条項9.前記ゲートウェイが、前記無線式ネットワークの無線アクセスネットワークで実装される、条項7~8に記載のコンピュータ実装方法。
【0168】
条項10.前記ゲートウェイが、前記無線式ネットワークのコアネットワークで実装される、条項7~9に記載のコンピュータ実装方法。
【0169】
条項11.前記ゲートウェイが、前記コアネットワークのカスタマイズされたユーザプレーン機能で実装される、条項10に記載のコンピュータ実装方法。
【0170】
条項12.ルールセットに少なくとも部分的に基づいて、前記仮想プライベートクラウドネットワークに転送されるべき前記クライアントデバイスからのネットワークトラフィックを識別することをさらに含む、条項6~11に記載のコンピュータ実装方法。
【0171】
条項13.前記無線式ネットワークを介して前記仮想プライベートクラウドネットワークへのアクセスを前記クライアントデバイスに提供することが、前記クライアントデバイスの加入者識別モジュールに少なくとも部分的に基づく、条項6~12に記載のコンピュータ実装方法。
【0172】
条項14.前記無線式ネットワークにおいて、前記仮想プライベートクラウドネットワークに対応するネットワークスライスを構成することをさらに含む、条項6~13に記載のコンピュータ実装方法。
【0173】
条項15.前記無線式ネットワークを介して複数の仮想プライベートクラウドネットワークへのアクセスを前記クライアントデバイスに提供することをさらに含む、条項6~14に記載のコンピュータ実装方法。
【0174】
条項16.無線式ネットワークからクライアントデバイスによってサービスを要求することと、前記クライアントデバイスによって、前記無線式ネットワークを介して仮想プライベートクラウドネットワークに接続することと、前記クライアントデバイスによって、前記仮想プライベートクラウドネットワークに対応するネットワークアドレスのプールからネットワークアドレスの割り当てを受信することと、前記クライアントデバイスで実行されるアプリケーションからネットワークトラフィックを受信することであって、前記ネットワークトラフィックは、前記仮想プライベートクラウドネットワーク上の仮想マシンインスタンスの第1のネットワークアドレス宛である、前記ネットワークトラフィックを受信することと、前記クライアントデバイスによって、前記第1のネットワークアドレスをクラウドプロバイダネットワーク上のコンピューティングデバイスの第2のネットワークアドレスに変換することに少なくとも部分的に基づいて、前記ネットワークトラフィックをカプセル化することであって、前記仮想マシンインスタンスは前記コンピューティングデバイス上で実行される、前記カプセル化することと、前記クライアントデバイスによって、前記カプセル化されたネットワークトラフィックを前記無線式ネットワークに転送することとを含む、コンピュータ実装方法。
【0175】
条項17.前記クライアントデバイスで実行される別のアプリケーションが、前記ネットワークトラフィックをカプセル化するか、または前記クライアントデバイスで実行されるオペレーティングシステムが、前記ネットワークトラフィックをカプセル化する、条項16に記載のコンピュータ実装方法。
【0176】
条項18.前記クライアントデバイスによって、前記仮想プライベートクラウドネットワークの制御プレーンを介して、セキュリティグループルールまたはネットワークアクセス制御リスト(ACL)のうちの少なくとも1つを受信することと、前記クライアントデバイスによって、前記ネットワークトラフィックに対する前記セキュリティグループルールまたは前記ネットワークACLのうちの少なくとも1つの適用に少なくとも部分的に基づいて、前記ネットワークトラフィックの転送を判断することとをさらに含む、条項16~17に記載のコンピュータ実装方法。
【0177】
条項19.前記無線式ネットワークから、前記第1のネットワークアドレスを前記第2のネットワークアドレスに変換するためのネットワークアドレス変換データを受信することをさらに含む、条項16~18に記載のコンピュータ実装方法。
【0178】
条項20.前記カプセル化されたネットワークトラフィックを転送することが、前記仮想プライベートクラウドネットワークに対応するネットワークスライスを介して、前記カプセル化されたネットワークトラフィックを前記無線式ネットワークに転送することをさらに含む、条項16~19に記載のコンピュータ実装方法。
【0179】
本開示の上述の実施形態が、本開示の原理を明確に理解するために記述される可能な実施態様の例に過ぎないことを強調しておく。本開示の趣旨及び原理から実質的に逸脱することなく、多くの変形及び修正を上述の実施形態(複数可)に加えてもよい。すべてのこのような修正及び変形は、本明細書において、本開示の範囲内に含まれ、以下の特許請求の範囲によって保護されることが意図される。
【国際調査報告】