図面 (/)

この項目の情報は公開日時点(2019年4月4日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題・解決手段

種々の通信ステムは、改善型のクラウド検証プラットホームから利益が得られる。例えば、自動化及び系統的形態においてクラウドアプリケーションに代って基礎的なクラウドインフラストラクチャーテストしそして検証することのできるクラウド検証プラットホームが有益である。方法は、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続することを含む。又、この方法は、クラウドインフラストラクチャー上でのバーチャルネットワーク機能の実行をトリガーすることも含む。更に、この方法は、クラウド検証サービスを使用して実行されるバーチャルネットワーク機能でクラウドインフラストラクチャーの重要属性をテストすることも含む。更に、この方法は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックユーザ装置送出することも含む。

概要

背景

概要

種々の通信ステムは、改善型のクラウド検証プラットホームから利益が得られる。例えば、自動化及び系統的形態においてクラウドアプリケーションに代って基礎的なクラウドインフラストラクチャーテストしそして検証することのできるクラウド検証プラットホームが有益である。方法は、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続することを含む。又、この方法は、クラウドインフラストラクチャー上でのバーチャルネットワーク機能の実行をトリガーすることも含む。更に、この方法は、クラウド検証サービスを使用して実行されるバーチャルネットワーク機能でクラウドインフラストラクチャーの重要属性をテストすることも含む。更に、この方法は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックユーザ装置送出することも含む。

目的

幾つかの実施形態は、クラウドインフラストラクチャー上で実行されるテレコミュニケーションアプリケーションの性能を分析できるようにする一貫したテストを提供する

効果

実績

技術文献被引用数
- 件
牽制数
- 件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

該当するデータがありません

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

クラウドインフラストラクチャーテストするためにクラウド検証サービスに接続し、前記クラウドインフラストラクチャー上でのバーチャルネットワーク機能の実行をトリガーし、前記クラウド検証サービスを使用して前記実行されるバーチャルネットワーク機能で前記クラウドインフラストラクチャーの重要属性がテストされ、及び前記クラウドインフラストラクチャーの前記重要属性又は前記バーチャルネットワーク機能のメトリックユーザ装置で受け取る、ことを含む方法。

請求項2

前記クラウドインフラストラクチャーの重要属性又は前記バーチャルネットワーク機能の前記メトリックは、既にテストされた基準の重要属性又はバーチャルネットワーク機能と比較され、前記基準の重要属性は、同じクラウドからのもの又は異なるクラウドからのものである、請求項1に記載の方法。

請求項3

前記メトリックは、ネットワークインフラストラクチャー又はバーチャルネットワーク機能が送信制御プロトコルユーザデータグラムプロトコル又はストリーム制御送信プロトコルの少なくとも1つを使用するかどうかテストすることを含む、請求項1に記載の方法。

請求項4

前記ユーザ装置のユーザインターフェイスに前記メトリックを表示することを更に含む、請求項1に記載の方法。

請求項5

前記クラウドインフラストラクチャーの重要属性又は前記バーチャルネットワーク機能のテスト中分散型アーキテクチャーが使用される、請求項1に記載の方法。

請求項6

前記クラウドインフラストラクチャーの少なくとも2つのコンピューティングノードにおいて前記重要属性のテストを監視することを更に含む、請求項1に記載の方法。

請求項7

前記重要属性は、前記クラウドインフラストラクチャーのコンピューティングネットワーキングストレージ又はサービス能力の少なくとも1つを含む、請求項1に記載の方法。

請求項8

前記テストは、前記クラウド内の異なるネットワーク経路又はトポロジーを評価することを含む、請求項1に記載の方法。

請求項9

前記メトリックは、前記重要属性を基準クラウドインフラストラクチャーと比較するためのグレードを含む、請求項1に記載の方法。

請求項10

前記メトリックの発生されたレポートを受信し、及び前記レポートをユーザ装置に表示する、ことを更に含む、請求項1に記載の方法。

請求項11

クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続し、プラットホームデバイスにより前記クラウドインフラストラクチャーの重要属性のテストをスケジューリングし、前記クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行され、前記スケジュールテストエージェント送出し、及び前記クラウドインフラストラクチャーの前記重要属性又は前記バーチャルネットワーク機能のメトリックを受け取る、ことを含む方法。

請求項12

前記メトリックをユーザ装置へ送信することを更に含む、請求項11に記載の方法。

請求項13

前記メトリックをデータベースに記憶することを更に含む、請求項11に記載の方法。

請求項14

前記クラウドインフラストラクチャーの重要属性又は前記バーチャルネットワーク機能のテストの進行を監視することを更に含む、請求項11に記載の方法。

請求項15

クラウドインフラストラクチャーの重要属性についてテストを行うためにプラットホームデバイスから要求を受け取り、クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行され、前記クラウドインフラストラクチャーの重要属性及び前記バーチャルネットワーク機能についてテストを行い、及び前記クラウドインフラストラクチャーの重要属性又は前記バーチャルネットワーク機能のメトリックを前記プラットホームデバイスへ送信する、ことを含む、方法。

請求項16

プラグインを使用してテストを遂行することを更に含む、請求項15に記載の方法。

請求項17

前記プラットホームデバイスへハートビートを送信し、このハートビートは、テストエージェントが前記クラウドインフラストラクチャーをテストする準備ができたことを前記プラットホームデバイスに通知する、請求項15に記載の方法。

請求項18

コンピュータプログラムコードを含む少なくとも1つのメモリ、及び少なくとも1つのプロセッサ、を備えた装置において、少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、装置が、少なくとも、請求項1から17に記載のプロセスを遂行するようにさせるよう構成された、装置。

請求項19

請求項1から17のいずれかに記載のプロセスを遂行するための手段を備えた装置。

請求項20

ハードウェアで実行されたときに請求項1から17のいずれかに記載のプロセスを遂行するインストラクションエンコードする非一時的コンピュータ読み取り可能な媒体

請求項21

請求項1から17のいずれかに記載のプロセスを遂行するインストラクションをエンコードするコンピュータプログラム製品

技術分野

0001

[関連技術の相互参照
本出願は、2016年2月26日に出願された米国プロビジョナル特許出願第62/300,512号の利益及び優先権を主張するもので、該出願は、参考としてここにそのまま援用される。

0002

種々の通信ステムは、改善型のクラウドインフラストラクチャーテストから利益が得られる。例えば、自動化及び系統的形態においてクラウドで実行されるアプリケーションに代ってクラウドインフラストラクチャーをテストしそして検証することのできるクラウド検証プラットホームが有益である。

0003

[関連技術の説明]
クラウドコンピューティングシステムは、情報テクノロジー時代に益々重要なものとなってきている。クラウドコンピューティングは、多数の異なる産業において多数のタイプのアプリケーションを実行するのに使用される、設立され且つ成熟したテクノロジーである。しかしながら、テレコミュニケーションネットワークでは、クラウドコンピューティングは、テレコミュニケーションネットワークの継続進化において重要な役割を演じることを約束する最先端のテクノロジーである。

0004

クラウドコンピューティングインフラストラクチャー上でのテレコミュニケーションアプリケーションの開発をサポートするためのツール及びサービスの開発は、充分確立されていない。クラウドコンピューティングインフラストラクチャーは、柔軟であるが、複雑であり、クラウドの機能をサポートするために全てが一緒に動作するハードウェアオペレーティングシステムハイパーバイザーコンテナ、アプリケーション及びサービスを有している。クラウドコンピューターインフラストラクチャーは、柔軟であるにも関わらず、インフラストラクチャーの性能及び相互作用、並びにインフラストラクチャー上で実行されるアプリケーションは、可変であり且つ予想不能である。それ故、クラウドコンピューティングインフラストラクチャー上で実行されるソフトウェアアプリケーションは、予想通りに機能しないことが時々ある。

0005

この予想不可能性は、テレコミュニケーションアプリケーションに種々の問題を引き起こし、その幾つかは、正確なレイテンシー及びネットワーキングのための帯域巾ニーズのような厳格な要求である。クラウドコンピューティングインフラストラクチャー上にテレコミュニケーションアプリケーションを首尾良く配備するため、インフラストラクチャーは、最初に、動作、信頼性及び性能についてテストされねばならない。クラウド振舞いの動的及び可変特性が与えられると、クラウドインフラストラクチャー上でそれらアプリケーションの実行をテストするのは、困難であり且つ時間浪費である。

発明が解決しようとする課題

0006

クラウドコンピューティングインフラストラクチャー上に多数のテレコミュニケーションアプリケーションを配備する試みがこの問題を複合化する。各アプリケーションは、異なるワークロードコンピューティングストレージ及びネットワーキング要求をクラウドに課す。クラウドインフラストラクチャーをテストするコスト及び時間は、特に、正確な測定を行うために統計学的に顕著な量のデータを収集しなければならないときに大きなものとなる。

課題を解決するための手段

0007

方法は、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続することを含む。又、この方法は、クラウドインフラストラクチャー上でのバーチャルネットワーク機能の実行をトリガーすることも含む。クラウド検証サービスを使用して実行されるバーチャルネットワーク機能でクラウドインフラストラクチャーの重要属性がテストされる。更に、この方法は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックユーザ装置で受け取ることを含む。

0008

幾つかの実施形態によれば、装置は、コンピュータプログラムコードを含む少なくとも1つのメモリ、及び少なくとも1つのプロセッサを備えている。少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続するように構成される。又、少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、クラウドインフラストラクチャー上でのバーチャルネットワーク機能の実行をトリガーするように構成される。クラウド検証サービスを使用して実行されるバーチャルネットワーク機能でクラウドインフラストラクチャーの重要属性がテストされる。更に、少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをユーザ装置で受け取るように構成される。

0009

装置は、幾つかの実施形態において、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続する手段を備えている。又、この装置は、クラウドインフラストラクチャー上でのバーチャルネットワーク機能の実行をトリガーする手段も備えている。クラウド検証サービスを使用して実行されるバーチャルネットワーク機能でクラウドインフラストラクチャーの重要属性がテストされる。更に、この方法は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをユーザ装置で受け取ることを含む。

0010

幾つかの実施形態によれば、非一時的コンピュータ読み取り可能な媒体は、ハードウェアで実行されたときに、プロセスを遂行するインストラクションエンコードしている。このプロセスは、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続することを含む。又、このプロセスは、クラウドインフラストラクチャー上でのバーチャルネットワーク機能の実行をトリガーすることも含む。クラウド検証サービスを使用して実行されるバーチャルネットワーク機能でクラウドインフラストラクチャーの重要属性がテストされる。更に、このプロセスは、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをユーザ装置で受け取ることを含む。

0011

幾つかの実施形態によれば、コンピュータプログラム製品は、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続することを含む方法によるプロセスを遂行するインストラクションをエンコードしている。又、この方法は、クラウドインフラストラクチャー上でのバーチャルネットワーク機能の実行をトリガーすることも含む。クラウド検証サービスを使用して実行されるバーチャルネットワーク機能でクラウドインフラストラクチャーの重要属性がテストされる。更に、この方法は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをユーザ装置で受け取ることも含む。

0012

方法は、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続することを含む。又、この方法は、プラットホームデバイスによりクラウドインフラストラクチャーの重要属性のテストをスケジューリングすることも含む。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。更に、この方法は、スケジュールテストエージェント送出することも含む。更に、この方法は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックを受け取ることも含む。

0013

幾つかの実施形態によれば、装置は、コンピュータプログラムコードを含む少なくとも1つのメモリ、及び少なくとも1つのプロセッサを備えている。少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続するように構成される。又、少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、プラットホームデバイスによりクラウドインフラストラクチャーの重要属性のテストをスケジューリングするように構成される。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。更に、少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、スケジュールをテストエージェントへ送出するように構成される。更に、少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックを受け取るように構成される。

0014

装置は、幾つかの実施形態において、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続する手段を備えている。又、この装置は、プラットホームデバイスによりクラウドインフラストラクチャーの重要属性のテストをスケジューリングする手段も備えている。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。更に、この装置は、スケジュールをテストエージェントへ送出する手段も備えている。更に、この装置は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックを受け取る手段も備えている。

0015

幾つかの実施形態によれば、非一時的コンピュータ読み取り可能な媒体は、ハードウェアで実行されたときに、プロセスを遂行するインストラクションをエンコードしている。このプロセスは、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続することを含む。又、このプロセスは、プラットホームデバイスによりクラウドインフラストラクチャーの重要属性のテストをスケジューリングすることも含む。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。更に、このプロセスは、スケジュールをテストエージェントへ送出することも含む。更に、このプロセスは、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックを受け取ることも含む。

0016

幾つかの実施形態によれば、コンピュータプログラム製品は、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続することを含む方法によるプロセスを遂行するインストラクションをエンコードしている。又、この方法は、プラットホームデバイスによりクラウドインフラストラクチャーの重要属性のテストをスケジューリングすることも含む。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。更に、この方法は、スケジュールをテストエージェントへ送出することも含む。更に、この方法は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックを受け取ることも含む。

0017

方法は、クラウドインフラストラクチャーの重要属性についてテストを行うためにプラットホームデバイスから要求を受け取ることを含む。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。又、この方法は、クラウドインフラストラクチャーの重要属性及びバーチャルネットワーク機能についてテストを行うことも含む。更に、この方法は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをプラットホームデバイスへ送出することも含む。

0018

幾つかの実施形態によれば、装置は、コンピュータプログラムコードを含む少なくとも1つのメモリ、及び少なくとも1つのプロセッサを備えている。少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、クラウドインフラストラクチャーの重要属性についてテストを行うためにプラットホームデバイスから要求を受け取るように構成される。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。又、少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、クラウドインフラストラクチャーの重要属性及びバーチャルネットワーク機能についてテストを行うように構成される。更に、少なくとも1つのメモリ及びコンピュータプログラムコードは、少なくとも1つのプロセッサとで、少なくとも、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをプラットホームデバイスへ送出するように構成される。

0019

装置は、幾つかの実施形態において、クラウドインフラストラクチャーの重要属性についてテストを行うためプラットホームデバイスから要求を受け取る手段を備えている。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。又、この装置は、クラウドインフラストラクチャーの重要属性及びバーチャルネットワーク機能についてテストを行う手段も備えている。更に、この装置は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをプラットホームデバイスへ送出する手段も備えている。

0020

幾つかの実施形態によれば、非一時的コンピュータ読み取り可能な媒体は、ハードウェアで実行されたときに、プロセスを遂行するインストラクションをエンコードしている。このプロセスは、クラウドインフラストラクチャーの重要属性についてテストを行うためにプラットホームデバイスから要求を受け取ることを含む。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。又、このプロセスは、クラウドインフラストラクチャーの重要属性及びバーチャルネットワーク機能についてテストを行うことも含む。更に、このプロセスは、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをプラットホームデバイスへ送出することも含む。

0021

幾つかの実施形態によれば、コンピュータプログラム製品は、クラウドインフラストラクチャーの重要属性についてテストを行うためにプラットホームデバイスから要求を受け取ることを含む方法によるプロセスを遂行するインストラクションをエンコードしている。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。又、この方法は、クラウドインフラストラクチャーの重要属性及びバーチャルネットワーク機能についてテストを行うことも含む。更に、この方法は、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをプラットホームデバイスへ送出することも含む。

0022

本発明を適切に理解するために、添付図面を参照する。

図面の簡単な説明

0023

幾つかの実施形態によるシステムアーキテクチャーを示す。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるシステムアーキテクチャーを示す。
幾つかの実施形態によるシステムアーキテクチャーを示す。
幾つかの実施形態によるユーザインターフェイスを示す。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるトポロジーを示す。
幾つかの実施形態によるトポロジー図である。
幾つかの実施形態によるトポロジーを示す。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるシステムアーキテクチャーを示す。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるユーザインターフェイスを示す。
幾つかの実施形態によるユーザインターフェイスを示す。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるフローチャートである。
幾つかの実施形態によるシステムを示す。

実施例

0024

幾つかの実施形態は、クラウドインフラストラクチャー上で実行されるテレコミュニケーションアプリケーションの性能を分析できるようにする一貫したテストを提供する。このテストは、テストを互いに比較できるように種々のテレコミュニケーションアプリケーションについて再現することができる。

0025

又、幾つかの実施形態は、システム統合ネットワークプランニング及び最適化、並びにケアサービスのようなグローバルなサービス組織にも有益である。又、クラウドコンピューティングインフラストラクチャー上で実行するアプリケーションを開発する製品開発組織にも有益である。ある実施形態は、例えば、IMS、TAS、移動管理エンティティ、EPC、Flexi−NG及びクラウドRANを含むネットワークコア及び無線アクセスネットワーク(RAN)製品に適用される。又、性能要件満足するために安定した高性能ハードウェア及びソフトウェアプラットホームに依存する他の製品にも有益である。

0026

アプリケーションを、それが実世界のクラウドインフラストラクチャーによりサービスされたかのごとくテストするのを許す所与のモードでクラウド環境の性能を評価するためにテスト及び自動化の方法が使用される。このモードは、サービスモードとして知られている。幾つかの実施形態において、多数のクラウドでのテストは、単一の論理的サービスからオーケストレーションされる。多数のクラウドが変更されてもよい。ある実施形態は、可変インターネットアクセスを伴うか又はインターネットアクセスを伴わないクラウドを含むか、又はプロキシーを通してのインターネットアクセスを含む。

0027

幾つかの実施形態は、サービステストノード自動選択してそれをクラウドへ再指定することを、それらの利用性及び特定クラウドへの接続能力に基づいて提供する。あるクラウド環境は、ファイアウォールを含むので、幾つかの実施形態は、どのノードがクラウドへの接続を有するか発見するためのサービスを許す。ある所与の接続は、ファイアウォールによりブロックされないことがあり、それらの接続を、自動形態でテストを実行するために選択することができる。

0028

テストは、異なる構成及びファクタでの多数の繰り返しを実行することによりクラウドの配備を最適化するのに使用される。テストの結果は、性能及びコストに対する最適なクラウド構成を決定するのを許す。

0029

ある実施形態において、プロビジョニングテスト環境は、クラウドのタイプとは独立している。換言すれば、テスト環境は、種々のクラウドタイプにわたって適用される単一のテスト定義を有する。単一のテスト定義は、起動されるべきバーチャルインスタンスの構成を参照するために異なるクラウドタイプが異なる方法を使用する場合でも、種々のクラウドタイプにわたるテストを一貫したものにすることができる。

0030

他の実施形態は、動的ホスト構成プロトコルによってクラウドに指定されたプールから幾つかのインターネットプロトコル(IP)アドレスしか使用できないときでもクラウド環境においてテストを実行することができる。更に別の実施形態では、クラウドサービスアクセスできないバーチャルマシンは、プロキシー要求を使用してクラウドサービスにアクセスする。幾つかの実施形態では、バーチャルマシンは、クラウド内からクラウドサービステストを実行する。

0031

クラウドにわたるテスト結果は、自動的に比較される。テスト結果を使用してクラウド性能をグレード付けする。ある実施形態では、グレード付けは、多数のテスト結果に基づく自動的スレッシュホールドに従って調整される。他の実施形態では、新たなテストプラグインオンボーディングのために柔軟なメカニズムが設けられる。プラグインの追加は、バーチャルネットワーク機能チーム慣習的な製品より高速で新たなプラグインに貢献するのを許すことによって簡単化される。クラウドインフラストラクチャーアセットの指定を、クラウドインフラストラクチャーに関するあり得るリスク又はギャップについての推奨と共に含むレポートが発生される。

0032

又、幾つかの実施形態は、自動テストベクトルポートフォリオと共に、利用可能なクラウドサービス、ネットワーキング、計算及びストレージメトリックにわたってテストを行うプラットホームを生成するための方法も包含する。ある実施形態では、ポートフォリオは、1000を越える自動テストベクトルを含む。又、テレコムソフトウェアに対して割り当てられたクラウドのゾーンにおけるネットワーキング、コンピューティング及びストレージのアクティブな性能のテストを含むクラウドコンピューティング検証サービスも生成される。

0033

ある実施形態では、クラウドテストは、単一又は多数のテナント環境での非常に多数の同時テストにおいて起動され、実行されそして監視される。詳細な測定及び分析の理解を加速するために視覚形態で結果が表示される。測定及び分析を見ることができ、そして観察者が分析を理解できるチャート、テーブル、グラフ、又は他の視覚形態で観察者に提示できるように、ユーザインターフェイスが生成される。

0034

幾つかのテストは、クラウドインフラストラクチャー及びバーチャル化アプリケーションの性能を評価する上で助けとなる。評価は、バーチャル化ネットワーク機能アプリケーションソフトウェア製品に対して最低限の性能要求保証するためにクラウドコンピューティングインフラストラクチャーをチェックすることを含む。テストは、クラウドインフラストラクチャーにおけるアプリケーションの実行の性能を評価するためにテレコミュニケーションソフトウェアアプリケーションを表わすワークロードをエミュレートすることができる。このエミュレーションは、アプリケーションがクラウドインフラストラクチャーと相互作用する実世界シナリオのバーチャルシミュレーションを許す。

0035

幾つかの実施形態は、バーチャルマシン間の送信制御プロトコル(TCP)、ユーザデータグラムプロトコルUDP)及びストリーム制御送信プロトコルSCTP)のような異なるプロトコルの搬送のネットワーク性能をテストすることを含む。1つのバーチャルスイッチ内で又はバーチャルスイッチ境界を横切って搬送されるレンジパケットサイズを使用して、テスト中にクラウドをベンチマーキングし、そして結果を基準要求と比較する。この要求は、ある実施形態では、事前に決定される。幾つかの実施形態では、クラウドインフラストラクチャーの計算力をテストするためにブラックハッシングアルゴリズムが使用される。

