説明

ネットワーク検査のための同期されたコマンド

【課題】ネットワークを検査するための方法および検査システムを提供する。
【解決手段】検査システムは複数のユーザをエミュレートし、各エミュレートされたユーザはユーザのアクティビティを実行してよい。各エミュレートされたユーザのアクティビティは1つ以上のコマンドを含んでよい。少なくとも一部のエミュレートされたユーザのアクティビティは、第1のプロトコルに関連付けられた第1のコマンドを含んでよく、第1のプロトコルは、第1のプロトコルとは異なる第2のプロトコルに関連付けられた第2のコマンドと同期されていてよい。検査システムは複数のユーザをエミュレートすることの結果をレポートしてよい。

【発明の詳細な説明】
【技術分野】
【0001】
(著作権およびトレードドレスについての通知)
本特許文献の開示の一部は著作権保護に対象となるマテリアルを含む。本特許文献は、保有者のトレードドレスである、またはトレードドレスとなり得る事柄を示し、および/または記載する場合がある。著作権およびトレードドレスの保有者は、いかなる者であっても米国特許商標局の書類または記録の通りに本特許開示を複製する限りで、異議を申し立てるものではないが、その他の場合には、いかなる場合であっても全ての著作権およびトレードドレスの権利を保留するものである。
【0002】
本開示は、ネットワークまたはネットワークデバイスを検査するためのトラフィックを生成することに関する。
【背景技術】
【0003】
多くのタイプの通信ネットワークにおいて、送信される各メッセージは固定長または可変長の部分へと分割される。各々の部分は、情報のパケット、フレーム、セル、データグラム、データ単位、または他の情報単位として呼ばれる場合があり、それらの全ては、本明細書において、パケットとして参照される。
【0004】
各パケットは、通常、パケットのペイロードと呼ばれる元のメッセージの一部を含む。パケットのペイロードはデータを含んでよく、あるいは、音声情報またはビデオ情報を含んでもよい。パケットのペイロードはまた、ネットワーク管理および制御情報を含んでもよい。さらに、各パケットは、通常、パケットヘッダと呼ばれる識別およびルーティング情報を含む。パケットはネットワークを通じて複数のスイッチまたはノードを介して個々に送信される。パケットは、目的とするデバイスまたはエンドユーザにメッセージが配信される前に、パケットヘッダに含まれる情報を用いて最終的な送り先にてメッセージに再構築される。受信側において、その再構築されたメッセージは、ユーザの装置に適合するフォーマットでエンドユーザに送られる。
【0005】
メッセージをパケットとして送信する通信ネットワークは、パケット交換ネットワークと呼ばれる。パケット交換ネットワークは、通常、ハブまたはノードで交差する送信パスのメッシュを含む。ノードの少なくとも一部は、ノードに到着するパケットを受け取り、適切な発信パスに沿ってパケットを再送信するスイッチングデバイスまたはルータを備えてよい。パケット交換ネットワークは、業界標準のプロトコルのレイヤ別の構造によって制御される。その構造のレイヤ1、2、3、4、およびレイヤ7は各々、物理レイヤ、データリンクレイヤ、ネットワークレイヤ、トランスポートレイヤ、およびアプリケーションレイヤである。
【0006】
レイヤ1のプロトコルは、ネットワークのノード間での物理的な(電気的、光学的、または無線の)インターフェースを規定する。レイヤ1のプロトコルは、イーサネット(登録商標)の物理的コンフィグレーション、SONET(同期光学的ネットワーク)、および他の光学接続プロトコル、ならびに、Wi−Fi(登録商標)等の様々な無線プロトコルを含む。
【0007】
レイヤ2のプロトコルは、データがネットワークのノード間を論理的に転送される方法を制御する。レイヤ2のプロトコルは、イーサネット(登録商標)、ATM(非同期転送モード)、フレームリレー、およびポイント・ツー・ポイント・プロトコル、レイヤ2トンネリングプロトコル、光ファイバ分散データインターフェース、同期データリンク制御手順、ハイレベルデータリンク制御手段、サービス総合ディジタル網、トークンリング、様々な無線プロトコル、様々なイーサネット(登録商標)および光ファイバチャネルプロトコル、ならびに他のプロトコルを含む。
【0008】
レイヤ3のプロトコルは、ネットワークの複数のノードを接続するパスに沿ってソースから送り先へパケットがルーティングされる方法を制御する。主要なレイヤ3のプロトコルは周知のインターネットプロトコルバージョン4(IPv4)およびバージョン6(IPv6)である。パケット交換ネットワークは、レイヤ2のプロトコルの混合体を用いてIPパケットをルーティングする必要がある場合もある。ネットワークのノードの少なくとも一部は、各パケット内に含まれるネットワークレイヤヘッダから、送り先アドレスを抽出するルータを備えてもよい。ルータは次いで、パケットが再送信されるべきルートまたはパスを決定するために送り先アドレスを用いる。通常のパケットは複数のルータを通過してよく、それらのルータの各々は送り先アドレスを抽出する行為およびそのパケットが再送信されるべきルートまたはパスを決定する行為を繰り返す。
【0009】
レイヤ4のプロトコルは、ネットワーク中でエンド・ツー・エンドのメッセージ配信を制御する。特に、通信制御プロトコル(TCP)は、必要に応じて、順次的な承認および再伝送のシステムを用いてパケットストリームの信頼性のある伝送を提供する。TCPは、2つのデバイスがネットワークを介した仮想接続を開くためにメッセージを交換するコネクション型のプロトコルである。接続がいったん開くと、接続されたデバイス間で双方向通信が生じ得る。接続はそれらのデバイスの一方によって一方的に切断されるまで存在し得る。接続を開くことおよび切断の両方は、特定のメッセージが2つのデバイス間で交換されるいくつかのステップを必要とする。予定されていた応答が所定の時間期間に一方のデバイスによって受信されない場合には、接続は切断されてよく、これは通常、「タイムアウト」と呼ばれる。TCP接続は、各々のデバイスが、接続の状態(開いているのか、確立されているのか、切断されているのか)、どのようなデータが送られているのか、そしてどのような送られたデータが承認されているのかを記載した情報を維持する必要があるゆえ、「ステートフル」とみなされる。ユーザデータグラムプロトコル(UDP)は、パケットストリームの搬送を提供する交互のレイヤ4のプロトコルである。UDP接続はステートレスであり、確実な搬送を提供しない。
【0010】
レイヤ7のプロトコルは、ウェブページ等のHTMLドキュメントを運ぶために用いられるハイパーテキスト・トランスファー・プロトコル(HTTP)、ならびに電子メールメッセージを運ぶために用いられるシンプルメールトランスファープロトコル(SMTP)およびポストオフィスプロトコル(POP3)を含む。他のレイヤ7プロトコルは、シンプルメッセージシステム(SMS)、ファイルトランスファプロトコル(FTP)、リアルタイムプロトコル(RTP)、リアルタイムトランスポートコントロールプロトコル(RTCP)、リアルタイムストリーミングプロトコル(RTSP)、メディアゲートウェイコントロールプロトコル(MEGACO)、セッションイニシエーションプロトコル(SIP)、ならびに、データ、音声、映像およびネットワークを介したネットワーク制御情報を転送するために用いられる他のプロトコルを含む。
【0011】
パケット交換ネットワーク、またはパケット交換通信ネットワーク内に含まれるデバイスを検査するために、多数のパケットを含む検査トラフィックが生成され、1つ以上のポートにおいてネットワークに送信され、かつ異なるポートにて受信されてもよい。これに関連して、用語「ポート」とは、ネットワークと、そのネットワークを検査するために用いられる装置との間の通信接続のことをいう。用語「ポートユニット」とは、ポートにおいて、ネットワークに接続するネットワーク検査装置内にあるモジュールのことをいう。受信された検査トラフィックは、ネットワークの性能を測定するために分析されてよい。ネットワークに接続された各ポートユニットは、検査トラフィックの送り元(source)および検査トラフィックのための宛先の両方であってもよい。各ポートユニットは、複数の論理送り元または宛先アドレスをエミュレートしてよい。各ポートユニットは、複数のネットワークユーザ、クライアント、ピア、サービス、または他のネットワークデバイスをエミュレートしてよい。
【発明の概要】
【課題を解決するための手段】
【0012】
(摘要)
検査システムは複数のユーザを含んでよく、各エミュレートされたユーザはユーザのアクティビティを実行してよい。各エミュレートされたユーザのアクティビティは1つ以上のコマンドを含んでよい。少なくとも一部のエミュレートされたユーザのアクティビティは、第1のプロトコルに関連付けられた第1のコマンドを含んでよく、第1のプロトコルは、第1のプロトコルとは異なる第2のプロトコルに関連付けられた第2のコマンドと同期されていてよい。検査システムは複数のユーザをエミュレートすることの結果をレポートしてよい。
【図面の簡単な説明】
【0013】
【図1】ネットワーク環境のブロック図である。
【図2】ネットワークを検査するためのプロセスのフローチャートである。
【図3】検査トラフィックを規定するプロセスのフローチャートである。
【図4】例示的なエミュレートされたユーザのアクティビティのグラフィック描写である。
【図5】別の例示的なエミュレートされたユーザのアクティビティのグラフィック描写である。
【図6】グラフィカルユーザインターフェースの図である。
【図7】エミュレートされたユーザコミュニティのグラフィック描写である。
【発明を実施するための形態】
【0014】
本記載全体を通じて、ブロック図に表される要素は、3桁の参照番号が割り当てられ、最上位桁は図面の番号であり、下位2つの桁は要素に特定されるものである。ブロック図に関連して記載されない要素は、同じ下位の桁を有する参照番号を有する前述された要素として同じ特徴および機能を有するものとみなされてよい。
【0015】
(装置の記載)
図1はネットワーク環境のブロック図を示す。ネットワーク環境は、検査(テスト)アドミニストレータ105、ネットワーク試験装置100、および1つ以上のネットワークデバイス192を備えるネットワーク190を備えてよい。
【0016】
ネットワーク検査装置100は、ネットワーク検査デバイス、パフォーマンスアナライザ、適合性確認システム、ネットワークアナライザ、またはネットワーク管理システムであってよい。ネットワーク検査装置100は、1つ以上のネットワークカード106、およびシャーシ102内に含まれるかまたは包囲されたバックプレーン104を備えてよい。シャーシ102は、ネットワーク検査装置を含むのに適した固定型または可搬型のシャーシ、キャビネット、または筐体であってよい。ネットワーク検査装置100は図1に示すように一体化されたユニットであってよい。あるいは、ネットワーク検査装置100は、トラフィックの生成および/または分析を提供するように協動する複数の別個のユニットを備えてよい。ネットワーク検査装置100およびネットワークカード106は、例えば様々なイーサネット(登録商標)およびファイバーチャネル標準等の1つ以上の周知の規格またはプロトコルをサポートしてよく、かつ専用のプロトコルもサポートしてよい。
【0017】
ネットワークカード106は、1つ以上のフィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、プログラム可能論理デバイス(PLD)、プログラム可能論理アレイ(PLA)、プロセッサおよび他の種類のデバイスを含んでもよい。さらに、ネットワークカード106はソフトウェアおよび/またはファームウェアを含んでもよい。用語、ネットワークカードは、ラインカード、テストカード、分析カード、ネットワークラインカード、ロードモジュール、インターフェースカード、ネットワークインターフェースカード、データインターフェースカード、パケットエンジンカード、サービスカード、スマートカード、スイッチカード、リレーアクセスカード等を含む。用語、ネットワークカードはまた、複数のプリント回路基板を含み得るモジュール、ユニット、およびアセンブリを含む。各ネットワークカード106は、単一の通信プロトコルをサポートしてよく、複数の関連のプロトコルをサポートしてよく、または、複数の関連のないプロトコルをサポートしてもよい。ネットワークカード106は、ネットワーク検査装置100内に恒久的に設置されていてもよく、または着脱自在であってもよい。
【0018】
各ネットワークカード106は1つ以上のポートユニット110を含み得る。各ポートユニットは、検査トラフィックを生成し、ならびに/または検査トラフィックを受信および分析するための回路およびソフトウェアを備えてよい。各ポートユニットは検査アドミニストレータ105に接続されてよい。各ポートユニット110は、1つ以上のポートを介してネットワーク190に接続し得る。各ポートユニット110は、通信媒体195を介してネットワーク190に接続されてよく、この通信媒体195は、ワイヤ、光ファイバ、無線リンク、または他の通信媒体であってよい。
【0019】
バックプレーン104は、ネットワークカード106のために、バスまたは通信媒体として機能してよい。バックプレーン104はまた、電極をネットワークカード106に提供し得る。
【0020】
検査アドミニストレータ105は、ネットワーク検査装置100内に含まれるか、またはネットワーク検査装置100に接続されるコンピューティングデバイスであってよい。検査アドミニストレータ105は、検査セッションを計画し、検査セッションを制御し、および/または、検査セッションの間およびその後に検査結果を閲覧するために用いられ得るオペレータインターフェース(図示せず)を備えてもよい。オペレータインターフェースは、例えば、ディスプレイおよびキーボード、マウスおよび/または他の入力デバイス(図示せず)を備えてよい。検査アドミニストレータ105は、検査結果の出力のためのプリンタまたは他のデータ出力デバイス(図示せず)を備えてもよく、または接続されてもよい。検査アドミニストレータ105は、今後のレビューおよび/または分析のために、検査データおよび検査結果を保存するための保存デバイス(図示せず)を備えてもよく、または接続されてもよい。
【0021】
ネットワーク190は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、ストレージエリアネットワーク(SAN)、有線、無線、またはこれらの組み合わせであってもよく、インターネットを含んでもよく、またはインターネットであってもよい。ネットワーク190上の通信は、情報のフレーム、セル、データグラム、パケットまたは他の単位を含む様々な形態をとってもよく、本明細書においては、それらの全てをパケットと称する。ネットワーク検査装置100およびネットワークデバイス192は、同時に相互に通信してもよく、ネットワーク検査装置100と所与のネットワークデバイス192との間には、複数の論理的通信経路があってもよい。ネットワークそのものは、移動するデータのための多数の物理的経路および論理的経路を提供する多数のノードから成ってもよい。
【0022】
1つ以上のネットワークデバイス192は、ネットワーク190を介しての通信を可能にする任意のデバイスであってよい。1つ以上のネットワークデバイス192は、ワークステーション、パーソナル・コンピュータ、サーバ、ポータブル・コンピュータ、携帯情報端末(PDA)、コンピューティング・タブレット、セル式電話/携帯電話、イーメール用装置等のコンピューティング・デバイス、プリンタ、スキャナ、ファクシミリ装置等の周辺機器、ネットワーク接続ストレージ(NAS)およびストレージ・エリア・ネットワーク(SAN)のデバイス等のディスクドライブを含むネットワーク対応のストレージデバイス、ルータ、リレー、ハブ、スイッチ、ブリッジ、サーバロードバランサ(SLB)、およびマルチプレクサ等のネットワーキング・デバイスであってよい。さらに、1つ以上のネットワークデバイス192は、ネットワークを通じて通信することができる家庭電化器具、アラームシステムおよび他の任意のデバイスまたはシステムを含んでもよい。ネットワーク190は、単一のネットワークデバイス192、あるいは、複数の通信経路によって相互接続される複数のネットワークデバイスからなっていてもよく、それらの全ては、本明細書において、検査下のネットワーク(NUT)として参照される。
【0023】
(処理の記載)
ここで図2を参照すると、NUTを検査するための処理200は、205で開始し、295で終了してよい。処理200は、図1に示す検査環境内で実行されてよい。処理200は、ネットワーク検査装置100に関連して、検査アドミニストレータ105を用いて実行されてよい。処理200は、ネットワーク190等のネットワーク、および/またはネットワークデバイス192等のネットワークデバイスを検査するために用いられてよい。
【0024】
処理200は、210にて検査プランを生成し、270で検査システムおよびNUTを開始し、275で検査プランに従って検査セッションを行い、280にて検査結果をレポートすることを含んでよい。記載し易くするためにこれらのアクションは図2に順に示される。しかしながら、これらのアクションは、少なくともある程度は、同時に実行されてもよい。例えば、中間検査結果は280においてレポートされてよく、同時に他方で検査セッションは275にて実行されている。さらに、処理200は、少なくともある程度は、周期的であってもよい。例えば、280にてレポートされた中間検査結果は、自動的か、または破線285で示されるように一部のユーザのアクションの結果のいずれかとして、検査プランを修正するために用いられてもよい。
【0025】
210において検査プランを生成することは、215にて、検査されるネットワークおよび/またはデバイス(検査下のネットワーク、すなわちNUT)、ならびに検査システムのアーキテクチャを規定(定義)することを含んでよい。215にて検査システムを規定することは、検査下のネットワークまたはデバイスに接続されるポートユニットの数およびタイプを含み、検査を行う検査装置を規定することを含んでよい。215にて検査システムを規定することはまた、各ポートユニットが検査中に何を示す(represent)か、または何をエミュレートするかの規定(definition)を含んでよい。例えば、特定のポートユニットは、IP(インターネットプロトコル)アドレスの特定のブロックを収容するローカルエリアネットワークをエミュレートするタスクが課されていてもよい。さらなる例として、ポートユニットは、特定のアクセスポイントを介したワイヤレスネットワークにアクセスする多数のユーザデバイスをエミュレートするタスクが課されていてもよい。
【0026】
NUTおよび検査システムが215において規定された後、検査セッションの間に生成される検査トラフィックが規定されてよい。検査トラフィックおよびその検査トラフィックを規定するために用いられる技術は、ネットワークのタイプまたは検査されるデバイスに依存してよい。例えば、NUTが、ネットワーク構造のレイヤ2またはレイヤ3にて動作するスイッチまたはルータである場合、検査トラフィックは、複数のソースIPアドレスからおそらく発信され、かつ複数の宛先IPアドレスに向かうことになっている多数のIPパケットを含んでもよい。この場合、IPパケットの実際のコンテンツは重要でなくてよい。しかしながら、NUTがネットワーク構造のより高いレイヤ(例えば、サーバ、サーバロードバランサ、パケット点検を実行するネットワークセキュリティデバイス、および他のネットワークデバイス)で動作する場合、検査トラフィックは、複数のシミュレーションされたアプリケーションレイヤのトランザクションであってもよく、あるいはそれを含んでもよい。この場合、検査トラフィックは、複数のエミュレートされたユーザ(EU)アクティビティによって、220において規定されてもよく、それらの各々により、一部のトラフィックがNUTを介して生成または送信される。
【0027】
EUのアクティビティは、ユーザのコンピューティングデバイスによって実行されることができる任意のアクティビティまたはトランザクションであってよく、ここで「ユーザのコンピューティングデバイス」とは、ネットワークからまたはネットワークを介したサービスを受信する任意のデバイスである。ユーザのコンピューティングデバイスは、パーソナルコンピュータ、ラップトップコンピュータ、セットトップボックス、ビデオゲームシステム、パーソナルビデオレコーダ、電話、スマートフォン、携帯情報端末、電子メール機器、および、ネットワークに接続された任意の他のコンピューティングデバイスを含んでよい。後の検査セッションの間、検査システムは、220にて規定されたアクティビティをEUが実行するのをエミュレートしてよく、こうして規定されたEUのアクティビティを、NUTを検査するために、トラフィックに自動的に変換してよい。
【0028】
ここで図3を参照すると、EUのアクティビティに関して検査トラフィックを規定するための処理320は、図2の処理200において、220おける使用に対して適切であってよい。検査システムおよびNUTが規定された後(図2における215において)、EUのアクティビティは規定されてもよい。EUのアクティビティを規定することは、332において、EUを識別することによって開始してよい。EUは、MAC(メディアアクセスコントロール)アドレス、IPアドレス、IMSI(国際移動電話加入者識別番号)、MSIN(移動電話加入者識別番号)を割り当てることによって、またはEUを認識する一部の他の方法において識別されてよい。EUの識別はまた、215からの検査システムの規定を考慮すると、検査システムのどの部分が、EUをエミュレートし、どのようにしてEUがNUTに接続されるかを示してもよい。
【0029】
332において識別されたEUのアクティビィティは1つ以上のコマンドを含んでよい。各コマンドはプロトコルに関連付けられてもよく、すなわち、各コマンドは、通信プロトコルの一部によって規定されてもよく、それを形成してもよい。各EUのアクティビティは、334にて規定された1つ以上のレイヤ4〜7のコマンド、ならびに/または、336にて規定された1つ以上のレイヤ2〜3のコマンドを含んでよい。これに関連して、「レイヤ2〜3」のコマンドは、レイヤ2またはレイヤ3のプロトコルに関連付けられたコマンドである。同様に、「レイヤ4〜7のコマンド」は、レイヤ4〜レイヤ7のプロトコルに関連付けられたコマンドである。EUのアクティビティは、複数のレイヤ2〜3および/またはレイヤ4〜7のプロトコルからのコマンドを含んでよい。
【0030】
334にて規定された1つ以上のレイヤ4〜7のコマンドは、例えば、HTTP、FTP、SMS、SMTP、POP3、SIP、ならびに、ネットワークを介した、データ、音声、ビデオ、およびネットワーク制御情報を転送するために用いられる他のアプリケーションレイヤプロトコル等のレイヤ7のプロトコルに従ってEUによって生成されるコマンドまたはリクエストであってもよい。1つ以上のレイヤ4〜7のコマンドは、例えば、検査システムに、インターネットの閲覧、電子メールの送信、テキストメッセージの送信、VOIP(ボイスオーバーIP)、またはセル式電話による通話、あるいは一部の他のアクティビティなどの一部のタスクをユーザが実行することをエミュレートさせる。1つ以上のレイヤ2〜3のコマンドは、レイヤ4〜7のコマンドの実行とは関係なく、NUTおよび/またはEUとNUTとの間の接続に影響を与えるコマンドであってもよい。例えば、NUTがワイヤレスネットワークの一部である場合、可能なレイヤ2〜3のコマンドは、例えば、ベアラ修正(bearer modification)をリクエストすること、セル間のハンドオフをエミュレートすること、トラッキングエリアのアップデートをエミュレートすること、および、ワイヤレスネットワーク内で実行される他のネットワーク管理のアクションを含む。NUTが有線ネットワークの一部である場合、可能なレイヤ2〜3のコマンドは、例えば、DHCP(ダイナミックホスト構成プロトコル)のリクエストおよびDHCPのリリースを含む。
【0031】
338において、少なくとも、第1のプロトコルに関連付けられた第1のコマンドおよび第1のプロトコルとは異なる第2のプロトコルに関連付けられた第2のコマンドが同期されてよい。第1および第2のコマンドは、334にて入力されるレイヤ4〜7のコマンドであってもよい。第1および第2のコマンドは、336において入力されるレイヤ2〜3のコマンドであってもよい。第1および第2のコマンドは、レイヤ4〜7のコマンドおよびレイヤ2〜3のコマンドを含んでもよい。これに関連して、用語「同期された」とは、所望される時間的関係が2つ以上のコマンド間で規定されることを意味する。所望される時間的関係の例としては、コマンドが特定の順序において実行されることを要求すること、または、所定のコマンドが同時に実行されることを要求すること、または、異なるプロトコルに関連付けられたコマンドが所定の順序においてインターリーブされることを要求することが挙げられる。ワイヤレスネットワークの例に続いて、セルのハンドオフをエミュレートするためのコマンドは、FTP取得コマンドと同期されてよく、こうしてエミュレートされたセルのハンドオフは、NUTからのファイルのダウンロードの間に生じる。3つ以上のコマンドが338にて同期されてよい。
【0032】
図4は、処理320を用いて規定されてよい例示的なEUのアクティビティ400のグラフィック図である。EUのアクティビティ400は405において開始されてよい。EUのアクティビティ400は、ループスタート415およびループエンド435によって規定されたループ内にて実行される、2つのレイヤ2〜3のコマンド410および445、3つのHTTPコマンド420、425、430を含んでよい。415〜435のループは、指定された回数、実行されてよい。必要に応じて、HTTPコマンドの420、425、430のうちの1つ以上のパラメータが、ループが繰り返される毎に、440にて変化してよい。ループが指定された回数、繰り返された後、EUのアクティビティ400は450にて終了してよい。
【0033】
処理320において規定された各EUのアクティビティは、他のEUのアクティビティとは無関係であってよい。EUのアクティビティ400内の、ベアラ修正のコマンド410およびテアダウンセッション(teardown session)450等のレイヤ2〜3のコマンドは、他のEUのアクティビティに任意の影響を有しなくてもよい。
【0034】
図5は、処理320を用いて規定され得るさらに複雑なEUのアクティビティ500のグラフィック図である。EUのアクティビティ500は505において開始されてよい。EUのアクティビティ500は、レイヤ2〜3のコマンド510、515、520、および525、FTPのコマンド530、535、540、545および550、ならびにHTTPコマンド555、560、および565を備えてよい。レイヤ2〜3のコマンドは、2つ以上のレイヤ2〜3のプロトコルからのコマンドを含んでよい。この例において、FTPコマンド530〜550は、eGTP(拡張GPRSトンネリングプロトコル)等のワイヤレスレイヤ2プロトコルを用いてエミュレートされてよく、かつHTTPコマンド555〜565は、イーサネット(登録商標)プロトコル等の有線レイヤ2プロトコルを用いてエミュレートされてよい。この場合、レイヤ2〜3のコマンド510、520、および525は、eGTPのベアラ修正、ハンドオーバー、およびテアダウンのコマンドであってもよく、レイヤ2〜3のコマンド515はDHCPリクエストのコマンドであってもよい。
【0035】
同期リンク570、575、580、585、および590はコマンド間で規定されてよく、その結果、FTPログインコマンド530はベアラ修正のコマンド510の後に実行され、DHCPリクエストのコマンド515は、ベアラ修正のコマンド510とHTTP取得のコマンド555との間で実行され、ハンドオーバーのコマンド520は、FTP取得のコマンド540の実行の間に実行され、FTP中止のコマンド550は、HTTPポストのコマンド565の後に実行され、テアダウンセッションのコマンド525はFTP中止のコマンド550の後に実行される。他のタイプの同期はコマンド間において決定されてもよい。同期は、レイヤ2〜3のコマンドとレイヤ4〜7のコマンドとの間、同じまたは異なるプロトコルのレイヤ2〜3のコマンドの間、および同じまたは異なるプロトコルのレイヤ4〜7の間で規定されてもよい。
【0036】
EUのアクティビティ、例えばEUのアクティビティ400および500は、検査アドミニストレータ105等の検査アドミニストレータコンピューティングデバイスに対して、ユーザインターフェースを介し、検査エンジニアによって規定されてよい。検査アドミニストレータコンピューティングデバイスは、ユーザのアクションを規定することを容易にするグラフィカルユーザインターフェース(GUI)を提供してよい。
【0037】
図6は、図5のEUのアクティビティ500に類似するEUのアクティビティが規定された後としてのGUI600の図である。GUI600は、EUのアクティビティを規定するためのGUIのほぼ無制限の数の可能な構成の例である。GUI600は、対応する複数のプロトコルのためのコマンドを示す複数のウィンドウ枠(pane)610、620、630を有してよい。この例において、ウィンドウ枠610は、HTTPコマンドを示し、ウィンドウ枠620はFTPコマンドを示し、ウィンドウ枠630は、eGTPを用いたワイヤレスネットワークのための制御プレーンコマンドを示す。GUI600は、規定されるEUのアクティビティのための識別子650、および複数の制御ボタン640を含んでよい。制御ボタン640は、(左から右に)、追加、削除、編集、またはEUのアクティビティ内のコマンドの置き換えの制御を含んでよい。制御ボタンはまた、コマンドをリンクまたは同期するための制御、規定されたコマンドが無撞着(self−consistent)でありかつ実行可能であるかどうかをチェックするための制御、特定のEUのアクティビティの規定が済みであることを示すための制御、および新たなEUのアクティビティを規定することを開始するための制御を含んでもよい。これらの制御は、ポップアップリスト、プルダウンメニュー、および追加のディスプレイスクリーンによって増加されてよく、各EUのアクティビティを規定することを容易にする。例えば、「追加」ボタンをクリックまたは指定すると、加えられてよい可能なコマンドのプルダウンリストを開いてよい。同様に、特定のコマンドをハイライトさせ、「編集」ボタンを指定すると、ハイライトされたコマンドに関連付けられたパラメータのポップアップの編集可能なリストを開いてよい。
【0038】
図3を参照すると、検査トラフィックを規定するための処理320は、事実上、周期的であってもよい。340にて、さらなるEUのアクティビティが検査セッションの間に必要とされるかどうかの決定がなされてよく、332〜338のアクションは、全てのEUのアクティビティが規定されるまで必要に応じて繰り返されてよい。
【0039】
複雑なNUTのための検査セッションは、文字通り、何十万、何百万のEUのアクティビティをする何百万というパケットを含む検査トラフィックを必要とし得る。各EUのアクティビティを個々に規定することは非現実的であり得、または所望されない場合もある。それゆえ、限られた数のEUのアクティビティが332〜338において規定されてよく、次いで、検査システムによってエミュレートされる多数のEUを含むEUの「コミュニティ」を形成するために複製(replicate)される。全てのEUのアクティビティが規定される決定が340でなされた場合、EUのコミュニティが342において規定されてもよい。
【0040】
ここで図7を参照すると、例示的なEUのコミュニティ700は、複数のEUから構成されてよく、それらの各々は、規定されたEUのアクティビティを行うか、または実行する。例示的なEUのコミュニティ700は、EUが3つの異なるEUのアクティビティ710、720、730を複製することを含む。本特許出願において、用語「複製(replicate)」は、「コピーする」ことを意味するが、必ずしも同一というわけではない。所定のEUのアクティビティのレプリカは一部の態様において異なっていてもよい。例えば、所定のEUのアクティビティの各レプリカは、異なるMACまたはIPアドレスが割り当てられてよく、あるいは、異なる移動電話ユーザ識別番号が割り当てられてもよい。例示的なEUのコミュニティ700は、EUのアクティビティ1のm個のレプリカを含み、EUのアクティビティ2のn個のレプリカを含み、EUのアクティビティ3のp個のレプリカを含み、ここでm、n、およびpは正数であり、場合によっては大きな整数である。EUのコミュニティは2つ以上の異なるEUのアクティビティを含み得る。EUのアクティビティの数は、EUのコミュニティ内のEUの数未満であってもよい。例えば、EUのコミュニティ内のEUの数はNであってもよく、予め規定されたユーザアクティビティの数はMであってよく、ここでNおよびMは正の整数であり、NはMより大きいかまたはそれに等しい。EUのコミュニティ内の各EUのアクティビティのレプリカの数は、各EUのアクティビティに対して同じであってもよく、または異なってもよい。
【0041】
EUのコミュニティ内のEUのアクティビティの少なくとも一部は、1つ以上のレイヤ4〜7のコマンド、ならびに、別のレイヤ2〜3のコマンドまたはレイヤ4〜7のコマンドのうちの1つと同期した1つ以上のレイヤ2〜3のコマンドを含んでよい。EUのアクティビティは、複数のレイヤ4〜7のコマンドおよび複数のレイヤ2〜3のコマンドを含んでよく、それらのうちの少なくとも一部は、レイヤ4〜7のコマンドに同期されている。EUのアクティビティは、複数のレイヤ4〜7のコマンドを含んでよく、それらのうちの一部は、他のレイヤ4〜7のコマンドに同期されてもよい。
【0042】
図2を参照すると、検査トラフィックが220において規定された後、検査システムおよびNUTは、270において開始されてもよい。270において検査システムを開始することは、ポートユニットが220にて規定されたEUのアクティビティをエミュレートすることができるように、検査システムのポートユニットに対してデータおよび命令を転送することを含んでよい。検査システムを開始することはまた、検査結果が、検査セッションの間にキャプチャされるべきものを示す命令をポートユニットに提供することを含んでよい。これらの命令は、所定のトラフィック統計を蓄積する命令、ならびに、NUTに入り、および/またはNUTを出るパケットをキャプチャするための命令および基準を含んでよい。検査システムおよびNUTを270で開始することは、NUTは、検査システムの構成に気付くように、検査システムおよびNUT交換情報を含んでよい。例えば、検査システムおよびNUTは、どのIPアドレスが、検査システムの各々のポートユニットにおいてエミュレートされるかをNUTに知らせるために、標準のルーティングプロトコルおよび/または発見プロトコルを利用してよい。
【0043】
検査トラフィックが、220にて、アプリケーションレイヤのEUのアクティビティに関連して規定された場合、各規定されたEUのアクティビティは、次の検査セッションの間に生成および送信され得る1つまたは複数のパケットという結果となってよい。例えば、HTTP取得のコマンドは、TCP接続(これはいくつかのTCP/IPのパケットの交換を含む)の開放、そしてその後、単一のTCP/IPパケットがHTTP取得のリクエストを運ぶという結果となってよい。HTTP取得のコマンドはまた、検査ポートユニットが1つ以上のTCP/IPパケットを生成してそれをNUTに送信するか、または、検査ポートユニットがHTTP取得リクエストに応答するサーバをエミュレートする結果となってもよい。FTPプットコマンドは、アップロードされているファイルのコンテンツを示す多数のTCP/IPパケットの生成および送信という結果となってもよい。検査トラフィックが、アプリケーションレイヤのEUのアクティビティに関して220において規定された場合、検査システムを270にて開始することはまた、少なくとも一部のEUのアクティビティを、検査セッションの間に生成および送信される複数のパケットのための命令に変換する(translate)ことを含んでよい。あるいは、EUのアクティビティは、検査装置のポートユニットに対して通信されてよく、かつ、検査セッションが進行するにつれ、リアルタイムで適切なパケットに変換されてよい。
【0044】
検査システムおよびNUTが270にて開始された後、検査セッションが275にて行われるか、または実行されてよい。検査セッションを行うことは、220において規定されたEUのアクティビティを実行することを含んでよく、すなわち、検査装置は、ユーザが規定されたEUのアクティビティを実行することをエミュレートしてもよい。EUのアクティビティを実行することは、検査トラフィックをNUTに生成および送信すること、NUTを介して送信される検査トラフィックおよび/またはNUT内で生成される応答を受信すること、ならびに、例えば、受信されたトラフィック統計およびキャプチャされたパケットなどの検査データを蓄積することを含んでもよい。所定のEUのアクティビティの規定されたレプリカは、同時に実行されてもよく、されなくてもよい。例えば、1つ以上のEUのアクティビティの同時のレプリカの数は、NUTのパフォーマンスについてのトラフィック負荷の増加の効果を調べるために、検査セッションの間、徐々に増加されてもよい。例えば、米国公開特許出願第US2011/0022700A1は、GUIが、検査セッションの間、トラフィック負荷を縮小拡大(スケーリング)するために、タイムラインを規定するために用いられ得る方法を記載している。
【0045】
275において実行された検査の暫定結果および最終結果は280においてレポートされてよい。280において検査結果をレポートすることは、トラフィック統計を処理(すなわち、ソーティング、フィルタリング、および/またはアグリゲート)すること、処理されたトラフィック統計を表示すること、生の、または処理されたトラフィック統計を保存および/またはプリントすること、ならびに、キャプチャされたパケットを保存、表示、および/またはプリントすることを含んでよい。各実行されたEUのアクティビティの結果が280において各々レポートされない場合もあるが、各EUのアクティビティは、ある程度、280においてレポートされた検査結果に貢献してよい。例えば、280においてレポートされた検査結果は、例えば、受信されたパケットの総数、異常のある受信されたパケットの数、パケットの平均のレイテンシータイム、同時の接続での最大数などの統計、ならびに他の統計を含んでもよく、それらの各々は、実行されるEUのアクティビティの一部または全てにわたってアグリゲートされてもよい。
【0046】
(終わりに)
本記載全体を通して、示された実施形態および例は、開示された、または特許請求の範囲において請求された装置および手順についての限定ではなく、典型例として想定されるべきものである。本明細書において提示された例の多くは、方法の作用またはシステムの要素の特定の組合せに関連するものであるけれども、それらの作用およびそれらの要素は、他の方法において、組み合わされてよく、同じ課題を達成するものとして理解されるべきである。フローチャートに関して、追加の工程および工程の削減もまた考慮されてよく、図示した工程は、本明細書において記載された方法を達成するために組み合わされてもよく、またはさらに改良されてもよい。1つの実施形態のみに関連して記載された作用、要素、および特徴は、他の実施形態における同様の役割から排除されることは意図されていない。
【0047】
本明細書において用いられるように、「複数」とは、2つ以上を意味する。本明細書において用いられるように、「一連の」物品とは、1つ以上のそのような物品を含み得る。本明細書において用いられるように、明細書の記載または特許請求の範囲の請求項においては、用語「含む、備える(comprising)」、「含む、備える(including)」「運ぶ、有する、持つ(carrying)」、「有する(having)」、「含む(containing)」、「含む、関する、関連する(involving)」等は、オープンエンド型、すなわち、含むがそれらに限定されないということを意味することは理解されるべきである。「〜からなる」および「〜から実質的になる」といった移行句の各々のみが、特許請求の範囲の請求項に関しては、クローズ型、または半クローズ型の移行句である。請求項の要素を変更するために、特許請求の範囲の請求項における「第1」、「第2」、「第3」等の序数の用語の使用は、それ自体では、任意の優先順位、優位性、またはある請求項の要素が他のものより先であったり、または、ある方法の作用が行われる時間的順序等を含意せず、請求項の要素を区別するために、特定の名前を有するある請求項の要素から、同じ名前を有する別の要素を区別するためのラベルとして(順序を示す用語の使用を別にして)単に用いられる。本明細書において用いられるように、「および/または」は、リストアップされた物品が二者択一であることを意味するが、そうした二者択一もまた、そうしてリストアップされた物品の任意の組合せを含むものである。

