(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-07
(45)【発行日】2024-10-16
(54)【発明の名称】ネットワークシミュレーションシナリオを生成するための技術
(51)【国際特許分類】
H04L 41/00 20220101AFI20241008BHJP
【FI】
H04L41/00
【外国語出願】
(21)【出願番号】P 2020090040
(22)【出願日】2020-05-22
【審査請求日】2023-04-28
(32)【優先日】2019-06-14
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520096002
【氏名又は名称】サブコン、エルエルシー
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】シュレヤ ゴータム
(72)【発明者】
【氏名】ユンル シュー
(72)【発明者】
【氏名】リチャード クラム
(72)【発明者】
【氏名】ジョナサン リス
【審査官】安藤 一道
(56)【参考文献】
【文献】米国特許出願公開第2020/0267580(US,A1)
【文献】米国特許出願公開第2020/0389500(US,A1)
【文献】国際公開第2021/053966(WO,A1)
【文献】国際公開第2019/087382(WO,A1)
【文献】Shantanu Sutar, et al.,Defect Prediction based on Machine Learning using System Test Parameters,2019 Amity International Conference on Artificial Intelligence (AICAI),IEEE,2019年04月29日,pp.134-139
【文献】Deng Li-qiong,et al.,Design of architecture and function for distributed communication network simulation training system (DCSS),2016 First IEEE International Conference on Computer Communication and the Internet (ICCCI),IEEE,2016年12月12日,pp.108-111
(58)【調査した分野】(Int.Cl.,DB名)
H04L 41/00
(57)【特許請求の範囲】
【請求項1】
光通信システムをシミュレーションする際に使用するためのコンピュータ実装方法であって、
オペレータコンソールにより指定された、前記光通信システムのネットワークの構成を表わすネットワーク構成記録を受信することと、
前記オペレータコンソールにより指定された、前記ネットワークの挙動を表わすネットワーク動作記録を受信することと、
入力として
の前記
ネットワーク構成記録及び
出力として
の前記
ネットワーク動作記録に基づいて、機械学習構成要素を使用して
、前記光通信システムをシミュレートするよう構成されたネットワーク動作モデルを生成することと、
前記オペレータコンソールにより指定された、システム試験
用のネットワーク構成記録を受信することと、
前記ネットワーク動作モデルを使用して
、前記システム試験
用のネットワーク構成記録に基づいて
、入力としての前記システム試験用のネットワーク構成記録に対応するシステム試験
用のネットワーク動作記録を生成することと、を含む、方法。
【請求項2】
前記システム試験
用のネットワーク動作記録をネットワーク管理アプリケーションに提供することを更に含む、請求項1に記載の方法。
【請求項3】
前記
ネットワーク動作記録が、前記
ネットワーク構成記録によって表される
ネットワーク構成
内の複数の
ネットワーク要素
からの
出力パラメータの
複数の
キーと値のペアを含み、前記システム試験
用のネットワーク動作記録が、前記システム試験
用のネットワーク構成記録によって表されるシステム試験
用のネットワーク構成
内の複数のシステム試験
用のネットワーク要素
からのシステム試験
用の出力パラメータの
複数のシステム試験
用のキーと値のペアを含む、請求項1または2に記載の方法。
【請求項4】
前記
ネットワーク構成記録及び前記システム試験
用のネットワーク構成記録が、ネットワークトポロジ情報と、ネットワークアラーム情報と、ネットワークイベント情報と、ネットワークコマンド仕様と、を含む、請求項1から3のいずれか一項に記載の方法。
【請求項5】
前記
ネットワーク動作記録及び前記システム試験
用のネットワーク動作記録が、ネットワークアラームアラートと、ネットワークイベントアラートと、ネットワークアラームデータと、ネットワークイベントデータと、を含む、請求項1から4のいずれか一項に記載の方法。
【請求項6】
前記
ネットワーク構成記録が、第1のネットワーク要素タイプの第1のネットワーク構成情報と、第2のネットワーク要素タイプの第2のネットワーク構成情報とを含み、前記
ネットワーク動作記録が、前記第1のネットワーク要素タイプ及び前記第2のネットワーク要素タイプのネットワーク動作情報を含み、
前記システム試験
用のネットワーク構成記録が、前記第1のネットワーク要素タイプと前記第2のネットワーク要素タイプとを組み合わせたハイブリッドネットワーク要素タイプのハイブリッドネットワーク構成情報を含み、前記
ネットワーク構成記録に基づく前記ネットワーク動作モデルが、前記ハイブリッドネットワーク要素タイプのハイブリッドネットワーク動作情報を有する前記システム試験
用のネットワーク動作記録を生成するよう機能する、請求項1から5のいずれか一項に記載の方法。
【請求項7】
前記
ネットワーク構成記録が、動作ネットワークに対応し、前記
ネットワーク動作記録が、前記動作ネットワークのために収集された動作データを含む、請求項1から6のいずれか一項に記載の方法。
【請求項8】
前記機械学習構成要素が、シミュレーションファイル生成器を含み、機械学習構成要素を使用してネットワーク動作モデルを生成することは、前記
ネットワーク構成記録を前記シミュレーションファイル生成器に反復的に提出することと、試行されたネットワーク動作記録を受信することと、前記試行されたネットワーク動作記録が前記
ネットワーク動作記録と一致しない場合には、前記シミュレーションファイル生成器の構成設定を
反復
処理することと、を含む、請求項1から7のいずれか一項に記載の方法。
【請求項9】
海底光ファイバーケーブルシステムをシミュレーションするための装置であって、
オペレータコンソールにより指定された、前記海底光ファイバーケーブルシステムのネットワークの構成を表わすネットワーク構成記録を受信し、
且つ、前記オペレータコンソールにより指定された、前記ネットワークの挙動を表わすネットワーク動作記録を受信するよう機能する記録構成要素と、
入力として
の前記
ネットワーク構成記録及び
出力として
の前記
ネットワーク動作記録に基づいて、機械学習構成要素を使用して
、前記海底光ファイバーケーブルシステムをシミュレートするよう構成されたネットワーク動作モデルを生成するよう機能する機械学習管理構成要素と、
前記オペレータコンソールにより指定された、システム試験
用のネットワーク構成記録を受信し、前記ネットワーク動作モデルを使用して
、前記システム試験
用のネットワーク構成記録に基づいて、
入力としての前記システム試験用のネットワーク構成記録に対応するシステム試験
用のネットワーク動作記録を生成するよう機能するシステム試験構成要素と、を備える、装置。
【請求項10】
実行されるときに、システムに、請求項1から
8のいずれか一項に記載の方法を実行させる命令を含むプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、光通信システムに関し、具体的には、人工知能方法及びアプリケーションを使用した、海底光ファイバー伝送システムのシミュレーションに関する。
【背景技術】
【0002】
海底光通信システムを開発するとき、配備前及び配備後のネットワーク管理システム(Network Management System、NMS)及びその動作を試験することが有益である。これらの通信システムは、典型的には、種々の相互接続されたネットワーク要素(network element、NE又はNEs)から構成されており、これらのネットワーク要素の各々は、それらの設計及び構築に特有の詳細に従って実施することができる。NEとしては、限定するものではないが、送信機、受信機、中継器、カプラ、分岐ユニット、及び典型的な海底光通信システムを構成する様々な他の構成要素を挙げることができる。これらのNEはまた、通信システム、システムを構成するノード、及びその中の構成要素に関する動作情報をNMSに通信するように構成されてもよい。残念なことに、NMSシステムを試験するためにこれらのNEを表す実際のハードウェアを実験室で作成し、構成することは、実験用の複製の助けとならない数百の物理的要素から構成され得るため、経済的ではないか、又は実現可能ではない場合がある。したがって、ソフトウェアは、これらの通信システム内のそのようなシステム及びNE機能の動作をシミュレーションするために開発されてきた。しかしながら、このようなシステム及びNE機能をシミュレーションするために使用される現在のソフトウェアは、ハードコードされた、場合によっては手動で作成されたNE機能及び応答をサポートする静的な環境ベースの挙動ファイル及びデータベースを用いている。この静的な環境は、限られたシステム複製及びハードウェアエミュレーションのみを提供し、新しいユースケースを導入するために手動での集中的な編集を必要とする。したがって、現在のシミュレーション技術は、特定のシステムアーキテクチャに基づいて適用性が制限され、機械学習ベースのシミュレータでシステムシミュレーション環境をより正確に作成することはできない。
【発明の概要】
【0003】
以下は、本明細書に説明されるいくつかの新規な実施形態の基本的な理解を提供するために、簡略化された概要を提示する。この概要は、広範にわたる概要ではなく、主要な/重要な要素を特定すること、又はその範囲を叙述することを意図するものではない。一部の概念は、後に提示されるより詳細な説明の前置きとして簡略化された形態で提示される。
【0004】
様々な実施形態は、一般に、機械学習技術を用いるネットワーク動作モデルを使用してネットワークシミュレーションシナリオを生成するための技術を対象とする。一実施形態では、例えば、装置は、例示的なネットワーク構成記録を受信し、例示的なネットワーク動作記録を受信するよう機能する構成要素と、例示的な入力としての例示的なネットワーク構成記録及び例示的な出力としての例示的なネットワーク動作記録に基づいて、機械学習構成要素を使用してネットワークの動作モデルを生成するよう機能する機械学習管理構成要素と、システム試験ネットワーク構成記録を受信し、ネットワーク動作モデルを使用して、システム試験ネットワーク構成記録に基づいてシステム試験ネットワーク動作記録を生成するよう機能するシステム試験構成要素と、を備え得る。他の実施形態が説明され、特許請求される。
【0005】
前述の及び関連する目的を達成するために、特定の例示的な態様は、以下の説明及び添付の図面に関連して本明細書に説明される。これらの態様は、本明細書に開示される原理を実践することができる様々な方法を示しており、全ての態様及びその均等物が、特許請求される主題の範囲内にあることが意図されている。他の利点及び新規な特徴は、図面と併せて考慮される場合、以下の詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【0006】
【
図1A】本開示に関連する、海底光伝送システムの簡略ブロック図を示す。
【0007】
【
図1B】ネットワークモデリングシステムの実施形態を示す。
【0008】
【
図2A】入力行列から出力行列を作り出すシミュレータファイル生成器の実施形態を示す。
【0009】
【0010】
【
図3】入力データを処理するネットワークモデリングシステムの実施形態を示す。
【0011】
【
図4】ネットワーク動作モデルに基づいてシステム試験ネットワーク動作記録を作り出すネットワークモデリングシステムの実施形態を示す。
【0012】
【
図5】
図1のシステムのための論理流れ図の実施形態を示す。
【0013】
【
図6】
図1のシステムのための集中システムの実施形態を示す。
【0014】
【
図7】
図1のシステムのための分散システムの実施形態を示す。
【0015】
【
図8】コンピューティングアーキテクチャの実施形態を示す。
【0016】
【発明を実施するための形態】
【0017】
上記のように、現在の海底光ファイバー通信システムのソフトウェアシミュレータは、ネットワーク要素の応答及びアラームイベントのハードコードされたシミュレーションをサポートするファイル及びデータベースに基づいて、静的なシミュレーション環境を使用することができる。これらのシミュレータは、コンピュータシステム上で実行され、静的な応答を含むデータセットに基づいて、物理ハードウェアがない場合にネットワーク要素の挙動を複製する。シミュレータをサポートするファイルは、手動で作成されてもよく、ネットワーク要素の出力パラメータを示す固定されたキーと値のペアから構成される。管理ソフトウェアは、現実世界の環境のように機能することができるが、静的なファイル構造のため、部分的な機能しか実現されない。したがって、挙動の複製は、現実世界の通信システムを部分的にモデル化するだけである。
【0018】
その代わりに、シミュレーションシステムは、好ましくは、1つのNEが他のNEの挙動に影響を及ぼす可能性がある挙動として実現され得るように、システムレベルで実際のハードウェアに近いように動的に反応しながら、小さいシステム構成及び非常に大きいシステム構成の両方をサポートするように、柔軟であり、かつ構成可能である。静的なシミュレーション及びシミュレータ動作ファイルの時間がかかる手動作成に関連する欠点に対処するために、機械学習ベースのシミュレータ生成方法を展開することができる。ネットワーク要素のパフォーマンス、構成、及びアラーム情報を提供すると、機械学習ベースのシミュレーション生成器は、新しいネットワーク要素及び既存のネットワーク要素のためのシミュレータを自動的に生成する。これにより、ネットワークエンジニアは、システムを正確にモデル化する、異なるトポロジ及びNEの組み合わせの様々な展開を伴って、ケーブルシステム全体に対してシミュレーション環境を容易に作成する能力を提供する。更に、動作情報が収集されると、システムが使用されている構成及び機能についてより多く学習するため、シミュレーションは益々正確になるであろう。
【0019】
ここで図面を参照すると、同様の参照番号は、全体を通して同様の要素を指すために使用される。以下の説明では、説明を目的として、その完全な理解を提供するために多数の特定の詳細が説明されている。しかしながら、これらの特定の詳細がなくても、新規の実施形態を実施することができることは明白であり得る。他の例では、その説明を容易にするために、よく知られている構造及びデバイスがブロック図の形態で示されている。この意図は、特許請求される主題と一致する全ての修正、均等物、及び代替物を網羅することである。
【0020】
本明細書で使用するとき、「a」及び「b」及び「c」及び同様の指示子は、任意の正の整数を表す変数であることが意図されることに留意すべきである。したがって、例えば、実装がa=5の値を設定する場合、構成要素122-1~122-aとして示される構成要素122の完全なセットは、構成要素122-1、122-2、122-3、122-4及び122-5を含んでもよい。実施形態は、この文脈において限定されない。
【0021】
図1Aは、本開示の実施形態による、波長分割多重伝送方式(wavelength division multiplexing、WDM)を利用する例示的な光伝送システムの簡略ブロック図を示す。光伝送システム10は、一般に、端末機器101及び108と、それらの間に配置された海底光ケーブル102と、から構成されており、高いトラフィック容量で光信号を伝送することを可能にする。具体的には、複数の光送信機/受信機101
1~101
Nは、関連する波長又はチャネルで光信号を生成し、マルチプレクサ/デマルチプレクサ104によって組み合わせられるか、又は多重化され、海底光ケーブル102に沿って受信機110に伝送される。同様に、光送信機/受信機110
1~110
Nは、関連する波長又はチャネルで光信号を生成し、マルチプレクサ/デマルチプレクサ107によって組み合わせられるか、又は多重化され、海底光ケーブル102に沿って受信機101に伝送される。送信機は、限定するものではないが、QPSK、DPSK、RZ-DPSKなどを含む、様々な変調技術を使用して光信号を生成するように構成されてもよい。様々な波長における光信号は、光ケーブル102に沿って配置された複数の光増幅器又はリピータ105
1~105
Nによって増幅されてもよい。増幅器105
1~105
Nは、例えば、エルビウムドープ光ファイバー増幅器、ラマン増幅器、及び/又はこれらの組み合わせであってもよい。光ケーブル102は、光増幅器105
1~105
Nの数に対応する複数のスパン106
Nのファイバー区分を含むことができる。伝送された光信号が端子108によって端子101のマルチプレクサ/デマルチプレクサ107から受信されると、チャネルを受信機110
1~110
Nの各々に分離する。同様に、伝送された光信号が端子101によって端子108のマルチプレクサ/デマルチプレクサ104から受信されると、チャネルを受信機101
1~101
Nの各々に分離する。端子101及び108の各々はまた、当該技術分野においてよく知られているように、所望のシステムアーキテクチャに応じて、分散補償モジュール、給電機器、並びに回線監視機器を含んでもよい。加えて、光伝送システム10はまた、限定するものではないが、分岐ユニット、中継及び非中継スパン、並びに伝送された光信号を複数の端末位置に提供するための様々なカプラを含む、様々な他の構成要素を含んでもよい。システム10内の構成要素(例えば、送信機/受信機、マルチプレクサ/デマルチプレクサ、増幅器、ファイバースパン、給電機器など)の各々は、NEと称されてもよい。
【0022】
図1Bは、
図1Aに示される例示的な光伝送システム10をモデル化するために使用されるネットワークモデリングシステム100のブロック図を示す。ネットワークモデリングシステム100は、1つ以上の構成要素を含むソフトウェアアプリケーションを有するコンピュータ実装システムを含んでもよい。
図1Bに示されるネットワークモデリングシステム100は、特定のトポロジ内に限られた数の要素を有するが、ネットワークモデリングシステム100は、所与の実装のために所望されるように、代替トポロジ内に、より多くの要素又はより少ない要素を含んでもよいことが理解され得る。
【0023】
クライアントアプリケーション120は、海底光通信システムのシミュレーションにおいてネットワークシミュレータ140と相互作用する。クライアントアプリケーション120は、通信ネットワークを管理するよう機能するネットワーク管理アプリケーションを含んでもよい。クライアントアプリケーション120は、ユーザのネットワーク動作情報を受信及び表示することができ、ネットワーク及びその構成ネットワーク要素の動作に対応してもよい。クライアントアプリケーション120は、ユーザが通信ネットワークの動作を管理することを可能にし、ネットワークシミュレータ140に要求130を送信し、応答135を受信することができる。ネットワーク動作記録レポジトリ160は、ネットワーク要素とクライアントアプリケーション120との間の通信の挙動(例えば、メッセージ構成ルール)を定義するシミュレータファイル170を記憶する。コマンドハンドラ150を介したネットワークシミュレータ140は、例えば、シミュレータファイル170内の値に基づいてアラームを生成するなど、異なる挙動を実行するために必要とされるコマンドを含むシミュレータデータベース180を使用して、異なるネットワーク要素への要求のルーティングを管理する。要求130がハードウェアベースの要求133である場合、ハードウェアベースの要求133は、シミュレータファイル170に基づいてコマンドハンドラ150によって処理され得る。要求130がデータベースの要求136である場合、データベースの要求136は、シミュレータデータベース180に基づいてコマンドハンドラ150によって処理され得る。
【0024】
ネットワーク要素シミュレータの自動生成は、少なくとも3つの段階を含み得る。第1の段階は、ネットワーク要素情報を定義するハードウェア仕様ファイルを収集することを含むことができる。ネットワーク要素情報は、その挙動及び目的を指定するネットワーク要素の全てのアラーム及び他のデータベースファイルのリストと共に、クライアントアプリケーション120によって生成された通信ルール、構成コマンド、アラーム、イベント、及びパフォーマンスデータを含んでもよい。
【0025】
第2の段階は、収集したネットワーク要素の挙動ファイルを、データを訓練するための入力例として、教師なし機械学習システムであり得るシミュレータ分類子に入力することを含むことができる。知られているように、海底ケーブルシステムは、様々な態様で類似点及び相違点がある。端末装填機器は、回線監視機器と比較して、一次及び冗長な一対の端子装填機器を備えた二重端末装填機器とより多くの類似点を共有している。第3の工程のシミュレーションファイル生成は、ネットワーク要素の各カテゴリが特定のファイル生成器を有するように、ネットワーク要素を異なるカテゴリに適切に分類することによって、大部分が簡略化され得る。
【0026】
第3の段階は、収集したNEの挙動ファイルを、データを訓練するための入力例として、教師なし機械学習システムであり得るシミュレータファイル生成器に入力することを含むことができる。回線監視機器、給電機器などのようなNEのシミュレーションのために手動で先のシステム内に作成された既存のシミュレータファイルは、訓練データの明確にラベル付けされた所望の出力として提供されて、海底ケーブル要素のシミュレーションのために機械学習システムのエクスポートを調整することができる。機械学習システムは、畳み込みニューラルネットワーク、リカレントニューラルネットワーク、又はそのような目的に適した他の方法のいずれかを通して、以前に手動で作成された人間が定義した監督の下で、訓練データの指定された入力例に基づいて、訓練データの所望の出力を生成する方法を学習しようと試行する。
【0027】
訓練データは、異なるタイプのデータの集合を含んでもよい。訓練データは、NEの挙動を定義するNE定義を含んでもよい。訓練データは、NEが作り出すことができるアラームのタイプを定義するアラームデータベースを含んでもよく、動作中に収集されたシステムデータを含んでもよい。訓練データはまた、モデル化されたネットワークにどの特定のNEを含め、どの構成に含めるべきかを定義する作成コマンドを含むシミュレータデータの形態を定義するシミュレータテンプレートも含むことができる。
【0028】
図2Aは、入力行列220から出力行列260を作り出すNEシミュレータファイル生成器240の実施形態を示す。NE情報は、複数の入力行列220に編成されてもよく、各NEは、そのシミュレーションを定義するために使用され得る異なるパラメータ又は値を有する。これらのパラメータは、NEシミュレータファイル生成器240への入力としての機能を果たす準備として、ベクトル化し、入力行列220内に記憶され得る、アラーム、イベント、及びネットワークパフォーマンスデータを定義することができる。具体的には、複数の異なる訓練モデルは、シミュレータファイル生成器240の作成に使用されてもよい。ベクトル化されたトポロジ情報、アラーム情報、イベント情報、及びコマンド仕様を含む入力行列220は、例示的な入力として訓練モデルに送信されてもよい。
【0029】
出力行列260内に表される、対応するベクトル化されたシミュレータファイルは、
図2Bに示されるような機械学習訓練モデル270を訓練するために使用される。訓練モデルは、ネットワークトポロジ272、アラーム274、イベント276、及びコマンド278を表す1つ以上のベクトルを含む行列220-iを入力として受信するように訓練される。ベクトル化されたシミュレータファイルは、例示的な出力として訓練モデルに提供される。出力行列260は、ネットワーク要素アラーム、ネットワーク要素インベントリ、ネットワーク要素データセット、ネットワーク要素動作モード、ネットワーク要素電圧読出し値、ネットワーク要素構成情報、及びネットワーク要素によって提供される任意の他のパフォーマンスデータのうちの1つ以上を表す値を含んでもよい。訓練モデル270は、入力ベクトル220によって表される入力条件を、ソフトウェアシミュレータからの結果を出力行列の予測出力結果と比較することによって出力行列260により表される出力条件にマッピングすることを学習する。
【0030】
訓練モデル270は、人工ニューラルネットワーク(Artificial Neural Network、ANN)、ベイジアンネットワーク、遺伝的アルゴリズムなどの、任意の好適なタイプの機械学習構造であってもよい。
図2Bに示される好ましい実施形態では、訓練モデル270は、畳み込みニューラルネットワークとして構造化され得る。畳み込みニューラルネットワークは、ネットワーク内の所与の層のノードが、先行する層内のノードのサブセットのみに接続する特定のタイプのANNである。例えば、
図2Bでは、ノードは、特徴マップ282、286、290、294の要素として表される。畳み込み280は、入力行列220-i内のデータの異なるサブセットに適用され、これらを組み合わせて、第1の特徴マップのセットを含む第1の層282内のノードに入力を提供する。ニューラルネットワークに送り込まれたベクトルの相関関係、ベクトル内の各パラメータの位置合わせ及びニューラルネットワークの構築プロセスに応じて、それらのベクトルの隠れた特徴は、いくつかの層で抽出することができる。これらの特徴は、状態が共通して変化するフィールド、アラーム及びイベントの重大度などを含む。畳み込み280、288を適用するとき、次の層のノードに接続する先行する層内のノードの数は、その層の受容野と称される。受容野が適用される畳み込み層は、貯留層、活性化関数、正規化層などの他のタイプの層によって補足されてもよい。例えば、畳み込み280、288が適用される畳み込み層282、290は、サンプリング284、292が適用されるサブサンプリングされた層286、294と共に散在させることができる。サンプリングとは、所与の特徴マップの解像度を下げ、局所的な特徴を抽出するためによく使用される局所的な平均化を指す。最終的にこれらの特徴により、ユーザがNEシミュレータの状態ビットに精通していなくてもNEの動作を確認及び検証できる特定のアラーム/イベント/インベントリ/トポロジの変化をトリガするために、状態ビットに依存するNEシミュレータが読み取ることができる最終的な状態ビットの構築を可能にする。
【0031】
各層内のノードは、受容野内のノードのセットとフィルタと称される重み及びバイアスのベクトルとに基づいて活性化される(又は活性化されない)。入力行列及び出力行列を使用してモデルを訓練することの目標は、入力行列を所望の出力行列に正確にマッピングするノードのフィルタのセットを確立することである。したがって、ノードのフィルタは、ランダムに初期化され、次いで反復的に更新されて、入力行列220に基づいて出力行列260を作り出すニューラルネットワークを作り出すことができる。この目的を達成するために、シミュレータファイル生成器240によってニューラルネットワークを入力行列220に適用して、シミュレータファイルから生成された所望の出力行列260と比較された実際の出力行列を作り出すことができる。次いで、NEのシミュレーションファイルの実際の出力行列と所望の出力行列260との間の差を使用して、更新されたニューラルネットワークで使用されるフィルタの更新された係数を計算し、これは、機械学習技術を使用して実施され得るように、NEトポロジ、アラーム、インベントリなどの隠れた特徴をより良好に抽出することができる。
【0032】
層の数、層当たりの特徴マップ及びノードの数、畳み込みの受容野のサイズなどのネットワークの特定のパラメータは、ハイパーパラメータと称される。これらのハイパーパラメータは、モデル270が訓練される前に選択され、単一のモデル訓練中には変化しない。ハイパーパラメータは、手動で、又は既知の自動ハイパーパラメータ調整技術に従って選択することができ、アプリケーションごとに選択することができる。例えば、切替波長管理ユニット(switching wavelength management unit、sWMU)のような属性が少ないNEは、sWMUの強化版と見なすことができる波長選択スイッチ又は冗長光アッドドロップマルチプレクサ(WSS ROADM)など、より複雑なNEよりもフィールドが少なく、特徴層が単純になる。しかしながら、NEのコマンド仕様は類似性を共有しているため、シミュレーションファイルを統合して生成することで、異なるNEに対応できる大規模なニューラルネットワークを1つ有することが理想的である。
【0033】
ニューラルネットワークが構成されると、既存のパラメータの組み合わせを使用して定義され得る追加のNEと共に使用されてもよい。最初の訓練が完了すると、任意の新しいコマンド又は任意の新しいNEに関する他の情報をシステムに送り込み、以前に提供された訓練データから学習されたシステムに基づいて、これらの追加のNEを表す更新されたシミュレータファイルを自動的に生成することができる。これらの追加のNEは、複数のNEの特性を組み合わせたハイブリッドネットワーク要素を含んでもよい。シミュレータファイル生成器240は、ハイブリッドNEにハイブリッド化された基本NEの挙動の学習に基づいて、これらのハイブリッドNEを組み込むシミュレータファイルを生成するよう機能する。
【0034】
したがって、シミュレータファイル生成器240は、動作可能な通信ネットワークに現れるような通信ネットワーク内のイベントを表すシミュレータファイルを構築することを学習することができる。例えば、単一のリピータでも誤動作若しくは他のハードウェア又はソフトウェアの問題を経験した場合、それは他の何百ものNEのパラメータの変更に反映され得る。例えば、リピータの出力電力の低下により、一連のリピータと分岐ユニットが低下した入力電力を検出する(対応するアラームを発生させる)ことと、低下した入力電力に適合させるように挙動を修正する(様々な動作パラメータを変更する)ことと、などをもたらし得る。これらの何百ものパラメータは、1つの故障を反映するように手動で構成され得るが、ネットワーク管理ソフトウェアの試験は、異なるシナリオを反映するシミュレータファイルを自動的に生成するよう機能するシミュレータファイル生成器240によって改善され得る。シミュレータファイル生成器240の訓練は、提供された入力行列220及び出力行列260の実施例に基づいた特定のシナリオを考慮して適切なネットワーク要素パラメータを作り出すようにニューラルネットワークを準備する。
【0035】
図3は、シミュレータ作成プロセス310において入力データを処理するネットワークモデリングシステム100の実施形態を示す。ネットワークモデリングシステム100は、訓練データのセットに基づいて、海底光通信ネットワークのシミュレータを作成する。訓練データは、現実世界で動作する通信システムからリアルタイムで収集されたフィールドデータを含んでもよい。フィールドデータは、実際のNEハードウェア及びファームウェアから得ることができる。これには、通信ネットワーク内の異なるネットワークエンティティに設定された一連のコマンド、通信ネットワーク内のNEによって返されたパフォーマンスデータ、及び通信ネットワーク内にインストールされている全てのNEに関する情報を含む。パフォーマンスデータは、一定の時間間隔で、及び/又は故障が発生して報告されたときに返されてもよい。
【0036】
入力訓練データは、入力訓練データのベクトル化された形態の行列又は行列のセットであってもよい。出力訓練データは、関連するパフォーマンスデータと共に生成されたアクティビティのリストと共に、アラーム及び/又はイベントに関する情報を含むファイルから構成された、手動で作成されたシミュレータを含んでもよい。これらの手動で作成されたシミュレータファイルは、ネットワークモデリングシステム100のオペレータによってキュレートされた、現実世界のパフォーマンスデータ及び記録されたアクティビティに基づいて生成されてもよい。いくつかの実施形態では、現実世界のパフォーマンスデータ及び記録されたアクティビティは、自動的にシミュレータファイルに変換され得る。
【0037】
シミュレータ作成プロセス310は、通信ネットワークのタイプを示すシステムタイプ320を受信してもよい。システムタイプ320は、線形システム、分岐システム、又は他のネットワークレイアウトを含んでもよく、複数の分岐、リピータなど、並びにそれらのレイアウトを含む、システムの全体的なトポグラフィを示してもよい。シミュレータ作成プロセス310は、通信ネットワークで使用される特定のネットワーク要素に関する情報を提供するネットワーク要素構成330を受信してもよい。
【0038】
シミュレータ作成プロセス310は、様々な時間におけるパフォーマンスデータを示す一連の時間ベースのデータ340を受け取ることができ、時間ベースのデータは、経時的な情報のセットを定義する。各時間インスタンスにおいて、時間ベースのデータ340は、報告されたアラーム350、監視データ360、及び/又はネットワーク要素370に送信されたコマンドを示すことができる。シミュレーション作成プロセス310はまた、異なるタイプのアラーム及び/又はイベントの分類のためのルールを、それらのタイプのアラーム及び/又はイベントに関連付けられたアクティビティと共に含む分類ルール380を受信してもよい。
【0039】
図4は、ネットワーク動作モデル450に基づいてシステム試験ネットワーク動作記録470を作り出すネットワークモデリングシステム100の実施形態を示す。ネットワークモデリングシステム100は、オペレータコンソール410を使用して操作され、シミュレータファイルを使用して試験されるネットワーク管理アプリケーション480によって使用されるシミュレータファイルの作成を管理することができる。ネットワーク管理アプリケーション480は、光通信ネットワークを表すソフトウェア管理動作を実施することができる。シミュレータファイルは、ソフトウェア管理動作のそのパフォーマンスにおいてネットワーク管理アプリケーション480を試験するために使用され得る。
【0040】
具体的には、ネットワークモデリングシステム100は、シミュレータファイルの作成のために生成されるネットワーク動作モデル450の訓練に使用される記録を管理するように一般的に構成される記録構成要素430を備える。記録構成要素430は、オペレータコンソール410によって指定された例示的なネットワーク構成記録420を受信する。例示的なネットワーク構成記録は、ネットワークトポロジ情報、ネットワークアラーム情報、ネットワークイベント情報、及びネットワークコマンド仕様のうちの1つ以上を含む。ネットワークトポロジ情報は、例示的な海底通信システムのトポロジを示す。ネットワークアラーム情報は、通信システム内で発生し得るアラームを指定し、ネットワークイベント情報は、例示的な通信システム内で発生し得るイベントを指定する。ネットワークコマンド仕様は、ネットワーク管理アプリケーション480によって例示的な通信ネットワークに送信され得るコマンドを指定する。
【0041】
記録構成要素430はまた、オペレータコンソール410によって指定された例示的なネットワーク動作記録425を受信する。例示的なネットワーク動作記録425は、ネットワークアラームアラート、ネットワークイベントアラート、ネットワークアラームデータ、及びネットワークイベントデータのうちの1つ以上を含む。ネットワークアラームアラートは、例示的なネットワーク構成記録420を考慮して例示的な通信ネットワークの動作においてネットワーク管理アプリケーション480によって受信される、シミュレーションされている通信ネットワーク内で発生したアラームに対応する。ネットワークイベントアラートは、例示的なネットワーク構成記録420を考慮して例示的な通信ネットワークの動作においてネットワーク管理アプリケーション480によって受信される、シミュレーションされている通信ネットワーク内で発生したイベントの通知に対応するイベントアラートに対応する。ネットワークアラームデータは、様々なアラームを記述するアラームアラートに関するペイロード情報を示す。ネットワークイベントデータは、様々なイベントを記述するイベントアラートに関するペイロード情報を示す。
【0042】
場合によっては、現実世界のデータが使用されてもよい。例示的なネットワーク構成記録420は、動作ネットワークに対応し得る。例示的なネットワーク動作記録425は、動作ネットワークのために収集されたデータを動作させることを含んでもよい。したがって、例示的なネットワーク動作記録425は、例示的なネットワーク構成記録によって表される例示的なネットワーク構成の複数の例示的なネットワーク要素の例示的な出力パラメータのための複数の例示的なキーと値のペアを含むことができる。
【0043】
記録構成要素430は、例示的なネットワーク構成記録420及び例示的なネットワーク動作記録425を、例示的なネットワーク構成記録420及び例示的なネットワーク動作記録425に対する機械学習動作のパフォーマンスのために、機械学習管理構成要素440に送り込む。機械学習管理構成要素440は、既知の機械学習技術に従って動作し得る機械学習構成要素445の動作を管理する。機械学習構成要素445は、一般に、例示的なネットワーク構成記録420及び例示的なネットワーク動作記録425で訓練されたニューラルネットワークの構成を指定するネットワーク動作モデル450を作り出すように構成されてもよい。
【0044】
機械学習管理構成要素440は、例示的な入力としてネットワーク構成記録420及び例示的な出力として例示的なネットワーク動作記録425に基づいて、機械学習構成要素445を使用してネットワーク動作モデル450を生成する。機械学習構成要素445は、特定のネットワーク構成、そのネットワークへのコマンドのセット、及びそのネットワーク内のイベントを考慮して、ネットワーク管理アプリケーション480が、それらのコマンド及びイベントを与えられたネットワーク構成の監視内に提示される監視情報を生成する、ネットワーク動作モデル450を生成するために使用される。
【0045】
具体的には、機械学習構成要素445は、シミュレーションファイル生成器を含んでもよい。機械学習構成要素445を使用してネットワーク動作モデルを生成することは、例示的なネットワーク構成記録をシミュレーションファイル生成器420に反復的に提出することと、それに応答して試行されたネットワーク動作記録を受信することと、試行されたネットワーク動作記録が例示的なネットワーク動作記録425と一致しない場合には、シミュレーションファイル生成器の構成設定を通して反復することと、を含んでもよい。この反復は、例示的なネットワーク動作記録425及び試行されたネットワーク動作記録が厳密に一致するとき、又は定義された許容誤差内で一致するときに終了することができる。この反復は、多層ニューラルネットワークの訓練を含み得る。
【0046】
ネットワークモデリングシステム100は、システム試験構成要素460を含む。システム試験構成要素460は、通信ネットワークのシミュレーションを実行するよう機能する。システム試験構成要素460は、一般に、
図1を参照して説明されるネットワークシミュレータ140に対応することができる。システム試験構成要素460は、
図2を参照して説明されるシミュレータファイル生成器240に同様に対応することができる。シミュレータファイル生成器240は、機械学習構成要素445のニューラルネットワークの構成としてネットワーク動作モデル450とペアリングされた機械学習構成要素445を含んでもよい。
【0047】
システム試験構成要素460は、機械学習モデル実行構成要素465を介してネットワーク動作モデル450を実行する。機械学習モデル実行構成要素465は、概して、機械学習構成要素445と同じであってもよい。機械学習構成要素445は、例示的なネットワーク構成記録及び例示的なネットワーク動作記録425に基づいてニューラルネットワークを構成してもよいが、機械学習モデル実行構成要素465は、そのニューラルネットワークを実施して、システム試験ネットワーク構成記録420を対応するシステム試験ネットワーク動作記録470に変換する。
【0048】
ネットワーク動作モデル450は、システム試験構成要素460に提供される。いくつかの実施形態では、システム試験構成要素460は、オペレータコンソール410を介してネットワーク動作モデル450を受信してもよい。他の実施形態では、システム試験構成要素460は、機械学習管理構成要素440からネットワーク動作モデル450を直接受信してもよい。システム試験構成要素460は、オペレータコンソール410によって指定されたシステム試験ネットワーク構成記録420を受信する。システム試験ネットワーク構成記録420は、ネットワークトポロジ情報、ネットワークアラーム情報、ネットワークイベント情報、及びネットワークコマンド仕様のうちの1つ以上を含む。ネットワークトポロジ情報、ネットワークアラーム情報、ネットワークイベント情報、及びネットワークコマンド仕様は、ネットワーク動作モデル450を訓練するために使用される例示的なネットワーク構成記録420のネットワークトポロジ情報、ネットワークアラーム情報、ネットワークイベント情報、及びネットワークコマンド仕様に使用されるものと同じスキーマに従って指定される。
【0049】
システム試験構成要素460は、ネットワーク動作モデル450を使用してシステム試験ネットワーク構成記録420に基づいてシステム試験ネットワーク動作記録470を生成する。システム試験ネットワーク動作記録は、ネットワークアラームアラート、ネットワークイベントアラート、ネットワークアラームデータ、及びネットワークイベントデータのうちの1つ以上を含む。ネットワークアラームアラート、ネットワークイベントアラート、ネットワークアラームデータ、及びネットワークイベントデータは、ネットワーク動作モデル450を訓練するために使用されるネットワークアラームアラート、ネットワークイベントアラート、ネットワークアラームデータ、及びネットワークイベントデータに使用されるものと同じスキーマに従って指定される。システム試験ネットワーク動作記録470は、システム試験ネットワーク構成記録420によって表されるシステム試験ネットワーク構成の複数のシステム試験ネットワーク要素のシステム試験出力パラメータのための複数のシステム試験のキーと値のペアを含んでもよい。
【0050】
次いで、ネットワーク管理アプリケーション480は、システム試験ネットワーク動作記録470を受信する。場合によっては、システム試験構成要素460は、システム試験ネットワーク動作記録470をネットワーク管理アプリケーション480に直接提供してもよい。他の場合には、システム試験構成要素460は、システム試験ネットワーク動作記録470をオペレータコンソール410に提供することができ、次いで、オペレータコンソール410は、ネットワーク管理アプリケーション480にシステム試験ネットワーク動作記録470を実行させるために使用される。システム試験ネットワーク動作記録470は、ネットワークシミュレータ140へのクライアントアプリケーション120としてネットワーク管理アプリケーション480によって情報を表示するために、
図1を参照して説明されるように、ネットワークシミュレータ140によって実行されてもよい。
【0051】
ネットワークモデリングシステム100は、ハイブリッドネットワーク要素をサポートすることができる。例示的なネットワーク構成記録420は、第1のネットワーク要素タイプの第1のネットワーク構成情報と、第2のネットワーク要素タイプの第2のネットワーク構成情報と、を含み得る。それに対応して、例示的なネットワーク動作記録425は、第1のネットワーク要素タイプ及び第2のネットワーク要素タイプのネットワーク動作情報を含んでもよい。そのため、ネットワーク動作モデル450は、第1のネットワーク要素タイプ及び第2のネットワーク要素タイプの両方のネットワーク要素の動作を具現化することができる。
【0052】
その後、システム試験ネットワーク構成記録420は、第1のネットワーク要素タイプと第2のネットワーク要素タイプとを組み合わせたハイブリッドネットワーク要素タイプのハイブリッドネットワーク構成情報を含んでもよい。例示的なネットワーク構成記録に基づくネットワーク動作モデル450は、ハイブリッドネットワーク要素タイプのネットワーク要素で訓練されていない、第1のネットワーク要素タイプと第2のネットワーク要素タイプについて訓練されているネットワーク動作モデル450に基づいて、ハイブリッドネットワーク要素タイプのハイブリッドネットワーク動作情報を有するシステム試験ネットワーク動作記録470を生成するよう機能する。これは、第1のネットワーク要素タイプ及び第2のネットワーク要素タイプを定義するために使用されるパラメータの組み合わせを使用してハイブリッドネットワーク要素タイプを指定することによって実施され得る。
【0053】
本明細書には、開示されるアーキテクチャの新規な態様を実施するための例示的な方法論を表すフローチャートのセットが含まれる。説明を簡単にするために、本明細書に、例えば、フローチャート又は流れ図の形態で示される1つ以上の方法論は、一連の行為として示され、説明されるが、方法論は、いくつかの行為が、それに従って、本明細書に示され、説明されるものとは異なる順序で、及び/又は他の行為と同時に発生し得るため、行為の順序によって制限されないことを理解及び認識すべきである。例えば、当業者は、方法論が、代わりに、状態図などの一連の関連する状態又はイベントとして表され得ることを理解し、認識するであろう。更に、方法論に示されている全ての行為が、新規の実装に必要なわけではない場合がある。
【0054】
図5は、論理流れ
図500の一実施形態を示す。論理流れ
図500は、本明細書に説明される1つ以上の実施形態によって実行される動作の一部又は全てを表すことができる。
図5に示される例示的な実施形態では、論理流れ
図500は、ブロック502で例示的なネットワーク構成記録を受信し、ブロック504でネットワーク動作記録を受信してもよい。論理流れ
図500は、ブロック506で、例示的な入力として例示的なネットワーク構成記録及び例示的な出力として例示的なネットワーク動作記録に基づいて、機械学習構成要素を使用してネットワーク動作モデルを生成することができる。
【0055】
論理流れ
図500は、ブロック508でシステム試験ネットワーク構成記録を受信し、ブロック510でネットワーク動作モデルを使用してシステム試験ネットワーク構成記録に基づいてシステム試験ネットワーク動作記録を生成することができる。実施形態は、この実施例に限定されない。
【0056】
図6は、集中システム600のブロック図を示す。集中システム600は、完全に単一の集中デバイス610内などの単一のコンピューティングエンティティにおいて、ネットワークモデリングシステム100の構造及び/又は動作の一部又は全てを実装することができる。集中デバイス610は、ネットワークモデリングシステム100に関する情報を受信、処理、及び送信することができる任意の電子デバイスを含んでもよい。電子デバイスの実施例としては、限定するものではないが、ウルトラモバイルデバイス、モバイルデバイス、携帯情報端末(personal digital assistant、PDA)、モバイルコンピューティングデバイス、スマートフォン、電話、デジタル電話、携帯電話、Eブックリーダ、ハンドセット、一方向ポケットベル(登録商標)、双方向ポケットベル(登録商標)、メッセージングデバイス、コンピュータ、パーソナルコンピュータ(personal computer、PC)、デスクトップコンピュータ、ラップトップコンピュータ、ネットブックコンピュータ、ハンドヘルドコンピュータ、タブレットコンピュータ、サーバ、サーバアレイ又はサーバファーム、ウェブサーバ、ネットワークサーバ、インターネットサーバ、ワークステーション、ミニコンピュータ、メインフレームコンピュータ、超高速コンピュータ、ネットワーク器具、ウェブ器具、分散コンピューティングシステム、マルチプロセッサシステム、プロセッサベースのシステム、家庭用電気機械器具、プログラマブル家庭用電気機械器具、ゲームデバイス、テレビ、デジタルテレビ、セットトップボックス、無線アクセスポイント、基地局、加入者設備、携帯加入者センター、無線ネットワークコントローラ、ルータ、ハブ、ゲートウェイ、ブリッジ、スイッチ、機械、又はこれらの組み合わせを挙げることができる。実施形態は、この文脈において限定されない。
【0057】
集中デバイス610は、処理構成要素630を使用して、ネットワークモデリングシステム100の処理動作又は論理を実行してもよい。処理構成要素630は、様々なハードウェア要素、ソフトウェア要素、又はそれら両方の組み合わせを含んでもよい。ハードウェア要素の実施例としては、デバイス、論理デバイス、構成要素、プロセッサ、マイクロプロセッサ、回路、プロセッサ回路、回路要素(例えば、トランジスタ、抵抗器、コンデンサ、インダクタなど)、集積回路、特定用途向け集積回路(application specific integrated circuit、ASIC)、プログラマブル論理デバイス(PLD)、デジタル信号プロセッサ(digital signal processor、DSP)、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)、メモリユニット、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセットなどを挙げることができる。ソフトウェア要素の実施例としては、ソフトウェア構成要素、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、ソフトウェア開発プログラム、機械語プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、方法、手順、ソフトウェアインターフェース、アプリケーションプログラムインターフェース(application program interface、API)、命令セット、計算コード、コンピュータコード、コードセグメント、コンピュータコードセグメント、単語、値、記号、又はこれらの任意の組み合わせを挙げることができる。ハードウェア要素及び/又はソフトウェア要素を使用して実施形態が実装されているかどうかを判定することは、所与の実装のために所望されるように、所望の計算速度、電力レベル、耐熱性、処理サイクル予算、入力データレート、出力データレート、メモリリソース、データバス速度、及び他の設計又はパフォーマンスの制約などの任意の数の要因に従って変化し得る。
【0058】
集中デバイス610は、通信構成要素640を使用してネットワークモデリングシステム100の通信動作又は論理を実行してもよい。通信構成要素640は、パケット交換ネットワーク(例えば、インターネットなどの公衆ネットワーク、企業イントラネットなどの私設ネットワークなど)、回線交換ネットワーク(例えば、公衆交換電話ネットワーク)、又はパケット交換ネットワークと回線交換ネットワークとの組み合わせ(好適なゲートウェイ及び変換機構を有する)を用いて使用するのに好適な技術など、よく知られている通信技術及びプロトコルを実装することができる。通信構成要素640は、1つ以上の通信インターフェース、ネットワークインターフェース、ネットワークインターフェースカード(network interface card、NIC)、無線機、無線送信機/受信機(送受信機)、有線及び/又は無線通信媒体、物理コネクタなどの様々なタイプの標準通信要素を含んでもよい。例として、限定するものではないが、通信媒体612は、有線通信媒体及び無線通信媒体を含む。有線通信媒体の実施例としては、ワイヤ、ケーブル、金属リード、プリント回路基板(printed circuit board、PCB)、バックプレーン、スイッチファブリック、半導体材料、ツイストペア、同軸ケーブル、光ファイバー、伝播信号などを挙げることができる。無線通信媒体の実施例としては、音響、無線周波数(radio-frequency、RF)スペクトル、赤外線、及び他の無線媒体を挙げることができる。
【0059】
集中デバイス610は、通信構成要素640を介して通信信号614を使用して、通信媒体612上で他のデバイス620と通信することができる。デバイス620は、所与の実装のために所望されるように、集中デバイス610に内蔵でも外付けでもよい。デバイス620は、ネットワークモデリングシステム100が相互作用する様々なデバイスを含んでもよい。例えば、デバイス620は、ネットワークモデリングシステム100が、パフォーマンスデータを収集するネットワーク要素を動作させることを含み得る。
【0060】
集中デバイス610は、集中システム600としてネットワークモデリングシステム100を実行してもよい。ネットワークモデリングシステム100の構成要素は、ネットワークモデリングシステム100のオペレータが使用するために、集中デバイス610上で実行することができる。
【0061】
図7は、分散システム700のブロック図を示す。分散システム700は、複数のコンピューティングエンティティにわたってネットワークモデリングシステム100の構造及び/又は動作の部分を分散させることができる。分散システム700の実施例としては、限定するものではないが、クライアントサーバアーキテクチャ、第3のアーキテクチャ、第Nのアーキテクチャ、密結合又はクラスタ化されたアーキテクチャ、ピアツーピアアーキテクチャ、マスタスレーブアーキテクチャ、共有データベースアーキテクチャ、及び他のタイプの分散システムを挙げることができる。実施形態は、この文脈において限定されない。
【0062】
分散システム700は、複数のサーバデバイス710を含んでもよい。一般に、サーバデバイス710は、
図6を参照して説明されるように、集中デバイス610と同じ又は同様であってもよい。例えば、サーバデバイス710は、
図6を参照して説明されるように、処理構成要素630及び通信構成要素640とそれぞれ同じ又は同様の処理構成要素730及び通信構成要素740を各々備えてもよい。別の例では、サーバデバイス710は、通信構成要素740を介して通信信号714を使用して通信媒体712上で通信することができる。
【0063】
サーバデバイス710は、
図1~
図4を参照して説明したネットワークモデリングシステム100の構成要素などのネットワークモデリングシステム構成要素720を実行してもよい。分散システム700は、異なるサーバデバイス710にわたってネットワークモデリングシステム100の構成要素を分散させることができる。サーバデバイス710は、ネットワークモデリングの実施のために、オペレータコンソール410によって操作されてもよい。
【0064】
サーバデバイス710は、通信構成要素740を介して通信信号714を使用して、通信媒体712上で他のデバイス720と通信することができる。デバイス720は、ネットワークモデリングシステム100が相互作用する様々なデバイスを含んでもよい。例えば、デバイス720は、ネットワークモデリングシステム100がパフォーマンスデータを収集するネットワーク要素を動作させることを含み得る。
【0065】
図8は、前述したような様々な実施形態を実装するのに好適な例示的なコンピューティングアーキテクチャ800の実施形態を示す。一実施形態では、コンピューティングアーキテクチャ800は、電子デバイスの一部を含むか、又は電子デバイスの一部として実装されてもよい。電子デバイスの実施例としては、とりわけ、
図8を参照して説明したものを挙げることができる。実施形態は、この文脈において限定されない。
【0066】
本出願で使用するとき、「システム」及び「構成要素」という用語は、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、又は実行中のソフトウェアのいずれかであるコンピュータ関連のエンティティを指すことを意図し、その実施例は、例示的なコンピューティングアーキテクチャ800によって提供される。例えば、構成要素は、限定するものではないが、プロセッサ上で実行されているプロセス、プロセッサ、ハードディスクドライブ、(光学及び/又は磁気記憶媒体の)複数の記憶ドライブ、オブジェクト、実行ファイル、実行スレッド、プログラム、及び/又はコンピュータであることができる。実例として、サーバ上で実行されているアプリケーション及びサーバの両方は、構成要素とすることができる。1つ以上の構成要素は、プロセス及び/又は実行スレッド内に存在することができ、構成要素は、1つのコンピュータ上に局所化され得、かつ/又は2つ以上のコンピュータ間に分散され得る。更に、構成要素は、様々なタイプの通信媒体によって互いに通信可能に結合されて、動作を調整することができる。この調整は、情報の一方向又は双方向の交換を伴い得る。例えば、構成要素は、通信媒体上で通信される信号の形態で情報を通信することができる。情報は、様々な信号線に割り当てられた信号として実装することができる。そのような割り当てでは、各メッセージは信号である。しかしながら、更なる実施形態は、代替的にデータメッセージを用いてもよい。このようなデータメッセージは、様々な接続を介して送信されてもよい。例示的な接続としては、並列インターフェース、直列インターフェース、及びバスインターフェースが挙げられる。
【0067】
コンピューティングアーキテクチャ800は、1つ以上のプロセッサ、マルチコアプロセッサ、コプロセッサ、メモリユニット、チップセット、コントローラ、周辺機器、インターフェース、発振器、タイミングデバイス、ビデオカード、オーディオカード、マルチメディア入力/出力(input/output、I/O)構成要素、電源などの、様々な共通コンピューティング要素を含む。しかしながら、実施形態は、コンピューティングアーキテクチャ800による実装に限定されない。
【0068】
図8に示されるように、コンピューティングアーキテクチャ800は、処理ユニット804、システムメモリ806、及びシステムバス808を備える。処理ユニット804は、限定するものではないが、AMD(登録商標)Athlon(登録商標)、Duron(登録商標)及びOpteron(登録商標)プロセッサ、ARM(登録商標)アプリケーション、埋め込みプロセッサ及び安全なプロセッサ、IBM(登録商標)及びMotorola(登録商標)DragonBall(登録商標)及びPowerPC(登録商標)プロセッサ、IBM及びSony(登録商標)セルプロセッサ、Intel(登録商標)Celeron(登録商標)、コア(2)Duo(登録商標)、Itanium(登録商標)、Pentium(登録商標)、Xeon(登録商標)、及びXScale(登録商標)プロセッサ、及び同様のプロセッサを含む、様々な市販のプロセッサのいずれかとすることができる。デュアルマイクロプロセッサ、マルチコアプロセッサ、及び他のマルチプロセッサアーキテクチャもまた、処理ユニット804として用いられてもよい。
【0069】
システムバス808は、限定するものではないが、システムメモリ806を含む、システム構成要素のインターフェースを処理ユニット804に提供する。システムバス808は、種々の市販のバスアーキテクチャのいずれかを使用して、(メモリコントローラを有する又は有さない)メモリバス、周辺バス、及びローカルバスに更に相互接続することができる、いくつかのタイプのバス構造のいずれかとすることができる。インターフェースアダプタは、スロットアーキテクチャを介してシステムバス808に接続することができる。例示的なスロットアーキテクチャとしては、限定するものではないが、アクセラレーテッドグラフィックスポート(Accelerated Graphics Port、AGP)、カードバス、(拡張)業界標準アーキテクチャ((Extended)Industry Standard Architecture、(E)ISA)、マイクロチャネルアーキテクチャ(Micro Channel Architecture、MCA)、NuBus、周辺構成要素相互接続(拡張)(Peripheral Component Interconnect(Extended)、PCI(X))、PCIエクスプレス、パーソナルコンピュータメモリカード国際協会(Personal Computer Memory Card International Association、PCMCIA)などを挙げることができる。
【0070】
コンピューティングアーキテクチャ800は、様々な製品を含むか、又は実装することができる。製品は、論理を記憶するためのコンピュータ可読記憶媒体を含み得る。コンピュータ可読記憶媒体の実施例としては、揮発性メモリ又は不揮発性メモリ、リムーバブル又はリムーバブル不可能メモリ、消去可能又は消去不可能メモリ、書き込み可能又は再書き込み可能メモリなどを含む、電子データを記憶することができる任意の有形媒体を含んでもよい。論理の実施例としては、ソースコード、コンパイル済みコード、解釈済みコード、実行可能コード、静的コード、動的コード、オブジェクト指向コード、視覚コードなどの任意の好適なタイプのコードを使用して実装された実行可能なコンピュータプログラム命令を含んでもよい。実施形態はまた、本明細書に記載される動作の実施を可能にするために1つ以上のプロセッサによって読出し及び実行され得る、非一時的なコンピュータ可読媒体内又は上に含まれる命令として少なくとも部分的に実施されてもよい。
【0071】
システムメモリ806としては、読出し専用メモリ(read-only memory、ROM)、ランダムアクセスメモリ(random-access memory、RAM)、ダイナミックRAM(dynamic RAM、DRAM)、ダブルデータレートDRAM(Double-Data-Rate DRAM、DDRAM)、シンクロナスDRAM(synchronous DRAM、SDRAM)、スタティックRAM(static RAM、SRAM)、プログラマブルROM(programmable ROM、PROM)、消去書き込み可能型プログラマブルROM(erasable programmable ROM、EPROM)、電気的消去書き込み可能型ROM(electrically erasable programmable ROM、EEPROM)、フラッシュメモリ、強誘電性ポリマーメモリなどのポリマーメモリ、オボニックメモリ、相変化又は強誘電性メモリ、酸化ケイ素-窒化物-酸化ケイ素(silicon-oxide-nitride-oxide-silicon、SONOS)メモリ、磁気又は光カード、独立ディスクの冗長アレイ(Redundant Array of Independent Disk、RAID)ドライブなどのデバイスアレイ、ソリッドステートメモリデバイス(例えば、USBメモリ、ソリッドステートドライブ(solid state drive、SSD)、及び情報を記憶するのに好適な任意の他のタイプの記憶媒体などの1つ以上の高速メモリユニットの形態の様々なタイプのコンピュータ可読記憶媒体を挙げることができる。
図8に示される例示的な実施形態では、システムメモリ806は、不揮発性メモリ810及び/又は揮発性メモリ812を含むことができる。基本入力/出力システム(basic input/output system、BIOS)は、不揮発性メモリ810に記憶され得る。
【0072】
コンピュータ802としては、内蔵(又は外付け)ハードディスクドライブ(hard disk drive、HDD)814、リムーバブル磁気ディスク818から読出し又はそこに書き込みを行うための磁気フロッピーディスクドライブ(floppy disk drive、FDD)816、及びリムーバブル光ディスク822(例えば、CD-ROM又はDVD)から読出し又はそこに書き込みを行うための光ディスクドライブ820を含む、1つ以上の低速メモリユニットの形態の様々なタイプのコンピュータ可読記憶媒体を挙げることができる。HDD814、FDD816及び光ディスクドライブ820は、HDDインターフェース824、FDDインターフェース826、及び光学ドライブインターフェース828によって、システムバス808にそれぞれ接続することができる。外部ドライブ実装用のHDDインターフェース824は、ユニバーサルシリアルバス(Universal Serial Bus、USB)及びIEEE1394インターフェース技術のうちの少なくとも1つ又は両方を含むことができる。
【0073】
ドライブ及び関連するコンピュータ可読媒体は、データ、データ構造、コンピュータ実行可能命令などの揮発性及び/又は不揮発性記憶を提供する。例えば、複数のプログラムモジュールは、オペレーティングシステム830、1つ以上のアプリケーションプログラム832、他のプログラムモジュール834、及びプログラムデータ836を含む、ドライブ及びメモリユニット810、812に記憶することができる。一実施形態では、1つ以上のアプリケーションプログラム832、他のプログラムモジュール834、及びプログラムデータ836は、例えば、ネットワークモデリングシステム100の様々なアプリケーション及び/又は構成要素を含むことができる。
【0074】
ユーザは、1つ以上の有線/無線入力デバイス、例えば、キーボード838及びマウス840などのポインティングデバイスを通じてコマンド及び情報をコンピュータ802に入力することができる。他の入力デバイスとしては、マイクロフォン、赤外線(infra-red、IR)リモコン、無線周波数(RF)リモコン、ゲームパッド、スタイラスペン、カードリーダ、ドングル、指紋リーダ、グローブ、グラフィックスタブレット、ジョイスティック、キーボード、網膜リーダ、タッチスクリーン(例えば、容量性の、抵抗性のなど)、トラックボール、トラックパッド、センサ、スタイラスなどを挙げることができる。これら及び他の入力デバイスは、多くの場合、システムバス808に結合されている入力デバイスインターフェース842を通じて処理ユニット804に接続されているが、並列ポート、IEEE1394シリアルポート、ゲームポート、USBポート、IRインターフェースなどの他のインターフェースによって接続することができる。
【0075】
監視装置844又は他のタイプの表示デバイスはまた、ビデオアダプタ846などのインターフェースを介してシステムバス808に接続される。監視装置844は、コンピュータ802に内蔵でも外付けでもよい。監視装置844に加えて、コンピュータは、典型的には、スピーカ、プリンタなどの他の周辺出力デバイスを含む。
【0076】
コンピュータ802は、遠隔コンピュータ848.などの1つ以上の遠隔コンピュータへの有線及び/又は無線通信を介した論理接続を使用してネットワーク化された環境内で動作することができる。遠隔コンピュータ848は、ワークステーション、サーバコンピュータ、ルータ、パーソナルコンピュータ、ポータブルコンピュータ、マイクロプロセッサベースの娯楽器具、ピアデバイス、又は他の一般的なネットワークノードであってもよく、典型的には、コンピュータ802に関連して説明される要素の多く又は全てを含むが、簡潔にするために、メモリ/記憶デバイス850のみが示されている。図示される論理接続には、ローカルエリアネットワーク(local area network、LAN)852及び/又はより大きいネットワーク、例えば、広域ネットワーク(wide area network、WAN)854への有線/無線接続が挙げられる。このようなLAN及びWANネットワーキング環境は、オフィス及び企業では一般的であり、イントラネットなどの企業全体のコンピュータネットワークを促進し、これらの全ては、例えば、インターネットなどのグローバル通信ネットワークに接続することができる。
【0077】
コンピュータ802は、LANネットワーキング環境で使用される場合、有線及び/又は無線通信ネットワークインターフェース又はアダプタ856を通じてLAN852に接続される。アダプタ856は、LAN852への有線及び/又は無線通信を促進することができ、これは、アダプタ856の無線機能と通信するためにその上に配置された無線アクセスポイントも含むことができる。
【0078】
コンピュータ802は、WANネットワーキング環境で使用される場合、モデム858を含むことができるか、又はWAN854上の通信サーバに接続されるか、若しくはインターネットなどによってWAN854を介して通信を確立するための他の手段を有する。モデム858は、内蔵でも外付けでもよく、有線及び/又は無線デバイスであり、入力デバイスインターフェース842を介してシステムバス808に接続する。ネットワーク化された環境では、コンピュータ802又はその一部に関連して示されているプログラムモジュールは、遠隔メモリ/記憶デバイス850に記憶することができる。図示されるネットワーク接続は、例示的なものであり、コンピュータ間の通信リンクを確立する他の手段を使用できることが理解されよう。
【0079】
コンピュータ802は、無線通信(例えば、IEEE802.11の無線変調技術)で動作可能に配置された無線デバイスなどの、IEEE802標準のファミリーを使用して、有線及び無線デバイス又はエンティティと通信するように動作可能である。これには、とりわけ、少なくともWi-Fi(又はワイヤレスフィディリティー)、WiMax、及びBluetooth(登録商標)無線技術が含まれる。したがって、通信は、従来のネットワークと同様の既定の構造、又は単に少なくとも2つのデバイス間のアドホック通信とすることができる。Wi-Fiネットワークは、IEEE802.11x(a、b、g、nなど)と呼ばれる無線技術を使用して、安全で信頼性の高い高速無線接続を提供する。Wi-Fiネットワークを使用して、コンピュータを相互に接続する、インターネットに接続する有線ネットワーク(IEEE802.3関連の媒体及び機能を使用する)に接続することができる。
【0080】
図9は、前述したような様々な実施形態を実装するのに好適な例示的な通信アーキテクチャ900のブロック図を示す。通信アーキテクチャ900は、送信機、受信機、送受信機、無線機、ネットワークインターフェース、ベースバンドプロセッサ、アンテナ、増幅器、フィルタ、電源などの様々な共通の通信要素を含む。しかしながら、実施形態は、通信アーキテクチャ900による実装に限定されない。
【0081】
図9に示されるように、通信アーキテクチャ900は、1つ以上のクライアント902及びサーバ904を含む。クライアント902は、
図4を参照して説明したように、オペレータコンソール410を実装してもよい。サーバ904は、
図7を参照して説明したサーバデバイス710などのサーバデバイスを実装してもよい。クライアント902及びサーバ904は、1つ以上のそれぞれのクライアントデータストア908及びサーバデータストア910に動作可能に接続され、それぞれのクライアント902及びサーバ904に、クッキー及び/又は関連するコンテキスト情報などの局所的な情報を記憶するために用いることができる。
【0082】
クライアント902及びサーバ904は、通信フレームワーク906を使用して互いに情報を通信してもよい。通信フレームワーク906は、任意のよく知られている通信技術及びプロトコルを実装することができる。通信フレームワーク906は、パケット交換ネットワーク(例えば、インターネットなどの公衆ネットワーク、企業イントラネットなどの私設ネットワークなど)、回線交換ネットワーク(例えば、公衆交換電話ネットワーク)、又はパケット交換ネットワークと回線交換ネットワークとの組み合わせ(好適なゲートウェイ及び変換機構を有する)として実装されてもよい。
【0083】
通信フレームワーク906は、通信ネットワークを受け入れ、通信し、接続するように構成された様々なネットワークインターフェースを実装することができる。ネットワークインターフェースは、入力出力インターフェースの特殊な形態と見なすことができる。ネットワークインターフェースは、限定するものではないが、直接接続、Ethernet(登録商標)(例えば、厚い、薄い、ツイストペア10/100/1000 BaseTなど)、トークンリング、無線ネットワークインターフェース、セルラーネットワークインターフェース、IEEE802.11a~xネットワークインターフェース、IEEE802.16ネットワークインターフェース、IEEE802.20ネットワークインターフェースなどを含む接続プロトコルを用いることができる。更に、様々な通信ネットワークタイプと関与するために、複数のネットワークインターフェースが使用されてもよい。例えば、ブロードキャスト、マルチキャスト、及びユニキャストネットワークを介した通信を可能にするために、複数のネットワークインターフェースを用いることができる。処理要件がより多くの速度及び容量を要求する場合、分散ネットワークコントローラアーキテクチャを同様に用いて、クライアント902及びサーバ904が必要とする通信帯域幅を貯留し、負荷分散し、又はその他の方法で増加させることができる。通信ネットワークは、限定するものではないが、直接相互接続、安全なカスタム接続、私設ネットワーク(例えば、企業イントラネット)、公衆ネットワーク(例えば、インターネット)、パーソナルエリアネットワーク(Personal Area Network、PAN)、ローカルエリアネットワーク(LAN)、メトロポリタンエリアネットワーク(Metropolitan Area Network、MAN)、インターネット上のノードとしてのオペレーティングミッション(Operating Missions as Nodes on the Internet、OMNI)、広域ネットワーク(WAN)、無線ネットワーク、セルラーネットワーク、及び他の通信ネットワークを含む、無線及び/又は有線ネットワークのいずれか1つ及びそれらの組み合わせであってもよい。
【0084】
いくつかの実施形態は、「一実施形態」又は「実施形態」という表現をそれらの派生語と共に使用して説明することができる。これらの用語は、実施形態に関連して説明された特定の特徴、構造、又は特性が、少なくとも1つの実施形態に含まれることを意味する。本明細書の様々な場所における「一実施形態では」という語句の出現は、必ずしも全てが同じ実施形態を指すものではない。更に、いくつかの実施形態は、「結合された」及び「接続された」という表現をそれらの派生語と共に使用して説明することができる。これらの用語は、必ずしも互いに同義語として意図されているわけではない。例えば、いくつかの実施形態は、2つ以上の要素が互いに直接物理的又は電気的に接触していることを示すために、「接続された」及び/又は「結合された」という用語を使用して説明することができる。しかしながら、「結合された」という用語はまた、2つ以上の要素が互いに直接接触していないが、依然として互いに協働又は相互作用していることを意味し得る。
【0085】
本明細書で使用される表記及び命名法を一般に参照すると、本明細書の詳細な説明は、コンピュータ又はコンピュータのネットワーク上で実行されるプログラム手順に関して提示することができる。これらの手順の説明及び表現は、当業者が自分の仕事の内容を他の当業者に最も効果的に伝えるために使用される。
【0086】
手順は本明細書にあり、一般に、所望の結果につながる首尾一貫した一連の操作であると考えられる。これらの操作は、物理量の物理的な操作を必要とするものである。通常、必ずしもそうではないが、これらの量は、記憶、転送、組み合わせ、比較、及び他の方法で操作することができる電気信号、磁気信号、又は光信号の形態をとる。これにより、多くの場合、主として一般的な使用の理由から、これらの信号を、ビット、値、要素、記号、文字、用語、数字などとして指すことが好都合であることを証明することができる。しかしながら、これらの用語及び同様の用語は全て、適切な物理量に関連付けられるものであり、これらの量に適用される簡便なラベルに過ぎないことに留意されたい。
【0087】
更に、実行される操作は、人間のオペレータによって実施される知的操作に一般的に関連付けられている、追加又は比較などの用語で称されることが多い。1つ以上の実施形態の一部を形成する、本明細書に記載される操作のいずれかにおいても、人間のオペレータのそのような能力が必要ではないか、又はほとんどの場合望ましくはない。むしろ、操作は、機械操作である。様々な実施形態の操作を実施するための有用な機械としては、汎用デジタルコンピュータ又は同様のデバイスが挙げられる。
【0088】
様々な実施形態はまた、これらの操作を実施するための装置又はシステムに関する。この装置は、必要な目的のために特別に構築されてもよく、又はコンピュータに記憶されたコンピュータプログラムによって選択的に起動又は再構成される汎用コンピュータを含んでもよい。本明細書に提示される手順は、特定のコンピュータ又は他の装置に本質的に関連するものではない。本明細書の教示に従って書かれたプログラムと共に様々な汎用機械を使用することができるか、又は必要な方法工程を実施するためのより専門的な装置を構築することが好都合であることを証明することができる。種々のこれらの機械に必要な構造は、所与の説明から明らかになるであろう。
【0089】
本開示の要約書は、読者が技術的開示の性質を迅速に確認できるように提供されることが強調される。請求項の範囲又は意味を解釈又は限定するためには使用されないという理解のもと、この要約書を提出する。加えて、前述の「発明を実施するための形態」では、本開示を簡素化する目的で、様々な特徴が単一の実施形態にまとめられていることが分かる。本開示の方法は、請求される実施形態が、各請求項に明示的に列挙されているよりも多くの特徴を必要とするという意図を反映するものとして解釈されるべきではない。むしろ、以下の特許請求の範囲が反映されるように、本発明の主題は、単一の開示される実施形態の全ての特徴よりも少ない特徴にある。したがって、以下の特許請求の範囲は、「発明を実施するための形態」に組み込まれ、各特許請求の範囲は、別個の実施形態としてそれ自体で成立する。添付の特許請求の範囲では、「含む(including)」及び「その中(in which)」という用語は、「備える(comprising)」及び「そこで(wherein)」というそれぞれの用語の平易な英語の等価物としてそれぞれ使用される。更に、「第1」、「第2」、「第3」などという用語は、単にラベルとして使用されており、それらの対象物上に数値要件を課すことを意図するものではない。
【0090】
上述したものは、開示されたアーキテクチャの例を含む。当然ながら、構成要素及び/又は方法論のあらゆる考えられる組み合わせを説明することは不可能であるが、当業者は、多くの更なる組み合わせ及び変形が可能であることを認識し得る。したがって、新規なアーキテクチャは、添付の特許請求の範囲の趣旨及び範囲内に含まれる全てのそのような変更、修正、及び変形を包含することを意図している。