0036

それとは別に、ある実施形態は、バーチャルマシンと外部ゲートウェイ境界との間のTCP、UDP及びSCTPのような異なるプロトコルの搬送のネットワーク性能をテストすることを含む。ネットワーク性能は、テストされるクラウドのベンチマークとして使用され、そして結果が基準要求と比較される。

0037

上述したテスト実施形態は、アプリケーションの設計及び開発段階におけるアプリケーションの連続テストを許す。それ故、テストは、アプリケーションの全機能と、アプリケーションが適切に機能するために必要なクラウドインフラストラクチャーの最低限の性能要求との間の一致を検証するのに使用される。

0038

幾つかの実施形態は、インフラストラクチャーのクラウドテストから収集されたデータにマシン及びディープラーニングを適用する。比較アプリケーションテストに対してベンチマーク及び重要性指示子(KPI)が記憶される。システムは、マシンラーニングを利用して、クラウドの偏差、異常、及び通常振舞いの複雑な相関及び指示を与える。収集されたデータは、同じインフラストラクチャーの以前のテスト、及び比較のための他のクラウドからのテストと比較される。比較に使用される以前のデータは、単一のテストからのものでもよいし、又は多数の逐次又は並列のテストにわたって累積されてもよく、これは、以前のテストの統計学的な有効性を改善する。又、テストは、クラウド及びその振舞いの幾つかの時間及びコンテキストバリアント特性も捕獲する。