【特許請求の範囲】
【請求項1】
検査下のネットワークに接続された検査システムによって実行される方法であって、以下:
前記検査システムが複数のユーザをエミュレートする工程であり、各エミュレートされたユーザ(EU)はEUのアクティビティを実行する、工程であって、
各EUのアクティビティは1つ以上のコマンドを含み、
少なくとも一部のEUのアクティビティは第1のプロトコルに関連付けられた第1のコマンドを含み、第1のプロトコルは、前記第1のプロトコルとは異なる第2のプロトコルに関連付けられた第2のコマンドと同期されている、工程と、
前記検査システムが、前記複数のユーザをエミュレートする工程の結果をレポートする工程と
を含む、方法。
【請求項2】
前記検査システムはグラフィカルユーザインターフェースを提供する工程と、
前記検査システムは、前記グラフィカルユーザインターフェースを介してユーザから各EUのアクティビティの規定を受信する工程と
をさらに含む、請求項1に記載の方法。
【請求項3】
前記複数のユーザはN数のユーザからなり、各々が、M個のあらかじめ規定されたEUのアクティビティの1つを実行し、ここでN数およびM個は正の整数であり、N数はM個よりも大きいかそれに等しい、請求項1に記載の方法。
【請求項4】
前記第1のコマンドは第1のレイヤ2〜3のプロトコルに関連付けられ、前記第2のコマンドは、前記第1のレイヤ2〜3のプロトコルとは異なる第2のレイヤ2〜3のプロトコルに関連付けられている、請求項1に記載の方法。
【請求項5】
前記第1のコマンドはレイヤ2〜3のプロトコルに関連付けられており、前記第2のコマンドはレイヤ4〜7のプロトコルに関連付けられている、請求項1に記載の方法。
【請求項6】
前記第2のコマンドは、ハイパーテキスト・トランスファー・プロトコル、シンプルメールトランスファープロトコル、ポストオフィスプロトコル、シンプルメッセージシステムプロトコル、ファイルトランスファープロトコル、リアルタイムプロトコル、リアルタイムトランスポートコントロールプロトコル、リアルタイムストリーミングプロトコル、メディアゲートウェイコントロールプロトコル、およびセッションイニシエーションプロトコルのうちの1つに関連付けられる、請求項5に記載の方法。
【請求項7】
検査下のネットワークを検査するための方法であって、以下:1つ以上のエミュレートされたユーザ(EU)のアクティビティを規定する工程であって、
各EUのアクティビティは1つ以上のコマンドを含み、
少なくとも一部のEUのアクティビティは第1のプロトコルに関連付けられた第1のコマンドを含み、第1のプロトコルは、前記第1のプロトコルとは異なる第2のプロトコルに関連付けられた第2のコマンドと同期されている、工程と、
複数のEUを含むEUのコミュニティを規定する工程であって、前記複数のEUの各々が前記規定されたEUのアクティビティの1つを実行する、工程と、
前記検査下のネットワークに接続された検査システムは、前記EUのコミュニティをエミュレートする工程と、
前記検査システムは、前記EUのコミュニティをエミュレートする工程の結果をレポートする工程と
を含む、方法。
【請求項8】
前記検査システムはグラフィカルユーザインターフェースを提供する工程と、
前記検査システムは、前記グラフィカルユーザインターフェースを介してユーザから各EUのアクティビティの規定を受信する工程と
をさらに含む、請求項7に記載の方法。
【請求項9】
前記複数のEUはN数のEUからなり、各々が、M個のあらかじめ規定されたEUのアクティビティの1つを実行し、ここでN数およびM個は正の整数であり、N数はM個よりも大きいかそれに等しい、請求項7に記載の方法。
【請求項10】
前記第1のコマンドは第1のレイヤ2〜3のプロトコルに関連付けられ、前記第2のコマンドは、前記第1のレイヤ2〜3のプロトコルとは異なる第2のレイヤ2〜3のプロトコルに関連付けられている、請求項7に記載の方法。
【請求項11】
前記第1のコマンドはレイヤ2〜3のプロトコルに関連付けられており、前記第2のコマンドはレイヤ4〜7のプロトコルに関連付けられている、請求項7に記載の方法。
【請求項12】
前記第2のコマンドは、ハイパーテキスト・トランスファー・プロトコル、シンプルメールトランスファープロトコル、ポストオフィスプロトコル、シンプルメッセージシステムプロトコル、ファイルトランスファープロトコル、リアルタイムプロトコル、リアルタイムトランスポートコントロールプロトコル、リアルタイムストリーミングプロトコル、メディアゲートウェイコントロールプロトコル、およびセッションイニシエーションプロトコルのうちの1つに関連付けられる、請求項11に記載の方法。
【請求項13】
検査システムであって、
検査下のネットワークに接続された1つ以上のポートユニットと、
前記1つ以上のポートユニットに接続された検査アドミニストレータコンピューティングデバイスとを備え、
前記検査アドミニストレータコンピューティングデバイスおよび前記1つ以上のポートユニットが、
複数のユーザをエミュレートすることであり、各エミュレートされたユーザ(EU)はEUのアクティビティを実行する、ことであって、
各EUのアクティビティは1つ以上のコマンドを含み、
少なくとも一部のEUのアクティビティは第1のプロトコルに関連付けられた第1のコマンドを含み、第1のプロトコルは、前記第1のプロトコルとは異なる第2のプロトコルに関連付けられた第2のコマンドと同期されている、ことと、
前記複数のEUをエミュレートしたことの結果をレポートすることと
のためのハードウェアおよびソフトウェアを備える、検査システム。
【請求項14】
前記ハードウェアおよびソフトウェアはさらに、
グラフィカルユーザインターフェースを提供し、
前記グラフィカルユーザインターフェースを介してユーザから各EUのアクティビティの規定を受信する
ためにある、請求項13に記載の検査システム。
【請求項15】
前記複数のユーザはN数のユーザからなり、各々が、M個のあらかじめ規定されたEUのアクティビティの1つを実行し、ここでN数およびM個は正の整数であり、N数はM個よりも大きいかそれに等しい、請求項13に記載の検査システム。
【請求項16】
前記第1のコマンドは第1のレイヤ2〜3のプロトコルに関連付けられ、前記第2のコマンドは、前記第1のレイヤ2〜3のプロトコルとは異なる第2のレイヤ2〜3のプロトコルに関連付けられる、請求項13に記載の検査システム。
【請求項17】
前記第1のコマンドはレイヤ2〜3のプロトコルに関連付けられ、前記第2のコマンドはレイヤ4〜7のプロトコルに関連付けられる、請求項13に記載の検査システム。
【請求項18】
前記第2のコマンドは、ハイパーテキスト・トランスファー・プロトコル、シンプルメールトランスファープロトコル、ポストオフィスプロトコル、シンプルメッセージシステムプロトコル、ファイルトランスファープロトコル、リアルタイムプロトコル、リアルタイムトランスポートコントロールプロトコル、リアルタイムストリーミングプロトコル、メディアゲートウェイコントロールプロトコル、およびセッションイニシエーションプロトコルのうちの1つに関連付けられる、請求項17に記載の検査システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2013−17184(P2013−17184A)
【公開日】平成25年1月24日(2013.1.24)
【国際特許分類】
【出願番号】特願2012−151450(P2012−151450)
【出願日】平成24年7月5日(2012.7.5)
【出願人】(504090400)
【Fターム(参考)】