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

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

▶ レベル スリー コミュニケーションズ,エルエルシーの特許一覧

特表2024-504200エッジコンピューティング環境での顧客アクティブ化
<>
  • 特表-エッジコンピューティング環境での顧客アクティブ化 図1
  • 特表-エッジコンピューティング環境での顧客アクティブ化 図2
  • 特表-エッジコンピューティング環境での顧客アクティブ化 図3
  • 特表-エッジコンピューティング環境での顧客アクティブ化 図4
  • 特表-エッジコンピューティング環境での顧客アクティブ化 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-01-30
(54)【発明の名称】エッジコンピューティング環境での顧客アクティブ化
(51)【国際特許分類】
   H04L 41/5025 20220101AFI20240123BHJP
   H04L 45/851 20220101ALI20240123BHJP
   H04L 41/0668 20220101ALI20240123BHJP
【FI】
H04L41/5025
H04L45/851
H04L41/0668
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023545956
(86)(22)【出願日】2021-12-29
(85)【翻訳文提出日】2023-07-28
(86)【国際出願番号】 US2021065515
(87)【国際公開番号】W WO2022147127
(87)【国際公開日】2022-07-07
(31)【優先権主張番号】63/132,716
(32)【優先日】2020-12-31
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】508140877
【氏名又は名称】レベル スリー コミュニケーションズ,エルエルシー
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】サヴィル、ティモシー ポール
(72)【発明者】
【氏名】マクレイノルズ、クリストファー
(72)【発明者】
【氏名】リッチー、オースティン
【テーマコード(参考)】
5K030
【Fターム(参考)】
5K030GA12
5K030HA08
5K030HD03
5K030KA05
5K030LB09
5K030MB02
5K030MB04
(57)【要約】
プロバイダネットワークサイトにコンピューティングサービスを推奨及び実装するためのシステム及び方法が提供される。プロバイダネットワークは、エッジコンピューティングサイトなどの複数のプロバイダサイトを含んでよい。エッジコンピューティングサイトは、画一的でなくてよく、例えば、それらはコンピューティング能力、セキュリティ証明、拡張容量、データストレージの利用可能性、ネットワーク接続性のタイプなどにおいて異なってよい。最適化システムは、コンピューティングサービスをホストするための1つ又は複数の最適化されたプロバイダサイトを判定するために、サービス情報及び最適化基準の両方を使用する。さらに、サイト障害、又は改善メトリックが最短期間にわたって閾値を超えているという判定などの変更事象に応答して、コンピューティングサービスが動的に移動できるように、サービス情報及び最適化基準は、記憶及び更新されてよい。
【特許請求の範囲】
【請求項1】
コンピューティングサービスに関するサービス情報を受信する段階;
ユーザインタフェースを介して最適化基準を受信する段階;
前記サービス情報及び前記最適化基準に基づき、プロバイダネットワークの少なくとも第1のプロバイダサイトを含む、前記コンピューティングサービスのための複数のプロバイダサイト候補を判定する段階;
前記コンピューティングサービスを前記第1のプロバイダサイトに展開する段階;
前記最適化基準を記憶する段階;
前記記憶された最適化基準に基づき、前記プロバイダネットワークの第2のプロバイダサイトを自動的に判定する段階;
変更事象を検出する段階;及び
前記コンピューティングサービスを前記第2のプロバイダサイトに展開する段階
を備える方法。
【請求項2】
前記変更事象が、サービス障害を有する、請求項1に記載の方法。
【請求項3】
前記変更事象を検出する前記段階は、前記コンピューティングサービスを前記第2のプロバイダサイトに展開するための改善メトリックが、所定の時間量にわたって閾値を超えていると判定する段階を有する、請求項1又は2に記載の方法。
【請求項4】
前記コンピューティングサービスを前記第2のプロバイダサイトに展開するための前記改善メトリックが前記所定の時間量にわたって前記閾値を超えていると判定する前記段階は、前記プロバイダネットワークのネットワーク性能情報、及び前記第2のプロバイダサイトにおけるコンピューティング利用可能性を評価する段階を含む、請求項3に記載の方法。
【請求項5】
アプリケーションプログラミングインタフェース(API)を提供する段階;
前記APIを介して、異なるプロバイダから追加のネットワーク性能情報を受信する段階;
をさらに備え、
前記ネットワーク性能情報を評価する前記段階は、前記第2のプロバイダサイトにネットワーク接続性を提供する際に前記異なるプロバイダを利用するかどうかを判定するために、前記追加のネットワーク性能情報を評価する段階を含む、請求項4に記載の方法。
【請求項6】
前記複数のプロバイダサイト候補を判定する前記段階は、前記最適化基準に対応した最適化データを判定する段階を有し、前記第2のプロバイダサイトを自動的に判定する前記段階は、前記コンピューティングサービスを前記第1のプロバイダサイトに展開した後に行われ、前記方法がさらに、
前記コンピューティングサービスを前記第1のプロバイダサイトに展開した後の、前記コンピューティングサービスに関する更新済みサービス情報及び更新済み最適化データのうちの少なくとも1つを含む更新済み情報を判定する段階、ここで前記更新済みサービス情報は、前記プロバイダネットワークに関するネットワーク性能情報を含む
を備え、
前記第2のプロバイダサイトを自動的に判定する前記段階は、前記更新済み情報及び前記記憶された最適化基準に基づく、請求項1から5のいずれか一項に記載の方法。
【請求項7】
前記第1のプロバイダサイトに展開された第2のコンピューティングサービスに関する第2の更新済み情報を判定する段階;
前記最適化基準及び前記第2の更新済み情報に基づき、前記プロバイダネットワークの第3のプロバイダサイトを自動的に判定する段階;
前記第2のコンピューティングサービスを前記第3のプロバイダサイトに展開する段階;
をさらに備える、請求項6に記載の方法。
【請求項8】
前記更新済み情報を判定する前記段階、及び前記第2のプロバイダサイトを自動的に判定する前記段階は、両方とも、前記コンピューティングサービスを前記第1のプロバイダサイトに展開した後に定期的に行われる、請求項6又は7に記載の方法。
【請求項9】
前記コンピューティングサービスに関する前記更新済み情報を判定する前記段階は、前記第1のプロバイダサイトに展開された前記コンピューティングサービスの動作メトリックに基づき、更新済み顧客サービス情報を検出する段階を有する、請求項6から8のいずれか一項に記載の方法。
【請求項10】
前記第2のプロバイダサイトを自動的に判定する前記段階は、前記変更事象を検出したことに応答して実行される、請求項1から9のいずれか一項に記載の方法。
【請求項11】
前記コンピューティングサービスに関するアプリケーションのタイプを判定する段階;
前記アプリケーションのタイプに対応したテンプレートを取得する段階;
前記テンプレートに基づき、前記ユーザインタフェースをカスタマイズする段階、ここで前記ユーザインタフェースは、前記サービス情報の少なくとも一部及び前記最適化基準の少なくとも一部を入力するようユーザにプロンプトする
をさらに備える、請求項1から10のいずれか一項に記載の方法。
【請求項12】
システムであって、
少なくとも1つのプロセッサ;
前記少なくとも1つのプロセッサに動作可能に接続されており、前記少なくとも1つのプロセッサによって実行されたとき、前記システムに方法を実行させる命令を記憶しているメモリを備え、前記方法が
コンピューティングサービスに関するサービス情報を受信する段階;
ユーザインタフェースを介して最適化基準を受信する段階;
前記サービス情報及び前記最適化基準に基づき、プロバイダネットワークの少なくとも第1のプロバイダサイトを含む、前記コンピューティングサービスのための複数のプロバイダサイト候補を判定する段階;
前記コンピューティングサービスを前記第1のプロバイダサイトに展開する段階;
前記最適化基準を記憶する段階;
前記記憶された最適化基準に基づき、前記プロバイダネットワークの第2のプロバイダサイトを自動的に判定する段階;
変更事象を検出する段階;及び
前記コンピューティングサービスを前記第2のプロバイダサイトに展開する段階
を有する、システム。
【請求項13】
前記変更事象が、サービス障害を含む、請求項12に記載のシステム。
【請求項14】
前記変更事象を検出する前記段階は、前記コンピューティングサービスを前記第2のプロバイダサイトに展開するための改善メトリックが、所定の時間量にわたって閾値を超えていると判定する段階を含む、請求項12又は13に記載のシステム。
【請求項15】
前記複数のプロバイダサイト候補を判定する前記段階は、前記最適化基準に対応した最適化データを判定する段階を含み、前記第2のプロバイダサイトを自動的に判定する前記段階は、前記コンピューティングサービスを前記第1のプロバイダサイトに展開した後に行われ、前記方法がさらに、
前記コンピューティングサービスを前記第1のプロバイダサイトに展開した後の、前記コンピューティングサービスに関する更新済みサービス情報及び更新済み最適化データのうちの少なくとも1つを含む更新済み情報を判定する段階、ここで前記更新済みサービス情報は、前記プロバイダネットワークに関するネットワーク性能情報を含む
を有し、
前記第2のプロバイダサイトを自動的に判定する前記段階は、前記更新済み情報及び前記記憶された最適化基準に基づく、請求項12から14のいずれか一項に記載のシステム。
【請求項16】
前記方法が、
前記第1のプロバイダサイトに展開された第2のコンピューティングサービスに関する第2の更新済み情報を判定する段階;
前記最適化基準及び前記第2の更新済み情報に基づき、前記プロバイダネットワークの第3のプロバイダサイトを自動的に判定する段階;
前記第2のコンピューティングサービスを前記第3のプロバイダサイトに展開する段階
をさらに有する、請求項15に記載のシステム。
【請求項17】
コンピューティングサービスに関するサービス情報を受信する段階;
ユーザインタフェースを介して最適化基準を受信する段階;
前記最適化基準に対応する最適化データを判定する段階;
前記サービス情報、前記最適化データ、及び前記最適化基準に基づき、プロバイダネットワークの少なくとも第1のプロバイダサイトを含む、前記コンピューティングサービスのための複数のプロバイダサイト候補を判定する段階;
前記コンピューティングサービスを前記第1のプロバイダサイトに展開する段階;
前記サービス情報、前記最適化基準、及び前記最適化データを記憶する段階;
更新済みサービス情報、更新済み最適化基準、及び更新済み最適化データのうちの少なくとも1つを含む更新済み情報を受信する段階;
前記更新済み情報に基づき、前記コンピューティングサービスのための、更新済みの複数のプロバイダサイト候補を自動的に判定する段階;
前記更新済みの複数のプロバイダサイト候補のうちの第2のプロバイダサイトに、前記コンピューティングサービスを展開するための改善メトリックが、所定の時間量にわたって閾値を超えていると判定する段階;及び
前記改善メトリックが前記所定の時間量にわたって前記閾値を超えていると判定したことに応答して、前記コンピューティングサービスを前記第2のプロバイダサイトに展開する段階
を備える方法。
【請求項18】
前記更新済み情報を判定する段階、及び前記更新済みの複数のプロバイダサイト候補を自動的に判定する前記段階は、両方とも、前記コンピューティングサービスを前記第1のプロバイダサイトに展開した後に定期的に行われる、請求項17に記載の方法。
【請求項19】
前記更新済み情報を判定する段階は、前記第1のプロバイダサイトに展開された前記コンピューティングサービスの動作メトリックに基づき、更新済み顧客サービス情報を検出する段階を含む、請求項17又は18に記載の方法。
【請求項20】
前記コンピューティングサービスに関するアプリケーションのタイプを判定する段階;
前記アプリケーションのタイプに対応したテンプレートを取得する段階;
前記テンプレートに基づき、前記ユーザインタフェースをカスタマイズする段階、ここで前記ユーザインタフェースは、前記サービス情報の少なくとも一部及び前記最適化基準の少なくとも一部を入力するようユーザにプロンプトする、
をさらに備える、請求項17から19のいずれか一項に記載の方法。
【発明の詳細な説明】
【背景技術】
【0001】
関連出願への相互参照
本出願は、2020年12月31日出願の米国特許仮出願第63/132,716号、名称「Optimizing Network Characteristics」の利益を主張し、この出願は、参照により本明細書に組み込まれる。上記出願に対し、適切な範囲で優先権の主張が行われる。
【0002】
プロバイダネットワークの顧客は、その顧客向けのコンピューティングサービスをプロバイダネットワークにホストしてほしいと所望することがある。プロバイダネットワークは、顧客コンピューティングサービスをホストするために、エッジコンピューティングサイトなどの複数のプロバイダサイトを含んでよい。プロバイダサイトは、地理的に多様であってよく、コンピューティング能力、セキュリティ証明、接続性などに関して異なる能力を有してよい。本開示の例は、この汎用的な環境を対象としてよい。
【発明の概要】
【0003】
この概要は、以下の発明を実施するための形態においてさらに記載する概念の一部を、簡略化した形態で紹介するために提供される。この概要は、特許請求される主題の重要な特徴又は必須の特徴を識別することを意図しておらず、特許請求される主題の範囲を限定するために使用されることも意図していない。
【0004】
例において、本願は、コンピューティングサービスに関するサービス情報を受信する段階を備える方法について記載する。方法は、ユーザインタフェースを介して最適化基準を受信する段階、及び前記サービス情報及び前記最適化基準に基づき、プロバイダネットワークの少なくとも第1のプロバイダサイトを含む、前記コンピューティングサービスのための複数のプロバイダサイト候補を判定する段階によって継続してよい。方法はさらに、前記コンピューティングサービスを前記第1のプロバイダサイトに展開する段階、前記最適化基準を記憶する段階、前記記憶された最適化基準に基づき、前記プロバイダネットワークの第2のプロバイダサイトを自動的に判定する段階、変更事象を検出する段階、及び前記コンピューティングサービスを前記第2のプロバイダサイトに展開する段階を備えてよい。
【0005】
別の例において、システムであって、少なくとも1つのプロセッサ、及び前記少なくとも1つのプロセッサに動作可能に接続されており、前記少なくとも1つのプロセッサによって実行されたとき、前記システムに方法を実行させる命令を記憶しているメモリを備えるシステムが提供される。例において、システムによって実行される方法は、コンピューティングサービスに関するサービス情報を受信する段階を有する。方法は、ユーザインタフェースを介して最適化基準を受信する段階、及び前記サービス情報及び前記最適化基準に基づき、プロバイダネットワークの少なくとも第1のプロバイダサイトを含む、前記コンピューティングサービスのための複数のプロバイダサイト候補を判定する段階によって継続してよい。方法はさらに、前記コンピューティングサービスを前記第1のプロバイダサイトに展開する段階、前記最適化基準を記憶する段階、前記記憶された最適化基準に基づき、前記プロバイダネットワークの第2のプロバイダサイトを自動的に判定する段階、変更事象を検出する段階、及び前記コンピューティングサービスを前記第2のプロバイダサイトに展開する段階を有してよい。
【0006】
別の例において、本願は、コンピューティングサービスに関するサービス情報を受信する段階を備える別の方法を開示する。方法は、ユーザインタフェースを介して最適化基準を受信する段階、前記最適化基準に対応する最適化データを判定する段階、及び前記サービス情報、前記最適化データ、及び前記最適化基準に基づき、プロバイダネットワークの少なくとも第1のプロバイダサイトを含む、前記コンピューティングサービスのための複数のプロバイダサイト候補を判定する段階によって継続してよい。例において、方法はさらに、前記コンピューティングサービスを前記第1のプロバイダサイトに展開する段階、前記サービス情報、前記最適化基準、及び前記最適化データを記憶する段階、更新済みサービス情報、更新済み最適化基準、及び更新済み最適化データのうちの少なくとも1つを有する更新済み情報を受信する段階、及び前記更新済み情報に基づき、前記コンピューティングサービスのための、更新済みの複数のプロバイダサイト候補を自動的に判定する段階を備える。例において、方法はまた、前記更新済みの複数のプロバイダサイト候補のうちの第2のプロバイダサイトに、前記コンピューティングサービスを展開するための改善メトリックが、所定の時間量にわたって閾値を超えていると判定する段階;及び前記改善メトリックが前記所定の時間量にわたって前記閾値を超えていると判定したことに応答して、前記コンピューティングサービスを前記第2のプロバイダサイトに展開する段階を備えてよい。
【図面の簡単な説明】
【0007】
図1】例による、最適化基準に基づきネットワークプロバイダサイトにおいてコンピューティングサービスを推奨及び実装するためのシステムを示す。
【0008】
図2】例による、最適化基準に基づきネットワークプロバイダサイトにおいてコンピューティングサービスを推奨及び実装するための方法を示す。
【0009】
図3】例による、コンピューティングサービスを異なるネットワークプロバイダサイトに移動すべきかどうかを判定するための方法を示す。
【0010】
図4】例による、コンピューティングサービスを異なるネットワークプロバイダサイトに移動すべきかどうかを判定するための別の方法を示す。
【0011】
図5】本システム及び方法の態様を実施できる例示的なコンピューティング環境を示す。
【発明を実施するための形態】
【0012】
例において、ネットワーク最適化システム及び方法が提供される。プロバイダネットワークの顧客は、特定のコンピューティングサービスが、プロバイダネットワークによりその顧客向けにホストされることを所望することがある。例において、コンピューティングサービスは、ソフトウェアアプリケーション、データストレージ、又は他のコンピューティングサービスのうちの1つ又は複数を含んでよい。また、コンピューティングサービスは、1つ又は複数の顧客サイト、及び/又はコンピューティングサービスが必要とするリソースに到達するために、ネットワークサービスを含むか又は必要としてよい。
【0013】
プロバイダネットワークは、エッジコンピューティングサイトなどの複数のプロバイダサイトを含んでよい。エッジコンピューティングサイトは、顧客サイトにコンピューティングサービスが提供される物理的ロケーションを含んでよい。エッジコンピューティングサイトは、顧客サイトまでの距離を制限し、レイテンシを低減するために、地理的に分散していてよい。加えて、エッジコンピューティングサイトは、画一的でなくてよく、例えば、それらはコンピューティング能力、セキュリティ証明、拡張容量、データストレージの利用可能性、ネットワーク接続性のタイプ(例えばパブリックインターネット、プライベートネットワーキング、パブリック/プライベートのハイブリッド)などにおいて異なってよい。
【0014】
例において、最適化システムは、コンピューティングサービスをホストするための1つ又は複数の最適化されたプロバイダサイトを判定するために、サービス情報及び最適化基準の両方を使用する。例において、サービス情報は、ホストされるコンピューティングサービスについての情報、例えば実行されるソフトウェアアプリケーションのタイプ、データストレージ要件、オペレーティングシステム、ネットワーク接続性(例えばパブリックインターネット、プライベートネットワーキング、ハイブリッドなど)、セキュリティ要件(例えば、クレジットカード業界(payment card industry:PCI)セキュリティ証明などの必要とされる特定のセキュリティ)、レイテンシ要件(例えば、最大平均レイテンシ)、到達する必要があるインターネットプロトコル(internet protocol:IP)アドレス及び/又は宛先/エンティティ、サービスに及びサービスから送信されるデータトラフィックのタイプ(例えば音声、動画)、及びホストされるサービスにアクセスする顧客サイトの物理的ロケーションなどを含んでよい。最適化基準は、性能、信頼性(例えば動作可能時間)、平均レイテンシ、コスト、セキュリティ格付けなどを含んでよい。
【0015】
例において、サービス情報の一部又は全部は、ユーザインタフェースを介して受信されてもよいし、又は自動的に発見されてもよい。例えば、ユーザインタフェースは、サービス情報の一部又は全部を顧客(又はプロバイダ担当者)が入力するために提供されてよい。いくつかの例において、ユーザインタフェースは、サービスについて、例えばソフトウェアアプリケーションのタイプ、データストレージ要件などについての最初の質問に対する回答に基づき選択されるテンプレートを使用して、動的にレンダリングされてよい。他の例において、サービス情報の一部又は全部は、自動的に発見されてよい。例えば、コンピューティングサービスがプロバイダネットワーク上で既にホストされている場合、プロバイダネットワークは、ソフトウェアアプリケーションのタイプ、データストレージ要件、データトラフィックのタイプ及びサイズ、到達する必要があるIPアドレス及び/又は宛先/エンティティ、顧客サイトの物理的ロケーションなどに関する情報を既に記憶していてよい。
【0016】
同様に、最適化基準の一部又は全部は、ユーザインタフェースを介して受信されてもよいし、又は自動的に判定されてもよい。例えば、最適化基準の所定のセットが、ユーザインタフェースを介してユーザに提示されてよく、ユーザには、最適化基準を重要度に関してランク付け及び/又は重み付けする機会を提供されてよい。他の例においては、最適化基準の標準セットが使用されてもよいし、又はホストされるサービスのタイプに特化した最適化基準が使用されてもよい。また、最適化システムは、最適化基準に対応したプロバイダサイトごとに最適化データを収集してよい。例えば、最適化基準が、プロバイダサイト及び1つ又は複数の顧客サイトの間の、サービス情報において指定された特定のタイプのアプリケーションに関する平均レイテンシである場合、その最適化基準の最適化データは、そのプロバイダサイト及び顧客サイトの間で測定又は推定されたレイテンシ時間(例えば5ミリ秒)であってよい。次いで最適化データは、1つ又は複数の最適化されたプロバイダサイトを判定するために使用されることが可能である。
【0017】
例において、最適化プロセスの結果は、例えば最適化基準が顧客によって選択及び/又は順序付けされているとおりに、ランク付け及び/又は重み付けされた最適化基準に従ってランク付けされた、プロバイダサイト候補のリストとして返送されてよい。いくつかの例において、最適化システムは、ランク付け及び/又は重み付けされた最適化基準(及びプロバイダサイトごとの対応する最適化データ)に基づきプロバイダサイト候補を採点するためのスコア行列を利用してよい。プロバイダサイト候補のリストは、サービスをホストするためのプロバイダサイトを選択するために、ユーザに提示されてよい。選択すべきプロバイダサイトを判定する際に、プロバイダサイト候補のそれぞれに関連する、例えば推定コスト、性能、信頼性、セキュリティ格付け、平均レイテンシなどをユーザが確認できるように、プロバイダサイト候補のリストは、最適化基準の一部又は全部に関する最適化データとともに提示されてよい。例において、プロバイダサイト候補のリストは、とりわけ最適化基準のうちのいずれかに基づき、ユーザによってソート可能であってもよい。例えば、プロバイダサイト候補のリストは、最初にコストの昇順で提示されてよいが、次いでそれは、推定されたレイテンシの昇順に順序付けされるようユーザによってソートされてよい。他の例においては、特定のプロバイダサイトをユーザが選択することなく、コンピューティングサービスが特定のプロバイダサイトに自動的に展開(又は以下でさらに説明するように移動)されるようにするために、プロバイダサイト候補のリストが使用されてよい。
【0018】
例において、第1のプロバイダサイトへのコンピューティングサービスの最初の展開後に、更新済み情報が判定されることがある。更新済み情報は、更新済みサービス情報、更新済み最適化基準、及び/又は更新済み最適化データを含んでよい。例において、最適化基準、最適化データ、及び最初のサービス情報は、最初の展開の後で保存されてよい。静的なサービス情報、例えばソフトウェアアプリケーションのタイプ、ネットワーク接続性(例えばパブリックインターネット、プライベートネットワーキング、ハイブリッドなど)、セキュリティ要件(例えばクレジットカード業界(PCI)セキュリティ証明などの必要とされる特定のセキュリティ)などは、更新済みサービス情報において変更なく保持されてよい。しかしながら、最初の展開のために推定されていたものであり得る他のサービス情報は、第1のプロバイダサイトに実際に展開されたときのコンピューティングサービスについての情報で置き換えられてよい。例えば、使用されているデータストレージ、使用されるオペレーティングシステム、平均レイテンシ、接続されているインターネットプロトコル(IP)アドレス及び/又は宛先/エンティティ、サービスに及びサービスから送信されているデータトラフィックのタイプ及びサイズ(例えば音声、動画)、及びホストされたサービスにアクセスしている顧客サイトの物理的ロケーションなどに関して、実際のメトリックが判定されてよい。例において、更新済みサービス情報は、定期的に及び/又は変更事象に応答して、判定及び/又は再判定されてよい(以下で考察)。
【0019】
最適化基準及び更新済み最適化データも、更新されてよい(例えば、最適化基準は、ユーザへのプロンプトの際に再重み付け/再ランク付けされてよく、且つ/又は最適化データは、現在のネットワーク状態に基づき更新されてよい)。更新済みの情報は記憶され、プロバイダサイト候補の更新済みリストを作成するために使用されてよい。例えば、最適化システムは、更新済みサービス情報、更新済み最適化データ、及び/又は更新済み最適化基準に基づき、プロバイダサイト候補の更新済みリストを定期的に作成して、異なる(例えば第2の)プロバイダサイトが、その時点のプロバイダサイトよりも今は強く推奨されるかどうかを判定してよい。例において、更新済みサービス情報及び/又は更新済み最適化データは、最適化基準のうちのいずれか1つ又は複数に関する改善メトリックを計算するために使用されてよい。例えば、最適化システムは、更新済みサービス情報を受信又は判定したことに応答して、コンピューティングサービスを第1のプロバイダサイトから第2のプロバイダサイトに移動するとX%の平均レイテンシの改善がもたらされると判定してよい。例において、改善メトリックは、1つ又は複数の期間にわたりそれを測定できるように、更新済みのサービス情報、最適化データ、又は最適化基準が受信されるたびに(又は何らかの他の定期的スケジュールに基づき)計算されてよい。例において、サービス情報(及び/又は最適化データ、及び/又は最適化基準)は、第1のプロバイダサイトにおけるサービス障害などの変更事象に応答して更新されてもよい。
【0020】
更新済み情報に基づき、最適化システムは、コンピューティングサービスには第2のプロバイダサイトが推奨されると判定してよい。その場合、ユーザからの承認に応答して及び/又は自動的にのいずれかで、コンピューティングサービスの一部又は全部が、第2のプロバイダサイトに移動されてよい。例えば、コンピューティングサービスを移動させるためのトリガは、(a)改善メトリックが最短期間にわたって閾値を超えていること;(b)その時点のプロバイダサイトにおける障害;及び/又は(c)ユーザ要求/承認のうちのいずれかであってよい。改善メトリックが計算される例においては、改善メトリックが最短期間にわたって閾値を超えるまで(例えば、推定される平均レイテンシが1か月の期間にわたって毎週20%改善されるまで)、コンピューティングサービスは移動されなくてよい。これにより、一時的な改善に基づくプロバイダネットワーク内での過剰な移動を排除しやすくすることができる。プロバイダサイト候補の更新済みリストが、その時点のプロバイダサイトの障害に応答して判定される例においては、第1のプロバイダサイトに例えば障害が生じているので、コンピューティングサービスは即座に第2のプロバイダサイトに移動されてよい。しかしながら、第2のプロバイダサイトが第1のプロバイダサイトの専用バックアップサイトであるシステムとは異なり、第2のプロバイダサイトは、その時点の更新済みのサービス情報、最適化データ、及び/又は最適化基準に基づき、最適であると動的に判定されることが可能である。
【0021】
例において、最適化システムは、選択されたプロバイダサイトにおいてコンピューティングサービスを展開及び/又はインスタンス化するために使用可能な構成システムと通信してよい。例において、これは、コンピューティングサービスがホストされ顧客によりアクセスされることを可能にするためのハードウェア、オペレーティングシステム、データストレージ、及び/又はネットワーク接続性を、自動的に調達することを含んでよい。例において、構成システムは、コンピューティングサービスを1つ又は複数のプロバイダサイトにインスタンス化及び/又は移動するよう最適化システムにより自動的に命令されてよい。他の例においては、選択されたプロバイダサイトにおけるコンピューティングサービスのインスタンス化/移動を遂行するために、ユーザ承認が必要であってよく、且つ/又はクライアントデバイスは、構成システムにリダイレクトされてよい。
【0022】
いくつかの例において、プロバイダネットワーク及び/又は最適化システムは、1つ又は複数の他のネットワークプロバイダからのネットワーク性能情報を消費することが可能な1つ又は複数のアプリケーションプログラミングインタフェース(application programming interface:API)を利用可能にしてよい。例えば、第2のネットワークプロバイダは、第2のプロバイダネットワークに関するネットワーク接続性についての情報及び性能/レイテンシ情報を提供してよい。例において、プロバイダネットワークは、顧客向けのコンピューティングサービスをホストするために、そのような他のプロバイダネットワークに又はそれを介して接続する必要があってよい。他の例において、そのような他のプロバイダネットワークを使用することは、顧客にとってより効率的又はコスト効果的な場合がある。
【0023】
図1は、実施形態による、コンピューティングサービスをホストするための例示的なシステムである。例において、クライアントデバイス102は、プロバイダネットワーク106に関連付けられた最適化システム104にアクセスしてよい。例において、最適化システム104は、プロバイダネットワーク106の一部であるか又はそれに通信可能に結合されたコンピューティングデバイス上で動作する。
【0024】
プロバイダネットワーク106は、電子情報を伝送、記憶、コンピューティング、及び別様に処理するための、通信可能に結合された複数のデバイスを含む通信ネットワークを備えてよい。例えば、プロバイダネットワーク106は、ルータ、スイッチ、ゲートウェイデバイス、データストレージデバイス、サーバ、及び他のコンピューティングデバイスを備えてよい。例において、プロバイダネットワーク106は、複数のプロバイダサイト108、110、112も備えてよい。3つのプロバイダサイトを示しているが、任意の個数のプロバイダサイトが提供されてよい。
【0025】
例において、プロバイダサイト108、110、及び112は、プロバイダネットワーク106のエッジに又はその近くに位置するエッジコンピューティングサイトである。例えばプロバイダサイト108、110、及び112は、少なくとも1つのプロバイダエッジルータをそれぞれ含んでよく、このプロバイダエッジルータは、顧客サイト114からの通信のための、プロバイダネットワーク106への進入点として動作する。顧客サイト114は、様々な顧客のために地理的に分散していてよい。加えて、単一の顧客が、複数の地理的に分散した顧客サイト114を有していてもよい。プロバイダサイト108、110、及び112は、プロバイダサイト108、110、及び112がコンピューティングサービスをホストできるようにするためのコンピューティング能力(例えばサーバ)、及びデータストレージも含んでよい。プロバイダサイト108、110、及び112は、プライベートネットワーク、パブリックネットワーク、及び/又はパブリック及びプライベートネットワークのハイブリッドを含め、様々な他のネットワーク又は通信リンクを介して、顧客サイトに動作可能に接続されてよい。例において、プロバイダネットワーク106のエッジに又はその近くにプロバイダサイト108、110、及び112を有することにより、特にプロバイダサイトへのアクセスを必要とする顧客サイト114にそのプロバイダサイトが近接していることに部分的に基づきそのプロバイダサイトが選択された場合に、顧客サイト114は(とりわけ)レイテンシを最小限に抑えることができる。加えて、プロバイダサイト108、110、及び112は画一的でなくてよく、例えば、それらはコンピューティング能力、セキュリティ証明、拡張容量、データストレージの利用可能性、ネットワーク接続性のタイプ(例えばパブリックインターネット、プライベートネットワーキング、パブリック/プライベートのハイブリッド)などにおいて異なってよい。したがって、顧客サイト114向けの特定のコンピューティングサービスをホストするためのプロバイダサイト108、110、及び/又は112の選択は、様々な要因に基づき最適化される。
【0026】
例において、最適化システム104は、コンピューティングサービスをホストするための1つ又は複数の最適化されたプロバイダサイト108、110、及び/又は112を判定するために、サービス情報及び最適化基準の両方を使用する。考察したように、サービス情報は、ホストされるコンピューティングサービスについての情報、例えば実行されるソフトウェアアプリケーションのタイプ、データストレージ要件、必要とされるコンピューティング容量、オペレーティングシステム、ネットワーク接続性(例えばパブリックインターネット、プライベートネットワーキング、ハイブリッドなど)、セキュリティ要件(例えば、クレジットカード業界(PCI)セキュリティ証明などの必要とされる特定のセキュリティ)、レイテンシ要件(例えば、最大平均レイテンシ)、到達する必要があるインターネットプロトコル(IP)アドレス及び/又は宛先/エンティティ、コンピューティングサービスに及びコンピューティングサービスから送信されるデータトラフィックのタイプ(例えば音声、動画)、及びホストされるコンピューティングサービスにアクセスする顧客サイト114の物理的ロケーションなどを含んでよい。
【0027】
例えば、特定の外部リソース118(ファイル、コード、データなど)のIPアドレスに到達することが必要で、100メガバイトのローカルストレージ、プライベート接続性、Linux(登録商標)オペレーティングシステムを実行する2Uサーバ上でホストされること、ここでサイトがPCI準拠で、ペンシルベニア州ピッツバーグ及びニューヨーク州ニューヨークにある顧客サイト114から、最大平均レイテンシ5ミリ秒でアクセス可能であることを要件とする支払いアプリケーションをコンピューティングサービスが含むことを、サービス情報は含んでよい。最適化基準は、性能、信頼性(例えば動作可能時間)、平均レイテンシ、コスト、セキュリティ格付けなどを含んでよい。
【0028】
例において、サービス情報の一部又は全部は、クライアントデバイス102に対して最適化システム104が提供するユーザインタフェースを介して受信されてよい。例えば、ユーザインタフェースは、サービス情報の一部又は全部を顧客(又はプロバイダ担当者)が入力するために提供されてよい。いくつかの例において、ユーザインタフェースは、コンピューティングサービスについて、例えばソフトウェアアプリケーションのタイプ、データストレージ要件などについての最初の質問に対する回答に基づき、最適化システム104によって選択されるテンプレートを使用して、動的にレンダリングされてよい。他の例において、サービス情報の一部又は全部は、自動的に発見されてよい。例えば、コンピューティングサービスがプロバイダネットワーク106上で既にホストされている場合、プロバイダネットワーク106は、ソフトウェアアプリケーションのタイプ、データストレージ要件、データトラフィックのタイプ及びサイズ、到達する必要があるIPアドレス及び/又は宛先/エンティティ、顧客サイトの物理的ロケーションなどに関する情報を既に記憶していてよい。そのため、最適化システム104は、最適化システム104が必要とするサービス情報の一部又は全部を判定するようプロバイダネットワーク106の1つ又は複数のデバイスにクエリしてよい。
【0029】
同様に、最適化基準の一部又は全部は、最適化システム104によりクライアントデバイス102に提示されるユーザインタフェースを介して受信されてよい。最適化基準は、性能、信頼性(例えば動作可能時間)、平均レイテンシ、コスト、セキュリティ格付けなどを含んでよい。いくつかの例において、最適化基準の所定のセットが、ユーザインタフェースを介してユーザに提示されてよく、ユーザには、最適化基準を顧客にとっての重要度に関してランク付け及び/又は重み付けする機会を提供されてよい。他の例においては、最適化基準の標準セットが使用されてもよいし、又はホストされるコンピューティングサービスのタイプに特化した最適化基準が、ユーザのランク付け/重み付けなしに使用されてもよい。
【0030】
また、最適化システム104は、最適化基準に対応したプロバイダサイト108、110、112ごとに最適化データを収集してよい。例えば、最適化基準が、プロバイダサイト108、110、112及び1つ又は複数の顧客サイト114の間の、サービス情報において指定された特定のタイプのアプリケーションに関する平均レイテンシである場合、その最適化基準の最適化データは、そのプロバイダサイト108、110、及び/又は112、及び顧客サイト114の間で測定又は推定されたレイテンシ時間(例えば5ミリ秒)であってよい。次いで最適化データは、1つ又は複数の最適化されたプロバイダサイトを判定するために使用されることが可能である。
【0031】
例において、最適化システム104は、例えば最適化基準がランク付け及び/又は重み付けされているとおりに、最適化基準(及び対応する最適化データ)に基づきプロバイダサイト候補を採点するためのスコア行列を利用してよい。例えば、最適化基準は、必須と示されたいくつかの基準、例えばPCIセキュリティ証明を有していなくてはならないことを含んでよい。その一方で、他の最適化基準は、測定可能で且つランク付け/ソート/重み付けの対象である最適化データに対応してよい。例として、プロバイダサイト108、110、又は112がPCIセキュリティ証明を有していなくてはならず、少なくとも100メガバイトの利用可能なデータストレージを有していなくてはならないことを、最適化基準が示す場合、最適化システム104は、これらの要件を満たすプロバイダサイト108、110、及び/又は112のみをプロバイダサイト候補のリストに含めてよい。プロバイダサイト候補のリスト内で、候補は、1つ又は複数の他の最適化基準(及び対応する最適化データ)に基づき(例えば最少コストから最大コストへ、又は最小レイテンシから最大レイテンシへの昇順などで)順序付けされて(又はソート可能であって)よい。
【0032】
プロバイダサイト候補のリストは、コンピューティングサービスをホストするためのプロバイダサイト108、110、及び/又は112を選択するために、クライアントデバイス102のユーザに提示されてよい。選択すべきプロバイダサイト108、110、及び/又は112を判定する際に、プロバイダサイト候補のそれぞれに関連する、例えば推定コスト、性能、信頼性、セキュリティ格付け、平均レイテンシなどをユーザが確認できるように、プロバイダサイト候補のリストは、最適化基準の一部又は全部に関する最適化データとともに提示されてよい。例において、プロバイダサイト候補のリストは、とりわけ最適化基準のうちのいずれかに基づき、ユーザによってソート可能であっても/再順序付けされてもよい。例えば、プロバイダサイト候補のリストは、最初にコストの昇順で提示されてよいが、次いでそれは、推定されたレイテンシの昇順に順序付けされるようユーザによってソートされてよい。
【0033】
例において、最適化システム104は、プロバイダサイト108、110、及び/又は112のうちの1つ又は複数においてコンピューティングサービスが展開/インスタンス化されるようにする機会を、クライアントデバイス102に提供してよい。例において、最適化システム104は、選択されたプロバイダサイト108、110、及び/又は112においてコンピューティングサービスを自動的に展開及び/又はインスタンス化するために使用可能な構成システム116と通信してよい。例において、構成システム116は、選択されたプロバイダサイト108、110、及び/又は112においてコンピューティングサービスがホストされ、顧客サイト114からアクセスされることを可能にするために、ハードウェア、オペレーティングシステム、データストレージ、及び/又はネットワーク接続性がプロバイダネットワーク106内で調達されるようにしてよい。例において、構成システム116は、コンピューティングサービスを1つ又は複数のプロバイダサイト108、110、及び/又は112にインスタンス化及び/又は移動するよう最適化システム104により自動的に命令されてよい。他の例において、選択されたプロバイダサイト108、110、及び/又は112におけるコンピューティングサービスのインスタンス化/移動を遂行するために、クライアントデバイス102は、最適化システム104によって構成システム116にリダイレクトされてよい。
【0034】
他の例においては、特定のプロバイダサイト108、110、及び/又は112をユーザが選択することなく、コンピューティングサービスが特定のプロバイダサイト108、110、及び/又は112に自動的に展開(又は以下でさらに説明するように移動)されるようにするために、プロバイダサイト候補のリストが使用されてよい。例えば、プロバイダネットワーク106は、サービス情報、最適化データ、及び最適化基準に基づき自己構成してよい。最適化システム104は、プロバイダサイト108、110、及び/又は112の最終的な選択を顧客が行うことなく、コンピューティングサービスをどのプロバイダサイト108、110、及び/又は112にホスト(又は移動)すべきかを決定してよく、この選択は顧客からは見えなくてよい。
【0035】
例において、第1のプロバイダサイト(例えばプロバイダサイト108)へのコンピューティングサービスの最初の展開後に、更新済みのサービス情報、最適化データ、及び/又は最適化基準が判定されてよい。例において、最適化基準、最適化データ、及び最初のサービス情報は、最初の展開の後で保存されてよい。静的なサービス情報、例えばソフトウェアアプリケーションのタイプ、ネットワーク接続性(例えばパブリックインターネット、プライベートネットワーキング、ハイブリッドなど)、セキュリティ要件(例えばクレジットカード業界(PCI)セキュリティ証明などの必要とされる特定のセキュリティ)などは、更新済みサービス情報において変更なく保持されてよい。しかしながら、最初の展開のために推定されていたものであり得る他のサービス情報は、第1のプロバイダサイト108に実際に展開されたときのコンピューティングサービスについての情報で置き換えられてよい。例えば、使用されているデータストレージ、使用されるオペレーティングシステム、平均レイテンシ、接続されているインターネットプロトコル(IP)アドレス及び/又は宛先/エンティティ、コンピューティングサービスに及びコンピューティングサービスから送信されているデータトラフィックのタイプ及びサイズ(例えば音声、動画)、及びホストされたコンピューティングサービスにアクセスしている顧客サイト114の物理的ロケーションなどに関して、実際のメトリックが判定されてよい。例において、更新済みサービス情報は、定期的に又はプロバイダサイトの障害に応答して、判定及び/又は再判定されてよい(以下で考察)。
【0036】
最適化データ及び/又は最適化基準も更新されてよい(例えば、サービス基準は、クライアントデバイス102のユーザに対するプロンプトの際に再重み付け/再ランク付けされてよく、最適化基準は、更新済みサービス情報及び/又は更新済み最適化基準に基づき再判定されてよい)。更新済みのサービス情報、最適化データ、及び/又は最適化基準は、次いで、プロバイダサイト候補の更新済みリストを作成するために使用されてよい。例えば、最適化システム104は、更新済みサービス情報、更新済み最適化データ、及び/又は更新済み最適化基準に基づき、プロバイダサイト候補の更新済みリストを定期的に作成して、異なる(例えば第2の)プロバイダサイト(例えばプロバイダサイト110)が、今ではその時点のプロバイダサイトよりも推奨されるかどうかを判定してよい。
【0037】
例において、更新済み情報は、最適化基準のうちのいずれか1つ又は複数に関する改善メトリックを計算するために使用されてよい。例えば、最適化システムは、更新済みサービス情報、更新済み最適化基準、及び/又は更新済み最適化データを受信又は判定したことに応答して、コンピューティングサービスを第1のプロバイダサイト108から第2のプロバイダサイト110に移動するとX%の平均レイテンシの改善がもたらされると判定してよい。例において、改善メトリックは、1つ又は複数の期間にわたりそれを測定できるように、更新済みサービス情報、更新済み最適化基準、及び/又は更新済み最適化データが受信されるたびに(又は何らかの他の定期的スケジュールに基づき)計算されてよい。例において、サービス情報、最適化基準、及び/又は最適化データは、第1のプロバイダサイト108におけるサービス障害などの障害事象に応答して更新されてもよい。
【0038】
更新済みのサービス情報、最適化基準、及び/又は最適化データに基づき、最適化システム104は、コンピューティングサービスには現在のプロバイダサイト108よりも第2のプロバイダサイト110の方が推奨されると判定してよい。その場合、ユーザからの承認に応答して及び/又は変更事象に応答して自動的にのいずれかで、コンピューティングサービスの一部又は全部が、第1のプロバイダサイト108から第2のプロバイダサイト110に移動されてよい。変更事象の例は、ある期間にわたって改善メトリックが閾値を超えていること、及び/又は既存のプロバイダサイトにおける障害を含んでよい。例えば、コンピューティングサービスを移動させるためのトリガは、(a)改善メトリックが最短期間にわたって閾値を超えていること;(b)第1のプロバイダサイトの障害;及び/又は(c)ユーザ要求/承認のうちのいずれかであってよい。改善メトリックが計算される例においては、改善メトリックが最短期間にわたって閾値を超えるまで(例えば、推定される平均レイテンシが1か月の期間にわたって毎週20%改善されるまで)、コンピューティングサービスは移動されなくてよい。これにより、一時的な改善に基づくプロバイダネットワーク106内での過剰な移動を排除しやすくすることができる。プロバイダサイト候補の更新済みリストが、第1のプロバイダサイトの障害に応答して判定される例においては、第1のプロバイダサイト108に例えば障害が生じているので、コンピューティングサービスは即座に第2のプロバイダサイト110に移動されてよい。しかしながら、第2のプロバイダサイト110が第1のプロバイダサイト108の専用バックアップサイトであるシステムとは異なり、第2のプロバイダサイト110は、その時点の更新済みのサービス情報、最適化基準、及び最適化データに基づき、最適であると動的に判定されることが可能である。例えば、サービス情報、最適化データ、及び/又は最適化基準がその後更新された場合、プロバイダサイト112は、プロバイダサイト108に障害が生じた場合のプロバイダサイト108のバックアップであるべきだと判定されることがある。
【0039】
いくつかの例において、プロバイダネットワーク及び/又は最適化システムは、1つ又は複数の他のプロバイダネットワーク120、122からのネットワーク性能情報を消費することが可能な1つ又は複数のアプリケーションプログラミングインタフェース(API)を利用可能にしてよい。例において、APIは、最適化システム104の一部として提供されてよい。例えば、第2のネットワークプロバイダは、第2のプロバイダネットワーク120及び/又は122に関するネットワーク接続性についての情報、及び性能/レイテンシ情報を提供してよい。例において、プロバイダネットワーク106は、顧客向けのコンピューティングサービスをホストする際に使用されるリソース118に到達するために、そのような他のプロバイダネットワーク120、122に又はそれを介して接続する必要があってよい。他の例において、そのような他のプロバイダネットワーク120、122を使用することは、プロバイダネットワーク106がリソース118に直接アクセスするよりも、顧客にとって効率的又はコスト効果的な場合がある。
【0040】
例において、他のプロバイダネットワーク120、122は、1つ又は複数の顧客サイトに論理的により近く、コンピューティング及び/又はデータストレージ能力を有し、要求されたコンピューティングサービスを顧客に提供するのに十分なプロバイダサイトも含んでいてよい。そのため、他のプロバイダネットワーク120、122は、プロバイダネットワーク120、122内に存在するプロバイダサイトにおいて利用可能なコンピューティング及びデータストレージについての情報も、APIを介して提出してよい。例において、最適化システム104は、そのような他のプロバイダネットワーク120、122からコンピューティング、データストレージ、及びネットワーク性能の情報を受信し、それを、顧客向けのコンピューティングサービスをホストするための推奨されるプロバイダサイト及び/又はネットワーク接続性を判定することを目的とした最適化データとして取り扱ってよい。このように、最適化システム104は、様々なプロバイダのネットワーク、ストレージ、及びコンピューティングサービスのための、プロバイダにとらわれないクリアリングハウスとして作用することができる。
【0041】
図2は、プロバイダサイトを推奨し、コンピューティングサービスをプロバイダサイトに展開するための方法200を示す。例において、方法200の動作の一部又は全部が、システム100の最適化システム104などの最適化システムによって実行されてよい。動作202において、コンピューティングサービスに関するサービス情報が受信される。例において、最適化システム104は、ユーザインタフェースを介してクライアントデバイス102からサービス情報を受信する。他の例において、サービス情報の一部又は全部は、プロバイダネットワーク106に関連付けられたコンピューティングデバイスから自動的に発見されてよい。考察したように、サービス情報の例は、実行されるソフトウェアアプリケーションのタイプ、データストレージ要件、必要とされるコンピューティング容量、オペレーティングシステム、ネットワーク接続性(例えばパブリックインターネット、プライベートネットワーキング、ハイブリッドなど)、セキュリティ要件(例えば、クレジットカード業界(PCI)セキュリティ証明などの必要とされる特定のセキュリティ)、レイテンシ要件(例えば、最大平均レイテンシ)、到達する必要があるインターネットプロトコル(IP)アドレス及び/又は宛先/エンティティ、コンピューティングサービスに及びコンピューティングサービスから送信されるデータトラフィックのタイプ(例えば音声、動画)、及びホストされるコンピューティングサービスにアクセスする顧客サイト114の物理的ロケーションなどを含む。
【0042】
フローは動作204に進み、ここでユーザインタフェースを介して最適化基準が受信される。例えば、最適化システム104は、ユーザインタフェースを介してクライアントデバイス102から最適化基準を受信してよい。考察したように、最適化基準の例は、性能、信頼性(例えば動作可能時間)、平均レイテンシ、コスト、セキュリティ格付けなどを含んでよい。いくつかの例において、最適化基準の所定のセットが、ユーザインタフェースを介してユーザに提示されてよく、ユーザには、最適化基準を重要度に関してランク付け及び/又は重み付けする機会を提供されてよい。他の例においては、最適化基準の標準セットが使用されてもよいし、又はホストされるコンピューティングサービスのタイプに特化した最適化基準が、ユーザのランク付け/重み付けなしに使用されてもよい。
【0043】
フローは動作206に進み、ここでコンピューティングサービスのための複数のプロバイダサイト候補が、サービス情報及び最適化基準に基づき判定されてよい。例において、最適化システム104は、少なくとも第1のプロバイダサイト(例えばプロバイダネットワーク106のプロバイダサイト108)を含め、コンピューティングサービスのための複数のプロバイダサイト候補を判定してよい。例えば、最適化システムは、最適化基準のそれぞれについて最適化データを判定してよい。最適化データは、最適化基準に関する測定又は推定された値を含んでよい。例えば、第1の最適化基準が、プロバイダサイト108及び顧客サイト114の間の平均レイテンシである場合、その最適化基準に関する最適化データは、5ミリ秒であってよい。他の最適化データは、2進値であってよい。例えば、最適化基準がPCI証明である場合、特定のプロバイダサイトに関する対応した最適化データは、「はい」又は「いいえ」であってよい。
【0044】
考察したように、例において、プロバイダネットワーク106及び/又は最適化システム104は、1つ又は複数の他のプロバイダネットワーク120、122からのネットワーク性能情報、及び/又はコンピューティング及びストレージ能力の情報を消費することが可能な1つ又は複数のAPIを利用可能にしてよい。例において、最適化システム104は、そのような他のプロバイダネットワーク120、122から受信したコンピューティング、データストレージ、及びネットワーク性能の情報を、顧客向けのコンピューティングサービスをホストするための推奨されるプロバイダサイト及び/又はネットワーク接続性を判定することを目的とした最適化データとして取り扱ってよい。
【0045】
例において、最適化システム104は、例えば最適化基準がランク付け及び/又は重み付けされているとおりに、最適化基準(及び対応する最適化データ)に基づきプロバイダサイト候補を採点するためのスコア行列を利用してよい。例えば、最適化基準は、必須と示されたいくつかの基準、例えばPCIセキュリティ証明を有していなくてはならないことを含んでよい。その一方で、他の最適化基準は、測定可能で且つランク付け/ソート/重み付けの対象であってよい。例として、プロバイダサイト108、110、又は112がPCIセキュリティ証明を有していなくてはならず、少なくとも100メガバイトの利用可能なデータストレージを有していなくてはならないことを、最適化基準が含む場合、最適化システム104は、これらの要件を満たすプロバイダサイト108、110、及び/又は112のみをプロバイダサイト候補のリストに含めてよい。プロバイダサイト候補のリスト内で、候補は、1つ又は複数の他の最適化基準に基づき、(例えば最少コストから最大コストへ、又は最小レイテンシから最大レイテンシへの昇順などで)順序付けされて(又はソート可能であって)よい。
【0046】
フローは動作208に進み、ここでコンピューティングサービスが第1のプロバイダサイトに展開される。例えば、考察したように、プロバイダサイト候補のリストは、コンピューティングサービスをホストするためのプロバイダサイト108、110、及び/又は112を選択するために、最適化システム104によってクライアントデバイス102に送信されてよい。選択すべきプロバイダサイト108、110、及び/又は112を判定する際に、プロバイダサイト候補のそれぞれに関連する、例えば推定コスト、性能、信頼性、セキュリティ格付け、平均レイテンシなどをユーザが確認できるように、プロバイダサイト候補のリストは、最適化基準及び最適化データの一部又は全部に関する最適化データとともに提示されてよい。例において、最適化システム104は、選択されたプロバイダサイト108、110、及び/又は112のうちの1つ又は複数においてコンピューティングサービスが展開/インスタンス化されるようにする機会を、クライアントデバイス102に提供してよい。例において、最適化システム104は、選択されたプロバイダサイト108、110、及び/又は112においてコンピューティングサービスを展開及び/又はインスタンス化するために使用可能な構成システム116と通信してよい。例において、構成システム116は、選択されたプロバイダサイト108、110、及び/又は112においてコンピューティングサービスがホストされ、顧客サイト114からアクセスされることを可能にするために、ハードウェア、オペレーティングシステム、データストレージ、及び/又はネットワーク接続性がプロバイダネットワーク106内で調達されるようにしてよい。例において、構成システム116は、コンピューティングサービスを1つ又は複数のプロバイダサイト108、110、及び/又は112にインスタンス化及び/又は移動するよう最適化システム104により自動的に命令されてよい。他の例において、選択されたプロバイダサイト108、110、及び/又は112におけるコンピューティングサービスのインスタンス化を遂行するために、クライアントデバイス102は、最適化システム104によって構成システム116にリダイレクトされてよい。
【0047】
他の例においては、特定のプロバイダサイト108、110、及び/又は112をユーザが選択することなく、コンピューティングサービスが特定のプロバイダサイト108、110、及び/又は112に自動的に展開されるようにするために、プロバイダサイト候補のリストが使用されてよい。例えば、プロバイダネットワーク106は、サービス情報、最適化データ、及び最適化基準に基づき自己構成してよい。最適化システム104は、プロバイダサイト108、110、及び/又は112の最終的な選択をユーザが行うことなく、コンピューティングサービスをどのプロバイダサイト108、110、及び/又は112にホストすべきかを決定してよく、この決定は顧客からは見えなくてよい。最適化システム104は、次いで、選択されたプロバイダサイト108、110、及び/又は112においてコンピューティングサービスを自動的に展開及び/又はインスタンス化するよう構成システムに命令してよい。
【0048】
フローは動作210に進み、ここでサービス情報、最適化データ、及び最適化基準が記憶される。例において、最適化システム104は、サービス情報、最適化基準、及び動作206で判定された対応する最適化データを記憶してよい。例において、動作210は、動作206で判定されたプロバイダサイト候補のリストを記憶することも含んでよい。最適化基準、最適化データ、及び/又はプロバイダサイト候補のリストは、最適化システム104において、及び/又は最適化システム104にとってアクセス可能なデータストレージに記憶されてよい。最適化基準は、動作204において受信したそのような最適化基準に関する任意のランク付け/順序付けとともに記憶されてよい。例において、最適化データ及び/又はプロバイダサイト候補のリストは、特定のタイプの最適化データに応じて異なることがある関連する有効期間値とともに記憶されてよい。例えば、いくつかの最適化データは、相対的に安定(例えば、プロバイダサイトがPCI証明されているかどうか)であり得るが、その一方で他の最適化データは、プロバイダネットワークの状態に基づき、より頻繁に変動することがある(例えば平均レイテンシ)。そのため、いくつかの最適化データは、他のものより長い有効期間値が与えられてよい。例において、直近に生成されたプロバイダサイト候補のリストは、コンピューティングサービスの早急な移動のためにそれが必要になった場合(例えばプロバイダサイトの障害の場合)に備えて常に記憶される。
【0049】
フローは動作212に進み、ここでコンピューティングサービスを別のプロバイダサイトに移動するかどうかが判定される。コンピューティングサービスの一部又は全部を1つ又は複数の他のプロバイダサイトに移動するかどうかという動作212での決定は、様々な要因及び/又はトリガに基づいてよい。例えば、決定動作212は、変更事象の検出に基づきトリガされてよい。変更事象の例は、改善メトリックが最短期間にわたって閾値を超えていること、その時点のプロバイダサイトの障害、及び/又はユーザ要求/承認を含むことができる。動作212の例は、図3及び4に関して記載される。コンピューティングサービスを別のプロバイダサイトに移動しない決定が下された場合、方法は、コンピューティングサービスを別のプロバイダサイトに移動する決定が下されるまで動作212に折り返して戻る。
【0050】
コンピューティングサービスの少なくとも一部分を別のプロバイダサイトに移動する決定が下された場合、フローは動作214に分岐し、ここでコンピューティングサービスの少なくとも一部分が別のプロバイダサイトに移動される。例えば、動作214において、コンピューティングサービスは、第2のプロバイダサイトにおいて再展開されてよい。例において、これは、全てのトラフィックを第1のプロバイダサイトから第2のプロバイダサイトに移動することを含んでよい。他の例において、動作214は、コンピューティングサービスのトラフィックが第1のプロバイダサイト及び第2のプロバイダサイトの間で分割され得るように、第1のプロバイダサイトを無効にせずに、第2のプロバイダサイトを追加することを含んでよい。例えば、1つの顧客サイト114からのトラフィックは、第2のプロバイダサイトに移動されてよく、その一方で特定の顧客サイト114からのトラフィックは、その時点の(例えば第1の)プロバイダサイトになおダイレクトされてよい。動作214は、最適化システム104によって構成システム116と連携して実行されてよい。例えば、最適化システム104は、第2のプロバイダサイトにおいてコンピューティングサービスをインスタンス化するために必要な、任意の必要なコンピューティング及びネットワーキングリソースを調達するよう構成システム116に命令してよい。例において、構成システムは、トラフィックの一部又は全部を、全ての(又は単に特定の)顧客サイト114から第2のプロバイダサイトにリダイレクトするために、プロバイダネットワーク106のディレクトリサーバ(例えばDNSサーバ)を構成してもよい。例において、動作214は、コンピューティングサービスを移動すべきという動作212での判定に基づき自動的に実行されてよい。他の例において、動作214は、例えばクライアントデバイス102から、ユーザ承認を受信した後にのみ実行されてよい。コンピューティングサービスが別のプロバイダサイトに移動された後、フローは動作212に折り返して戻る。
【0051】
図3は、決定動作212の一例である方法300を示す。動作302において、更新済みのサービスデータ、最適化基準、及び/又は最適化データが受信される。例えば、最適化システム104は、その時点のプロバイダサイトにコンピューティングサービスがホストされている間に、ネットワーク性能データ及び/又はコンピューティング性能データを定期的に収集することにより、サービスデータ及び最適化データのうちの一方又は両方を定期的に更新するように構成されてよい。他の例においては、サービスデータ及び/又は最適化データを更新するよう、クライアント102のユーザが最適化システム104をプロンプトしてよい。さらに、顧客が、最適化基準の更新を開始してもよいし、又はそれを開始するようプロンプトされてもよい。例えば、最適化システム104は、クライアント102からの新しい最適化基準及び/又は最適化基準に関する新しい重み付け又はランク付けを受信してよい。
【0052】
動作304において、プロバイダサイト候補の更新済みリストが、更新済みのサービスデータ、最適化基準、及び/又は最適化データに基づき自動的に判定される。例えば、最適化システム104は、動作302において更新済み情報を受信したことに応答して、更新済みのサービスデータ、最適化基準、及び/又は最適化データを使用してプロバイダサイト候補の新しいリストを作成してよい。例において、最適化システム104は、例えば最適化基準がランク付け及び/又は重み付けされているとおりに、更新済みのサービスデータ、最適化基準(及び対応する最適化データ)に基づきプロバイダサイト候補を採点するためのスコア行列を再び利用してよい。プロバイダサイト候補のリスト内で、候補は、1つ又は複数の他の最適化基準に基づき、(例えば最少コストから最大コストへ、又は最小レイテンシから最大レイテンシへの昇順などで)順序付けされて(又はソート可能であって)よい。
【0053】
動作306において、更新済みのサービスデータ、最適化基準、及び/又は最適化データが記憶される。加えて、プロバイダサイト候補の再計算されたリストも記憶されてよい。例えば、更新済みの情報は、動作210において記憶された情報に加えて記憶されてもよいし、又は動作210において記憶された情報の一部又は全部を置き換えてもよい。例において、前のサービスデータ、最適化基準、及び/又は最適化データ、及び前に計算されたプロバイダ候補のリストは、経時的に比較ができるように、ある期間にわたり記憶される。
【0054】
動作308において、改善メトリックが最短期間にわたって閾値を超えているかどうかが判定される。例において、最適化システム104は、更新済みのプロバイダサイト候補リスト内の任意のプロバイダサイトが、コンピューティングサービスを現在ホストしているプロバイダサイトよりも推奨されるかどうかを判定してよい。次いで、動作304において判定された、再計算されたプロバイダサイト候補リストから今推奨されたプロバイダサイトが、その時点のプロバイダサイト(例えば第1のプロバイダサイト)よりも、変更を保証するのに十分な改善を示すかどうかを判定することができる。例において、改善メトリックは、動作304において使用したスコア行列に基づく第1の(現在の)プロバイダサイトに対する、第2の(代替的な)プロバイダサイトに関する全体的な重み付けスコアの差を含むことができる。加えて、改善メトリックは、最短期間にわたり測定されてよい。例えば、改善メトリックが1つの基準(例えばレイテンシ)のみを含む簡単な例において、動作308は、第2のプロバイダサイトの平均レイテンシが、第1のプロバイダサイトにおける平均レイテンシより、少なくともX%良好であり、且つ少なくとも最短期間(例えば1か月)にわたってその状態であるかどうかを判定することを含んでよい。
【0055】
改善メトリックが最短期間にわたって閾値を超えないと動作308において判定された場合、フローは動作212に折り返して戻る。改善メトリックが最短期間にわたって閾値を超えると動作308において判定された場合、フローは図2の動作214に進み、ここでコンピューティングサービスの少なくとも一部分が移動される。
【0056】
図4は、決定動作212の別の例である方法400を示す。動作402において、その時点のプロバイダサイトにおいて障害が検出されているかどうかが判定される。例えば、その時点のプロバイダサイト(例えば第1のプロバイダサイト)は、到達不可能になることがあり、且つ/又は分散型サービス拒否(distributed denial of service:DDoS)攻撃などの攻撃の対象になることがある。例において、最適化システム104は、プロバイダネットワーク106の1つ又は複数の要素から、その時点のプロバイダサイトにおける障害の指示を受信してよい。その時点のプロバイダサイトにおいて障害が検出されていない場合、フローは図2の動作212に戻って進む。
【0057】
動作404において、その時点のプロバイダサイトにおける障害が検出されている場合、代替的なプロバイダサイトが判定される。例において、動作404は、その時点のプロバイダサイトにおける障害が動作402において検出されたことに応答して、コンピューティングサービスのために今推奨されるプロバイダサイトを判定することを含んでよい。例において、動作404は、プロバイダサイト候補の直近の記憶されたリストを取得し、そのリスト上で最も強く推奨されている代替的なプロバイダサイトを選択することを含んでよい。例えば、動作206において判定されたプロバイダサイト候補の元のリストが、ストレージから取得され、使用されることが可能である。他の例において、プロバイダサイト候補リストは、例えば動作304及び306において更新及び記憶されていてよく、記憶及び更新されたリストが使用されてよい。例において、プロバイダサイト候補の直近の記憶されたリストは、その時点のプロバイダサイトにおける障害を可能な限り迅速に修復するために使用されてよい。
【0058】
動作404の他の例においては、その時点のプロバイダサイトにおける障害が動作402において検出されたことに応答して、最適化システム104が、更新済みのサービスデータ、最適化基準、及び/又は最適化データを要求及び受信してよい。新たに更新されたサービスデータ、最適化基準、及び/又は最適化データは、次いで、プロバイダサイト候補の新しいリストを作成するために使用されてよく、そのリストから、代替的なプロバイダサイトが判定されてよい。代替的なプロバイダサイトが判定されると、フローは図2の動作214に進み、ここでコンピューティングサービスの少なくとも一部分が移動される。
【0059】
例において、方法300及び400のうちの一方又は両方は、判定動作212として使用されることが可能である。例えば、動作308において改善メトリックが最短期間にわたって閾値量を超えるか、又は動作402において現在のプロバイダサイトにおいて障害が検出され、動作404において代替的なプロバイダサイトが判定されるかのいずれかである場合、動作212は「はい」に流れて動作214に至ってよい。
【0060】
図5は、本システム及び方法の態様を実施可能な例示的な環境500を示す。例えば、クライアントデバイス102、最適化システム104、プロバイダネットワーク106の構成要素、プロバイダサイト108、110、112、顧客サイト114、リソース118、他のプロバイダネットワーク120、122のうちの1つ又は複数は、全体的に又は部分的に、図5の環境500の形態を取ることができる。
【0061】
最も基本的な構成において、動作環境500は、通常、少なくとも1つの処理ユニット502及びメモリ504を含む。コンピューティングデバイスの厳密な構成及びタイプに応じて、(本明細書で開示する技術を実行するための命令を記憶している)メモリ504は、揮発性(例えばRAM)、不揮発性(例えばROM、フラッシュメモリなど)、又はこれら2つの何らかの組み合わせであってよい。この最も基本的な構成は、破線506によって図5に図示されている。さらに、環境500は、磁気的又は光学的なディスク又はテープを含むがこれらに限定されないストレージデバイス(取り外し可能508及び/又は取り外し不可能510)も含んでよい。同様に、環境500は、例えばキーボード、マウス、ペン、音声入力などの入力デバイス514、及び/又は例えばディスプレイ、スピーカ、プリンタなどの出力デバイス516も有してよい。また、例えばLAN、WAN、ポイントツーポイントなどの1つ又は複数の通信接続512が、環境に含まれてよい。実施形態において、接続は、ポイントツーポイント通信、コネクション型通信、コネクションレス通信などを容易にするよう動作可能であってよい。
【0062】
動作環境500は、通常、少なくとも何らかの形態のコンピュータ可読媒体を含む。コンピュータ可読媒体は、処理ユニット502又は動作環境を含む他のデバイスによるアクセスが可能な任意の利用可能な媒体とすることができる。限定ではなく例として、コンピュータ可読媒体は、コンピュータストレージ媒体及び通信媒体を含んでよい。コンピュータストレージ媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータなどの情報を記憶するための、任意の方法又は技術で実装された揮発性及び不揮発性、取り外し可能及び取り外し不可能な媒体を含む。コンピュータストレージ媒体は、RAM、ROM、EEPROM、フラッシュメモリ、又は他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)、又は他の光学的なストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、又は他の磁気ストレージデバイス、又は所望の情報を記憶するために使用可能な任意の他の有形の非一時的な媒体を含む。コンピュータストレージ媒体は、通信媒体を含まない。
【0063】
通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又は変調データ信号内の他のデータ、例えば搬送波又は他の移送メカニズムを具現化し、任意の情報送達媒体を含む。「変調データ信号」という用語は、信号内の情報をエンコードするように設定又は変更された特徴のうちの1つ又は複数を有する信号を意味する。限定ではなく例として、通信媒体は、有線ネットワーク又は直接有線接続などの有線媒体、及び音響、RF、赤外線、マイクロ波、及び他の無線媒体などの無線媒体を含む。上記のうちのいずれかの組み合わせも、コンピュータ可読媒体の範囲内に含まれるべきである。
【0064】
動作環境500は、1つ又は複数のリモートコンピュータへの論理接続を使用してネットワーク環境において動作する単一のコンピュータであってよい。リモートコンピュータは、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、又は他の共通ネットワークノードであってよく、通常、上述した要素並びにそのように言及していない他のもののうちの多く又は全部を含む。論理接続は、利用可能な通信媒体によってサポートされている任意の方法を含んでよい。そのようなネットワーキング環境は、事務所、企業規模のコンピュータネットワーク、イントラネット、及びインターネットによくある。
【0065】
本明細書に記載の実施形態は、本明細書において開示するシステム及び方法を実装及び実行するために、ソフトウェア、ハードウェア、又はソフトウェア及びハードウェアの組み合わせを使用して利用されてよい。特定のデバイスが、特定の機能を実行するものとして本開示全体を通して述べられているが、これらのデバイスは、例示を目的として提供されており、本明細書において開示する機能を実行するために、本開示の範囲から逸脱することなく他のデバイスが利用されてよいことを、当業者であれば理解するであろう。
【0066】
「一例」又は「例」に言及することは、その例に関連して記載した特定の特徴、構造、又は特性が、本開示の少なくとも1つの例に含まれることを意味する。本明細書内の様々な箇所に「一例において」という言い回しが出現するが、これは必ずしも全てが同じ例に言及しているわけではなく、又は他の例と互いに排他的な別個の又は代替的な例であるわけでもない。さらに、いくつかの例によっては明示され得るが他の例によっては明示されていない様々な特徴が記載されている。
【0067】
本開示は、可能な実施形態の一部のみが示された添付図面を参照しながら、本技術の一部の実施形態について記載している。しかしながら、他の態様は、多くの異なる形式において具現化されてよく、本明細書に記載の実施形態に限定されるものと解釈されるべきではない。むしろ、これらの実施形態は、本開示が徹底的且つ完全であり可能な実施形態の範囲を当業者に全て伝えるように提供されたものであった。
【0068】
特定の実施形態が本明細書に記載されているが、本技術の範囲は、これらの特定の実施形態に限定されない。当業者は、本技術の範囲及び趣旨に含まれる他の実施形態又は改善形態を認識するであろう。したがって、特定の構造、作用、又は媒体は、例示的な実施形態としてのみ開示されている。本技術の範囲は、以下の特許請求の範囲及びその中の任意の均等物によって定義される。
図1
図2
図3
図4
図5
【国際調査報告】