0039

クラウドテストから収集されたデータのリアルタイム分析及びその後の分析も行われる。又、幾つかの実施形態は、トレンド及び将来の異常、或いはクラウドインフラストラクチャー又はアプリケーションレベルにおいて機能的又は性能上の問題を引き起こす将来の潜在的な条件に基づいて監視する必要のある幾つかのパラメータを予想するのにも使用される。

0040

ある実施形態では、クラウドに配置されたセキュリティ手段の正しい機能の評価が遂行される。セキュリティ特徴の存在及び有効化機能が遂行され、そしてレポートが発生される。又、クラウドは、自動脅威攻撃に対するクラウドの弾力性及び頑健性を評価するためにそのような攻撃による分散型サービス拒否及びフィッシングのようなセキュリティ脅威に対してもテストされる。他の実施形態は、種々の欠陥状態を使用することによりクラウドにおいて実行されるアプリケーションの高い利用性をテストする。欠陥状態は、種々のタイプの実世界欠陥をエミュレートする。欠陥及び欠陥状態に対するクラウドの応答が監視されてもよい。

0041

クラウド性能インデックス及びランキングが、多数のインフラストラクチャーテストKPIから発生され、そして比較のために使用される基線又はベンチマークに対して計算される。性能データが使用され、そしてメトリックが監視されて、潜在的なクラウド容量問題をそれが生じる前に予想するために通信ネットワークトラフィックパターンと相関される。同じクラウド又は異なるクラウドからの多数のテスト結果がユーザインターフェイスに視覚的に表示される。これは、結果のオーバーレイ、及び現在の結果と基線との間の差の評価を許す。

0042

幾つかの実施形態では、テストされるクラウドのデータベース、及びクラウドに関する情報、例えば、ハードウェア、ソフトウェア、ハイパーバイザー、及びその構成が管理される。情報及びテスト結果は、アグリゲートされ、同期され、アーカイブされ、クラスター化され、又はグループ化される。これは、テストが1つの場所から実行されるのではなく、地域的又は現場で行われる場合でも、結果の論理的集中化を許す。又、テスト結果の管理は、基準クラウドとの比較も含めて、現在テストされたデータと、以前のテストとの比較も許す。他方、他の実施形態は、多数のクラウドの結果の分析、並びにクラウド及び構成の変化の表示を許す。

0043

ある実施形態は、ワン・クリックアプローチを使用する。ワン・クリックアプローチでは、ユーザによる単一の開始アクション、例えば、ボタン押圧又はクリックでテストが開始される。テストは、テストメニューを経て事前に定義又はスケジューリングされ、これにより、単一ボタンの押圧又はクリックでテストを自動的に進めることができる。

0044

又、アプリケーション及びクラウドインフラストラクチャーのテストは、クラウドにおけるトラフィックスケールアップ及び/又はスケールダウンを評価することも含む。例えば、クラウドは、クラウドインフラストラクチャーにおける急速な需要変化に応答して付加的なバーチャルマシンを発生する能力を有する。そのような評価は、インフラストラクチャー及びアプリケーションがトラフィックのスケールアップについていけることを保証し、そしてインフラストラクチャーがトラフィック変化に対処できない特定の限界又は欠陥点を指示するために有用である。

0045

幾つかの実施形態は、1つ又は多数の売主からの指紋アプリケーション又はバーチャル化ネットワーク機能を使用する。指紋は、ユーザがKPIを分析し、そしてアプリケーションを実際の性能に相関させることを許す。ある実施形態では、性能KPIを予想するためにマシンラーニングが使用される。例えば、アプリケーションの構成及びハードウェア/ソフトウェアモデル振舞いの変更が、クラウドにおけるアプリケーションの実施の前に行われたらどうであろうか

0046

性能検証は、幾つかの実施形態では、高い信頼レベルを維持できる間に、必要な時間の一部分において遂行される。この検証アプローチは、所与のクラウドにおいて良く実行される典型的な指紋及び/又はパターンと比較されて一致するアプリケーションの指紋及び/又はパターンを発生できる能力を含む。

0047

幾つかの実施形態では、指紋アプローチは、バーチャルネットワーク機能モデルを発生するように学習するマシンの使用を含む。このマシンは、次いで、ターゲットクラウドのインフラストラクチャー性能を測定し、そして性能データ及び/又は意図されたトラフィックモデルをバーチャルネットワーク機能モデルに適用して、信頼性レベルを決定する。次いで、性能データのフィードバックループ展開され、これは、バーチャルネットワーク機能モデルへデータを返送する。

0048

1つの特定の実施形態では、有効化されるべきバーチャルネットワーク機能は、IPマルチメディアシステム(IMS)のコールセッション制御機能(CSCF)サブシステムである。IMS CSCFモデルは、以前に収集された性能データ、例えば、顧客クラウド又はラボテストにおける既存の展開から発生される。この性能データは、次いで、IMSモデルを発生できるマシンラーニングフレームワークを通して処理され、IMSモデルは、次いで、指紋を発生する。性能データのタイプは、例えば、IMS性能KPI又はインフラストラクチャー性能KPIを含む。

0049

次いで、ターゲットクラウドインフラストラクチャーの性能データが収集され及び測定される。次いで、インフラストラクチャー性能データは、予想されるトラフィックモデルと共に、IMSモデルに与えられ、ターゲットクラウドにおいて意図されたように実行されるIMSの信頼性レベル又は確率を決定する。IMSが生産に使用できると、性能データがマシンラーニングフレームワークへのフィードバックループとして利用され、モデルを改善することができる。

0050

幾つかの実施形態では、残留バーチャルマシン及びアセットがクラウドに残される。これらの残されたバーチャルマシン及びアセットは、幾つかの実施形態では、自己アクチベートし、そして自動的にテストを遂行し、外部からの介入なく結果を報告する。次いで、バーチャルマシン及びアセットは、より綿密なテスト(in-depth test)体制をトリガーするに充分な変化が検出された場合に報告を行い且つ警報を送信する。監督する運営者は、次いで、いつ及びどんな仕方で綿密なテストを遂行するか判断する。

0051

ある実施形態は、アプリケーションの機能的な分解を許し、これは、分解されたモジュールをクラウドに挿入することを含む。次いで、分解されたモジュールの性能が、モジュールレベル及び全アプリケーションレベルでテストされる。ノイズ性の隣接部を含む状態も評価される。同じクラウドに他のワークロードが存在するときのクラウド性能に対するノイズ性隣接部の影響が査定される。

0052

前記実施形態は、クラウドインフラストラクチャーにおいてテレコミュニケーションアプリケーションをテストすることを含む。種々の結果は、ネットワークプロバイダーが、動的コールをどのように割り当てるか及びクラウドメトリックに基づいてトラフィックをどのように取り扱うか決定するのを許す。

0053

図1は、幾つかの実施形態によるシステムアーキテクチャーを示す。システムアーキテクチャーは、例えば、プラットホーム110を備えている。プラットホーム110の各部は、それ自身、プロセッサ及びメモリを有するデバイスである。プラットホームのコントローラ部は、クラウド内に配備される。他の実施形態では、プラットホームは、同時にテストされる多数のクラウドをサポートする中央位置に配備される。又、プラットホーム110は、論理的に依然1つのクラスターと考えられてもよいマルチノード配備もサポートする。

0054

スケジューラー111は、プラットホームのコア部分に設けられる。このスケジューラーは、特定テストライフサイクルを管理するメインコンポーネントである。テストのライフサイクルは、多数の段階を含む。例えば、1つの段階は、テストインスタンスがテストテンプレートリストから生成されて特定のクラウドに指定されるテストプランニング段階である。次いで、テストが構成されて、スケジュールされた時間に実行されるようにセットされる。第2段階は、例えば、テストインスタンスが実行されるテスト実行段階である。テストの進行及びそれにより生じるテストメトリックは、テスト期間の少なくとも一部分、又はテストの全期間に対して監視される。

0055

又、プラットホーム110は、コレクタ112も備えている。コレクタ112は、重要なテスト関連データの収集を遂行する。例えば、テスト進行、テスト結果及びテストログがコレクタ112により収集される。データの収集は、ある実施形態では、メッセージブローカーソフトウェア、例えば、RabbitMQ113のようなメッセージングインターフェイスを経てリアルタイムで行われる。収集された全てのデータは、MongoDBのような選択のデータベース114に記憶される。

0056

幾つかの実施形態では、プラットホーム110は、オーケストレータ115を備えている。オーケストレータ115は、テストがスタートする前にクラウドにおいて1つ以上のテストクラスターを生成する責任をもつ。オーケストレータ115は、バーチャルマシンインスタンスを生成し、インスタンス間のネットワーキングを構成し、そして必要なパッケージをそれらインスタンスにインストールする。プラットホーム110は、それ自身の内部オーケストレータ115を有し、これは、Apache2、LibCloud、及びAnsibleのような外部サーバー又はソフトウェアにより支援される。他の実施形態では、CAMのような外部オーケストレーション要素がプラットホーム110と共に設けられる。この外部オーケストレーション要素では、全てのオペレーションが、種々の異なる実施全体にわたって使用できる単一のオーケストレーションインターフェイスを通して行われる。

0057

又、プラットホーム110には、アナライザレポーター116も含まれる。このアナライザ・レポーター116は、収集されたテストデータを分析し、クラウドリソースインデックス及び/又はグレードを発生し、そして最終クラウドレポートを発生する。更に、このコンポーネントは、例えば、クラウドの連続的な低オーバーヘッドテストに基づいてクラウド容量問題を予想するのに使用されるマシンラーニング特徴を含む。ある実施形態では、スケジューラー111、コレクタ112、オーケストレータ115及びアナライザ・レポーター116は、プラットホーム110のコア機能の一部分である。

0058

幾つかの実施形態では、プラットホーム110は、最終的レポートジェネレータ117を備えている。コマンドラインツールのセットも含まれ、これは、他の表現状態転送(representational state transfer)(REST)コンポーネントと同じノードにインストールされる。最終的レポートジェネレータは、ユーザインターフェイスに表示されるグラフを含めて、テスト結果からレポートを発生するのに必要な機能を与える。レポートは、ワードプロセスソフトウェアとコンパチブルである。RESTアプリケーションプログラムインターフェイスAPI)も設けられる。REST API 118は、クラウドインフラストラクチャー及びテストメタデータ露出させる。REST API 118は、次いで、テストされたメタデータをレポートし、そしてクラウドオペレーション、例えば、テストクラウド接続性外部アプリケーションに露出させる。REST APIは、ある実施形態では、ユーザインターフェイス119を外部アプリケーションとみなす

