JP6821800B2 - 対話型ネットワーク分析プラットフォームのためのシステムおよび方法 - Google Patents

対話型ネットワーク分析プラットフォームのためのシステムおよび方法 Download PDF

Info

Publication number
JP6821800B2
JP6821800B2 JP2019521482A JP2019521482A JP6821800B2 JP 6821800 B2 JP6821800 B2 JP 6821800B2 JP 2019521482 A JP2019521482 A JP 2019521482A JP 2019521482 A JP2019521482 A JP 2019521482A JP 6821800 B2 JP6821800 B2 JP 6821800B2
Authority
JP
Japan
Prior art keywords
network
behavior
flow path
snapshot
traffic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019521482A
Other languages
English (en)
Other versions
JP2019536331A (ja
Inventor
エリックソン、ディビッド
ヘラー、ブランドン
ハンディゴル、ニヒル
カゼミアン、ペイマン
ラドハクリシュナン、シバサンカー
ガンジサファー、ヤッサー
パトリッジ、ブレーデン
ジェイコブス、ジャレド
シュローデル、マティアス
ミストレー、ベーラン
ビヤニ、ラチット
ボールミー、アンドレアス
ルーロ、ナタル
レガル、チアラ
クロッカー、ピート
ホワイト、ウィリアム・エス.
リュ、ユーフェン
ハンダル、ジャスディープ
リ、チ
Original Assignee
フォワード・ネットワークス・インコーポレテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by フォワード・ネットワークス・インコーポレテッド filed Critical フォワード・ネットワークス・インコーポレテッド
Publication of JP2019536331A publication Critical patent/JP2019536331A/ja
Application granted granted Critical
Publication of JP6821800B2 publication Critical patent/JP6821800B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0853Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/14Arrangements for monitoring or testing data switching networks using software, i.e. software packages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

関連出願の相互参照
[0001]本出願は、すべての目的のためにその全体が参照により本明細書に組み込まれる、David Ericksonらによる「SYSTEM AND METHOD FOR PRACTICAL AND UNDERSTANDABLE NETWORK ANALYSIS」と題する、2016年10月21日に出願された米国仮特許出願第62/411,365号の優先権を主張する。
[0002]ネットワークは、現代の情報技術システムのバックボーンとしてますます複雑になっている。大企業は、一般に、それのネットワークインフラストラクチャを形成するために、異なるベンダーからの数百または数千のデバイスおよびソフトウェア構成要素を採用し得る。複雑さおよびサイズの成長はまた、転送ループ、構成誤り、到達可能性問題、またはハードウェア障害など、より多くの障害点をもたらす。
[0003]ネットワーク障害を診断することは、いくつかの理由のために困難である。第1に、全体的なネットワーク挙動を定義する各ネットワークデバイスに関連する転送状態は、ネットワーク全体にわたって分散され、ベンダーおよびデバイスのタイプに依存する方法で構成されるデバイス間の創発的な対話の結果である。第2に、分散された転送状態は、監視が困難であり、しばしば、ネットワーク管理者がデバイスに手動でログインし、低レベルのテストを行うことを必要とする。第3に、複数の管理者またはユーザが、転送状態を同時に編集し、矛盾する構成を生じ、その後、予期しない転送状態を生じ得る。
[0004]ネットワークモデルは、ネットワークの挙動のソフトウェアコピーを与え、ネットワーク管理者は、現在の挙動をより良く理解し、問題を解決し、ネットワークがポリシーに従って挙動しているのかどうかを分析し、さらにはパフォーマンスおよびフォールトトレランスを改善する方法を試してみさえできる。しかしながら、ネットワークが大きくなるほど、多くのデバイスをもつ大規模ネットワークに関連するデータの複雑性および圧倒的な量のために、問題をモデル化し、分析し、診断するのがより困難になり得る。したがって、大規模ネットワークまたはネットワーク全体の問題を診断することを助けるために、ネットワーク分析のための直観的で対話型のプラットフォームを与える技法および方法が必要である。
[0005]本発明の様々な実施形態または例を、以下の発明を実施するための形態および添付の図面に開示する。
[0006]本発明の一実施形態による、ネットワーク分析システムのハイレベル図。 [0007]本発明の一実施形態による、VLANの差の例示的な視覚表示を示す図。 [0008]本発明の一実施形態による、レイヤ3到達可能性の例示的な視覚表示を示す図。 [0009]本発明の一実施形態による、ネットワークトラフィックを分析する例示的な方法を示す図。 [0010]本発明の一実施形態による、ネットワーク分析のための例示的なインターフェースを示す図。 [0011]本発明の一実施形態による、トラフィックパスを分析する例示的な方法を示す図。 [0012]本発明の一実施形態による、トラフィックパスを分析する方法の一例を示す図。 [0013]本発明の一実施形態による、ゲートウェイを通って横断するトラフィックを分析する例示的な方法を示す図。 [0014]本発明の一実施形態による、2つのスナップショットの間で同じであるトラフィックパスを分析する例示的な方法を示す図。 [0015]本発明の一実施形態による、2つのスナップショット間で異なるトラフィックパスを分析する例示的な方法を示す図。 [0016]本発明の一実施形態による、IP検索の例示的な視覚表示を示す図。 [0017]本発明の一実施形態による、VLAN検索の例示的な視覚表示を示す図。 [0018]本発明の一実施形態による、ネットワーク分析の例示的な方法を示す流れ図。 [0019]本発明の一実施形態による、ネットワーク分析システムの例示的なネットワークスナップショットマネージャを示す図。 [0020]本発明の一実施形態による、ネットワーク分析の例示的な方法を示す流れ図。 [0021]本発明の一実施形態による、ネットワーク分析システムの例示的な構成要素を示す図。
[0022]様々な実施形態または例は、システム、プロセス、装置、ユーザインターフェース、あるいはコンピュータ可読記憶媒体などのコンピュータ可読媒体またはプログラム命令が光、電子、またはワイヤレス通信リンクを介して送られるコンピュータネットワーク上の一連のプログラム命令を含む、多数の方法で実装され得る。概して、開示するプロセスの動作は、特許請求の範囲に別段の定めがある場合を除き任意の順序で実行され得る。
[0023]1つまたは複数の例の詳細な説明を、添付の図とともに以下に与える。詳細な説明を、そのような例に関して与えるが、いかなる特定の例にも限定されない。範囲は、特許請求の範囲によってのみ限定され、多数の代替物、変形例、均等物が包含される。完全な理解を与えるために、多数の具体的な詳細を以下の説明に記載する。これらの詳細を、例のために与え、説明する技法は、これらの具体的な詳細の一部または全部なしに特許請求の範囲に従って実施され得る。明確さのために、例に関係する技術分野において知られている技術的な要素について、説明を不必要に不明瞭にすることを回避するために詳細に説明していない。
[0024]ネットワーク内で、データは、1つのネットワークデバイスから別のものにパケットを介して送信され得る。ネットワークデバイスは、それらのヘッダビットに基づいてパケットを転送し、ネットワーク挙動は、複数の異なるタイプのモデルを使用してモデル化され得る。一実施形態では、データプレーンモデルは、ネットワークをモデル化するために実装され得る。データプレーンモデルでは、送信されているデータのネットワーク挙動はパケットによって表され、ネットワークを通したそれらの挙動は、トラフィック、フローパス、トラフィックフローなどと呼ばれることがある。いくつかの実施形態では、状態情報(たとえば、構成データ、転送状態、IPテーブル、ルール、ネットワークトポロジ情報など)は、ネットワーク中のデバイスから受信されるか、または別のエンティティまたはネットワークデータソースから取得され得る。状態情報は、ネットワーク分析システムによってパースされ、データプレーンモデルなどのネットワークモデルを生成するために使用され得る。概して、ネットワークモデルは、ネットワークがデータのパケットをどのように処理するのかを記述する。モデルを使用して、ネットワーク分析システムは、ネットワークを通してデータのパケットによって取られる可能なフローパスを識別することが可能であり得る。ネットワーク分析システムは、次いで、ネットワークを分析し、トラフィックのタイプ、ルールマッチングの頻度、どのような変換がネットワークを通したトラフィックフローとして行われるのか、トラフィックがどこでドロップされたのかなどのネットワーク挙動を識別するためにネットワークモデルを適用することから収集される情報を使用し得る。
[0025]上記のように、既存のネットワーク分析技術は、ピング(ping)および追跡ルートなどの動作を使用するが、これらの動作は、すべての障害を診断するのには不十分である。これらの動作が、ネットワーク機能へのそれらの可視性の点で限定され、不完全であるだけでなく、既存のネットワーク分析ツールは、しばしば、問題が発生したときにしか問題を診断しないことがある。したがって、既存のネットワーク分析技術は、先制して問題を検出し、現在現れている問題の解決を開発することができない。さらに、既存のネットワーク分析ツール中でのネットワークデータの提示は、しばしば、非効率的である。さらに、トラブルシューティングのための一貫したビューを手動で組み立てることは、より大規模なネットワークでは、ネットワークデータの量が莫大になり、特に、どのデータがトラブルシューティングに関係するのかを決定する際に操作するのが困難になり得るので困難である。したがって、本発明の実施形態は、自動化された、システマティックな方法でネットワークを分析し、モデル化し、視覚化し、管理し、検証するために改善された方法およびツールを提供する。
[0026]様々な実施形態による1つのシステムは、ベンダーおよびプロトコルとは無関係の方法でネットワークをモデル化することによってネットワーク問題のトラブルシューティングを自動化するための改善された技法を含む。ネットワーク分析システムは、次いで、検索を可能にし、ポリシーの不変をテストするために対話型プラットフォームを提示するためにモデルを利用し得る。ネットワーク管理者は、次いで、関係するネットワークデータを提示する対話型プラットフォームを使用して、問題がネットワーク上で発生し、ネットワークを使用する顧客に影響する前に問題を先制して発見し得る。対話型プラットフォームはまた、問題の改善された、より高速の診断を可能にし、ネットワークが予想されたように挙動しているというより高いレベルの信頼性を与えることができる。
[0027]トラブルシューティングを自動化する別の手法は、フローカウンタを収集することである。単一のビューにフローカウンタからのデータを組み合わせることによって、ネットワーク管理者は、ネットワーク全体にわたるトラフィックを追跡し、ネットワークに影響を及ぼす現在の問題を識別することが可能であり得る。しかしながら、そのようなシステムは、データがどのように収集されるのか、ならびにデータがどのようにユーザに利用可能でアクション可能にされるのかの両方の点で現実のネットワークのコンテキストでそれらの有効な使用に重要な部分が欠如していることがある。たとえば、既存のネットワーク分析ツールを使用してリモートでネットワークを解決することは、様々なネットワークデバイスから状態データおよび構成データの収集を行わせ得る。そのようなデータの収集は、協調なしに行われた場合、複数のユーザおよび複数のツールの間の競合を可能にするか、またはデータが収集されているときに不要なアラームをトリガさせることになる。別の例として、ネットワーク分析システムによって生成された未加工情報の氾濫は、診断問題に関係しないことがある多くのデータを含め圧倒的であり得る。既存のネットワーク分析ツールは、どのフィールドが転送に関連するのか、またはどのIPアドレスが別のものと別様に扱われるのかが明白になるようにデータを提示しないことがある。経験豊かなユーザまたはネットワーク管理者でさえ、既存のネットワーク分析ツールを使用して、すべての可能なトラフィックパスに関連する圧倒的データによって依然として圧倒され得る。
[0028]本発明の実施形態は、現在のネットワーク分析ツールとともに存在する上記の技術的問題に対処する。本発明の実施形態は、直観的で、様々なネットワークデバイスおよび任意のサイズのネットワークに適合する関係するネットワークデータをそれがアグリゲートされ、ネットワーク管理者に提示され得るように収集するための改善された技法を提供する。
[0029]図1に、本発明の一実施形態による、ネットワーク分析システムのハイレベル図100を示す。図1に示すように、ネットワーク分析システム102は、複数のネットワークデバイス(たとえば、スイッチ、ルータ、ファイアウォール、ロードバランサ、ゲートウェイ、ブリッジ、および他のネットワークデバイス)を含むネットワーク104に接続することができる。各ネットワークデバイスは、異なるベンダーによって生成され得、異なるオペレーティングシステム、制御インターフェース、プロトコルなどを実装し得る。したがって、ネットワーク分析システム102は、ネットワーク分析システム102が各ネットワークデバイスと通信することができるベンダー固有のインターフェース、デバイス固有のインターフェース、および/またはプロトコル固有のインターフェースを含み得る複数のデバイスインターフェース106を含むことができる。
[0030]ネットワークデバイスは、1つまたは複数のインターフェースを含み得る。ネットワークデバイスは、ネットワークを形成するために他のデバイスのインターフェースに接続され得る。各ネットワークデバイスは、ルールテーブルを使用してネットワークデバイスのインターフェース上の到着したパケットをどのように修正、転送、および/またはドロップするのかを決定するために使用され得る構成データと状態データとを含み得る。各ネットワークデバイスのルールテーブルは、ルールのセットを含み得、各ルールは、マッチングと1つまたは複数の対応する行為とを有する。パケットがルールのマッチングを満たすとき、対応する行為、たとえば、パケットを修正、転送、および/またはドロップする行為がパケットに対して実行される。
[0031]ネットワーク104は、パケットが横断することができるリンクによって接続されるデバイスのシーケンスを定義し得るパスによって相互接続された複数のネットワークデバイスを含む。ネットワーク機能は、パケットがデバイスによってどのように修正、転送、および/またはドロップされるのかを決定するのに寄与するデバイス内の個々のステップまたは機能ユニットであり得る(たとえば、IPルーティング、ARPルックアップ、L2転送、MPLSラベルプッシング/ポッピング/スワッピング、アクセス制御許可/拒否、ネットワークアドレス変換)。ネットワーク挙動情報は、1つまたは複数のパケットにネットワーク中で同じパスを取らせ、同じ変換を受けさせるパスに沿ったネットワーク機能のシーケンスを含み得る。
[0032]いくつかの実施形態では、ネットワーク分析システム102は、1つまたは複数の状態コレクタ108と診断プラットフォーム110とを含むことができる。状態コレクタ108は、ネットワークデバイスごとに状態情報を取得するためにデバイスインターフェース106を使用してネットワークデバイスと通信することができる。状態情報は、ネットワークデバイスごとに変動し得、転送状態、構成ファイル、インターネットプロトコル(IP)テーブル、トポロジ情報、インターフェース状態、カウンタおよびルールのうちの1つまたは複数を含むことができる。状態情報は、データがモデル化されたネットワーク中でどのように処理されるのかを記述するネットワークモデル112を生成するためにパーサによってパースされ得る。計算エンジン114は、パケットがネットワークモデル112中で移動し得る可能なフローパスを識別するためにネットワークモデル112を使用することができる。いくつかの実施形態では、フローパスは、計算フローデータストア116などのデータストア中に記憶され得、ネットワーク分析システム102を用いてローカルに記憶されるかまたはリモートに記憶され得る。診断インターフェース110は、次いで、様々な実施形態による対話型プラットフォーム中での提示のための関係するデータを決定するために計算エンジン114、ネットワークモデル112、および状態コレクタ108と通信し得る。
[0033]いくつかの実施形態では、ネットワーク分析システム102は、確認エンジン118とクエリエンジン120とをさらに含むことができる。以下でさらに説明するように、確認エンジン118は、パス、ヘッダ、ホップカウント、サービス品質(QoS)、キュー、ポート、フローが横断する物理デバイス、デバイス内のテーブル、パケットの転送タイプ、パケットヘッダの修正、カプセル化されたパケットヘッダのプロパティ、または割り振られた帯域幅、または他のプロパティなどの様々なプロパティを識別するためにデータストア116中に記憶されたフローパスを分析することができる。これにより、ネットワークが(たとえば、ネットワーク管理者、開発者、または他のエンティティによって設定された)規定の規格に従って機能していることを検証するためにモデル化されたネットワークを分析することが可能になる。クエリエンジン120は、問い合わせられた基準(たとえば、指定されたポイント間でのフェールオーバフローパス(failover flow paths)、特定の順序で特定のネットワークデバイスを横断するフローパスなど)を満たす特定のフローパスを識別するために使用され得る。様々な実施形態によれば、診断インターフェース110は、次いで、様々な実施形態による対話型プラットフォーム中での提示のための関係するデータを決定するためにクエリエンジン120および確認エンジン118と通信し得る。
[0034]問題の診断および解決をできるだけ容易にするために、様々な実施形態によれば、ネットワーク分析システムからの情報は、ネットワーク管理者によく知られているという観点で、およびどの情報が最も関連があるのかを明らかにする形で提示され得る。システムが潜在的な根本原因をより効果的に提案、評価、および説明することができれば、問題は、より迅速に解決され、時間と金が節約され得る。様々な実施形態によれば、ネットワーク分析システムは、対話型の、有用な、および実際的な方式でネットワークを分析または視覚化し得る。たとえば、実施形態は、分析のためのネットワークから必要な入力データを効率的に収集するシステムおよび方法を提供する。様々な実施形態によるデータを収集し、ネットワーク分析システムに供給するプロセスは、簡単で、適切で、無摩擦であり得、したがって、ネットワーク分析システムは、ユーザがいつどこからでもネットワークのあらゆる部分のモデルを計算または更新するのに必要なデータを容易に収集することを可能にするのに十分フレキシブルである。
[0035]さらに、様々な実施形態によるシステムおよび方法は、理解可能で、対話型で、アクション可能な形でユーザに提示され得るように、関係する有用な情報を計算する。視覚化は、様々なプロトコルおよびトポロジのためのデータを提示するのに十分フレキシブルであり得る。さらに重要なことに、様々な実施形態によるネットワーク分析システムは、ユーザに、単に症状の例および生データを提示するのではなく、問題の潜在的な根本原因を診断するのを助けるために提案および理由を提供し得る。
[0036]本発明の実施形態は、ネットワークからデータを効率的に収集し、それらを様々な計算のためにデータを必要とするシステムに利用可能にすることができるシステムおよび方法を提供する。いくつかの実施形態では、計算は、ネットワークをモデル化すること、構成問題についてネットワークを分析すること、ネットワークプロパティを検証すること、またはネットワーク中で予想される挙動を確認することを含み得る。
[0037]本発明の実施形態は、結果として、理解しやすく、容易にナビゲート可能な、および、行動が容易なビューをユーザに与えるシステムおよび方法を提供する。本発明は、ユーザがそれらのネットワークに関する多種多様なことを理解し、それらのネットワークに関して質問することを可能にする特徴およびビューの豊富なセットを提供する。
[0038]いくつかの実施形態では、ネットワーク中のデバイスから受信した情報は、データパケットがネットワークによってどのように処理されるのかを記述するネットワークモデルを生成するためにパースされ、使用され得る。モデルは、ネットワークを通したトラフィックの可能なフローを提示し、トラフィックのタイプ、ネットワークを通してどういった変換が行われるのか、トラフィックがどこでドロップされたのかなどのネットワーク挙動を識別し、分析するために使用され得る。
[0039]いくつかの実施形態では、トラフィックフローパスは、追跡検索結果を改良するのを助けることができるフィルタのうちのいくつかを生成するために、パス、ネットワーク中の異なるデバイスにおけるヘッダフィールドの値、パス長などの様々な寸法に従って分類され得る。ネットワークマネージャまたは管理者またはネットワーク分析システムのユーザは、追跡を改良し、注目する関係するトラフィックに迅速に収束するために提案されたフィルタを使用し得る。たとえば、ネットワークマネージャまたは管理者は、ソースIPアドレス10.0.0.10からIPサブネット10.1.2.0/24までのトラフィック追跡を検索し得、ネットワーク分析システムは、トラフィックフローパスの結果によって横断されたデバイスのリスト[router1,router2,router3,router4]と、検索に関係するいくつかのトラフィックフローパスがrouter2においてドロップされたことをネットワークマネージャまたは管理者に提示する。ネットワークマネージャまたは管理者は、次いで、router2を選択し、ドロップされたトラフィックだけを表示することを選定する。ネットワーク分析システムは、次いで、これらの追加のフィルタにもマッチングするトラフィックフローパスの結果だけをネットワークマネージャまたは管理者に提示する。
[0040]実施形態は、ユーザが仮想パケット追跡を表示することができるインターフェースを提供することができる。これらは、ネットワークに実際のパケットを送ることなしにネットワーク分析システムによって計算される。追跡自体は、単一のパケットだけを記述するのではなく、異なるVLANまたはいくつかの異なるIPアドレスを横断するトラフィックを備え得る。いくつかの実施形態では、ネットワーク分析システムはまた、ネットワーク中で見られ得る個々の実際のパケットに対応する追跡をユーザに提示することができる。
[0041]いくつかの実施形態では、ネットワーク分析システムは、パスに沿って1つまたは複数のパケットが受けた転送挙動を提示するための改善された視覚方法を使用することができ、ここで、各ビューは、潜在的に複数の転送レイヤからの情報を表示する。詳細には、この視覚方法は、(1)機能レイヤによる挙動内訳(Behavior breakdown)、(2)単一のパスに沿った複数の挙動、(3)挙動を経験するパケットの探査、(4)要求応答トラフィック表示の4つの部分のうちの1つまたは複数を含み得る。
[0042]第1に、様々な実施形態によるインターフェースは、機能レイヤによる挙動内訳を提供し得る。図4に、本発明の一実施形態による、ネットワークトラフィックを分析する例示的な方法を示す。図4に示す例では、異なる機能レイヤにおけるネットワーク挙動400がユーザに示され得る。機能レイヤによる挙動内訳は、ネットワーク機能と呼ばれることもある、ネットワーク事業者によって一般に理解されるステップに関してパスに沿ったネットワークの挙動を記述し得る。これらのネットワーク機能は、限定はしないが、IPルーティング、ARP解決、媒体アクセス制御(MAC)、転送、スパニングツリーブロードキャスト、アクセス制御、負荷分散、ネットワークアドレス変換、ポリシーベースのルーティング、マルチプロトコルラベルスイッチング(MPLS)およびFabricPath、VXLAN、GREトンネルなどのような様々なカプセル化−非カプセル化機能を含み得る。各ネットワーク機能は、転送挙動(たとえば、実行コンフィギュレーション、転送状態出力、および計算プロトコル状態、同様の有効なBGPルート)を説明する、デバイスに関連するデータのソースにリンクし得る。
[0043]図4に示すように、パスに沿ったトラフィック挙動は、たとえば、インターネットから、ファイアウォール408に、次いで、コアルータ410、アグリゲーションルート412、およびトップオブラックスイッチ414などのデータセンター中の複数のデバイスにわたって来るトラフィックサンプル(たとえば、データのパケット)を含み得る。ネットワーク上のあらゆるネットワークデバイス(たとえば、ファイアウォール、ルータ、およびスイッチ)は、アクセス制御リスト(ACL)402を有し得る。アクセス制御リスト402は、デバイスに接続されたフィルタ処理挙動のリストを含み得、たとえば、ACLは、アクセスを制限または許可するために信用できるアプリケーションのためのポートのリスト、信用できないサーバに対応するIPアドレスのリスト、またはヘッダフィールドの他の使用を指定し得る。典型的なACL中の各エントリは、対象と動作とを指定し得る。たとえば、ファイアウォール408において、ACL402は、対象と、適用可能なルーティング情報と、状態情報とを含み得る構成データ416を与え得る。構成データ416では、たとえば、すべての着信インターフェース(すなわち、すべての着信パケットに適用する)などの対象または構成の範囲が定義され得る。さらに、構成データ416は、マッチングするトラフィックを許可または拒否するなどの行為を含み得る。構成データ416はまた、宛先アドレスまたは他のヘッダ値などのマッチングするパケットの基準を指定する。構成データ416は、実行コンフィギュレーション、転送状態データ、他の収集または推測された状態データなどのデバイスに関連するデータのソースにリンクし得る。
[0044]ネットワーク上のあらゆるネットワークデバイス(たとえば、ファイアウォール、ルータ、およびスイッチ)は、異なるネットワーク機能レイヤ、たとえば、L3レイヤ404(たとえば、ネットワークレイヤ)およびL2レイヤ406(たとえば、データリンクレイヤ)において動作する能力を有し得る。データリンクレイヤまたはレイヤ2は、コンピュータネットワーキングの7層のOSIモデルの第2のレイヤである。このレイヤは、ワイドエリアネットワーク(WAN)中の隣接するネットワークノード間で、または同じローカルエリアネットワーク(LAN)セグメント上のノード間でデータを転送するプロトコルレイヤである。データリンクレイヤは、ネットワークエンティティ間でデータを転送するために機能的および手続き的手段を与え、様々な実施形態によれば、ネットワーク分析システムは、L2レイヤ中で、物理レイヤ(たとえば、L1レイヤ)中で発生し得るエラーを検出し、場合によっては、それを補正し得る。ネットワークレイヤは、中間ルータを通してルーティングすることを含むパケット転送を担当する。ネットワークレイヤは、1つまたは複数のネットワークを介してソースから宛先ホストに可変長ネットワークパケットを転送する手段を与える。OSIネットワークアーキテクチャのサービス階層化セマンティクス内で、ネットワークレイヤは、トランスポートレイヤからのサービス要求に応答し、データリンクレイヤにサービス要求を発行する。
[0045]L3レイヤ404において、構成データ418は、ACL402における構成データ416とは異なる情報を有し得る。L3レイヤ404の構成データ418は、次のデバイスのアドレス、出力、または他の関係するルーティング情報などのルーティング情報を含み得る。構成情報418はまた、フローパスに沿ったトラフィックのための入力および出力インターフェースを含み得る。コアルータ410のL3レイヤ404における構成情報420は、ネクストホップまたは出力インターフェースなどのルーティング情報を含み得る。パケットは、次いで、構成データ420に基づいてコアルータ410からアグリゲーションルータ412に進み得る。アグリゲーションルータ412における構成データ424は、次いで、トップオブラックスイッチ414にルーティング情報を与え得る。トップオブラックスイッチ44は、L3レイヤ404において構成データ426を有し、L2レイヤにおいて構成データを有し得る。各ステージ(たとえば、ネットワークデバイス)におけるパケットの転送に影響を及ぼすネットワーク機能は、明確に分離され、各ステージにおいて、関係する構成および状態.に戻るリンクが公開される。
[0046]第2に、様々な実施形態によるインターフェースはまた、単一のパスに沿って複数の挙動を与え得、これにより、ネットワークマネージャまたは管理者は、選択されたパス上に存在し得る異なるタイプの転送挙動を探査することが可能になる。たとえば、3つのデバイスA→B→Cに沿ったパスは、3つの異なる転送挙動からなり得る。
[0047]パケットは、AおよびBにおいてL2転送され、次いで、CにおいてL3ルーティングされる。
[0048]パケットは、AにおいてL2転送され、次いで、BおよびCにおいてL3ルーティングされる。
[0049]パケットは、AにおいてL2転送され、BにおいてNAT変換され、次いで、CにおいてL3ルーティングされる。
[0050]第3に、様々な実施形態によるインターフェースにより、ネットワークマネージャまたは管理者はまた、挙動を経験するパケットを探査することが可能になり得る。対話の方式でエンドツーエンドの挙動によって影響を及ぼされる複数のパケットを探査し、理解する能力により、ネットワーク管理者またはマネージャは、ネットワークに関する問題を先制して診断することが可能になる。ネットワーク分析システムは、様々な実施形態によれば、パスに沿って同じエンドツーエンドの挙動を経験するパケットのクラスを提示し得る。いくつかの実施形態では、ユーザ(たとえば、ネットワーク管理者またはマネージャ)は、ネットワーク分析システムがユーザによって指定された制約を満たすパケットの更新されたセットで応答するいくつかのヘッダフィールドの値を指定することによってネットワークを対話式に探査することが可能であり得る。
[0051]例示のために、以下で概説するパケットのクラスは特定の挙動を経験していることがある。
・以下を除く、VLANタグ100をもつすべてのパケット
○サブネット100.100.0.0/16中のIP宛先アドレスをもつIPv4パケット、および
○サブネット200.200.0.0/16中のIPソースアドレスをもつIPv4パケット
[0052]様々な実施形態によれば、ユーザは、100.111.100.100としてIP宛先ヘッダフィールドの値を指定することが可能であり得る。したがって、ネットワーク分析システムは、次のように可能なパケットのセットを限定することによって応答し得る。
・VLANタグ100とIP宛先100.111.100.100とをもつすべてのパケット
○サブネット200.200.0.0./16中のIPソースアドレスをもつIPv4パケットを除く
[0053]ユーザが、IPソース300.300.300.300として別のヘッダフィールド値を指定する場合、ネットワーク分析システムは、以下で応答し得る。
・VLANタグ100と、IP宛先100.111.100.100とIPソース300.300.300.300とをもつすべてのパケット
[0054]代替的に、ユーザが、IPソース200.200.200.200としてヘッダフィールド値を指定する場合、元のセットに属し、同じく、ユーザによって指定されたヘッダフィールド値の制約を満たすパケットがないので、ネットワーク分析システムは、「ヌル」で応答し得る。
[0055]第4に、様々な実施形態によるインターフェースにより、ネットワークマネージャまたは管理者はまた、要求と応答トラフィックとの両方を調査することが可能になり得る。したがって、インターフェースは、ユーザ(たとえば、ネットワークマネージャまたは管理者)が、他のトラフィックに応答して生成され得るトラフィックを迅速に検索し、検査することを可能にすることが可能であり得る。いくつかの実施形態では、ユーザインターフェースは、要求と応答トラフィックとの間で容易にトグルする方法を与える。他の実施形態では、要求と応答トラフィックとの両方は、目視検査、比較、および分析のために同時にユーザに示され得る。
[0056]いくつかの実施形態では、プラットフォームは、いくつかのトラフィックフローを「ステートフル」としてマークし得、これは、対応する要求トラフィックがネットワークに前に入っている場合にのみ、ネットワーク中に現れ得るトラフィックフローを示す。いくつかのネットワークでは、ステートフル応答トラフィックは、前の要求トラフィックを経験したのかどうかに応じてパスに沿ったデバイスによって別様に扱われ得る。たとえば、ステートフルファイアウォールデバイスは、一般に、一方向にトラフィックをドロップし得るが、トラフィックは、ネットワーク中で要求トラフィックを前に経験した場合は通って流れることが許可され得る。
[0057]図5に、本発明の一実施形態による、ネットワーク分析のための例示的なインターフェースを示す。図5中の例示的なインターフェース500は、様々な実施形態による、ネットワークトラフィックのファセット検索を示す。いくつかの実施形態では、ネットワークトラフィックフローパスの結果は、検索結果を改良するのを助けることができるフィルタのうちのいくつかを生成するために、パス、ネットワーク中の異なるデバイスにおけるヘッダフィールドの値、パス長などの様々な寸法に従って分類される。ネットワークマネージャまたは管理者またはネットワーク分析システムのユーザは、トラフィックフローパスを改良し、注目する関係するトラフィックに迅速に収束するために提案されたフィルタを使用することができる。たとえば、オプションは、トラフィックパスのトラフィックタイプ508またはエンドツーエンドの転送結果、転送タイプ510によってフィルタ処理し得る。さらに、ネットワークマネージャまたは管理者は、宛先Zロケーションに向かうソースAロケーションを指定するいくつかの基準、たとえば、504に示すように、ソースIPアドレス10.11.1.0/24からIPサブネット172.16.10.2/24までのトラフィックにマッチングするトラフィックフローパスを検索し得る。ディスプレイ504は、ウィンドウ、フレーム、ペイン、または任意の他の好適なインターフェースであり得る。ネットワーク分析システムはまた、フローパス522によって横断されるデバイス516のリスト(たとえば、router1、router2、router5、router4)をネットワークマネージャまたは管理者に提示し得、たとえば、検索に関係するいくつかのフローパスがrouter2においてドロップされたと決定し得る。ネットワークマネージャまたは管理者は、次いで、router2を選択し、ドロップされたトラフィックフローパスだけを表示することを選定し得る。ネットワーク分析システムは、次いで、これらの追加のフィルタにもマッチングするフローパスの結果だけをネットワークマネージャまたは管理者に提示する。
[0058]ウィンドウ502は、トポロジグラフとともに別のフレームまたはペイン520を表示し得る。インターフェース500は、ファセット検索実装形態の一例であるが、本発明の実施形態は、ファセット検索を容易にするために任意の一般的な視覚表示を含む。たとえば、フィルタは、ポップアップウィンドウ518、オーバーレイ、ペイン、フレーム、ウィンドウ、または任意の他の好適なインターフェース上に示され得る。ウィンドウ502はまた、ユーザがIP宛先512またはVLANタグ514などの様々なカテゴリを選択するかまたはそれによってフィルタ処理し得る第1のホップ530についての情報を含み得る。ウィンドウまたはフレーム506は、VLANタグ514のユーザの選択に基づいて与えられ得る追加のフィルタの例示的な表示である。さらに、ウィンドウ518は、他の情報およびフィルタ、たとえば、MACソース532とMPLSラベル534とのための選択可能なオプションを含む524におけるP1を与え得る。
[0059]図5に示すように、本発明の実施形態は、ネットワークトラフィックのための検索インターフェースを生成する手段を提供する。ネットワークトラフィック検索のためのファセットインターフェースは、最初の送信元宛先間トラフィッククエリから導出された検索フィールドを含み得る。ユーザが、パスの要素を選択すると、新しい検索ファセットが、インターフェース内に動的に生成され得る。値の長いリストをもつファセットの場合、空間効率のよいマルチ選択制御が使用され得る。ファセット検索では、名前、モデル、および価格などのデータ属性は、初期検索に基づいて発見され、次いで、クリック可能な選択肢としてユーザに提示され得る。ネットワークトラフィック検索に様々な実施形態による対話型で直観的なインターフェースを適用することにより、ユーザは、ヘッダフィールドまたはトラフィックタイプなどのどの検索語が利用可能かあるのかを知り、利用可能なデータフィールドをフィルタとして使用することによって無関係なクエリを効率的に低減することが可能になる。ヘッダフィールドは、ポートおよびレイヤ2から7フィールドを含むパケットの任意のレイヤにおいて見られる値を含み得る。トラフィックタイプは、構成による明示的なドロップ、マッチングルールなしによる暗黙的な「ブラックホール」、許容されないトラフィック(たとえば、入力デバイスが特定のパケットタイプを扱う知識を有しない場合)、ループ、および有効(トラフィックがネットワークを出る場合)を含むネットワークに入った後のパケットの異なる結果を含み得る。
[0060]別の実施形態によれば、ネットワーク分析システムは、共通のトラフィック挙動識別のためのインターフェースを提供し得る。インターフェースは、1つまたは複数の共通の要素を共有するフロートラフィックの例をグループ化する自動方法を含み得る。たとえば、ネットワークが予期しない方法でパケットを扱っているとき、ユーザ(たとえば、ネットワーク管理者またはマネージャ)は、すべてが同じ共通の挙動を共有する潜在的なトラフィックの潜在的に数千個の特定の例ではなく、手元の挙動の単一のインスタンスを見る。共通のトラフィック挙動を識別することは、多くの一意のトラフィックフローが、異なるロケーションから来たかまたは異なるヘッダ値を有するにもかかわらず、同じ予期しない挙動を経験し得るので、ユーザに関係していることがある。
[0061]例示のために、一例では、ループは、デフォルトルートがルータAの方向に指し戻すルートBに転送する静的なルーティングエントリをもつルータAによって生じ得る。同じ転送ループは、ネットワーク中の複数のロケーションからループに入るパケットによって経験され得る。別の例では、ブラックホール(たとえば、ネットワーク中でのデバイスによる暗黙的なパケットドロップ)は、リンクの一方の側での消失したデフォルトゲートウェイエントリまたは消失したVLANによって生じ得る。同じブラックホールは、ネットワーク中の複数のロケーションから入るパケットによって経験され得る。別の例では、多くの様々な種類のトラフィックが、過度に長いパス、必要とされる中間地点をスキップするパスなどの同じパスを取り得る。同じトラフィックパス特性は、ネットワーク中の複数のロケーションから入るパケットによって経験され得る。
[0062]図6は、本発明の一実施形態による、トラフィックパスを分析する例示的な方法を示す図である。図6の例示的なトラフィックフロー600では、トラフィックは、複数のロケーションから入るが、同じ転送ループを通って横断し得る。トラフィックは、ノードA602、ノードB604、ノードC606、およびノードD608の4つのノードにおいてネットワークに入ることができる。トラフィックは、パス610においてノードA602に入り、パス612においてノードB604に入り、パス614においてノードC606に入り、パス618においてノードD608に入り得る。各ノードが1つの入力ポートを有すると仮定すると、パスABCD、BCDA、CDAB、およびADCBをカバーする4つのループが可能である。ネットワーク中の各追加の入力ポートは、事実上同じループであることを生じる別の可能なパスを生じ得る。したがって、様々な実施形態によれば、共通のトラフィック挙動を識別するためのインターフェースを与えることによって、ユーザは、同じループABCDで終わるトラフィックパスの数にかかわらず、トラフィックフローが単一のループであるのかどうかを識別し、決定することが可能であり得る。
[0063]図7は、本発明の一実施形態による、トラフィックパスを分析する方法の別の例を示す図である。図7の例示的なトラフィックフロー700では、トラフィックは、複数のパスを通って横断し、同じデバイスにおいてブラックホールされ得る。この例では、トラフィックは、トラフィックを次いでドロップするノードに流れ得る。たとえば、トラフィックは、ノードV702上でパス718を通っておよびノードW704においてパス720を通って1つのポートにおいてネットワークに入ることができる。ノードV702およびノードW704から、パスVY、WXY、およびWZYをカバーする3つのパスが可能である。しかしながら、すべてのパスは、ノードV702からパス712を通って、ノードW704から発生しノードX706へのパス714を通って、およびノードW704から発生しノードZ710へのパス716を通ってノードY708において収束する。したがって、様々な実施形態によれば、共通のトラフィック挙動を識別するためのインターフェースを与えることによって、ユーザは、すべてノードY708においてドロップされ得るトラフィックの単一のクラスを識別し、決定することが可能であり得る。
[0064]本発明の実施形態がなければ、ユーザは、冗長であり得る無数のパスにわたって調査し、追跡する時間を浪費することになり、したがって、可能なトラフィック事例のセットのうちで最も重要なトラフィック事例を識別し、決定することができないことがある。しかしながら、様々な実施形態によれば、共通のトラフィック挙動を識別するための対話型プラットフォームを与えることによって、ユーザは、情報の一部分を表示しながら、予期しないネットワーク挙動を迅速に診断することができる。
[0065]別の実施形態では、ネットワーク分析システムは、敵対的なまたは興味のないトラフィックを検出し、フィルタ処理するための対話型プラットフォームを提供し得る。ネットワーク中でトラフィックを分析するときに、多数の潜在的なトラフィックパスが、ネットワーク管理者に公開するのに無関係とみなされ得る。たとえば、無関係なネットワークデータは、直ちに明示的にドロップされる誤構成されたホストまたはトラフィックを含み得る。そのようなトラフィックパスは、ホストが誤ってまたは意図的に誤構成されたときにのみ行われ得る。
[0066]これらの無関係な潜在的なトラフィックパスを提示することは、ネットワーク管理者にとってまぎらわしいか、または混乱を招き得る。さらに、無関係なトラフィックを計算し、提示することは、ネットワーク分析システムのための追加の処理およびストレージ作業を追加し得る。したがって、様々な実施形態によるネットワーク分析システムは、「敵対的な」トラフィック分析の結果であり、実際に経験する可能性が低いトラフィックフローを自動的に識別する方法を提供する。そのようなトラフィックフローは、デフォルトのビュー中でフィルタ処理されるか、または、詳細には、上級ユーザのために識別され得る。
[0067]例示のために、敵対的なトラフィックフローの一例としては、ネットワークトポロジに基づいて最も近いゲートウェイでないことがあるIPゲートウェイで構成されたホストから生成されたトラフィックがあり得る。一実施形態では、ネットワーク分析システムは、入力インターフェースに入力し、その入力インターフェースのための構成されたサブネットの外部のIPアドレスに宛てられたフローが最も近いゲートウェイを通ってルーティングされ得るのかどうかを識別する方法を提供する。
[0068]図8は、本発明の一実施形態による、ゲートウェイを通って横断するトラフィックを分析する例示的な方法を示す図である。たとえば、図8のトラフィックフロー800は、トラフィックのクラスが最も近くないゲートウェイを通ってどのように移動し得るのかを示す。トラフィックは、ノードA802に接続されたホストから生成され、最も近いIPゲートウェイがノードB804にあり、10.10.0.0/16のIPサブネットを扱うパス808を通って入り得る。しかしながら、ホストは、IPサブネット11.11.0.0/16に対応するノードC806のIPゲートウェイで誤って構成され得る。ホストは、12.12.12.12などの外部アドレスにIPパケットを送ろうと試みるとき、ノードC806におけるゲートウェイがパケットを扱うべきである信じ、したがって、22:22:22:22:22:22であるノードC86のためのMACアドレスにパケットのMACアドレスを設定する。レイヤ2(MAC)転送がレイヤ3(IP)転送の前に行われるので、パケットは、ノードC806にレイヤ2転送され、次いで、レイヤ3ルーティングされる。
[0069]別の例では、様々な実施形態によるネットワーク分析システムにより、ユーザは、L2転送されたパスが十分であるべきとき、入力インターフェースに入力し、同じサブネット中のIPアドレスに宛てられたフローがIPゲートウェイを通ってルーティングされ得るのかどうかを識別することが可能になり得る。
[0070]さらに、ホストから生成されたトラフィックは、偽の(すなわち、スプーフィングされた)ソースIPアドレスを含み得る。したがって、様々な実施形態によれば、ネットワーク分析システムは、偽のIPアドレスを用いてホストによって生成されたトラフィックを識別し得る。偽のソースIPアドレスを用いてホストによって生成されたトラフィックを識別することは、限定はしないが、ホストが常駐するインターフェースサブネットに対してトラフィックのソースIPアドレスをマッチングすることと、ホストのロケーションにルーティング可能であるすべてのサブネットに対してソースIPアドレスをマッチングすることとを含む複数の技法を伴い得る。
[0071]別の敵対的なトラフィックフローは、ネットワークに入るのが認められないトラフィックを含む。一実施形態では、ネットワーク分析システムは、トラフィックが遭遇するネットワーク中の第1のインターフェースによって認められ得ないトラフィック、たとえば、L3インターフェースによってドロップされた非IPトラフィックを識別し得る。さらに、トラフィックは、ネットワーク中でL2インターフェースのMACアドレスに宛てられ得る。したがって、様々な実施形態によれば、ネットワーク分析システムは、ネットワーク中でL2インターフェースのMACアドレスに宛てられたすべてのトラフィックを識別し得る。しかしながら、L2インターフェースはIPアドレスを有しないので、実際には、そのようなトラフィックは可能性が低く、したがって、無関係であり得る。したがって、エンドホストは、これらのインターフェースのMACアドレスについて問い合わせる実際的な方法を有することが困難であり得る。
[0072]別の実施形態では、ネットワーク分析システムは、ネットワーク全体の構成および状態検索のための対話型プラットフォームを提供し得る。プラットフォームは、IPアドレス、MACアドレス、VLAN、デバイス、デバイスインターフェース記述、およびネットワーク内で発見される任意の他の名前のフィールドなどのネットワーク要素にわたる検索をサポートし得る。検索結果は、(1)結果の対話型で直観的な探査と、(2)注目するカテゴリに基づいてクエリの迅速な改良とを可能にするユーザが理解可能なカテゴリに自動的にカテゴリ分類され、グループ化され得る。たとえば、ユーザがIPアドレスを入力するとき、応答は、限定はしないが、IPアドレスまでのルート、マッチングIPをもつインターフェースまたはホスト、マッチング管理IPアドレスをもつデバイス、IPアドレスに関係するロードバランサ構成、ネットワークデバイス上の構成および状態からのテキストマッチングなどを含むIPアドレスをマッチングする様々なタイプの結果を含み得る。
[0073]いくつかの実施形態では、ユーザインターフェースは、検索結果を自動的にカテゴリ分類し得、ユーザにこれらのカテゴリを公開し得る。いくつかの実施形態では、検索機能は、ユーザが任意のクエリを入力し得、必ずしも結果タイプまたはカテゴリが指定されるとは限らないことがあるネットワーキングのための統一された検索バーによって公開され得る。様々な実施形態によるネットワーク分析システムは、クエリのタイプを自動的に検出し得、プラットフォームは、ユーザに対応するタイプの結果を提示し得る。たとえば、ユーザがネットワークデバイス名を検索する場合、インターフェースは、デバイスに関係する結果を自動的に表示し得る。そのような情報の例としては、デバイスから収集された構成および状態、ネットワーク中でのデバイスの役割、それの製造業者、モデル、管理IPアドレス、OSバージョンなどがあり得る。別の例として、同じ検索バー中で、ユーザが、ホストに対応するIPアドレスを検索した場合、ユーザインターフェースは、ホスト名、マックアドレスなどのマッチングホストに関する情報をユーザに直接提示し得る。同じ検索バーはまた、ネットワーク中でのトラフィック挙動またはパスなどの他のネットワーキング関連のエンティティを検索するために使用され得る。
[0074]図11は、本発明の一実施形態による、ネットワーク中の構成データまたは状態データを分析し、検索する例示的な方法を示す図である。図11に、例示的なインターフェース1100を示すが、本発明の実施形態は、構成および状態をリアルタイムで検索するのを制限するために様々なフィルタを使用してユーザがネットワーク中の構成または状態データを分析し、検索することを可能にする任意の一般的な視覚表示を含む。ユニバーサル検索バー1102中でIPアドレスを検索することは、発見されたホスト1108、ARPエントリ1110、ネットワーク中のインターフェース1112、異なるデバイス中の対応するサブネットへのルーティングテーブルエントリ1114、デバイスから収集された構成および状態情報中でのテキストマッチング1116などの検索結果1104中に表示される異なるグループにカテゴリ分類された結果を示し得る。さらに、ネットワークトポロジ1106はまた、ネットワーク中のユーザ、任意の関係するデバイス1118またはトポロジリンク1122に表示され得る。結果ごとに、関係するマッチング基準も、特に、これが明らかでない場合に、強調され得る。たとえば、テキストマッチングの場合、テキストの関係する行が、ある程度の量のコンテキスト(少数の前の行および後続の行)とともに表示され、テキストのマッチング部分が強調される。いくつかのデバイスが結果のセット内にないとき、デバイス1120は、強調されないことがあるか、または明るい色で表示されるか、バックグラウンドで表示されるか、または関係するデバイス1118が強調され、ユーザにそれと分かるようにされるなど別の方式で表示され得る。
[0075]いくつかの実施形態では、構成または状態データは、異なるカテゴリが注目され得る他の関連するネットワーク要素へのリンクを有し得ることをもたらす。たとえば、ネットワークインターフェースの結果は、インターフェースを含んでいるデバイスへのリンク、リンクによってこのインターフェースに接続されたインターフェース、およびインターフェース上に構成されたVLAN、インターフェース上で発見されたホストなどのインターフェースの他のプロパティを有し得る。
[0076]図12は、本発明の一実施形態による、ネットワーク中の構成データまたは状態データを分析し、検索する例示的な方法を示す図である。図12に、例示的なインターフェース1200を示すが、本発明の実施形態は、ユーザがネットワーク中の構成または状態データを分析し、検索することを可能にする任意の一般的な視覚表示を含む。状態および構成の検索結果は、結びつけられ、容易にナビゲート可能である。関連するネットワーク要素は、それらの要素に関する詳細を表示するためにクリックまたは追従され得るリンクに変えられる。たとえば、インターフェース1200中で、ユーザは、検索バー1202中に検索クエリを入力し得る。1202においてvlan1161を検索することは、VLAN1218、それらのVLANが構成されたインターフェース1220、テキストマッチング1222などの異なるカテゴリ中に検索結果1204を示し得る。インターフェース結果を拡張すると、対応する「インターフェースカード」が、1220においてインターフェース名をクリックすることによって1206において表示され得る。インターフェースカード1206中の「ソースを参照」リンク1226を追従することは、1224に示すように、強調された構成および状態の対応する行とインターフェースするものに関係する構成および状態に関するさらなる詳細1208を示す。同様に、インターフェース、そのデバイス上の他のインターフェースの構成などを含んでいるデバイスに関する詳細を表示するためにリンクに追従することが可能であり得る。たとえば、さらなる詳細1208は、構成データ1210、インターフェース構成データ1212、スイッチポートデータ1214、および/またはインターフェース状態データ1216などを与えるために様々なタブを含み得る。拡張インターフェース1206および1208は、検索結果1204にリンクされ得る別個のウィンドウ、ペイン、フレーム、あるいは任意の他の好適なレイアウトまたはインターフェースとして提示され得る。
[0077]別の実施形態では、ネットワーク分析システムは、異なる時間におけるネットワークのステータス間の差分(たとえば、ネットワークの「差分」)を決定するための対話型プラットフォームを提供し得る。ネットワークの差分を実行するための対話型プラットフォームを提供することによって、ネットワーク分析システムのユーザは、2つの異なる時点にわたってネットワークの構成、状態および挙動の間の差を発見し、調査することが可能になり得る。ネットワークの差分により、ユーザは、ネットワークに行われた変更が所望の結果を実現したか、または少なくとも望ましくない結果を有しないことを検証することが可能になる。さらに、いくつかの実施形態では、プラットフォームにより、ユーザは、周期的な方式で(たとえば、1日に一度)の変更についてネットワークを検査するためにネットワークの差分を利用することが可能になる。ネットワークの差分が2つの時点の間のネットワークの変更を提示するので、様々な実施形態によるネットワーク分析システムによって与えられた対話型プラットフォームは、過去の知られている時点の後に発生したことしか知られていないものを含むネットワーキング問題をユーザが理解し、解決するのを助ける上で有利である。
[0078]ネットワークの差分は、様々な実施形態によれば、ネットワークアーキテクチャの1つまたは複数の情報レイヤにおける差分を分類し、決定し得る。各情報レイヤは、ネットワーク中の1つまたは複数のデバイスに存在し得る1つのタイプの情報を指定する。これらのレイヤは、限定はしないが、以下を含む。
・トポロジ:物理的なまたは仮想的なトポロジの差。例としては、追加されたデバイス、除去されたデバイス、修正されたデバイス、ネットワークリンク、トンネルなどがある。
・構成:ネットワーク中で様々なデバイスの実行中のおよび/または保存された構成の差。
・インターフェース:ネットワーク中の様々なデバイスの追加されたインターフェース、除去されたインターフェース、または修正されたインターフェース(物理または仮想)。
・レイヤ2接続性:限定はしないが、ブロードキャストドメインまでの追加、除去、または修正されたデバイスあるいはインターフェース、新たに追加されたVLANなどを含む様々なVLANのレイヤ2ブロードキャストドメインの変更。
・レイヤ3接続性:様々なサブネットに宛てられたパケットの接続性の変更。接続性情報は、以下のうちの1つまたは複数を含み得る。
○パケットが発生したソース仮想ルーティングおよび転送(VRF:virtual routing and forwarding)テーブルのセット
○パケットが到着する宛先インターフェース
○パケットがネットワーク中で取るパス
○パスに沿ったデバイス上のVRF
・アクセス制御:ネットワーク中の様々なデバイスにおけるアクセス制御ポリシーの変更と潜在的なデータトラフィックに対するそれらの効果
・ネットワークアドレス変換(NAT):パケットの様々なソースおよび宛先IPアドレスまたはレイヤ4ポートがロードバランサなどのネットワーク中の様々なデバイスにおいてどのように変更されるのかの変更
[0079]図2に、一実施形態による、VLANの差分の例示的な視覚表示を示すが、本発明の実施形態は、情報レイヤの差分を示すための任意の一般的な視覚表示型を含む。いくつかの実施形態では、ネットワーク分析システムによって与えられたプラットフォームは、ユーザが情報ペイン204中に視覚的に表された特定の情報レイヤの差分を参照することを可能にするインターフェース200を含み得る。インターフェース200は、情報ペイン204によって示された情報をフィルタ処理するフィルタペインまたはフレーム202を含み得る。ユーザは、差を決定する必要があるスナップショット、たとえば、214におけるスナップショット1と216におけるスナップショット2とを選択し得る。これらのスナップショットは、時間インスタンス、スナップショット名、タグ、注釈、スナップショット識別子、および他の基準を含むスナップショットを識別する様々な手段に基づいて選択され得る。スナップショット1についてのスナップショット情報は、220において表示され得、スナップショット2についてのスナップショット情報は、222において表示され得る。220におけるスナップショット1のビューと222におけるスナップショット2のビューとはスナップショットにわたるVLAN構成および状態の隣り合った差分を提示する。208において選択されたVLANごとに、VLANが構成された(たとえば、206において選択された)デバイスは、(たとえば、210において選択された)関係するスパニングツリーインターフェース情報、スパニングツリーの一部であるインターフェース、たとえば、それらがアップであるのかまたはダウンであるのか、それらのモード(たとえば、アクセス/トランク)がスナップショットにわたって修正されたのかどうかなどとともに表示され得る。各VLAN中に構成された(たとえば、212において選択された)L3インターフェースはまた、ゲートウェイIPアドレスまたはサブネットの差とともに提示され得る。
[0080]ユーザは、情報レイヤの差分をフィルタ処理するための検索基準202を指定し得る。いくつかの実施形態では、これは、パケットヘッダ、トラフィックパス、またはその両方に対するフィルタを含む。パケットヘッダフィルタは、パスに沿って任意のポイントにおいて異なるパケットヘッダフィールドを指定し得る。トラフィックパスフィルタは、トラフィックが発生、通過、または終了するネットワークデバイスまたはインターフェースを含み得る。たとえば、フィルタは、ユーザがどのデバイスを含めるのかを選択することができる206において様々なデバイスを含み得る。フィルタ202はまた、VLAN208によるフィルタ、スパニングツリーインターフェース210またはL3インターフェース212を含み得る。
[0081]
[0082]図3に、本発明の一実施形態による、スナップショットにわたるレイヤ3到達可能性の隣り合いを提示する、レイヤ3到達可能性の例示的な視覚表示を示す。いくつかの実施形態では、ネットワーク分析システムによって与えられたプラットフォームは、ユーザがユーザ選択された基準を用いてL3スナップショット比較204を実行することを可能にするインターフェース300を含み得る。インターフェース300は、フィルタペインまたはフレーム302を含み得る。ユーザは、第1に、差を決定する必要がある時間インスタンスまたはスナップショット、たとえば、314におけるスナップショット1と316におけるスナップショット2とを選択し得る。次いで、ユーザは、フィルタ302中のトラフィックのための検索基準を指定し得る。たとえば、フィルタは、サブネット306と、ソース(たとえば、デバイス、ポートなど)308と、宛先(たとえば、デバイス、ポートなど)310と、潜在的な原因312とを含み得る。ユーザは、差を決定する必要がある時間インスタンスまたはスナップショット、たとえば、314におけるスナップショット1と316におけるスナップショット2とを選択し得る。スナップショット1についてのスナップショット情報は、320において表示され得、スナップショット2についてのスナップショット情報は、322において表示され得る。306において選択されたサブネットごとに、インターフェース300は、320中の宛先インターフェースの対応するセットの各々への完全な接続性を有する320における1つまたは複数のデバイス上のソースVRFのリストを提示し得る。到達可能性が変化した(たとえば、308において選択された)ソースVRFまたは(たとえば、310において選択された)宛先インターフェースはまた、スナップショットのビュー中で、たとえば、スナップショット1について314において、スナップショット2について316において強調され得る。
[0083]いくつかの実施形態では、ネットワークの差分は、差分が観測されたデバイス、任意のVLANまたは差分に関連するIPアドレスなどの様々な基準によってフィルタ処理され得る。さらに、様々な実施形態によるプラットフォームは、パケットヘッダまたはトラフィックパスなどのネットワークの差分によって影響を及ぼされ得るトラフィックの様々な特性を表示し得る。プラットフォームは、差分によって影響を及ぼされるトラフィックについて問い合わせ、トラフィックがどのようにネットワークによって扱われるのかの差分(たとえば、トラフィックの差分)を表示するための手段を与え得る。ユーザがトラフィックについて問い合わせることを可能にするために、プラットフォームは、テキストボックス、選択メニュー、または任意の他の好適なインターフェースを与え得る。
[0084]いくつかの実施形態では、ネットワークの差分が相互相関され得、様々な情報レイヤ固有の差分の間の因果関係が、計算され、ネットワーク分析システムによって与えられたプラットフォーム上にユーザに対して提示され得る。たとえば、ネットワーク分析システムは、L3接続性の差分がインターフェース障害によって生じ、次に、構成変更によって生じることを示し得る。別の例では、ネットワーク分析システムは、L3接続性の差分がBGPプロトコルへの変更によって生じることを示し得る。
[0085]別の実施形態では、ネットワーク分析システムは、ネットワーク中の様々なトラフィックパスまたはフロー間の差分(たとえば、「トラフィックの差分」)を決定するための対話型プラットフォームを与え得る。時間にわたるネットワーク構成および状態の発展は、パケットが時間とともに別様に扱われていることにつながり得る。したがって、時間にわたるパケットの扱いの差を迅速で容易に理解する能力は、ネットワーク管理者が問題を迅速に解決するのを助け得る。エラーが最初に現れた特定の時間または特定の変更を容易に突き止めることを可能にすることによって、ユーザ(たとえば、ネットワーク管理者またはマネージャ)は、問題をうまく診断し、対処することが可能になり得る。本出願の実施形態は、視覚方式でトラフィックの変更を表示するために対話型プラットフォームを提供し、したがって、ユーザは、トラフィックの差を分析、調査、およびナビゲートするのがより容易でより直観的になる。
[0086]様々な実施形態によるネットワーク分析システムによって与えられたプラットフォームにより、ユーザは、ネットワークが時間とともにパケットを扱う方法の差について問い合わせることが可能になり得る。ネットワークトラフィックパスまたはフローパスの結果がプラットフォーム上に視覚的に表示されるので、焦点は、圧倒的になり得るネットワーク全体の挙動ではなく、ネットワークトラフィックの具体的な例を明らかにするようにシフトされる。図9は、本発明の一実施形態による、2つのスナップショットの間で同じデバイスを横断するトラフィックパスを分析する例示的な方法を示す図である。図9の例示的なトラフィックフロー900では、ノードA902からノードB904を経てノードC906へのトラフィックパスは、スナップショットAとスナップショットBとの間で同じであり得る。しかしながら、トラフィックフローが、ノードD908へのネットワークパス910に従うので、トラフィックパスABCは、特定のスナップショットに応じて異なるヘッダを生じ得る。たとえば、スナップショットAでは、ノードC906からパス910を介してノードD908まで、パケットのヘッダ値は、「vlan10」を含み得る。スナップショットBでは、ノードC906からパス910を介してノードD908まで、パケットのヘッダ値は、「vlan12」を含み得る。プラットフォームは、インタラクティブインターフェース中で、同じ入力トラフィックに対応するこれらのパスの共通のおよび異なる部分を識別し、加えて差を視覚的に強調する。
[0087]図10は、本発明の一実施形態による、2つのスナップショット間で異なるデバイスを横断するトラフィックパスを分析する例示的な方法を示す図である。図10の例示的なトラフィックフロー1000では、ノードA1002からノードB1004を経てノードC1006へのトラフィックパスは、共通のパス1012ABCを有するが、次いで、ノードC1006の後に2つのスナップショット間で異なり得る。たとえば、スナップショットAでは、パケットは、ノードC1006からノードD1008に横断するが、スナップショットBでは、パケットは、ノードC1006からノードE1010に横断する。スナップショットAとスナップショットBとの間で、ノードC1006の後のトラフィックは、異なるパスを取ったが、各スナップショットからの各パスは、共通のパス1012を共有する。
[0088]様々な実施形態によれば、クエリは、ネットワーク中の2つの異なる時点TAとTBとの間のトラフィックの扱いの差を考え得る。一実施形態では、時間のこれらのインスタンスは、スナップショットの形態で選択され得る。別の実施形態では、時間のこれらのインスタンスは、ネットワークデバイスから最も近接した利用可能な状態に関連付けられ得る。様々な例では、ネットワーク中の時間TAおよびTBにおけるネットワーク状態収集選択は、スナップショットAおよびスナップショットBと呼ばれることがある。
[0089]いくつかの実施形態では、ネットワーク分析システムによって与えられたプラットフォームは、ユーザが特定の基準にマッチングするトラフィックを検索することを可能にする検索インターフェースを含み得る。ユーザは、第1に、差を決定する必要がある時間インスタンスまたはスナップショットを選択し得る。次いで、ユーザは、トラフィックのための様々な検索基準を指定し得る。たとえば、様々な検索基準を指定することは、パケットヘッダ上のフィルタ、トラフィックパス、またはその両方を使用して実装され得る。パケットヘッダフィルタは、パスに沿って任意のポイントにおいて異なるパケットヘッダフィールドを指定し得る。トラフィックパスフィルタは、トラフィックが発生、通過、または終了するネットワークデバイスまたはインターフェースを含み得る。
[0090]図13は、本発明の一実施形態による、ネットワーク分析の例示的な方法を示す流れ図である。トラフィックの差分を計算するために、ネットワーク分析システムは、図13に示す以下のステップを行い得る。1302において、ネットワーク分析システムは、ユーザによって選択された検索基準にマッチングする様々なスナップショット、たとえば、スナップショットAおよびスナップショットB中のフローを計算し得る。この例では、検索基準にマッチングするスナップショットAのフローは、HitsAと呼ばれることがあり、検索基準にマッチングするスナップショットBのフローは、HitsBと呼ばれることがある。
[0091]1304において、HitsA中のフローごとに、サンプルパケットが計算され得る。いくつかの実施形態では、サンプルパケットは、指定されてないかまたはワイルドカード化されたいくつかのフィールド(たとえば、L4ポート)を有し得る。サンプルパケットがIPオプションなどのワイルドカード化されたフィールドを有する場合、ネットワークは、そのワイルドカード化されたフィールドの値にかかわらず同様にパケットを扱う。
[0092]1306において、ネットワーク分析システムは、スナップショットAからの同じ入力ポート上でのステップ1304からのサンプルパケットがスナップショットB中でどのように扱われるのかを決定し得る。しかしながら、スナップショットB中で追跡されるパケットに対応するトラフィックフローは、検索基準にマッチングしない場合、HitsB中に存在し得ない。たとえば、検索基準は、パケットが特定のデバイスにおいて終了しなければならないことを指定し得るが、スナップショットB中では、スナップショットA中で選定されたサンプルパケットは、異なるデバイスにおいて終了するようにネットワークによって扱われ得る。ステップ1306を実行しながら、ネットワーク分析システムは、これらのサンプルパケットによってカバーされているHitsB中のフローを追跡し得る。すなわち、システムは、スナップショットAからのサンプルパケットがHitsB中にマッチングするフローをもつ対応するサンプルパケットを有すると決定し、示し得る。
[0093]1308において、ネットワーク分析システムは、HitsA中のフローのために生成されたサンプルパケットによってカバーされなかったHitsB中のフローの集合を計算し得る。本明細書によってカバーされていないフローと呼ばれるこれらのフローは、ユーザによって選択された検索基準にマッチングするスナップショットB中のフローであるが、スナップショットA中のいかなる対応する挙動ともまだ比較されていないことがある。
[0094]1310において、ステップ1308において決定されたカバーされていないフロー中のフローごとに、別のサンプルパケットが計算され得る。
[0095]1312において、ステップ1310からのサンプルパケットのトラフィックフローが決定され得る。詳細には、ネットワーク分析システムは、スナップショットBからの同じ入力ポート上のサンプルパケットがスナップショットA中でどのように扱われるのかを決定し得る。
[0096]1314において、スナップショットAとスナップショットBとの間でのサンプルパケットの挙動が比較され得る。挙動の両方が、比較、分析、および診断を容易にするために対話型プラットフォーム上でユーザに表示され得る。ネットワーク分析システムは、両方のスナップショット中で挙動が決定されているこれらのサンプルパケットを使用して差分を決定し得る。
[0097]様々な実施形態によれば、ネットワーク分析システムは、以下のシナリオのいずれかにおいてそのサンプルパケットの扱いに差があることを示し得る。第1のシナリオは、サンプルパケットが、スナップショットAと比較してスナップショットB中で異なるパスを取るときである。第2のシナリオは、サンプルパケットが、スナップショットAと比較してスナップショットB中で異なるヘッダ変換を受けるときである。たとえば、パケットのための出口VLANは、スナップショットA中での10からスナップショットB中では20に変更され得る。第3のシナリオは、サンプルパケットが同じホップを経験し、同じパケット変換を有するのに、1つまたは複数のホップにおいて異なる挙動を受けるときである。たとえば、パケットは、スナップショットA中では適用されなかったスナップショットB中でそれに適用されるいくつかのACLルールを有し得る。別の例として、パケットは、スナップショットA中ではデフォルトのIPルールによって転送されるが、スナップショットB中では明示的なIPルールによって転送され得る。
[0098]しかしながら、上記のシナリオが不在の場合、スナップショットAとスナップショットBとの間でのそのサンプルパケットの扱いに差はない。様々な実施形態によるプラットフォームは、そのパケットがどのように扱われるのかと挙動に差がないこととを示し得る。パケットが、1つまたは複数のスナップショット中で複数のパスを取り得る場合、スナップショットB中のパスのセットが、同じデバイスを通り、同じ挙動を有するパスをマッチングするためにスナップショットA中のパスと比較される。スナップショットA中のパスAとスナップショットB中のパスBとが、デバイスおよびインターフェースの全く同じシーケンスを通り、デバイスにおいて同じヘッダ変換を受ける場合、2つのパスは、互いにマッチングされ、同じものとして扱われ得る。場合によっては、パスは、しきい値を満たすかまたはそれを超えている共通性のスコアに基づいて互いにマッチングされる。
[0099]いくつかの実施形態では、共通性のスコアは、パスのペアについて計算された値である。パスが共通のデバイスホップを共有する場合、およびパケットがそのデバイスに入出するときにパスが共通のパケットヘッダ値を共有する場合、スコアはより高くなり得る。共通性スコアは、次いで、スナップショットAからスナップショットBに変更したパスをマッチングし、比較するために使用され得る。
[0100]様々な実施形態によれば、ネットワーク分析システムによって提供されたプラットフォームはまた、自動根本原因診断を提供し得る。根本原因は、ネットワーク分析システムの診断の一部としてロケーションと根本原因の識別の理由との両方を含み得る。ネットワーク分析システムは、観測された、意図しないトラフィック挙動の潜在的な根本原因を自動的に決定し、プラットフォームを通して、可能性の順に根本原因をランク付けするためにヒューリスティックを与え得る。たとえば、得られた潜在的な根本原因は、可能性が最も高いものから可能性が最も低いものまでユーザのためのプラットフォーム中に表示され得る。根本原因をランク付けすることは、即時の注意のために上部により高い可能性を有する根本原因を配置することによってユーザの時間を節約する。さらに、精度の確率によってランク付けすることはまた、分析の結果として決定された計画された解決を実施し始める上での非効率性および人的エラーを低減し得る。
[0101]いくつかの実施形態では、ネットワーク分析システムは、たとえば、トラフィックが取るパスおよびトラフィックにパスを取らせることを担当するパスに沿った各デバイスにおける特定の構成および状態を含む、ネットワーク中で特定の挙動を経験するパケットを計算し、記憶し得る。他の実施形態では、ネットワーク分析システムにより、対話型プラットフォームを通して、ユーザは、ネットワーク中で予想されるおよび禁止されたトラフィック挙動についての確認を定義することが可能になり得る。たとえば、確認は、IP宛先100.100.100.0/24をもつトラフィックがdeviceAからdeviceBに進むことが可能でなければならないことを指定し得る。これは、存在確認と呼ばれる。別の例では、確認は、SSHトラフィックがネットワークのインターネット向けポートに入り、内部サーバのいずれかに達することが不可能でなければならないことを指定し得る。これは、隔離確認と呼ばれる。
[0102]確認が失敗する場合、ネットワーク分析システムは、様々な実施形態によれば、確認の失敗を示す代表例として働くトラフィックパスを自動的に抽出し得る。たとえば、トラフィックがネットワーク中の2つのロケーション間を流れるのを禁止されることを予想する隔離ポリシーが失敗する場合、それらの2つのロケーション間を流れるトラフィックを示すトラフィックパスは、ポリシーの失敗の代表例として働き得る。同様に、トラフィックが2つのネットワークロケーションの間を流れることを予想する存在ポリシーが失敗する場合、意図された宛先に到着する前にドロップされるトラフィックを示すトラフィックパスまたは異なる宛先に到着するトラフィックを示すトラフィックパスは、ポリシーの失敗の代表例として働き得る。
[0103]しかしながら、代表例の場合でも、特に、そのトラフィックをどのように扱うことをネットワーク設計者が希望したのかの低レベルの意図が存在しないとき、ハイレベルの予想に反する観測された挙動の正確な根本原因が明らかでないことがある。たとえば、隔離ポリシーの失敗の根本原因は、ファイアウォールルールが寛容すぎたこと、またはACLがパスに沿ったデバイスのいずれかにおいて正しくセットアップされなかったことであり得る。同様に、存在ポリシーの失敗の根本原因は、トラフィックが異なるロケーションに宛てられたこと、トラフィックが制限的すぎだったACLルールによってドロップされたこと、またはあるVLANがインターフェースの上で構成されなかったのでトラフィックがそこでドロップされたことであり得る。
[0104]様々な実施形態によれば、ネットワーク分析システムは、自動根本原因診断を潜在根本原因識別と自動根本原因識別との2つの部分に分解し得る。潜在的な根本原因を識別する際に、ネットワーク分析システムは、可能性の高いものから(たとえば、可能性が最も高いものから可能性が最も低いものの)順に潜在的な候補の根本原因の順位リストに観測された挙動(たとえば、代表例のトラフィック挙動)をリンクし得る。一実施形態では、ネットワーク分析システムは、IPルーティング、ARP解決、MAC転送、アクセス制御、ネットワークアドレス変換などの一般的に理解されたネットワーク機能に関してパスに沿ったネットワークの挙動を決定し得る。確認の失敗のタイプに基づいて、ネットワーク分析システムは、次いで、潜在的な根本原因としてトラフィックパスに沿った各デバイスにおける適切な機能レイヤに対応するネットワーク機能を自動的に抽出する。
[0105]たとえば、隔離確認が失敗する場合、トラフィックがパスに沿ったデバイスのうちの1つにおいてアクセス制御機能によってドロップされた可能性があるので、パスに沿った各デバイスにおけるアクセス制御ネットワーク機能が、潜在的な根本原因として抽出され得る。別の例として、到達可能性確認が失敗する場合、ネットワーク分析システムは、最初に、対応する代表的なトラフィックパスがパスに沿ってドロップされるのかどうかを確認し得る。そうである場合、ネットワーク分析システムは、候補根本原因としてトラフィックをドロップすることを担当するネットワーク機能を選ぶ。候補根本原因は、過度に制限的なアクセス制御ネットワーク機能またはトラフィックが入るVLANタグを容認しない入力ネットワーク機能であり得る。別の例として、代表的なトラフィックパスが、トラフィックが異なるロケーションにリダイレクトされていることを示す場合、ネットワーク分析システムは、トラフィックパスが意図された宛先へのパスから逸脱したデバイスを識別し、潜在的な根本原因としてトラフィックをコースから外れてステアリングすることを担当するネットワーク機能を抽出し得る。
[0106]ネットワーク分析システムが複数の潜在的な根本原因を発見する場合、様々な実施形態によるネットワーク分析システムは、実際の根本原因であるそれらの可能性に基づいて複数の潜在的な根本原因をランク付けし得る。たとえば、隔離確認の失敗の潜在的な根本原因のように見えるパスに沿った様々なデバイスに多元接続制御ネットワーク機能がある場合、最大数のアクセス制御ルールをもつデバイス中のアクセス制御ネットワーク機能が、最大量のセキュリティ関連ポリシーを含んでいるので、最も高くランク付けされ得る。
[0107]別の例では、ネットワーク分析システムは、潜在的な根本原因をランク付けするために履歴データを使用し得る。ネットワーク分析システムは、ネットワークデバイスから(スナップショットと呼ばれる)状態および構成情報を周期的に収集し、毎回確認を実行する。確認の失敗時に、ネットワーク分析システムは、確認が合格した前回と比較して変更された対応する構成/状態があるときに潜在的な根本原因をより高くランク付けし得る。
[0108]自動根本原因決定では、ネットワーク分析システムは、様々な実施形態によれば、どの候補根本原因が確認の失敗の原因となった可能性が最も高いことがあるのかを決定する際に確認履歴および/または構成/特徴の差分を組み込み得る。一実施形態では、ネットワーク分析システムは、候補根本原因に対応する構成の変更を自動的に復帰し、確認を再実行し得る。他の実施形態では、ネットワーク分析システムは、復帰された変更をテストするためにモデルを再計算し得る。特定の変更を復帰することが、確認を再び合格させる場合、ネットワーク分析システムは、確認の失敗の最も可能性がある根本原因としてその変更を記録またはマークし得る。
[0109]様々な実施形態によれば、ネットワーク分析システムは、診断につながる確認の失敗を識別し得、ユーザに対して対話型プラットフォーム上で確認の失敗を表示し得る。対話型プラットフォームにより、ユーザは、ポリシー確認の失敗を表示するビューから確認がなぜ失敗したのかの診断を可能にするビューにナビゲートすることが可能になる。したがって、対話型プラットフォームは、確認の失敗に基づいて診断する際のユーザの時間を節約し、さらに重要なことに、確認がなぜ失敗したのかの説明を与え得るポリシー確認の失敗のコンテキストがユーザにとって利用可能である。ネットワーク分析システムが診断につながる確認の失敗を識別することなしに、ユーザは、特定のポリシー確認の失敗をデバッグするためにクエリをどのように定式化するのかを知ることができない。ユーザがそのようなクエリをどのように定式化するのかを知っている場合でも、この手動の技法は、エラーおよびまぎらわしい結果を受けやすい。
[0110]別の実施形態では、失敗したネットワークの確認が、2つのネットワーク要素の隔離またはある基準に一致するトラフィックの不在を必要とする場合、確認は、(フローの測定を使用する場合は)観測されたそのようなトラフィック、または(モデルを使用する場合は)ネットワークを潜在的に横断するそのようなトラフィックの存在により失敗し得る。この場合、ネットワーク分析システムは、確認に違反するトラフィック(すなわち、存在することも存在しないこともあるが、決して存在してはならないトラフィック)を表示のために与え得る。トラフィックは、ネットワーク分析システムによって与えられた対話型プラットフォーム上でユーザに表示され得る。一実施形態では、ネットワーク分析システムは、一致するパスに沿ってトラフィック挙動の理解可能な説明を与え得る。
[0111]さらに、失敗したネットワーク確認が、ある基準に一致するトラフィックの存在を必要とする場合、ネットワーク分析システムは、そのようなトラフィックのためのフィルタ基準を表示のために与える。トラフィックは、ネットワーク分析システムによって与えられた対話型プラットフォーム上でユーザに表示され得る。したがって、プラットフォームは、個々のフィルタを修正する能力を与える。フィルタをオンおよびオフにし、トラフィックに対するそれらの効果を直ちに見ることによって、ユーザは、ネットワークが確認の注目するトラフィックをどのように扱うのかを直観的に診断することができる。
[0112]例示のために、一例として以下の確認について考える。
トラフィックは、以下の基準にマッチングするネットワーク中に存在しなければならない。
・デバイスA発
○IP宛先10.10.10.10をもつ
○VLAN20をもつ
・デバイスB経由
・デバイスC宛て
[0113]この例では、上記の確認が失敗するとき、ユーザは、トラフィックが中間地点Bに達することが可能であるのかどうかを見るために「デバイスC宛て」フィルタをオフにし得る。ユーザは、代替的に、トラフィックが意図された宛先に到着するが、与えられた中間地点Bをバイパスするのかどうか見るために「デバイスB経由」フィルタをオフにし得る。いくつかの実施形態では、このシステムはユーザが、確認中に既存の検索基準を単に有効化または無効化するだけでなく、容易にフィルタ基準を編集し、新しいフィルタ基準を追加することを可能にするようにさらに拡張され得る。
[0114]別の実施形態では、失敗したネットワーク確認がトポロジリンクにわたるVLANの整合性などのあらかじめ定義された確認のためのものであり得る場合、ネットワーク分析システムは、ユーザにあらゆるVLANの不整合性を識別し、プラットフォーム上での表示のために与え得る。ネットワーク分析システムはまた、不整合性に関する詳細を与えるデバイス上の必要な構成および状態へのリンクを与える。
[0115]様々な実施形態によれば、ネットワーク分析システムはまた、ネットワーク分析のための確認を決定し得る。単純な構成の誤りは、しばしば、大きなネットワーク故障につながる。あらゆる「うまく構成された」ネットワークは、それが正しく機能するためにいくつかの構成および挙動プロパティを満たさなければならない。いくつかの実施形態では、ネットワーク分析システムは、多くのパスに適用されるより高いレベルのトラフィックルーティングプロパティまで、低レベルのリンク構成プロパティをカバーする、ネットワークに一般的に適用される「あらかじめ定義された確認」をサポートし得る。これらのプロパティは、多くのネットワークに適用され得、そこで実行されるアプリケーションの特定のセットに特定のものでないことがある。(たとえば、プロパティがネットワーク全体にわたって有効であることを示す)確認がパスしたのかどうか、または(たとえば、それが満たされない少なくとも一例を示す)確認が失敗したのかどうかを決定するための情報は、デバイス構成、デバイス状態、およびユーザ入力から来得る。あらかじめ定義された確認は、それが変化するにつれてネットワークに自動的に適用され得る。
[0116]ネットワーク中での様々な構成および挙動不変条件のあらかじめ定義された確認は、以下を含み得る。
・VLANの整合性:インターフェースAおよびBのあらゆるペアは、一貫した方法で定義されたVLANを有していなければならない。VLANが一貫して定義されていない場合、トラフィックは、場合によっては、ネットワーク内で暗黙的にドロップされ、他の場合にはVLAN境界にわたって横断し、セキュリティ問題につながり得る。一貫したVLANの定義のための基準は、(限定はしないが)以下を含み得る。
○AとBとの両方がアクセスインターフェースである場合、それらのアクセスVLANは等しくなければならない。
○AとBとの両方がトランクインターフェースである場合、トランクVLANセットと両方の上のネイティブVLANとが等しくなければならない。
○AまたはBがアクセスインターフェースである場合、他方は任意のVLANを搬送してはならない(すなわち、トランクインターフェースでなければならないかまたはサブインターフェースを有しなければならない)。
○AまたはBが(トランクインターフェースとして、またはサブインターフェースを介して)任意のVLANを搬送する場合、他方も同じVLANを搬送しなければならない。
・IPアドレスの一意性:デバイスインターフェースに割り当てられたIPアドレスは、ネットワーク中の各VRFにわたって一意でなければならない。
・MTUの整合性:各リンクの両端におけるインターフェースは、同じ最大伝送単位(MTU)を有していなければならない。
・デュプレックスの整合性:各リンクの両端におけるインターフェースは、同じデュプレックスタイプが構成されていなければならない。
・リンク速度の整合性:各リンクの両端におけるインターフェースは、同じリンク速度を有していなければならない。
・ポートチャネルの整合性:すべての構成されたポートチャネル(LAG)インターフェースは、ポートチャネルに正常に加入していなければならない。
・転送ループなし:ネットワーク中にトラフィック転送ループがあってはならない。パケットは、それがパスを横断するときにそれが二回以上デバイス上のインターフェースに入る場合、転送ループを通ると言われる。場合によっては、転送ループを通るパケットは、無限の回数デバイスのセットを通り得る。
・トラフィックブラックホールなし:トラフィックは、ネットワーク中で(いかなるルールにもマッチングしないことにより)暗黙的にドロップされてはならない。
・決定論的なBGP構成:BGPは、単一の状態に決定論的に収束するように構成されなければならない。
[0117]いくつかの実施形態では、あらかじめ定義された確認は、0個以上のパラメータを含み得る。パラメータ化され、あらかじめ定義された確認の例としては、限定はしないが、以下がある。
・最短パス:この確認により、ユーザは、デバイスの2つ以上のグループを定義することが可能になり、この確認は、異なるグループに属する任意の2つのデバイス間でトラフィックが取り得るあらゆる潜在的なパスが、ネットワークのトポロジによって決定された最短パスを行くことを検証する。
・VLANの存在:エッジトランクインターフェースがすべての指定されたVLANを搬送しなければならないことを検証する。指定されたVLANを入力パラメータとして受け取る。
・トランクインターフェースのホワイトリスト:ホワイトリスト化されたインターフェースのみがトランクモードにあり得る。
[0118]ネットワーク分析システムは、3つのステップで上記で説明したものなどのあらかじめ定義された確認を実装し得る。第1に、ネットワーク分析システムは、限定はしないが、以下を含むネットワーク要素に関する情報を収集する。
・ネットワーク中のデバイス(たとえば、スイッチ、ルータ、ファイアウォール、ロードバランサ)
・各ネットワークデバイス上に存在するインターフェース
・上記の各インターフェース上で構成されるVLAN、IPアドレス、MACアドレス、ポートチャネル、MTU、二重性
・LLDPまたはCDPを介し自動的に、またはユーザによって手動で追加されたネットワーク中の様々なデバイスを接続するリンク
・ネットワークの各デバイス上のBGP構成
[0119]その後、ネットワーク分析システムは、上記のベンダーに依存する情報をネットワークのベンダーに依存しないモデルに変換し得る。最後に、あらかじめ定義された確認ごとの論理がネットワークモデル上で実行され得る。
[0120]一実施形態では、あらかじめ定義された確認が失敗する場合、ネットワーク分析システムは、確認の失敗を生じた情報を与え得る。たとえば、MTUの整合性の確認が失敗する場合、ネットワーク分析システムは、(1)インターフェースMTUが異なるネットワークリンク、(2)そのリンクによって相互接続されたインターフェースのMTU値、および/または(3)MTU値を示すインターフェースのための収集された構成および状態の特定の線を示す。
[0121]様々な実施形態によれば、ネットワーク分析システムはまた、リソースの限られたデバイスからの状態の収集を実行し得る。ネットワークを通したトラフィックの包括的な分析は、ネットワーク中のデバイスの一部または全部から現在の構成および転送状態を収集することを必要とする。収集された状態の例としては、限定はしないが、インターフェース構成、VLAN構成、IP FIB(転送情報ベース:Forwarding Information Base)、BGP RIB(ルーティング情報ベース:Routing Information Base)、ACL構成などがあり得る。この情報は、端末セッション内でCLIコマンドを発行することによって、SNMPを介して、あるいはNetConf、OpenFlow、Arista eAPIなどの他の標準的なまたはプロプライエタリなプロトコルおよびAPIを介してなど、様々な機構を使用して収集され得る。これらの状態のうちのいくつか、たとえば、インターネット上のすべてのIPアドレスへのルートを含んでいるネットワークのインターネット向け境界ルータのIP FIBは、非常に大きいことがある。
[0122]収集すべき状態の量が大きいとき、および/またはターゲットデバイスが遅いとき、収集プロセスはフォールスアラームをトリガし得る。これらのアラームは、大量の状態をエクスポートすることがデバイスのCPU上に持続的な負担をかけるときに生じ、それを高い利用率レベルで絶えず動作させる。高いCPU使用率は、一般に、ルーティングプロセスの異常な状態を検出するようにセットアップされたCPU利用アラームをトリガさせる。そのようなアラームは、ネットワーク運用技術者の時間を浪費し、収集プロセスがネットワークデバイスにリスクを招いているという誤った感覚を与える。しかしながら、本出願の実施形態は、CPUのアラームをトリガすることなしに大量のデバイスの状態を収集するために安全な機構を提供する。
[0123]一実施形態では、IP FIB、BGP RIB、またはMPLS RIBなどの大きいIPベースの状態がチャンクで収集される。ネットワーク分析システムは、最初に、すべての可能なIPアドレスの空間を等しいまたは等しくないサイズの複数のチャンクまたはサブネットに分割し得る。たとえば、すべての可能なIPアドレスの空間は、0.0.0.0/2、64.0.0.0/2、128.0.0.0/2、および192.0.0.0/2のように4つの等サイズのチャンクに分割され得る。ネットワーク分析システムは、次いで、それらのサブネットに対応するルートを一つずつ収集する。収集を行いながら、ネットワーク分析システムは、事前構成された時間ウィンドウにわたる平均CPU利用率が、あらかじめ定義されたしきい値を超えないように連続収集間に十分なギャップを残し得る。
[0124]別の実施形態では、チャンクの数、チャンクのサイズ、CPU利用時間ウィンドウ、CPU利用率アラームしきい値のうちの1つまたは複数は、ネットワーク分析システムによって構成されるかまたは自動的に決定され得る。さらに、ネットワーク分析システムは、SNMP、CLIコマンドなどの1つまたは複数の方法を使用して状態を収集すべきデバイスのCPU利用率を周期的に監視し得る。CPU利用率値に基づいて、ネットワーク分析システムは、平均CPU利用率がアラームしきい値を超えないように次の収集をいつ行うのかと次の収集のチャンクのサイズとを決定し得る。
[0125]様々な実施形態によれば、ネットワーク分析システムはまた、リモートでトリガされたスナップショット収集を提供し得る。図14は、本発明の一実施形態による、ネットワーク分析システム1412から離れたネットワークスナップショットマネージャ1404を含む例示的なシステム1400を示す図である。ネットワーク分析システム1412は、1人または複数のユーザ1414および1416(たとえば、ネットワーク管理者またはマネージャ)によって動作され得、ネットワークデータ管理サービスへの遠隔接続を介して構成および状態を含むネットワークデータの収集をトリガし得る。したがって、ネットワーク分析システム1412は、任意の場所からの収集を可能にし、同時アクセスを防げることによってデバイスへの安全なアクセスを可能にし、他人がネットワークのトラブルシューティングをリモートで支援する能力を与える。この実施形態では、ネットワーク分析システム1412は、スナップショット収集システム1404とは別個のものであり得る。スナップショットは、デバイス1408および1410への要求から形成され得、一方で、他では、デバイス自体は、完全な状態スナップショットを介してかまたは部分的にかに関係なくスナップショットマネージャ1404または随意のスナップショットサブマネージャ1406にデータをプッシュし得る。データ収集は、時間的に正確に同期される必要がある。
[0126]様々な実施形態は、独立したまとまりがない収集しかサポートしないのとは反対に、ネットワークデバイスからのスナップショット収集を組織化し得、これにより、データ収集プロセスがリソース制約を尊重し、デバイスに競合する要求を送ることを回避することが可能になり得る。論理的に集中されたスナップショット収集マネージャ1404は、スナップショットを収集しなければならないデバイス1408および1410で構成され得る。これらのデバイスは、1つまたは複数のネットワークに属し得、異なる場所中に位置し得、仮想デバイスであり得る。デバイスは、ネットワークデバイス証明1402中で、個々の証明またはいくつかのデバイスのための共通の証明を介してアクセスのための証明で構成され得る。さらに、デバイス1408および1410は、異なるタイプ、たとえば、ルータ、スイッチ、ファイアウォールなどのものであり得、これらのデバイスからスナップショットを収集するために同じまたは異なる手段の通信が使用され得る。いくつかの実施形態によれば、デバイス1408および1410は、個々のデバイスなどに達するために接続タイムアウト、代替証明、トンネルなどのさらなる特殊な構成を必要とし得る。
[0127]論理的に集中されたスナップショット収集システムは、スナップショット収集をトリガする1つまたは複数の手段をサポートし得る。いくつかの実施形態では、これは、新しいスナップショット収集がトリガされなければならないことを示すリモートプロシージャ呼出し(RPC)および/またはウェブ要求をサポートするサービスを含み得る。いくつかの実施形態では、個々のデバイスに接続するために使用される特定の方法は、この情報を与える人間ユーザまたは代替システムによって事前構成され得る。他の実施形態では、接続方法は、収集が実行されなければならないたびにスナップショット収集システムに与えられ得る。他の例では、この情報は、スナップショット収集システムによって自動的に検出され得る。論理的に集中されたスナップショット収集マネージャは、デバイスから直接スナップショットを収集するか、または1つまたは複数のエージェントの助けを使用し、それら(たとえば、随意のスナップショットサブマネージャ1406)に収集タスクを委任し得る。これらのエージェントは、次に、すべてのデバイスからスナップショットを収集することを最終的な目的とし他のエージェントにこのタスクを委任し得る。
[0128]個々の収集エージェント(たとえば、随意のスナップショットサブマネージャ1406)は、スナップショットを収集しなければならないデバイスのサブセットへのアクセスしか有さず、それらのデバイスからスナップショットを収集することしか担当しないことになる。いくつかの実施形態では、これらの収集エージェントは、論理的に集中されたスナップショット収集マネージャへの永続的な接続を維持し得る。他の例では、アクティブタスクに関する情報を交換するためにエージェントと集中された収集マネージャとの間に周期的な通信があり得る。収集エージェントとスナップショット収集マネージャ1404との間の接続は、エージェント1406によってまたは収集マネージャによって開始され得る。
[0129]スナップショット収集マネージャ1404は、さらに、構成されたデバイスのサブセットからの収集をサポートするか、またはスナップショットを備えるデバイスから構成および状態情報のサブセットのみを収集し得る。たとえば、頻繁に変更される状態は、より高い頻度で収集され得、一方、より低い頻度で変化する状態は、異なる頻度で収集され得る。いくつかの実施形態では、スナップショット収集マネージャ1404は、事前構成されたデバイスからスナップショットを周期的に収集する能力をサポートし得る。これらは、完全なスナップショット、または異なる頻度で取られた異なるデバイスのスナップショット、または異なる頻度で取られたデバイスに対する異なるコマンドもしくは異なる種類の状態であり得る。たとえば、より低い頻度で変化する状態は、より低い頻度で収集され得、一方、他の状態は、より高い頻度で収集され得る。
[0130]いくつかの実施形態では、スナップショット収集マネージャは、任意の個々のデバイス上で多くの同時コマンドを実行することを回避するように異なるスナップショット収集要求を組織化し得る。同じ要求が短期間で複数回受信される場合、収集マネージャ1404はまた、デバイスから同じコマンド出力を収集することを回避し得る。たとえば、デバイスAについてのスナップショット収集要求が受信される場合、およびそれが実行されている間に、別の要求が同じデバイスについて受信される場合、スナップショット収集マネージャは、単にスナップショットを再び収集せず、それがそのデバイスのためにちょうど収集した出力を再使用し得る。
[0131]図15は、本発明の一実施形態による、ネットワーク分析のハイレベルの例示的な方法を示す流れ図である。本出願の実施形態は、ユーザに対話型で直観的なプラットフォームを介して改善されたネットワーク分析技術を提供する。図15中のハイレベルフロー1500は、1502において、ネットワーク分析システムがネットワーク上のネットワークデバイスに関係する構成データと状態データとを受信することを含み得る。上記で説明したように、構成データと状態データとは、ネットワーク分析システムによって与えられたプラットフォーム上のフィルタを使用してリモートで、自動的に、周期的に、および/またはユーザによって指定されて収集され得る。
[0132]1504において、ネットワーク分析システムは、ネットワークフローパス情報を取得し得る。ネットワークフローパス情報は、収集された構成データと状態データとに基づき得るか、または本明細書で説明する技法によってネットワーク分析ツールを通して取得され得る。たとえば、ネットワーク分析ツールのプラットフォームを通して、ユーザは、冗長パス、ループ、ブラックホール化されたパスなどを識別するなど、トラブルシューティングおよび診断のためにトラフィックパスを通してナビゲートすることが可能であり得る。
[0133]1506において、ネットワークフローパス情報は、図2〜図5の例示的なインターフェースに示すようにプラットフォーム上に公開され得る。たとえば、ネットワークフローパスを公開することによって、ユーザは、ネットワークフローパスを検索し、フィルタ処理することが可能であり得る。
[0134]1508において、ネットワーク分析システムは、図2〜図5に示すように機能レイヤに関してデバイスレベルの転送挙動を含むフローパス情報をプラットフォーム上での表示のために与え得る。いくつかの実施形態では、構成データと状態データとはまた、プラットフォーム上での表示のために与えられ得る。たとえば、プラットフォームは、ユーザが根本原因および問題をより効率的で直観的に診断することを可能にするためにユーザへの表示のための関係する構成データと状態データとを決定し得る。
[0135]表現は、汎用プロセッサまたはグラフィックスプロセッサなどの任意のコンピューティングハードウェア上にJava(登録商標)、C++、C#、または任意の好適なプログラミング言語で実装され得る。いくつかの実施形態では、本発明は、フィールドプログラマブルゲートアレイまたは特定用途向け集積回路を介してハードウェアで直接実装され得る。
[0136]図16は、本発明の一実施形態による、コンピュータシステムのハイレベルブロック図1600である。図16に示すように、コンピュータシステムは、コンピュータシステムがローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、モバイルネットワーク(たとえば、EDGE、3G、4G、または他のモバイルネットワーク)、または他のネットワークを介して他のコンピュータシステムに接続することを可能にする、ネットワークインターフェース1602を含むバスを介して接続されたハードウェア要素を含み得る。コンピュータシステムは、中央処理ユニット(CPU)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、ネットワークプロセッサ、または他のプロセッサなどの1つまたは複数のプロセッサ1604をさらに含み得る。プロセッサは、シングルまたはマルチコアプロセッサを含み得る。
[0137]いくつかの実施形態では、コンピュータシステムは、グラフィカルユーザインターフェース(GUI)1606を含み得る。GUI1606は、ユーザ視認可能データを出力するためにディスプレイ(LED、LCD、タブレット、タッチスクリーン、または他のディスプレイ)に接続し得る。いくつかの実施形態では、GUI1606は、(たとえば、タッチスクリーンまたは他のインタラクティブインターフェースを通して)命令を受信するように構成され得る。いくつかの実施形態では、入出力インターフェース1608は、マウス、キーボード、タッチセンシティブ入力デバイス、あるいは他の入力または出力デバイスなどの1つまたは複数の入力および/または出力デバイスに接続するために使用され得る。入出力インターフェース1608は、赤外線、Bluetooth(登録商標)、または他のワイヤレスデバイスに接続するためのワイヤードまたはワイヤレスインターフェースを含み得る。
[0138]いくつかの実施形態では、コンピュータシステムは、ローカルまたはリモートのデータストア1610を含み得る。データストア1610は、当技術分野において知られている様々なコンピュータ可読記憶媒体、ストレージシステム、およびストレージサービス(たとえば、ディスクドライブ、CD−ROM、デジタル多用途ディスク(DVD)あるいは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージデバイス、リレーショナルデータベース、オブジェクトストレージシステム、ローカルまたはクラウドベースのストレージサービス、あるいは任意の他の記憶媒体、システム、またはサービス)を含み得る。データストア1610は、本明細書で説明するように生成、記憶、またはそうでなく利用されるデータを含み得る。たとえば、データストア1610は、上記で説明したように生成および記憶される計算フロー1612とネットワークモデル1614とを含み得る。メモリ1616は、RAM、ROM、EEPROM(登録商標)、フラッシュメモリまたは他のメモリ技術を含む様々なメモリ技術を含み得る。メモリ1616は、本明細書で説明する方法を実装するために実行可能コードを含み得る。たとえば、メモリ1616は、本明細書で説明する方法をそれぞれ実装するネットワークアナライザモジュール1618と報告生成器モジュール1620とを含み得る。
[0139]上記の例について、理解の明快のためにある程度詳細に説明したが、上記で説明した本発明の技法は、与えられた詳細に限定されない。上記で説明した本発明の技法を実装する多くの代替方法がある。開示する例は、例示的なものであり、限定的なものではない。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
[C1]
ネットワーク分析のためのコンピュータ実装方法であって、
ネットワーク上の1つまたは複数のネットワークデバイスに関連する構成データと状態データとを取得することと、
前記ネットワークのトラフィックフローに関連するネットワークフローパス情報を取得することと、
前記ネットワークの1つまたは複数の対応する機能レイヤにおける前記ネットワークフローパス情報を公開することと、
前記1つまたは複数のネットワークデバイスに関連する前記構成データと前記状態データとに少なくとも部分的に基づく転送挙動を含む、前記1つまたは複数の対応する機能レイヤにおける前記ネットワークの前記ネットワークフローパス情報と前記トラフィックフローとを表示のために与えることと、ここにおいて、前記転送挙動が、1つまたは複数の対応する機能レイヤにおける前記1つまたは複数のネットワークデバイスにおけるパケットの挙動を定義する、
を備える、コンピュータ実装方法。
[C2]
1つまたは複数の共通パス要素を共有するネットワークフローパスを決定することと、
ネットワークフローパスのグループとして1つまたは複数の共通パス要素を共有する前記ネットワークフローパスを識別することと、
前記グループ内の各ネットワークフローパス間の差について前記グループ中の各ネットワークフローパスを個々に検査することと、
前記グループ中の各ネットワークフローパス間の前記差を表示のために与えることと
をさらに備える、C1に記載のコンピュータ実装方法。
[C3]
ネットワークフローパスごとに1つまたは複数のサンプルパケットを決定することと、ここにおいて、前記1つまたは複数のサンプルパケットが、各ネットワークフローパスに沿った転送挙動を有するパケットを表す、
前記1つまたは複数のサンプルパケットを表示のために与えることと
をさらに備える、C1に記載のコンピュータ実装方法。
[C4]
各ネットワークフローパスに適用可能な1つまたは複数の制約を選択のために与えることと、ここにおいて、前記1つまたは複数の制約が、前記1つまたは複数のネットワークフローパスの範囲を制限する、
前記1つまたは複数の制約のための選択を受信することと、
前記1つまたは複数の制約の前記選択によって決定された前記1つまたは複数のネットワークフローパスの前記範囲を表示のために与えることと
をさらに備える、C1に記載のコンピュータ実装方法。
[C5]
前記ネットワーク中で第1の要求フローパスまたは第1の応答フローパスを識別することと、
前記ネットワーク中で前記第1の要求フローパスに対応する第2の応答フローパスまたは前記第1の応答フローパスに対応する第2の要求フローパスを生成することと、ここにおいて、前記第1の要求フローパスにマッチングするトラフィックが、前記第2の応答フローパスにマッチングするトラフィックを生成し、前記第2の要求フローパスにマッチングするトラフィックが、前記第1の応答フローパスにマッチングするトラフィックを生成する、
前記第1の要求フローパス、前記第1の応答フローパス、前記第2の要求フローパスおよび前記第2の応答フローパスのうちの1つまたは複数に基づいて前記フローデータを決定することと、
前記フローパスデータを表示のために与えることと
をさらに備える、C1に記載のコンピュータ実装方法。
[C6]
前記要求フローパスと前記応答フローパスとのうちの少なくとも1つを分析することと、
前記要求フローパスがステートフル要求フローパスであると決定することと、ここにおいて、前記ステートフル要求フローパスが、前記1つまたは複数のネットワークデバイスに関連する前記応答フローパスによって定義された転送挙動を決定する状態を前記ネットワーク中に確立する、
前記応答フローパスがステートフル応答フローパスであると決定することと、ここにおいて、前記ステートフル応答フローパスが、前記ネットワークを通した前記要求フローパスにマッチングする転送挙動を有するパケットを含む、
をさらに備える、C5に記載のコンピュータ実装方法。
[C7]
1つまたは複数の制約にマッチングする前記ネットワークの第1のスナップショット中の1つまたは複数の第1のフローと前記ネットワークの第2のスナップショット中の1つまたは複数の第2のフローとを計算することと、
前記第1のスナップショット中の第1のフローごとに、第1のサンプルパケットを計算することと、
前記第1のスナップショットを通して前記第1のサンプルパケットの第1の挙動を分析することと、
前記第2のスナップショットを通して前記第1のサンプルパケットの第2の挙動を分析することと、
前記第1のスナップショット中の第1のフローごとに前記第1のサンプルパケットにマッチングする前記フローとは別個である前記第2のスナップショットの前記第2のフロー中のフローの第3の集合を計算することと、
フローの前記第3の集合中のフローごとに、第2のサンプルパケットを計算することと、
前記第1のスナップショットを通して前記第2のサンプルパケットの第3の挙動を分析することと、
前記第2のスナップショットを通して前記第2のサンプルパケットの第4の挙動を分析することと、
前記第2の挙動と前記第1の挙動を比較することと、
前記第4の挙動と前記第3の挙動を比較することと、
前記第1の挙動と前記第2の挙動との間の前記比較を表示のために与えることと、
前記第3の挙動と前記第4の挙動との間の前記比較を表示のために与えることと
をさらに備える、C1に記載のコンピュータ実装方法。
[C8]
前記ネットワークの2つ以上のネットワーク構成を選択のために与えることと、
1つまたは複数の機能レイヤに対応する前記構成データと前記状態データとに少なくとも部分的に基づいて前記2つ以上のネットワーク構成を比較することと、
前記2つ以上のネットワーク構成を表示のために与えることと、前記表示が、前記1つまたは複数の対応する機能レイヤにおける前記2つ以上のネットワーク構成間の差を含む、
をさらに備える、C1に記載のコンピュータ実装方法。
[C9]
方法を実行するためにプロセスによって実行可能なコードを記憶する非一時的コンピュータ可読媒体であって、前記方法が、
ネットワーク上の1つまたは複数のネットワークデバイス間の相互接続を定義するネットワークフローパス情報を取得することと、
前記ネットワークの1つまたは複数の対応する機能レイヤにおける前記1つまたは複数のネットワークデバイス間の前記相互接続にわたって横断するパケットの挙動を定義するトラフィックデータを取得することと、
前記ネットワーク中で前記ネットワークフローパスおよび前記トラフィックデータを記述するフィルタの1つまたは複数のカテゴリを使用して前記ネットワークフローパスおよび前記トラフィックデータを表示のために与えることと、ここにおいて、フィルタの前記1つまたは複数のカテゴリが、前記ネットワークフローパスおよびフィルタの前記1つまたは複数のカテゴリの選択を満足する前記トラフィックデータを用いた前記表示を修正するために選択可能である、
を備える、非一時的コンピュータ可読媒体。
[C10]
フィルタの前記1つまたは複数のカテゴリが、パケットヘッダ値、入力および出力インターフェース、転送挙動、およびネットワーク機能のタイプのうちの少なくとも1つを含む、C9に記載の非一時的コンピュータ可読媒体。
[C11]
前記方法が、
1つまたは複数の制約にマッチングする前記ネットワークの第1のスナップショット中の1つまたは複数の第1のフローと前記ネットワークの第2のスナップショット中の1つまたは複数の第2のフローとを計算することと、
前記第1のスナップショット中の第1のフローごとに、第1のサンプルパケットを計算することと、
前記第1のスナップショットを通して前記第1のサンプルパケットの第1の挙動を分析することと、
前記第2のスナップショットを通して前記第1のサンプルパケットの第2の挙動を分析することと、
前記第1のスナップショット中の第1のフローごとに前記第1のサンプルパケットにマッチングする前記フローとは別個である前記第2のスナップショットの前記第2のフロー中のフローの第3の集合を計算することと、
フローの前記第3の集合中のフローごとに、第2のサンプルパケットを計算することと、
前記第1のスナップショットを通して前記第2のサンプルパケットの第3の挙動を分析することと、
前記第2のスナップショットを通して前記第2のサンプルパケットの第4の挙動を分析することと、
前記第2の挙動と前記第1の挙動を比較することと、
前記第4の挙動と前記第3の挙動を比較することと、
前記第1の挙動と前記第2の挙動との間の前記比較を表示のために与えることと、
前記第3の挙動と前記第4の挙動との間の前記比較を表示のために与えることと
をさらに備える、C9に記載の非一時的コンピュータ可読媒体。
[C12]
前記方法が、
各ネットワークフローパスに適用可能な1つまたは複数の制約を選択のために与えることと、ここにおいて、前記1つまたは複数の制約が、前記1つまたは複数のネットワークフローパスの範囲を制限する、
前記1つまたは複数の制約のための選択を受信することと、
前記1つまたは複数の制約の前記選択によって決定された前記1つまたは複数のネットワークフローパスの前記範囲を表示のために与えることと
をさらに備える、C9に記載の非一時的コンピュータ可読媒体。
[C13]
前記方法が、
表示のために与えられた前記ネットワークフローパスデータと前記トラフィックデータとに少なくとも部分的に基づいてフィルタの前記1つまたは複数のカテゴリを更新すること
をさらに備える、C9に記載の非一時的コンピュータ可読媒体。
[C14]
前記方法が、
フィルタの前記1つまたは複数のカテゴリの以前の選択に少なくとも部分的に基づいてフィルタの前記1つまたは複数のカテゴリを更新すること
をさらに備える、C9に記載の非一時的コンピュータ可読媒体。
[C15]
前記方法が、
前記ネットワークフローパスデータと前記トラフィックデータとをアグリゲートすることと、
前記ネットワーク上の前記1つまたは複数のネットワークデバイスの前記相互接続を定義する複数のネットワークフローパスを計算することと、
前記複数のネットワークフローパスを記憶することと、
前記複数のネットワークフローパスを分類することと
をさらに備える、C9に記載の非一時的コンピュータ可読媒体。
[C16]
前記方法が、
前記複数のネットワークフローパスを分析することと、
ループ中で終了する共通パスを共有する少なくとも2つのネットワークフローパスを決定することと
をさらに備える、C15に記載の非一時的コンピュータ可読媒体。
[C17]
前記方法が、
前記複数のネットワークフローパスを分析することと、
共通パスおよび1つまたは複数の転送ルールまたは構成を共有する少なくとも2つのネットワークフローパスを決定することと
をさらに備える、C15に記載の非一時的コンピュータ可読媒体。
[C18]
ネットワーク分析システムであって、
1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサによって実行されたとき、前記ネットワーク分析システムに、
ネットワーク上の1つまたは複数のネットワークデバイスに関連する構成データと状態データとを受信することと、
前記ネットワーク上の前記1つまたは複数のネットワークデバイス間の相互接続を定義するネットワークフローパス情報を取得することと、
フィルタの1つまたは複数のカテゴリを使用して前記構成データと前記状態データとを表示のために与えることと、
前記1つまたは複数のネットワークデバイスの転送挙動を含む、フィルタの前記1つまたは複数のカテゴリを使用して前記ネットワークフローパス情報を表示のために与えることと、ここにおいて、前記転送挙動が、対応する機能レイヤにおける前記1つまたは複数のネットワークデバイスにおけるパケットのための挙動を含む、ここにおいて、フィルタの前記1つまたは複数のカテゴリが、前記ネットワーク中の前記ネットワークフローパス、前記構成データ、および前記状態データのうちの1つまたは複数を記述する、ここにおいて、フィルタの前記1つまたは複数のカテゴリが、フィルタの前記1つまたは複数のカテゴリの選択を満足する前記ネットワークフローパス、前記構成データ、および前記状態データを用いた前記表示を修正するために選択可能である、
を行わせる、命令を含む1つまたは複数のメモリデバイスと
を備える、ネットワーク分析システム。
[C19]
前記1つまたは複数のメモリデバイスが、前記1つまたは複数のプロセッサによって実行されたとき、前記ネットワーク分析システムに、
1つまたは複数の制約にマッチングする前記ネットワークの第1のスナップショット中の1つまたは複数の第1のフローと前記ネットワークの第2のスナップショット中の1つまたは複数の第2のフローとを計算することと、
前記第1のスナップショット中の第1のフローごとに、第1のサンプルパケットを計算することと、
前記第1のスナップショットを通して前記第1のサンプルパケットの第1の挙動を分析することと、
前記第2のスナップショットを通して前記第1のサンプルパケットの第2の挙動を分析することと、
前記第1のスナップショット中の第1のフローごとに前記第1のサンプルパケットにマッチングする前記フローとは別個である前記第2のスナップショットの前記第2のフロー中のフローの第3の集合を計算することと、
フローの前記第3の集合中のフローごとに、第2のサンプルパケットを計算することと、
前記第1のスナップショットを通して前記第2のサンプルパケットの第3の挙動を分析することと
前記第2のスナップショットを通して前記第2のサンプルパケットの第4の挙動を分析することと、
前記第2の挙動と前記第1の挙動を比較することと、
前記第4の挙動と前記第3の挙動を比較することと、
前記第1の挙動と前記第2の挙動との間の前記比較を表示のために与えることと、
前記第3の挙動と前記第4の挙動との間の前記比較を表示のために与えることと
を行わせる命令をさらに含む、C18に記載のネットワーク分析システム。
[C20]
前記1つまたは複数のメモリデバイスが、前記1つまたは複数のプロセッサによって実行されたとき、前記ネットワーク分析システムに、
各ネットワークフローパスに適用可能な1つまたは複数の制約を選択のために与えることと、ここにおいて、前記1つまたは複数の制約が、前記1つまたは複数のネットワークフローパスの範囲を制限する、
前記1つまたは複数の制約のための選択を受信することと、
前記1つまたは複数の制約の前記選択によって決定された前記1つまたは複数のネットワークフローパスの前記範囲を表示のために与えることと
を行わせる命令をさらに含む、C18に記載のネットワーク分析システム。

Claims (20)

  1. ネットワーク分析のためのコンピュータ実装方法であって、
    1つまたは複数のコンピューティングデバイスが、ネットワーク上の1つまたは複数のネットワークデバイスに関連する構成データと状態データとを取得することと、
    前記1つまたは複数のコンピューティングデバイスが、前記取得された構成および状態データに基づいて、ネットワークモデルを生成することと、ここにおいて、前記ネットワークモデルが、前記ネットワークを通したトラフィックフローを介してデータパケットの処理を記述する、
    ユーザデバイスにインターフェースを与えることと、前記インターフェースが、ユーザが注目する1つまたは複数のネットワークフローを指定することを可能にするための1つまたは複数のユーザ選択可能要素を含む、
    前記ユーザデバイスから、注目する1つまたは複数のトラフィックフローを記述する少なくとも1つのネットワークフロー指定子を受信することと、
    前記ネットワークモデルから、前記ネットワークフロー指定子を受信することに応答して、前記ネットワークの注目する前記トラフィックフローに関連するネットワークフローパス情報のサブセットを取得することと、ここにおいて、ネットワークフロー情報の前記サブセットが、前記ネットワークフロー指定子に基づいて決定される、
    前記ネットワークの1つまたは複数の対応する機能レイヤにおけるネットワークフローパス情報の前記サブセットを公開することと、
    前記1つまたは複数のネットワークデバイスに関連する前記構成データと前記状態データとに少なくとも部分的に基づく転送挙動を含む、前記1つまたは複数の対応する機能レイヤにおける前記ネットワークのネットワークフローパス情報の前記サブセットと前記1つまたは複数のトラフィックフローとを前記ユーザデバイス上での表示のために与えることと、ここにおいて、前記転送挙動が、前記1つまたは複数の対応する機能レイヤにおける前記1つまたは複数のネットワークデバイスにおけるパケットの挙動を定義する、
    を備える、コンピュータ実装方法。
  2. 1つまたは複数の共通パス要素を共有するネットワークフローパスを決定することと、
    ネットワークフローパスのグループとして1つまたは複数の共通パス要素を共有する前記ネットワークフローパスを識別することと、
    前記グループ内の各ネットワークフローパス間の差について前記グループ中の各ネットワークフローパスを個々に検査することと、
    前記グループ中の各ネットワークフローパス間の前記差を表示のために与えることと
    をさらに備える、請求項1に記載のコンピュータ実装方法。
  3. ネットワークフローパスごとに1つまたは複数のサンプルパケットを決定することと、ここにおいて、前記1つまたは複数のサンプルパケットが、各ネットワークフローパスに沿った転送挙動を有するパケットを表す、
    前記1つまたは複数のサンプルパケットを表示のために与えることと
    をさらに備える、請求項1に記載のコンピュータ実装方法。
  4. 各ネットワークフローパスに適用可能な1つまたは複数の制約を選択のために与えることと、ここにおいて、前記1つまたは複数の制約が、前記1つまたは複数のネットワークフローパスの範囲を制限する、
    前記1つまたは複数の制約のための選択を受信することと、
    前記1つまたは複数の制約の前記選択によって決定された前記1つまたは複数のネットワークフローパスの前記範囲を表示のために与えることと
    をさらに備える、請求項1に記載のコンピュータ実装方法。
  5. 前記ネットワーク中で第1の要求フローパスまたは第1の応答フローパスを識別することと、
    前記ネットワーク中で前記第1の要求フローパスに対応する第2の応答フローパスまたは前記第1の応答フローパスに対応する第2の要求フローパスを生成することと、ここにおいて、前記第1の要求フローパスにマッチングするトラフィックが、前記第2の応答フローパスにマッチングするトラフィックを生成し、前記第2の要求フローパスにマッチングするトラフィックが、前記第1の応答フローパスにマッチングするトラフィックを生成する、
    前記第1の要求フローパス、前記第1の応答フローパス、前記第2の要求フローパスおよび前記第2の応答フローパスのうちの1つまたは複数に基づいて前記フローデータを決定することと、
    前記フローパスデータを表示のために与えることと
    をさらに備える、請求項1に記載のコンピュータ実装方法。
  6. 前記要求フローパスと前記応答フローパスとのうちの少なくとも1つを分析することと、
    前記要求フローパスがステートフル要求フローパスであると決定することと、ここにおいて、前記ステートフル要求フローパスが、前記1つまたは複数のネットワークデバイスに関連する前記応答フローパスによって定義された転送挙動を決定する状態を前記ネットワーク中に確立する、
    前記応答フローパスがステートフル応答フローパスであると決定することと、ここにおいて、前記ステートフル応答フローパスが、前記ネットワークを通した前記要求フローパスにマッチングする転送挙動を有するパケットを含む、
    をさらに備える、請求項5に記載のコンピュータ実装方法。
  7. 1つまたは複数の制約にマッチングする前記ネットワークの第1のスナップショット中の1つまたは複数の第1のフローと前記ネットワークの第2のスナップショット中の1つまたは複数の第2のフローとを計算することと、
    前記第1のスナップショット中の第1のフローごとに、第1のサンプルパケットを計算することと、
    前記第1のスナップショットを通して前記第1のサンプルパケットの第1の挙動を分析することと、
    前記第2のスナップショットを通して前記第1のサンプルパケットの第2の挙動を分析することと、
    前記第1のスナップショット中の第1のフローごとに前記第1のサンプルパケットにマッチングする前記フローとは別個である前記第2のスナップショットの前記第2のフロー中のフローの第3の集合を計算することと、
    フローの前記第3の集合中のフローごとに、第2のサンプルパケットを計算することと、
    前記第1のスナップショットを通して前記第2のサンプルパケットの第3の挙動を分析することと、
    前記第2のスナップショットを通して前記第2のサンプルパケットの第4の挙動を分析することと、
    前記第2の挙動と前記第1の挙動を比較することと、
    前記第4の挙動と前記第3の挙動を比較することと、
    前記第1の挙動と前記第2の挙動との間の前記比較を表示のために与えることと、
    前記第3の挙動と前記第4の挙動との間の前記比較を表示のために与えることと
    をさらに備える、請求項1に記載のコンピュータ実装方法。
  8. 前記ネットワークの2つ以上のネットワーク構成を選択のために与えることと、
    1つまたは複数の機能レイヤに対応する前記構成データと前記状態データとに少なくとも部分的に基づいて前記2つ以上のネットワーク構成を比較することと、
    前記2つ以上のネットワーク構成を表示のために与えることと、前記表示が、前記1つまたは複数の対応する機能レイヤにおける前記2つ以上のネットワーク構成間の差を含む、
    をさらに備える、請求項1に記載のコンピュータ実装方法。
  9. 方法を実行するためにプロセスによって実行可能なコードを記憶する非一時的コンピュータ可読記憶媒体であって、前記方法が、
    ネットワーク上の1つまたは複数のネットワークデバイス間の相互接続を定義するネットワークフローパス情報を取得することと、
    前記ネットワークの1つまたは複数の対応する機能レイヤにおける前記1つまたは複数のネットワークデバイス間の前記相互接続にわたって横断するパケットの挙動を定義するトラフィックデータを取得することと、
    ユーザデバイスにインターフェースを与えることと、前記インターフェースが、ユーザが注目する1つまたは複数のネットワークフローを指定することを可能にするための1つまたは複数のユーザ選択可能要素を含む、
    前記ユーザデバイスから、注目する1つまたは複数のトラフィックフローを記述する少なくとも1つのネットワークフロー指定子を受信することと、
    前記少なくとも1つのネットワークフロー指定子に基づいて識別されたフィルタの1つまたは複数のカテゴリを使用して前記ネットワークフローパス情報のサブセットおよび前記トラフィックデータのサブセットを表示のために与えることと、ここにおいて、フィルタの前記1つまたは複数のカテゴリが、前記ネットワークフローパス情報の更新されたサブセットおよびフィルタの前記1つまたは複数のカテゴリの選択を満足する前記トラフィックデータの更新されたサブセットを用いた前記表示を修正するために選択可能である、
    を備える、非一時的コンピュータ可読記憶媒体。
  10. フィルタの前記1つまたは複数のカテゴリが、パケットヘッダ値、入力および出力インターフェース、転送挙動、およびネットワーク機能のタイプのうちの少なくとも1つを含む、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  11. 前記方法が、
    1つまたは複数の制約にマッチングする前記ネットワークの第1のスナップショット中の1つまたは複数の第1のフローと前記ネットワークの第2のスナップショット中の1つまたは複数の第2のフローとを計算することと、
    前記第1のスナップショット中の第1のフローごとに、第1のサンプルパケットを計算することと、
    前記第1のスナップショットを通して前記第1のサンプルパケットの第1の挙動を分析することと、
    前記第2のスナップショットを通して前記第1のサンプルパケットの第2の挙動を分析することと、
    前記第1のスナップショット中の第1のフローごとに前記第1のサンプルパケットにマッチングする前記フローとは別個である前記第2のスナップショットの前記第2のフロー中のフローの第3の集合を計算することと、
    フローの前記第3の集合中のフローごとに、第2のサンプルパケットを計算することと、
    前記第1のスナップショットを通して前記第2のサンプルパケットの第3の挙動を分析することと、
    前記第2のスナップショットを通して前記第2のサンプルパケットの第4の挙動を分析することと、
    前記第2の挙動と前記第1の挙動を比較することと、
    前記第4の挙動と前記第3の挙動を比較することと、
    前記第1の挙動と前記第2の挙動との間の前記比較を表示のために与えることと、
    前記第3の挙動と前記第4の挙動との間の前記比較を表示のために与えることと
    をさらに備える、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  12. 前記方法が、
    各ネットワークフローパスに適用可能な1つまたは複数の制約を選択のために与えることと、ここにおいて、前記1つまたは複数の制約が、前記1つまたは複数のネットワークフローパスの範囲を制限する、
    前記1つまたは複数の制約のための選択を受信することと、
    前記1つまたは複数の制約の前記選択によって決定された前記1つまたは複数のネットワークフローパスの前記範囲を表示のために与えることと
    をさらに備える、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  13. 前記方法が、
    表示のために与えられた前記ネットワークフローパスデータと前記トラフィックデータとに少なくとも部分的に基づいてフィルタの前記1つまたは複数のカテゴリを更新すること
    をさらに備える、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  14. 前記方法が、
    フィルタの前記1つまたは複数のカテゴリの以前の選択に少なくとも部分的に基づいてフィルタの前記1つまたは複数のカテゴリを更新すること
    をさらに備える、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  15. 前記方法が、
    前記ネットワークフローパスデータと前記トラフィックデータとをアグリゲートすることと、
    前記ネットワーク上の前記1つまたは複数のネットワークデバイスの前記相互接続を定義する複数のネットワークフローパスを計算することと、
    前記複数のネットワークフローパスを記憶することと、
    前記複数のネットワークフローパスを分類することと
    をさらに備える、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  16. 前記方法が、
    前記複数のネットワークフローパスを分析することと、
    ループ中で終了する共通パスを共有する少なくとも2つのネットワークフローパスを決定することと
    をさらに備える、請求項15に記載の非一時的コンピュータ可読記憶媒体。
  17. 前記方法が、
    前記複数のネットワークフローパスを分析することと、
    共通パスおよび1つまたは複数の転送ルールまたは構成を共有する少なくとも2つのネットワークフローパスを決定することと
    をさらに備える、請求項15に記載の非一時的コンピュータ可読記憶媒体。
  18. ネットワーク分析システムであって、
    1つまたは複数のプロセッサと、
    前記1つまたは複数のプロセッサによって実行されたとき、前記ネットワーク分析システムに、
    ネットワーク上の1つまたは複数のネットワークデバイスに関連する構成データと状態データとを受信することと、
    前記ネットワーク上の前記1つまたは複数のネットワークデバイス間の相互接続を定義するネットワークフローパス情報を取得することと、
    ユーザデバイスにインターフェースを与えることと、前記インターフェースが、ユーザがフィルタのカテゴリを指定することを可能にするための1つまたは複数のユーザ選択可能要素を含み、フィルタの個々のカテゴリが、前記ネットワーク中の前記ネットワークフローパス情報、前記構成データ、及び前記状態データのうちの1つまたは複数を記述する、
    フィルタの前記カテゴリのうちのフィルタの1つまたは複数の選択されたカテゴリを受信することと、
    フィルタの前記1つまたは複数のカテゴリを使用して前記構成データのサブセットと前記状態データのサブセットとを表示のために与えることと、
    前記1つまたは複数のネットワークデバイスの転送挙動を含む、フィルタの前記1つまたは複数の選択されたカテゴリを使用して前記ネットワークフローパス情報のサブセットを表示のために与えることと、ここにおいて、前記転送挙動が、対応する機能レイヤにおける前記1つまたは複数のネットワークデバイスにおけるパケットのための挙動を含む、
    を行わせる命令を含む1つまたは複数のメモリデバイスと
    を備える、ネットワーク分析システム。
  19. 前記1つまたは複数のメモリデバイスが、前記1つまたは複数のプロセッサによって実行されたとき、前記ネットワーク分析システムに、
    1つまたは複数の制約にマッチングする前記ネットワークの第1のスナップショット中の1つまたは複数の第1のフローと前記ネットワークの第2のスナップショット中の1つまたは複数の第2のフローとを計算することと、
    前記第1のスナップショット中の第1のフローごとに、第1のサンプルパケットを計算することと、
    前記第1のスナップショットを通して前記第1のサンプルパケットの第1の挙動を分析することと、
    前記第2のスナップショットを通して前記第1のサンプルパケットの第2の挙動を分析することと、
    前記第1のスナップショット中の第1のフローごとに前記第1のサンプルパケットにマッチングする前記フローとは別個である前記第2のスナップショットの前記第2のフロー中のフローの第3の集合を計算することと、
    フローの前記第3の集合中のフローごとに、第2のサンプルパケットを計算することと、
    前記第1のスナップショットを通して前記第2のサンプルパケットの第3の挙動を分析することと
    前記第2のスナップショットを通して前記第2のサンプルパケットの第4の挙動を分析することと、
    前記第2の挙動と前記第1の挙動を比較することと、
    前記第4の挙動と前記第3の挙動を比較することと、
    前記第1の挙動と前記第2の挙動との間の前記比較を表示のために与えることと、
    前記第3の挙動と前記第4の挙動との間の前記比較を表示のために与えることと
    を行わせる命令をさらに含む、請求項18に記載のネットワーク分析システム。
  20. 前記1つまたは複数のメモリデバイスが、前記1つまたは複数のプロセッサによって実行されたとき、前記ネットワーク分析システムに、
    各ネットワークフローパスに適用可能な1つまたは複数の制約を選択のために与えることと、ここにおいて、前記1つまたは複数の制約が、前記1つまたは複数のネットワークフローパスの範囲を制限する、
    前記1つまたは複数の制約のための選択を受信することと、
    前記1つまたは複数の制約の前記選択によって決定された前記1つまたは複数のネットワークフローパスの前記範囲を表示のために与えることと
    を行わせる命令をさらに含む、請求項18に記載のネットワーク分析システム。
JP2019521482A 2016-10-21 2017-10-21 対話型ネットワーク分析プラットフォームのためのシステムおよび方法 Active JP6821800B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662411365P 2016-10-21 2016-10-21
US62/411,365 2016-10-21
US15/789,888 2017-10-20
US15/789,888 US20180115469A1 (en) 2016-10-21 2017-10-20 Systems and methods for an interactive network analysis platform
PCT/US2017/057750 WO2018075982A1 (en) 2016-10-21 2017-10-21 Systems and methods for an interactive network analysis platform

Publications (2)

Publication Number Publication Date
JP2019536331A JP2019536331A (ja) 2019-12-12
JP6821800B2 true JP6821800B2 (ja) 2021-01-27

Family

ID=61970476

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019521482A Active JP6821800B2 (ja) 2016-10-21 2017-10-21 対話型ネットワーク分析プラットフォームのためのシステムおよび方法

Country Status (5)

Country Link
US (1) US20180115469A1 (ja)
EP (1) EP3529951B1 (ja)
JP (1) JP6821800B2 (ja)
AU (2) AU2017345768A1 (ja)
WO (1) WO2018075982A1 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11777834B2 (en) * 2016-11-01 2023-10-03 T-Mobile Usa, Inc. IP multimedia subsystem (IMS) communication testing
JP2019105997A (ja) * 2017-12-12 2019-06-27 富士通株式会社 画面表示制御装置、画面表示制御方法及び画面表示制御プログラム
US10873593B2 (en) * 2018-01-25 2020-12-22 Cisco Technology, Inc. Mechanism for identifying differences between network snapshots
EP3747162A1 (en) * 2018-01-31 2020-12-09 Assia Spe, Llc Systems and methods for net neutrality testing
US11023472B2 (en) * 2018-02-27 2021-06-01 Nutanix, Inc. System and method for troubleshooting in a virtual computing system
US20190289056A1 (en) * 2018-03-16 2019-09-19 Bridgewest Ventures LLC Method and Apparatus for Cross Layer Network Diagnostics and Self-Healing Platform for Point-to-Multipoint Networks
US10938632B2 (en) * 2018-12-28 2021-03-02 Vmware, Inc. Query failure diagnosis in software-defined networking (SDN) environments
US11005745B2 (en) 2018-12-28 2021-05-11 Vmware, Inc. Network configuration failure diagnosis in software-defined networking (SDN) environments
US10644957B1 (en) * 2019-03-01 2020-05-05 Juniper Networks, Inc. Centralized controller-based dynamic network bandwidth allocation and management
US11477110B2 (en) * 2019-04-05 2022-10-18 Google Llc Cloud network reachability analysis for virtual private clouds
WO2020236275A1 (en) 2019-05-23 2020-11-26 Cray Inc. System and method for facilitating dynamic command management in a network interface controller (nic)
EP3780500A3 (en) * 2019-07-19 2021-04-14 NetBrain Technologies, Inc. Network management with topology dependency and path generation
US10917326B1 (en) 2019-08-23 2021-02-09 Keysight Technologies, Inc. Methods, systems, and computer readable media for debugging test traffic generation
US11283695B2 (en) * 2020-04-21 2022-03-22 Aviatrix Systems, Inc. System and method for determination of network operation metrics and generation of network operation metrics visualizations
US11582105B2 (en) * 2020-06-30 2023-02-14 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Telemetry-based network switch configuration validation
US11609811B2 (en) * 2020-08-27 2023-03-21 Microsoft Technology Licensing, Llc Automatic root cause analysis and prediction for a large dynamic process execution system
US11381460B1 (en) * 2020-12-10 2022-07-05 Google Llc Network reachability impact analysis
US11483102B1 (en) * 2021-04-02 2022-10-25 Arista Networks, Inc. Review and retry for minimum speed port channel
WO2023015226A1 (en) * 2021-08-06 2023-02-09 Google Llc Scalable event driven auto-diagnosis system

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9611403D0 (en) * 1996-05-31 1996-08-07 Northern Telecom Ltd Network data analysis method
US6035838A (en) * 1998-04-20 2000-03-14 Cummins Engine Company, Inc. Controlled energy ignition system for an internal combustion engine
US8176186B2 (en) * 2002-10-30 2012-05-08 Riverbed Technology, Inc. Transaction accelerator for client-server communications systems
US7359930B2 (en) * 2002-11-21 2008-04-15 Arbor Networks System and method for managing computer networks
WO2004081730A2 (en) * 2003-03-07 2004-09-23 Netnostics, Inc. Network architecture
US20050071350A1 (en) * 2003-08-28 2005-03-31 Hewlett-Packard Development Company, L.P. Systems and methods for information technology resource management
GB0407144D0 (en) * 2004-03-30 2004-05-05 British Telecomm Networks
SE0402891D0 (sv) * 2004-11-26 2004-11-26 Abb Ab A system and a method for controlling movements of an industrial robot
US7742406B1 (en) * 2004-12-20 2010-06-22 Packeteer, Inc. Coordinated environment for classification and control of network traffic
US20070140131A1 (en) * 2005-12-15 2007-06-21 Malloy Patrick J Interactive network monitoring and analysis
US8743703B2 (en) * 2006-08-22 2014-06-03 Centurylink Intellectual Property Llc System and method for tracking application resource usage
US9392462B2 (en) * 2009-01-28 2016-07-12 Headwater Partners I Llc Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy
US8934495B1 (en) * 2009-07-31 2015-01-13 Anue Systems, Inc. Filtering path view graphical user interfaces and related systems and methods
US20110087979A1 (en) * 2009-10-05 2011-04-14 Vss Monitoring, Inc. Method, apparatus and system for stacking network captured traffic distribution devices
US9215244B2 (en) * 2010-11-18 2015-12-15 The Boeing Company Context aware network security monitoring for threat detection
US20120166616A1 (en) * 2010-12-23 2012-06-28 Enxsuite System and method for energy performance management
US9094288B1 (en) * 2011-10-26 2015-07-28 Narus, Inc. Automated discovery, attribution, analysis, and risk assessment of security threats
US9349103B2 (en) * 2012-01-09 2016-05-24 DecisionQ Corporation Application of machine learned Bayesian networks to detection of anomalies in complex systems
US8843627B1 (en) * 2012-10-19 2014-09-23 Narus, Inc. System and method for extracting signatures from seeded flow groups to classify network traffic
US9185015B2 (en) * 2013-02-19 2015-11-10 Broadcom Corporation Application aware elephant flow identification
US9230213B2 (en) * 2013-03-15 2016-01-05 Extreme Networks, Inc. Device and related method for scoring applications running on a network
US9912549B2 (en) * 2013-06-14 2018-03-06 Catbird Networks, Inc. Systems and methods for network analysis and reporting
US11196636B2 (en) * 2013-06-14 2021-12-07 Catbird Networks, Inc. Systems and methods for network data flow aggregation
US9191325B2 (en) * 2013-10-29 2015-11-17 Solana Networks Inc. Method and system for processing network traffic flow data
US20150256413A1 (en) * 2014-03-06 2015-09-10 Sideband Networks Inc. Network system with live topology mechanism and method of operation thereof
US9319332B2 (en) * 2014-07-18 2016-04-19 Cisco Technology, Inc. Distributed rescheduling of bounded flows in a time sensitive network
WO2016019172A1 (en) 2014-07-30 2016-02-04 Forward Networks, Inc. Systems and methods for network management
US9871730B2 (en) * 2014-08-22 2018-01-16 Futurewei Technologies, Inc. Network element configured to operate in an information centric network
US9813290B2 (en) * 2014-08-29 2017-11-07 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for supporting distributed relay control protocol (DRCP) operations upon misconfiguration
US20170250869A1 (en) * 2014-09-12 2017-08-31 Andreas Richard Voellmy Managing network forwarding configurations using algorithmic policies
US9871691B2 (en) * 2014-09-16 2018-01-16 CloudGenix, Inc. Methods and systems for hub high availability and network load and scaling
WO2016161127A1 (en) * 2015-04-01 2016-10-06 Neutrona Networks International Llc Network management system with traffic engineering for a software defined network
US10536357B2 (en) * 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US10389639B1 (en) * 2016-01-30 2019-08-20 Innovium, Inc. Dynamic weighted cost multipathing
US10318887B2 (en) * 2016-03-24 2019-06-11 Cisco Technology, Inc. Dynamic application degrouping to optimize machine learning model accuracy
US10404727B2 (en) * 2016-03-25 2019-09-03 Cisco Technology, Inc. Self organizing learning topologies
US9892225B2 (en) * 2016-04-01 2018-02-13 International Business Machines Corporation Method for optimizing the design of micro-fluidic devices
US10904203B2 (en) * 2016-09-09 2021-01-26 Arbor Networks, Inc. Augmenting network flow with passive DNS information
US10972388B2 (en) * 2016-11-22 2021-04-06 Cisco Technology, Inc. Federated microburst detection
US10819595B2 (en) * 2018-04-09 2020-10-27 Level 3 Communications, Llc Data flow in telecommunications networks using network flow diagrams and associated data

Also Published As

Publication number Publication date
EP3529951A1 (en) 2019-08-28
EP3529951B1 (en) 2021-09-29
AU2017345768A1 (en) 2019-05-16
WO2018075982A1 (en) 2018-04-26
AU2021200243B2 (en) 2023-01-19
AU2021200243A1 (en) 2021-03-18
US20180115469A1 (en) 2018-04-26
JP2019536331A (ja) 2019-12-12
EP3529951A4 (en) 2020-05-20

Similar Documents

Publication Publication Date Title
JP6821800B2 (ja) 対話型ネットワーク分析プラットフォームのためのシステムおよび方法
EP3175579B1 (en) Systems and methods for network management
US10862749B1 (en) Systems for and methods of network management and verification using intent inference
US8089897B2 (en) VPN intelligent route service control point trouble diagnostics
JP4576249B2 (ja) ネットワーク管理装置及び方法
US8266272B2 (en) Methods for IT network representation and associated computer program products
US7742426B2 (en) System, method, and computer-readable medium for determining a layer 2 path trace in a heterogeneous network system
US11509552B2 (en) Application aware device monitoring correlation and visualization
US9537749B2 (en) Method of network connectivity analyses and system thereof
US20150370848A1 (en) System and method for managing data integrity in electronic data storage
US11809266B2 (en) Failure impact analysis of network events
US9781044B2 (en) Automated discovery and forwarding of relevant network traffic with respect to newly connected network tools for network tool optimizers
US20210111975A1 (en) Methods, systems and computer readable media for providing a declarative network monitoring environment
US11032124B1 (en) Application aware device monitoring
US20230344755A1 (en) Determining flow paths of packets through nodes of a network
US11438237B1 (en) Systems and methods for determining physical links between network devices
JP4678778B2 (ja) マルチレイヤネットワーク運用管理システムおよびコンピュータプログラム
EP3977680A1 (en) Trace routing in virtual networks
Raspall Building Nemo, a system to monitor IP routing and traffic paths in real time
Sgier Visualizing bgp rib changes into forwarding plane by leveraging bmp and ipfix
Schuster et al. Modeling Low-Level Network Configurations for Analysis, Simulation and Testing
Segec et al. Mapping Network Entity Relationships Based on SNMP Data Collection
Rødvand Data plane verification in software-defined networking
CN116264558A (zh) 云专线质量监测方法、装置、设备以及计算机存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190509

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190617

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200623

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200923

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210106

R150 Certificate of patent or registration of utility model

Ref document number: 6821800

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250