0059

ユーザインターフェイス119(UI)は、プラットホーム110と相互作用するためのインターフェイスを形成する。UI 119は、幾つかの実施形態では、ウェブベースである。UI 119は、ユーザがクラウドのテストを計画し、テストの進行を監視し、そして発生されたレポートを見る及び/又はダウンロードするのを許す。

0060

図1に示す実施形態は、テストエージェント120も備えている。テストエージェント120は、プラットホーム110によりスケジュールされたテストの実行を助ける。テストエージェント120は、ランニングテストの場合の1つ以上のバーチャルマシンインスタンスに配置される。テストエージェント120にはハートビート(HBeat)121が含まれる。HBeatは、IsAlive信号をプラットホーム110へ送信する責任がある。この信号は、スケジュールされたテストをエージェントが遂行する準備ができたとの指示としてプラットホーム110により解釈される。

0061

又、レポーター122も含まれる。レポーター122は、メッセージングインターフェイスを経てプラットホーム110へテスト進行の更新及びテスト結果を送信する。テスト進行の更新及び結果は、プラットホーム110のコレクタ112へ送信される。テストエージェント120は、テストエージェントのロギング動作を取り扱うロガー123も備えている。ロガー123は、テストの実行段階中にプラグインを取り扱う。ロガー123により集められたログは、メッセージングインターフェイス113を経てプラットホーム110へ送信される。

0062

幾つかの実施形態において、プラグ可能なエグゼキューターも設けられる。プラグ可能なエグゼキューター124は、プラットホーム110により送信されたテストインスタンスにおいて定義された全てのテストケースを実行する。エグゼキューター124は、テストエージェント120のプラグイン能力を経て、付加的な新たなテストケースタイプ、例えば、SPECCPU20xxテストをサポートすることができる。換言すれば、新たなテストケースは、テストエージェント120のコア部分にタッチする必要なく単に新たなテストプラグインとして開発されてもよい。

0063

テストエージェント120には、少なくとも1つのプラグイン125が含まれる。プラグイン125は、個々のテストケース実行の責任を負う個々のコンポーネントである。そのような個々のテストケース実行は、実行前の準備、テストケース実行、及び/又はテストケース結果の収集と報告を含む。

0064

又、図1に示す実施形態は、モニタリングクライアント130も含む。モニタリングクライアント130は、テストクラスターに関する幾つかの又は全てのインスタンスに含まれる。モニタリングクライアント130は、クラウドインフラストラクチャーのハードウェアに対するリソース使用を収集し、そしてテストモニタリングの目的でKPIを周期的に収集する。テストエージェント及びプラットホームは、主として、システムメトリック収集及び転送のために収集されたライブラリーを使用する。

0065

図2は、幾つかの実施形態によるフローチャートである。ステップ201は、クラウド検証サービスの第1ステップである。ステップ201は、クラウド接続を設定することを含み、これは、テストプラットホームがクラウド管理レイヤへの接続及びアクセス権を有することを保証するように働く。この段階で問題が生じる場合には、アドミニストレーター通知がなされる。

0066

幾つかの実施形態において、ステップ202は、クラウドインフラストラクチャーにおいてテレコミュニケーションアプリケーションのようなアプリケーションの性能をテストするためにインフラストラクチャーテストを実行することを含む。このテストは、クラウドインフラストラクチャーにおけるアプリケーションの実行をシミュレーションするためにバーチャルマシンの使用を伴う。クラウド検証サービスは、クラウドインフラストラクチャーのコンピュータ、ストレージ及びネットワークサービスの性能を評価し、そしてクラウドサービスの利用性を監視する。クラウド性能のばらつきを考慮するため、各テストは、複数回実行することができる。テストの最終グレードは、時々、有効な実行が少なくとも3回連続的に行われたときしか発生されず、これは、発生データが統計学的に顕著なものであることを保証する上で助けとなる。

0067

ある実施形態では、クラウド検証サービスは、テストの全サイクルを管理して、バーチャルマシンを生成し、それらをプロビジョニングし、それらにおいてテストを実行し、テスト結果を収集し、そして全ての割り当てられたリソースを終了させるようにする。

0068

ステップ203は、バーチャル化ネットワーク機能(VNF)テスト段階である。VNFテスト段階では、クラウド検証サービスは、VNF特有のKPIを測定するテストを実行して、インストールされたアプリケーションの性能を評価する。次いで、インフラストラクチャー及びVNFテストの結果が与えられて、基準点と比較される。基準は、以前にテストされたクラウドであるか、又はVNFオペレーションに対するベンチマーク基準として予め定義された標準クラウドである。次いで、ステップ204に示すように、テストの結果が分析され、そしてそれらの結果に基づいてレポートを発生することができる。

0069

図2において、ステップ201は、テストサービスにアクセスするために設定クラウド接続を含む。クラウド検証サービスは、多数のユーザにサービスしそして多数のクラウドを並列にテストするマルチテナントサービスである。ユーザがクラウドインフラストラクチャーをテストするのを許すテストサービスにアクセスするために、ユーザは、ユーザ名及びパスワードを使用してもよい。ユーザが首尾良くサービスにログオンするか又はアクセスすると、ユーザは、次いで、以前に追加されたクラウドを選択すべきかどうか、又は新たなクラウドを選択すべきかどうかを選ぶ。

0070

幾つかの実施形態では、ユーザが、例えば、オープンスタックキーストーン(openstack keystone)サービスURLを含む新たなクラウドの追加を選択するときに、ユーザが適切なアクセスクレデンシャルを得るための要求がなされる。アクセスクレデンシャルは、テナント名、ユーザ名、及び/又はパスワードを含む。適切なクレデンシャルが与えられると、サービスは、初期REST要求をクラウドに送信することができる。ユーザは、失敗又は成功の接続試みに関するフィードバックを受信する。接続試みが成功であった場合には、クラウドRESTAPIコールが成功であったことを指示するチェックボックスを設けることができる。接続試みが失敗である場合には、失敗の理由が与えられる。ある実施形態では、セッショントークンが与えられる。

0071

クラウド検証サービスは、ホスト型配備モデルにおいて実行される。この実施形態は、サービスの集中管理ビューを維持しつつ、種々のクラウド接続シナリオに対するサポートを含む。ある実施形態では、サービスの幾つかのノードしかターゲットクラウドに到達しない。これは、あるIPプール又は単一のIPアドレスからのトラフィックしか許さないファイアウォールが設けられたときに生じる。

0072

別の実施形態は、バーチャルプライベートネットワーク(VPN)を通してクラウドに接続することに関するもので、これは、ターゲットクラウドに到達できるサービスのノードを制限するように働く。クラウドへのVPNリンクは、1つ以上の特定ノードに対して設定される。VPN接続は、VPNトンネル終了点ノードの外側からのパケットルートを許さない。VPN又はファイアウォールにより生じるアクセス制限のクラウドへの接続を取り扱うために、クラウド検証サービスRESTは、図3に示すように、ルーターREST要求を含む。

0073

図3は、幾つかの実施形態によるフローチャートである。特に、図3は、クラウド検証サービスのRESTインターフェイスを示す。このRESTインターフェイスは、ユーザインターフェイス310により使用されると共に、統合のために他のシステムにより使用される。幾つかの実施形態は、クラウドAPIへ直接的コールを発し、例えば、特定クラウドの画像又はネットワークのリストを要求することを含む。RESTルーターコンポーネントは、クラウドに到達できる少なくとも1つのRESTレスポンダーにそのようなAPIコールをルーティングして、クラウドへ直接的要求を行い、その後、応答を返送するという責任がある。メッセージブローカーは、RESTレスポンダーとルーターとの間の通信を容易にするのに使用される。

0074

図3の実施形態において、ユーザインターフェイス310は、HTTP負荷バランサー320を通してハイパーテキスト転送プロトコル(HTTP)要求を送信する。この要求は、クラウドAPIを呼び出し、少なくとも1つのRESTルーター330に到達する。RESTルーター330は、次いで、全ての登録されたRESTレスポンダーノード340に、クラウドAPIが要求を発したことをブロードキャストする。RESTレスポンダーは、クラウド350に接続するのに使用され、これは、時々、VPN又はファイアウォールを経てロックされる。第1のRESTレスポンダーノード340からの応答は、ユーザインターフェイスへ返送される。ある実施形態では、クラウド識別最新のレスポンダーノード情報でスケジューラー指定構成を更新し、ノードがクラウドテストを取り扱うための指定のスケジューラーとなるようにする。

0075

幾つかの実施形態では、アクティブに働くルーターが2つ以上なければならない。全てのレスポンダーノードがルーターに登録される。レスポンダーノードは、それ自体を自動的に登録する。ある実施形態では、ルーターノードがレスポンダーノードでもあり、これは、両ノードの機能を1つの物理的ノードに結合できることを意味する。ユーザインターフェイスからの要求を全てのレスポンダーにブロードキャストするのではなく、その後の要求は、既知の良好なレスポンダーへルーティングすることができる。又、レスポンダーは、周期的に更新され、そして接続照合を行う。更に、レスポンダーは、ホワイトリストとして知られたホストのサポートリストを有する。ホワイトリストは、レスポンダーが排他的にサービスできる少なくとも1つの定義されたクラウドを含む。

0076

図4は、幾つかの実施形態によるシステムアーキテクチャーを示す。又、図4は、幾つかの実施形態によるクラウドRESTAPIの詳細な図でもある。図4の実施形態において、1つのRESTルーター410、及び3つのRESTレスポンダー(RESTレスポンダーA420、RESTレスポンダーB430及びRESTレスポンダーC440)がある。ルーター410は、2つのクラウドAPI REST要求をクラウドA450へルーティングすることができる。第1のAPIコールは、ネットワークのリストを得ることに関するものであり、一方、第2のAPIコールは、画像のリストを得ることに関するものである。第1コールの取り扱いに関連したオペレーションは、ステップ1、2、3、4、5及び6を含み、一方、第2コールに関連したオペレーションは、ステップ7、8、9、10及び11を含む。フローの各ステップは、絵の下に番号を付して記述される。

0077

ステップ0では、RESTルーター410は、データベース470、例えば、MongoDBへ接続することによりスタートする。RESTルーター410は、次いで、クラウドA450及びクラウドB460へのRESTレスポンダー420、430及び440のマッピングをデータベース470から取得する。RESTレスポンダーA420は、クラウドB460への要求を取り扱うことが指定され、RESTレスポンダーB430は、クラウドA450及びクラウドB460に指定され、そしてRESTレスポンダーC440は、クラウドA450に指定される。ルーティングがスタートすると、RESTルーター410は、レスポンダーからのハートビートメッセージの受信をスタートする。RESTレスポンダー420、430及び440は、メッセージキューを経てハートビートをブロードキャストする。

0078

ステップ1において、クラウドA450のリストネットワーク要求で検証サービスRESTAPIをコールすることができる。RESTルーター410は、その要求を送信する。RESTルーター410は、ステップ2において、レスポンダーから送信されたハードビートメッセージを使用して、クラウドAに指定されたどのレスポンダーが生きているかチェックすることができる。RESTレスポンダーB430は、アクティブではないので、リストネットワーク要求は、RESTルーター410へハートビートを送信する全てのアクティブなレスポンダーへ送られる。

0079

ステップ3において、レスポンダーA420及びレスポンダーC440は、クラウドA450に要求を行う。幾つかの実施形態では、レスポンダーA420は、成功のコールをなし得るが、レスポンダーC440からなされた要求は、ファイアウォール制約のためにクラウドに到達できないので失敗となる。ステップ4において、レスポンダーA420及びレスポンダーB430は、それらの結果を返送する。ステップ5において、RESTルーター410は、次いで、データベース470に記憶されたレスポンダーA420クラウド指定にクラウドA450を追加する。レスポンダーA420からの成功応答は、次いで、ルーター410によって戻される。この応答は、クラウドA450への成功接続が確立されたことを指示し、クラウドA450が成功裡に追加されたことを意味する。

0080

ステップ7において、画像のリストを要求するためにクラウドA450への第2コールが開始される。レスポンダーA420は、クラウドA450に既に指定されているので、ステップ8において、要求がクラウドA450へ転送される。クラウドA450に指定されたレスポンダーが2つ以上ある場合には、他の指定のレスポンダーにも要求が送られる。ステップ9において、レスポンダーA420によりコールがなされ、そしてステップ10において、レスポンダーA420がRESTルーター410へ要求を返送する。ステップ11において、レスポンダーA420からの成功応答がRESTルーター410により戻される。前記実施形態は、指定のレスポンダーのリスト及び係争中である要求のリストを検索することにより露出されたREST終了ポイントを監視するように働く。

0081

図4に示すように、クラウドへのクレデンシャルが与えられ、そしてクラウドへの接続が確立されると、ユーザは、クラウド構成の付加的なパラメータを与えることができる。それらパラメータは、テストされるべきクラウドの構成を決定するのに使用される。又、それらパラメータは、インスタンス構成、フレーバー(flavor)マッピング及び接続構成を含む多数のカテゴリーに分割される。構成プロセスを簡単化するために、幾つかの実施形態では、クラウド検証サービスは、RESTインターフェイスを露出させて、利用可能な画像、ネットワーク、ゾーン、キーペア又はフレーバーの少なくとも1つに関するデータを得る。

0082

幾つかの実施形態では、インスタンス構成は、バーチャルマシンのテストの起動に関連したデフォールト値を与えることを含む。インスタンス構成パラメータのリストは、バーチャルマシンのテストを起動できるデフォールト位置である利用ゾーン又はバーチャルデータセンターを含む。又、インスタンス構成パラメータは、画像名、及びバーチャルアプリケーション名も含み、これは、クラウドにおいて起動されるバーチャルマシンのテストに使用される画像の名前である。ある実施形態では、クラウド検証サービスは、ターゲットクラウドに画像がまだ存在しない場合にそのクラウドに画像をアップロードすることもできる。これは、クラウドテストプロセスを簡単化する上で助けとなる。別のインスタンス構成パラメータは、フローティングIPプロトコル又は外部ネットワークである。このパラメータによれば、バーチャルマシンは、ルーティング可能なIPアドレスをネットワークから受け取る。

0083

図5は、幾つかの実施形態によるフローチャートである。このフローチャートは、クラウドへの画像アップロードのフローを表わす。ステップ1において、クラウドA540へ画像をアップロードするためのRESTAPI要求がRESTルーター510に到達する。RESTルーター510は、次いで、ステップ2において、クラウドA540に指定されたレスポンダーへ質問を送って、画像をアップロードできるかどうかチェックする。ステップ3において、RESTレスポンダーZ520及びRESTレスポンダーA530は、これらを使用して画像をアップロードできるかどうかチェックし、これは、アクセスされるディスク画像ファイルが存在するかどうかレスポンダーがチェックできることを意味する。図5の実施形態では、RESTルーター510は、ステップ5において、アップロードを取り扱うためにRESTレスポンダーA530を選択する。他の実施形態では、RESTレスポンダーZ520が選択されてもよい。

0084

RESTレスポンダーA530は、データベース550からのアップロードの状態をチェックすることができる。既存のエントリーがあり、そして例えば、少なくとも1分以内に最後の更新がフレッシュである場合には、データベースは、アップロード要求を無視し、そしてHTTPアップロードが既に進行中であることを述べるメッセージを返送する。或いは又、エントリーがないか又はエントリーが古い場合には、RESTレスポンダーA530が、ステップ5に示すように、クラウド540へのアップロード手順をスタートする。ステップ6において、RESTレスポンダーA530は、アップロード手順をスタートすることができる。これは、次いで、最後に更新されたフィールドを含めて、一貫したベースでデータベースのアップロードタスクエントリーを更新する。

0085

ステップ7において、画像アップロード状態に関する質問がRESTルーターに到着する。ステップ8において、RESTルーターが画像アップロード状態を求めることにより要求がブロードキャストされる。画像アップロード状態の要求は、RESTレスポンダーZ520及びRESTレスポンダーA530を含む全てのレスポンダーへ送られる。ステップ9において、レスポンダーは、アップロード状態をチェックし、そしてアップロード状態をRESTルーター510へ送る。ある実施形態では、画像をアップロードするレスポンダーのみが画像アップロード状態ゲット要求に応答する。ステップ10は、RESTレスポンダーAが画像アップロードジョブ状態をデータベース550からフェッチすることを示す。ワーカー識別が環境識別と同じ値を有する場合には、データベース550は、アップロードジョブ状態に応答する。ワーカー識別が環境識別と同じ値でない場合には、データベース550は、不良要求を指示するメッセージに応答する。

0086

ある実施形態では、クラウドフレーバーは、バーチャルCPU、メモリ及びストレージの特定の組み合せに付けられるラベルを含む。パブリック及びプライベートの両クラウドがクラウドフレーバーを使用することができる。しかしながら、特定のフレーバーが何を意味するかについて決まった規格はない。例えば、1つのクラウドフレーバーにおいて、「m1.tiny」は、1つのバーチャルCPUを伴うバーチャルマシンを意味するが、別のクラウドでは、そのようなフレーバーが定義されなくてもよい。テスト定義が特定のクラウド環境に束縛されるのを回避できるようにするため、ユニバーサルインデックスがバーチャルマシンのフレーバーとして使用されてもよい。それ故、各クラウドは、テストに使用されるユニバーサルインデックスに対して内部フレーバーのそれ自身のマッピングを有する。フレーバーマッピング構成ステップは、ユーザがこの構成を確立できるようにする。

0087

図6は、幾つかの実施形態によるユーザインターフェイスを示す。より詳細には、図6は、ユーザがフレーバーマッピング構成を選択するのを許すユーザインターフェイスを示す。ユーザは、クラウドのフレーバー610のリストを、テストに使用できるフレーバー620のインデックス型リストへマッピングする。テストは、図6に示すインデックスを使用してフレーバーを参照し、テストがクラウド不可知的であり且つ特定のフレーバーを伴うあるクラウドに束縛されないようにする。テストインスタンスの起動に使用するためのデフォールトフレーバーも定義される。

0088

幾つかの実施形態では、クラウド構成の付加的なステップは、ドメイン名サーバー及びプロキシー設定を特定する。これらの構成は、次いで、テストプロビジョニングステップの一部分としてバーチャルマシンをテストするように注入される。

0089

ある実施形態では、各クラウドは、プランニング段階中にそれに指定された多数のテストを有する。テストは、例えば、クラウドAPI性能テスト、コンピューティングインフラストラクチャーテスト、ネットワークインフラストラクチャースケーリングテスト、及び/又はネットワークインフラストラクチャーテストを含む。図7は、幾つかの実施形態によるフローチャートである。図7の実施形態では、データベースに記憶されたテストテンプレート710があり、これは、ユーザにより選択される。テストテンプレートは、どのテストケースを実行すべきか、いつテストを実行すべきか、及び/又はテストされるべきターゲット環境のトポロジー、例えば、バーチャルマシン又は後端ストレージの構成を記述する。

0090

ステップ720に示すように、テストテンプレートのコピーが生成され、そしてクラウドに関連付けられる。テストテンプレートのこのコピーは、テストインスタンスドキュメント730として知られている。テストインスタンスは、幾つかの実施形態では、ステップ730においてカスタマイズされた後に、図1に示すプラットホーム110のスケジューラー111へとスケジューリングされる。テストインスタンスドキュメントをカスタマイズすることは、異なるテストケースの幾つかの構成を変更し、及び/又はテストケースの幾つかをディスエイブル又は除去することを含む。

0091

幾つかの実施形態では、スケジュール型テスト実行750の各々に対して、テスト実行ドキュメントを生成することができる。テストラン760は、元々の実行がスケジューリングされたところのテストインスタンスドキュメントのコピーである。それ故、テストラン760は、以前のテストランを監査する必要があるとき歴史的な目的で使用される実行時の重要なテスト構成及び環境情報スナップショットも含む。各テストランの実行は、単一テストの実行のためのテストランドキュメントに関連した多数のテスト結果ドキュメント770及びテストログドキュメント780を発生する。

0092

ある実施形態では、テストは、クーロン表現(Cron expression)を通して起動されてもよい。各テストインスタンスは、例えば、1つ以上の将来の実行時間について特定された1つのクーロン表現をもつことができる。又、クーロンスケジューリングは、有効期間が特定されたときそのような期間をサポートすることもできる。スケジューリングされたテストランが所与の有効期間外であるときには、テストが実行されない。ユーザは、ユーザインターフェイスにおいて有効期間を特定してもよい。ユーザは、有効期間の日付、時刻及び長さを特定してもよい。又、ユーザは、幾つかの実施形態において、テストケースが並列に実行されること、又は故障に関わらず全てのテストケースを実行しなければならないことを特定してもよい。

0093

幾つかの実施形態において、テストは、一回限りのアドホック実行を通して起動されてもよい。テストは、スケジューラーがテストインスタンススケジュールを受信した後に、短時間実行されてもよい。更に、ある実施形態は、「ワン・クリック」アプローチを使用してもよい。「ワン・クリック」アプローチでは、ユーザによる単一の開始アクション、例えば、ボタンの押圧又はクリックでテストが開始される。テストは、テストメニューを経て事前に定義又はスケジューリングされて、上述したように、単一ボタンの押圧又はクリックでテストを自動的に進めることができる。

0094

図8は、幾つかの実施形態によるフローチャートである。図8の実施形態は、プラットホームの観点からのテスト実行フローを表わす。ステップ801において、ユーザは、ユーザ名及びパスワードのような幾つかの要求を入力することによりテストサービスにログインする。ステップ802において、ユーザインターフェイスは、テストする新たなクラウドを決定するのに使用される。ユーザは、ある実施形態では、許可URL、テナント、ユーザ名、及び/又はパスワードを含むクラウドのクレデンシャルを入力することが要求される。テストされるクラウドは、次いで、入力されたクレデンシャルを使用して、リモート位置を経てアクセスされる。

0095

幾つかの実施形態において、ステップ803に示すように、テストがプランニングされる。テストのプランニングは、クラウドの種々の観点のテストを許すテストテンプレートを使用することを含む。テストは、クラウド、コンピューティング、ネットワーク、ストレージ、及びアプリケーションにおいて実行されるクラウドサービス、例えば、IMSのようなバーチャル化テレコミュニケーションネットワーク機能に対してプランニングされる。次いで、テンプレートがテストのための構成に入れられる。ステップ804において、ユーザは、収集したデータを記憶するために選択データベースを選ぶ。又、ある実施形態では、ユーザは、現在テストを比較するときに使用するためデータベースから基準又はベンチマークを引いてもよい。

0096

ステップ805において、ユーザは、テストをスケジューリングする。次いで、ステップ806において、ユーザインターフェイスを通してテストスケジュールマニフェストが示される。マニフェストを検討した後に、ユーザは、テストを開始すべきかどうか選択する。ユーザがマニフェストに示すテスト構成の変更を選択する場合には、ユーザは、ステップ802、803、804及び805に戻って再構成する。さもなければ、ユーザは、ステップ807においてテストを開始する。ある実施形態では、全自動を使用してクラウドをテストすることができる。テストが開始されると、808に示すように、実際のテストが行われる前に多数の設定ステップを準備することができる。例えば、バーチャルマシンを生成することができ、そして図1に示されたテストエージェントを配備することができる。

0097

ステップ809において、エージェントが生きているかどうかの決定がなされる。この決定は、図1に示されたハートビート121がエージェントからテストプラットホームへ送られたかどうかに基づく。幾つかの実施形態では、1つのエージェントが生きていないことがあり、そしてその1つのエージェントにおけるテストの収集及び監視は、エージェントが生きているという指示が受け取られるまで停止される。他の実施形態では、テスト実行監視ステップ810に示すように、エージェントは、それらがアクティブであることを指示し、そしてテストをプラットホームにより監視することができる。幾つかの実施形態において、ユーザは、テストの進行及び詳細なログの両方を再検討できるが、最終レポートが発生される前にテストが行われる。次いで、ステップ811において、テスト結果が収集される。

0098

ステップ812において、テストが完了したかどうかの決定がなされる。もしそうでなければ、テスト、並びにステップ810及び811におけるデータの監視及び収集が続けられる。テストが完了したときには、ステップ813に示すように、テストが終了され、バーチャルマシンが破壊される。次いで、ステップ814に示すように、プラットホームによりレポートが発生され、これは、ユーザがテストの結果を容易に再検討できるようにする。レポートは、サービスのユーザインターフェイス内に提示される。

0099

図8のステップ803で説明されたネットワークテストは、異なるネットワークトポロジー、例えば、利用ゾーン間トポロジー、利用ゾーン内トポロジー、又は外部ゲートウェイトポロジーにおいて行うことができる。図9Aは、幾つかの実施形態によるトポロジーを示す。図9Aの実施形態では、現在クラウド内のノードと、クラウド環境外のノードとの間で性能がテストされる。より詳細には、クラウドのゾーン1 901に配置されたマシン1 903と、外部ノード906との間で性能がテストされる。ゲートウェイ905は、バーチャルマシン903と、外部ノード906との間の相互作用を容易にするために使用される。

0100

図9Bに示す他の実施形態では、利用ゾーン間トポロジーを導く利用可能な異なるゾーンの2つのノード間で性能がテストされる。ゾーン1 901に配置されたバーチャルマシン1 903は、ゾーン2 902に配置されたバーチャルマシン2 904と相互作用する。図9Cに示す更に別の実施形態では、同じ利用ゾーン901の2つのバーチャルノード903、904間の相互作用に対して性能がテストされる。テストは、図9A、9B及び9Cに示されたネットワークトポロジーを使用して繰り返し実行される。

0101

幾つかの実施形態において、トラフィックは、これらの異なるトポロジーを通して延びる。トラフィックは、異なるパケットサイズを有し、異なるネットワークプロトコル、例えば、TCP、UDP及びSCTPを使用する。これは、ネットワークの観点からレイテンシー及び帯域巾を評価できるようにする。

0102

図10は、幾つかの実施形態によるフローチャートを示す。特に、このフローチャートは、テストエージェントの観点から示されている。ステップ1010において、エージェントがインストールされて構成される。エージェントは、アプリケーションの実行中にクラウドインフラストラクチャーのテストにおいてプラットホームを支援するのに使用される。エージェントサービスは、ステップ1020に示すように、スタートされ又は配備される。エージェントは、ステップ1030において、プラットホームに「IsAlive」信号を送信して、テストを実行できることをプラットホームに指示する。ステップ1040において、エージェントは、テストの実行を開始するためにスケジューラーからのインストラクションを待機する。ある実施形態では、ユーザが進行のためのエージェント許可を与えない場合には、テストが実行されない。次いで、エージェントは、「IsAlive」又はハートビートメッセージをプラットホームへ送り続け、テストを開始できることを指示する。他の実施形態では、スケジューラーは、スケジューラーがプログラム実行要求を送り、これは、エージェントがテストを実行できるようにする。エージェントは、ステップ1050において、プラットホームからテストインストラクションを受け取り、そしてステップ1060において、テストの実行を開始する。次いで、ステップ1070において、テスト結果がプラットホームへ送られる。

0103

図11は、幾つかの実施形態によるシステムアーキテクチャーを示す。特に、図11は、テスト実行中の、図1に示すプラットホーム110とテストエージェント120との間の相互作用を示す。スケジューラーは、その時間中にスタートされる新たなテストについて周期的にポーリングする。ステップ1において、スケジューラー1101は、スタートされるべきテストを見つけると、スケジューラーテストインスタンス1104を生成し、これは、ステップ2に示すように、テストのライフサイクルを管理することができる。

0104

スケジューラーテストインスタンス1104内で、異なるテストを処理できる異なるタイプの多数のインスタンスがステップ3において生成される。例えば、インスタンスのタイプは、テストエージェント1108との主たる相互作用を取り扱うことのできるテストエージェント仲介者1103を含む。オーケストレータ1102も生成され、これは、クラウドプロビジョニング及びテストツール構成の責任を負う。更に、テスト結果コレクタ1105は、テストからのテスト結果を収集し、そしてテスト進行コレクタ1106は、生のテスト進行更新を収集する。

0105

ステップ4において、スケジューラーテストインスタンス1104は、これが初期化されると、先ず、オーケストレータ1102に、1つ以上のバーチャルマシンを起動するように命令する。バーチャルマシンは、テストソフトウェア及びテストエージェント1108のインストール及び構成を含む。ある実施形態では、テストエージェント1108は、ステップ5において、生きた状態となり、そしてテストエージェント仲介者1103を通り、メッセージインターフェイス又はバス、例えば、RabbitMQを経て、ハートビートの送信を開始する。テストエージェント仲介者1103は、ステップ6において、ハートビートを確認し、そしてメッセージバスを経てエージェント1108にテストスイートドキュメントを送信することができる。テストエージェント1108により受け取られたテストスイートドキュメントに基づいて、テストエージェント1108は、ステップ7において、テストスイート実行を開始するために少なくとも1つのテストスイートエグゼキューター1109を生成する。

0106

ある実施形態において、テストスイートエグゼキューター1109は、更に、ステップ8に示すように、テストケースエグゼキューター1110に各テストケースを委任することができる。テストケースエグゼキューター1110は、ステップ9において、テストケース仕様に基づいてロードされる必要のあるプラグインを決定し、そしてエグゼキュータープラグインを動的にロードする。テストケースエグゼキューター1110は、ある実施形態では、ステップ10において、コールバックメカニズムを経てテストケース進行更新をテストスイートエグゼキューター1109へ直ちに送信し、これは、次いで、メッセージバスを経てその更新をテスト信号コレクタ1106へ送信する。テスト進行更新がテスト進行コレクタ1106により収集されると、その更新は、データベース1113へ送られて記憶される。

0107

幾つかの実施形態において、テストケースに基づき、エグゼキュータープラグイン1111は、ステップ11において、オーケストレータプロキシー1112を経て更なるオーケストレーションを遂行する。ステップ12において、オーケストレータプロキシー1112は、コールバックメカニズムを経てオーケストレーション要求に直ちに応答する。オーケストレータプロキシー1112は、ある実施形態では、ステップ13において、メッセージバスを経て要求をオーケストレータプロキシー後端1107へカプセル化し、これは、新たなオーケストレーションインスタンスを生成することができる。ステップ14において、生成されたオーケストレーションインスタンスは、命令されたクラウドへのオーケストレーションプロセスをスタートする。

0108

エグゼキュータープラグイン1111は、テストケースの実行を終了すると、ステップ15において、テスト結果をテストケースエグゼキューター1110へ送信し、これは、次いで、その結果をテストスイートエグゼキューター1109へ転送することができる。次いで、テストスイートエグゼキューター1109は、エージェントからのテスト結果を、メッセージインターフェイス又はバスを通して、プラットホームに配置されたテスト結果コレクタ1105へ送信することができる。それらの結果は、次いで、データベース1113に記憶される。

0109

図12は、幾つかの実施形態によるフローチャートである。テストの実行中に、ユーザは、クラウドリソース及び基本的KPIの使用、例えば、CPU、使用又はメモリ使用を監視する。これは、ユーザが、ログを分析及びデバッグする必要なく、テスト及び/又はクラウドインフラストラクチャーに伴う幾つかの基本的な問題を迅速に発見できるようにする。換言すれば、ユーザは、テスト中の生きたメトリックを観察し及び/又は収集することができる。

0110

図12は、ユーザが種々のテストメトリックを生で監視できる実施形態を示す。ユーザインターフェイス1201は、監視要求を「apache2」1202へ送るのに使用され、これは、プラットホームのオーケストレータと通信するHTTPサーバーである。この「apache2」は、プラットホームのオーケストレータに含まれる。監視要求は、クラウドインフラストラクチャーに配置されたグラファイト1203及びカーボン1204を通して転送される。収集されたデータは、次いで、テストバーチャルマシンの収集されたプラグイン1205から、クラウドインフラストラクチャーを通して「apache2」1202へ送られる。次いで、データは、ユーザが見るためにユーザインターフェイス1201へ転送される。1つの実施形態において、CPU負荷及びメモリ使用量が生きたメトリックとしてプロットされ、これは、テストの実行を監視するのに使用される。

0111

図13は、幾つかの実施形態によるフローチャートである。テスト実行の監視を容易にするために、クラウド検証サービスは、分散型ロギングを実施する。分散型ロギングは、各テストバーチャルマシンへのロギングを回避する上で助けとなり、単一ビューのもとに全てのログを与えることができる。

0112

ある実施形態では、ステップ1において、プラットホームのテストスケジューラーインスタンス1301は、テストの開始中にログコレクタ1302を生成し、これは、多数のソースからのストリーミングログの受信端として働く。ステップ2において、エージェントのテストターゲット1303は、プラットホームへログをストリーミングするため1つ以上の分散型ロガークライアント1304インスタンスを生成する。分散型ロガークライアント1304は、次いで、ステップ3において、測定インターフェイスを経てプラットホームへのログのストリーミングをスタートする。プラットホーム端において、ログコレクタ1302は、ストリーミングされたログを受け取り、そしてそれらをデータベース1305に記憶する。幾つかの実施形態において、ログは、受信されたときに直ちに記憶される。又、ログは、多数のバッチで記憶されてもよい。

0113

図14は、幾つかの実施形態によるユーザインターフェイス1401を示す。ユーザインターフェイスは、テストの開始以来経過した時間量を含む進行概要を含む。又、ユーザインターフェイス1401は、実行される各ネットワークテストに対する進行の量を含む進行詳細も示す。ある実施形態では、テストされた進行ログを示す特定のコードが示される。データベースに記憶されたログは、RESTインターフェイスを経て露出され、これは、ユーザインターフェイスにログを表現できるようにする。

0114

図15は、幾つかの実施形態によるユーザインターフェイスを示す。特に、図15に示すユーザインターフェイス1501は、クラウド間の結果を比較できるようにする高レベル結果ビューを示す。上述したように、検証サービスは、結果を見るときにベンチマークとして使用される基準クラウドを含む。テストされる各クラウドは、基準クラウド結果に対するクラウドの相対的性能に基づいてグレード決めされる。最初の出力は、クラウドグレードであり、これは、図15に示す実施形態では、0から5の個別のスコアを伴う単一の数である。インフラストラクチャー及びアプリケーションテストの各々に対してスコアが与えられる。

0115

このトップレベルビューは、テストのカテゴリーごとに特定の結果に分断することができる。例えば、クラウドの全性能は、サービス1520、計算1530、ネットワーク1540、ストレージ1550、又はアプリケーション1560の少なくとも1つに分割される。ユーザには、クラウドインフラストラクチャーの全性能を示す0から5のスコアが与えられる。更に、前記カテゴリーの各々は、0から5のスケールでグレード決めされる更なるカテゴリーへと分割される。

0116

現在テストのコンピレーションスコアは、各カテゴリー内の水平線で示される。例えば、サービス1520のもとでのサービス利用性が、5のうちの4のおおよそのグレードを有するものとしてテストされた。更に、幾つかの実施形態は、基準クラウドに対する同じテストについて基準スコアを示す垂直バー又は矢印を含む。これは、クラウドを他のクラウドと比較できるようにするか、或いは又同じクラウドからの以前の結果と比較できるようにする。例えば、サービス1520のもとでのサービス利用カテゴリーは、約5の基準クラウドスコアを有する。ユーザは、アーカイブから特定の基準クラウドを選択することができる。

0117

クラウドグレードの計算は、異なる方法を使用して計算されてもよい。ある実施形態は、例えば、フレーバー、例えば、7−Zipテスト当りのテストケースグレードを発生する。フレーバーごとに、各KIPの平均テスト測定値が計算される。更に、KPIグレードは、以前に計算された平均値をスレッシュホールド範囲の右へマッピングすることにより計算される。又、計算されたテストケースグレードは、全ての計算されたKPIグレードの重み付けされたグレード平均を使用して計算されてもよい。

0118

他の実施形態では、テストグループグレードが、クラウドリソース、例えば、圧縮テストごとに計算されてもよい。クラウドリソースのテストグループごとに、全てのフレーバーからのテストケースグレードを平均化することによりテストグループの全てのフレーバーに対するテストケースグレード平均値が計算される。更に、全てのフレーバーに対する計算されたテストグレードの重み付けされた平均化を遂行することによりテストグループグレードが計算される。

0119

幾つかの実施形態において、クラウドリソースグレードが発生される。クラウドリソースグレードは、計算1530カテゴリーに使用される。クラウドリソースグレードは、全てのテストグループグレードを平均化することにより計算される。テストグループの重みが予め決定されるときは、重み付けされた平均値が計算される。そうでない場合には、重みが均一に分割される。ある実施形態では、クラウドリソースグレードの幾つか又は全部を平均化することによりクラウドグレードを発生することができる。

0120

各カテゴリー内の結果を見ることは、基準クラウドスコアに関して行われる。図15に示すように、カテゴリーは、サービス1520、計算1540及びストレージ1550、又はアプリケーション1560の少なくとも1つである。図15に示すように、ユーザインターフェイスに示される垂直の矢印は、基準クラウドスコアを表わす。テストされた各メトリックは、基準クラウドスコアとの比較で示される。

0121

ある実施形態では、図15に示す垂直線ではなく、クラウドスコアは、水平軸パーセンテージを有する垂直ヒストグラムとして示される。基準クラウドスコアは、ヒストグラムのゼロパーセンタイルマークであり、ヒストグラムに示されたバーは、ゼロマークの左の負のパーセンタイルから、ゼロマークの右の正のパーセンタイルまでの範囲である。負のパーセンタイルは、現在のテストメトリックが基準クラウドスコアより低いスコアを有することを示す。他方、正のパーセンタイルは、現在のテストメトリックが基準クラウドスコアより高いスコアを有することを示す。パーセンタイルが高いほど、現在テストの性能が良好である。

0122

別の実施形態では、現在テストのメトリックを報告するために水平性能ヒストグラム又は棒グラフが使用される。これは、例えば、異なるマシンタイプにおけるGZP圧縮のためのレイテンシーを伴う異なるファイルサイズの性能を含めて、メトリックのより特定の評価を許す。これは、上述したクラウドグレード計算より詳細で且つパラメトリックなメトリックビューを許す。別の例において、ネットワークカテゴリー1540では、利用ゾーン間トポロジーのスループットは、SCTP、TCP又はUDPプロトコルに基づきメガビット/秒で測定される。

0123

図15に示すように、テレコミュニケーションネットワークアプリケーションがテストされる。例えば、IMSがテストされる。ユーザインターフェイスは、ネットワーク加入者負荷トラフィック負荷、及び/又はトラフィックパターンを入力するのに使用される。ある実施形態では、アプリケーション性能の一時的なビューが見られる。

0124

他の実施形態では、いかなるタイプのテストされたメトリックも、それがチャート、例えば、散布図、テーブル、グラフ、リスト、スクリプト又はユーザインターフェイスに適合する他の形態のチャートであるかどうかに関わらず、任意の形態で表すことができる。

0125

幾つかの実施形態において、新たなテストツールのオン・ボーディングを簡単化するために、クラウド検証サービスは、ユーザインターフェイス側でウィジェット概念を実施する。このウィジェット概念は、javascript(登録商標オブジェクト表記法(JSON)フォーマットで定義されたダッシュボードで結果を見ることを許す。幾つかの実施形態において、ダッシュボード仕様は、JSONを経て検索され処理される。次いで、テスト結果データが検索され、そしてウィジェットが生成される。

0126

図16は、幾つかの実施形態によるフローチャートである。ステップ1601において、ユーザは、ダッシュボードを要求する。ユーザインターフェイスのダッシュボードモジュールは、次いで、ステップ1602に示すように、RESTAPIを経てダッシュボード仕様を要求する。次いで、ステップ1603において、ダッシュボード仕様が、MongoDCのようなデータベースからREST APIへ送られる。ユーザインターフェイスへ返送されたダッシュボード仕様に基づき、ステップ1604において、ユーザインターフェイスのダッシュボードモジュールは、ステップ1605において、REST APIを経てテストデータを要求する。次いで、ステップ1606において、テスト結果がデータベースからREST APIへ送られ、そしてステップ1607に示すように、テスト結果がユーザインターフェイスへ転送される。

0127

幾つかの実施形態において、ユーザインターフェイスダッシュボードモジュールは、次いで、ダッシュボード仕様により、ステップ1608において、1つ以上のダッシュボードウィジェットを生成する。ダッシュボードウィジェットは、ウィジェット仕様に指定されたフィルタリングされたテスト結果データを含む。ステップ1609において、ダッシュボードウィジェットは、そのフィルタリングされたテスト結果データを処理して、ダッシュボードデータジェネレータを経て、ウィジェットを視覚化するために予想される形態へ変換する。幾つかの実施形態において、ダッシュボードデータジェネレータは、アブストラクトシンタックスツリーAST)表現パースユーティリティを利用して、ウィジェット仕様に存在する表現をパースする。その結果は、ダッシュボードウィジェットデータジェネレータへ転送され、これは、次いで、ウィジェットデータをダッシュボードウィジェットへ送ることができる。

0128

クラウド検証サービスにより最終レポートが発生され、そしてこのレポートは、テストアクティビティの概要である最終レポートドキュメントを含む。ある実施形態では、最終レポート作成プロセスは、データベースからのクラウドデータの検索及び規定のテンプレート記述子の使用を含み、これは、ドキュメントをどのように組み立てるか、及び/又はどのグラフを作成してレポートに含ませるか定義する上で助けとなる。次いで、レポートデータベースプラグインを処理することができ、そしてレポート変数を生成することができる。最終的に、任意の形態のドキュメントを作成することができる。ある実施形態では、作成されたドキュメントは、暗号又は暗号化されてもよい。又、ドキュメントは、HTTPプロトコルを経てユーザのウェブブラウザへストリーミングされてもよい。

0129

図17は、幾つかの実施形態によるフローチャートである。ステップ1701において、ユーザは、最終レポートを要求する。既定のテンプレート、JSONレポート変数及び/又はJSONレポーター記述子の少なくとも1つに従ってドキュメントがアッセンブルされる。次いで、ステップ1702において、このドキュメントアッセンブル情報は、データソースプラグインへ転送される。次いで、データソースプラグインは、データベースからデータを収集し及び/又はグラフィックユーザインターフェイスから情報を引き出す。次いで、プラグインは、グラフを発生し、そして最終レポートに表示されるべき付加的なデータソースを処理する。

0130

次いで、ステップ1703において、データソースプラグインは、ドキュメントを発生し、そしてステップ1704において、そのドキュメントをユーザへ送信する。しかしながら、ある実施形態では、ドキュメントがユーザに到着する前に、ドキュメントは、パスワードで暗号化され、例えば、ステップ1704において、docxencryptorツールを使用して暗号化される。それ故、ある実施形態では、ドキュメントは、HTTPを経て暗号化されて、ユーザのブラウザへ送られる。他の実施形態では、暗号ではなく、レポートは、単に、暗号なしのドキュメント、例えば、PDFドキュメントとして、HTTPを経て送られる。

0131

図18は、幾つかの実施形態によるフローチャートである。ステップ1810に示すように、ユーザは、先ず、クラウドインフラストラクチャーをテストするためクラウド検証サービスに接続する。ステップ1820において、ユーザ装置は、クラウドインフラストラクチャー上でのバーチャルネットワーク機能の実行をトリガーする。次いで、クラウド検証サービスを使用して、実行されるバーチャルネットワーク機能でクラウドインフラストラクチャーの重要属性がテストされる。重要属性は、クラウドインフラストラクチャーのカテゴリー、例えば、サービス、計算、ネットワーキング又はストレージを含む。ステップ1830において、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをユーザ装置で受け取る。メトリックは、ユーザ装置により表示され、そしてユーザにより評価される。ユーザ装置は、プロセッサ、メモリ及び/又はトランシーバを含めて、図20に示されたハードウェア及び/又はソフトウェアの全てを含む。

0132

図19Aは、幾つかの実施形態によるフローチャートである。特に、図19Aは、プラットホームデバイスによるフローチャートである。ステップ1901は、クラウドインフラストラクチャーをテストするためにクラウド検証サービスに接続することを含む。ステップ1902において、プラットホームデバイスは、クラウドインフラストラクチャーの重要属性のテストをスケジューリングする。クラウドインフラストラクチャー上でバーチャルネットワーク機能が実行される。ステップ1903において、スケジュールがプラットホームデバイスからテストエージェントへ送出される。テストエージェントがテストを開始すると、プラットホームデバイスは、ステップ1904に示すように、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックを受け取る。プラットホームデバイスは、メトリックをユーザ装置へ送り、ユーザ装置は、メトリックをユーザインターフェイスに表示する。

0133

図19Bは、幾つかの実施形態によるフローチャートである。特に、図19Bは、テストエージェントによるフローチャートである。テストエージェントは、ステップ1011に示すように、クラウドインフラストラクチャーの重要属性についてテストを行うためにプラットホームデバイスから要求を受け取る。ステップ1912において、テストエージェントは、クラウドインフラストラクチャーの重要属性及びバーチャルネットワーク機能についてテストを行う。次いで、テストエージェントは、ステップ1913に示すように、クラウドインフラストラクチャーの重要属性又はバーチャルネットワーク機能のメトリックをプラットホームデバイスへ送出する。

0134

図20は、幾つかの実施形態によるシステムを示す。図1−18、19A及び19Bのフローチャートの各ブロック並びにその組み合せは、種々の手段又はそれらの組み合せ、例えば、ハードウェア、ソフトウェア、ファームウェア、1つ以上のプロセッサ及び/又は回路により実施される。1つの実施形態において、システムは、多数のデバイス、例えば、プラットホームデバイス2010及びテストエージェントデバイス2020を備えている。プラットホームデバイスは、スケジューラー、コレクタ、オーケストレータ、アナライザ・レポーター、最終レポートジェネレータ、又はユーザインターフェイスである。テストエージェントデバイスは、例えば、レポーター、ロガー、又はプラグ可能なエグゼキューターである。

0135

これらデバイスの各々は、2021及び2011として各々指示された少なくとも1つのプロセッサ又は制御ユニット又はモジュールを含む。各デバイスには少なくとも1つのメモリが設けられ、2022及び2012として各々指示されている。メモリには、コンピュータプログラムインストラクション又はコンピュータコードが含まれる。1つ以上のトランシーバ2023及び2013が設けられ、各デバイスは、2024及び2014として各々示されたアンテナも含む。各々1つのアンテナしか示されていないが、多数のアンテナ及び多数のアンテナ素子が各デバイスに設けられる。例えば、これらデバイスの他の構成が設けられてもよい。例えば、プラットホームデバイス2010及びテストエージェントデバイス2020は、ワイヤレス通信に加えて、更に、ワイヤード通信用に構成されてもよく、このような場合には、アンテナ2024及び2014は、単なるアンテナに限定されず、任意の形態の通信ハードウェアでもよい。

0136

トランシーバ2023及び2013は、各々、独立した送信器受信器、又は送受信器でもよいし、或いは送信及び受信の両方に構成されたユニット又はデバイスでもよい。オペレーション及び機能は、異なるエンティティにおいて遂行されてもよい。又、1つ以上の機能が、サーバー上で実行できるソフトウェアにおいてバーチャルアプリケーションとして実施されてもよい。

0137

ユーザインターフェイスは、移動電話又はスマートホン又はマルチメディアデバイスのようなユーザデバイス又はユーザ装置、ワイヤレス通信能力が設けられたタブレットのようなコンピュータ、ワイヤレス通信能力が設けられたパーソナルデータ又はデジタルアシスタント(PDA)、或いはその組み合せにおいて配置されてもよい。又、ユーザ装置は、少なくとも、プロセッサ、メモリ及びトランシーバも含む。

0138

ある実施形態において、ノード又はユーザデバイスのような装置は、図1−18、19A及び19Bに関連して上述した実施形態を具現化するための手段を備えている。幾つかの実施形態において、コンピュータプログラムコードを含む少なくとも1つのメモリは、少なくとも1つのプロセッサとで、装置が、少なくとも、ここに述べるプロセスのいずれかを遂行するようにさせるよう構成される。

0139

プロセッサ2011及び2021は、計算又はデータ処理装置、例えば、中央処理ユニット(CPU)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路ASIC)、プログラマブルロジックデバイスPLD)、フィールドプログラマブルゲートアレイFPGA)、デジタル的に改善された回路又は同等のデバイス、或いはその組み合せによって具現化される。プロセッサは、単一のコントローラ、或いは複数のコントローラ又はプロセッサとして具現化されてもよい。

0140

ファームウェア又はソフトウェアについては、少なくとも1つのチップセットのモジュール又はユニット(例えば、手順、機能、等)が実施に含まれる。メモリ2012及び2022は、独立した適当なストレージデバイス、例えば、非一時的コンピュータ読み取り可能な媒体である。ハードディスクドライブ(HDD)、ランダムアクセスメモリ(RAM)、フラッシュメモリ又は他の適当なメモリが使用される。メモリは、単一の集積回路上でプロセッサと結合されてもよいし、又はそこから分離されてもよい。更に、メモリに記憶されてプロセッサにより処理されるコンピュータプログラムインストラクションは、適当な形態のコンピュータプログラムコード、例えば、適当なプログラミング言語で書かれたコンパイル型又は解釈型コンピュータプログラムである。メモリ又はデータストレージエンティティは、典型的に、内部であるが、付加的なメモリ容量がサービスプロバイダーから得られる場合には、外部でもよいし又はその組み合せでもよい。メモリは、固定でもよいし又は取り外し可能でもよい。

0141

メモリ及びコンピュータプログラムインストラクションは、特定のデバイスのためのプロセッサとで、プラットホームデバイス2010及び/又はテストエージェントデバイス2020のようなハードウェア装置が、上述した各プロセスのいずれか(例えば、図1−18、19A及び19Bを参照)を遂行するようにさせるよう構成される。それ故、幾つかの実施形態において、非一時的コンピュータ読み取り可能な媒体は、ハードウェアで実行されたときに、ここに述べるプロセスの1つのようなプロセスを遂行するコンピュータインストラクション又は1つ以上のコンピュータプログラム(例えば、追加又は更新されたソフトウェアルーチンアプレット又はマクロ)でエンコードされる。コンピュータプログラムは、Objective−C、C、C++、C#、Java(登録商標)、等の高レベルプログラム言語、或いはマシン言語又はアッセンブラーのような低レベルプログラミング言語であるプログラミング言語によりコード化される。或いは又、幾つかの実施形態は、完全にハードウェアで具現化されてもよい。

0142

前記実施形態は、クラウドインフラストラクチャーにおけるテレコミュニケーションソフトウェアアプリケーションのテストを許す。テストは、完全自動化及び系統的機能においてバーチャルネットワーク機能のようなクラウドアプリケーションに代って基礎的なクラウドインフラストラクチャーを検証するのに使用される。又、前記実施形態は、供試クラウド内の多数のコンピューティングノードにわたってテスト及びモニタエージェントと共に分散型アーキテクチャーを配備する。これらのエージェントは、実世界に配備されたときのクラウドアプリケーションの振舞いを近似することができ、そして基礎的なコンピューティング、ネットワーク及びストレージ能力の重要属性をテストする。

0143

本明細書全体にわたって述べる幾つかの実施形態の特徴、構造又は特性は、1つ以上の実施形態において適当な仕方で結合されてもよい。例えば、本明細書全体にわたる「幾つかの実施形態」「ある実施形態」「他の実施形態」という、又は他の同様の言語の使用は、その実施形態に関連して述べる特定の特徴、構造又は特性が本発明の少なくとも1つの実施形態に包含されることを指す。従って、本明細書全体にわたる「幾つかの実施形態」「ある実施形態」「他の実施形態」という句、又は他の同様の言語の出現は、必ずしも同じグループの実施形態を指すものではなく、ここに述べる特徴、構造又は特性は、1つ以上の実施形態において適当な仕方で結合されてもよい。

0144

業者であれば、以上に述べた本発明が、異なる順序のステップで、及び/又はここに開示したものとは異なる構成のハードウェア要素で実施されてもよいことが容易に明らかであろう。それ故、本発明は、これらの好ましい実施形態に基づいて述べたが、本発明の精神及び範囲から逸脱せずに、幾つかの修正、変更及び代替的構造が当業者に明らかであろう。

0145

略語
RAN:無線アクセスネットワーク
IP:インターネットプロトコル
TCP:送信制御プロトコル
UDP:ユーザデータグラムプロトコル
SCTP:ストリームコントロール送信プロトコル
KPI:重要性能指示子
CSCF:コールセッションコントロール機能
IMS:IPマルチメディアシステム
REST:表現状態転送
API:アプリケーションプログラムインターフェイス
UI:ユーザインターフェイス
HBeat:ハートビート
VNF:バーチャル化ネットワーク機能
VPN:バーチャルプライベートネットワーク
JSON:javascript(登録商標)オブジェクト表記法

0146

110:プラットホーム
111:スケジューラー
112:コレクタ
113:RabbitMQ
114:MongoDB
115:オーケストレータ
116:アナライザ・レポーター
117:最終的レポートジェネレータ
118:RESTAPI
119:ユーザインターフェイス(UI)
120:テストエージェント
121:ハートビート(HBeat)
122:レポーター
123:ロガー
124:エグゼキューター
125:プラグイン
130:モニタリングクライアント
310:ユーザインターフェイス(UI)
320:HTTP負荷バランサー
330:RESTルーター
340:RESTレスポンダー
350:リモートクラウド
410:RESTルーター
420:RESTレスポンダーA
430:RESTレスポンダーB
440:RESTレスポンダーC
450:クラウドA
460:クラウドB
470:MongoDB
510:RESTルーター
520:RESTレスポンダーZ
530:RESTレスポンダーA
540:クラウドA
550:MongoDB
1101:テストスケジューラー
1102:オーケストレータ
1103:テストエージェント仲介者
1104:スケジューラーテストインスタンス
1105:テスト結果コレクタ
1106:テスト進行コレクタ
1107:オーケストレータプロキシー後端
1108:テストエージェント
1109:テストスイートエグゼキューター
1110:テストケースエグゼキューター
1111:エグゼキュータープラグイン
1112:オーケストレータプロキシー
1113:MongoDB
1301:テストスケジューラー
1302:ログコレクタ
1303:テストエージェント
1304:分散型ロガークライアント
1305:MongoDB
1401:ユーザインターフェイス
2010:プラットホームデバイス
2011:プロセッサ
2012:メモリ
2013:トランシーバ
2014:アンテナ
2020:テストエージェントデバイス
2021:プロセッサ
2022:メモリ
2023:トランシーバ
2024:アンテナ

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

該当するデータがありません

関連する公募課題

該当するデータがありません

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

該当するデータがありません

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

この 技術と関連性が強い技術

該当するデータがありません

この 技術と関連性が強い法人

該当するデータがありません

この 技術と関連性が強い人物

該当するデータがありません

この 技術と関連する社会課題

該当するデータがありません

この 技術と関連する公募課題

該当するデータがありません

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