JP2015526022A - 決定論的ネットワーク障害検出 - Google Patents

決定論的ネットワーク障害検出 Download PDF

Info

Publication number
JP2015526022A
JP2015526022A JP2015520180A JP2015520180A JP2015526022A JP 2015526022 A JP2015526022 A JP 2015526022A JP 2015520180 A JP2015520180 A JP 2015520180A JP 2015520180 A JP2015520180 A JP 2015520180A JP 2015526022 A JP2015526022 A JP 2015526022A
Authority
JP
Japan
Prior art keywords
path
packets
network
problematic
paths
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.)
Pending
Application number
JP2015520180A
Other languages
English (en)
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 JP2015526022A publication Critical patent/JP2015526022A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • H04L41/065Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis involving logical or physical relationship, e.g. grouping and hierarchies
    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • H04L43/0835One way packet loss
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0858One way delays
    • 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
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

コンピュータ記憶媒体上で符号化されたコンピュータプログラムを含む、イメージを決定するための、方法、システム、および装置は、結果を検索する。当該方法の一つは、デバイスのネットワークを介して所定のパスの集合を表すデータを格納するステップを含む。一つまたは複数のパケットは所定のパスの各々に沿って送信され、前記所定のパスのうち異なるパスに沿って前記パケットを転送するための命令を含む。一つまたは複数の送信したパケットを受信する。送信されたパケットと受信されたパケットを使用して複数の問題のあるパスを識別する。問題のあるパスの比較に基づいて、2つのネットワークデバイス間の問題のあるリンクを決定する。

Description

相互接続したネットワークデバイス(例えば、ルータおよびスイッチ)は、ルーティングプロトコルに従ってネットワークパケットを送受信する。例えば、ルータは選択したルーティングプロトコルを使用してパケットを特定のデバイスに送信することができる。様々なルーティングプロトコルを使用して、特定のネットワーク内外で通信を行うことができる。
本発明では、ネットワークを介した複数の所定のパスを使用して、ネットワークの問題を診断し確定的に識別することを目的とする。
本明細書で説明する主題の一形態において、ネットワークを介した複数の所定のパスを使用して、ネットワークの問題を診断し、確定的に識別することができる。所定のパス(「プローブ」)を介して送信されたパケットは、ネットワーク内部で問題のあるリンクやデバイスを検出するために使用される。問題のあるリンクやデバイスの共通的な特性を分析して、ネットワークの問題の原因を隔離し決定することができる。
一般に、本明細書に記載される主題の一つの革新的形態を、デバイスのネットワークを介して所定のパスの集合を表すデータを格納するステップであって、各パスは、データのパケットを転送するためのネットワークデバイスのシーケンスを含むステップと、当該所定のパスの各々に沿って一つまたは複数のパケットを送信するステップであって、各パケットは、所定のパスのうち異なるパスに沿ってパケットを転送するための命令を含むステップと、一つまたは複数の送信されたパケットを受信するステップと、送信されたパケットと受信されたパケットを使用して複数の問題のパスを識別するステップと、当該問題のあるパスを比較するステップと、前記問題のあるパスの比較に基づいて2つのネットワークデバイス間の問題のあるリンクを決定するステップと、を含む方法で具現化することができる。一つまたは複数のコンピュータから成るシステムを、ソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せを当該システムに組み込むことによって特定の操作または動作を実行するように構成することができる。ソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せは、実行に際して上記動作を当該システムに実施させるものである。一つまたは複数のコンピュータプログラムを、データ処理装置によって実行されたときに当該装置に上記動作を実施させる命令を含ませることによって特定の操作もしくは動作を実施するように構成することができる。
上記および他の実施形態は、場合によっては一つまたは複数の以下の特徴を単独で、または組み合わせて、それぞれ含むことができる。上記動作は、いくつかの送信されたパケットおよびいくつかの受信されたパケットを計算するステップを含む。前記ネットワークデバイスは、所定のパスに沿ってパケットを転送するように構成されたルータである。上記動作は、同一のパスに沿って、パケットが前回送信された方向と反対方向に、受信されたパケットを送信するステップを含む。問題のあるパスを比較するステップは、問題のあるパスの一つまたは複数の属性間の相関関係もしくは共通部分を決定するステップを含む。問題のあるパスは、該パスに沿って送信された一つまたは複数のパケットが、閾値を満たす待ち時間で受信されるパスである。問題のあるパスは、該パスに沿って送信された一つまたは複数のパケットが閾値期間内で受信されないパスである。一つまたは複数のパケットを送信するステップは、ネットワークの外縁にあるデバイスから一つまたは複数のパケットを送信するステップを含む。上記動作は、ネットワークトポロジのデータベースから所定のパスの集合を導出するステップを含む。上記動作は、各パケット内の宛先インターネットプロトコルアドレスを変更するステップを含む。上記動作は、ネットワーク中の一組の主要なルータを決定するステップと、ルータの転送トリプレットから各所定のパスを決定するステップを含む。各転送トリプレットは、主要なルータと当該主要なルータの2つの隣接ルータを含む。
本明細書で説明する主題の特定の実施形態を実装して、一つ又は複数の以下の利点を実現することができる。所定のパスを介して送信されたプローブを用いたネットワーク監視により、検査とエラーを介するよりも確定的にネットワーク問題を発見し、場所を特定するための機能がもたらされる。決定論的プローブを使用して、サービスまたはアプリケーションへの何らかの影響が見られる前にネットワーク要素障害を識別することができる。決定論的プローブは、これらのパスが製品取引に公開される前に、ネットワーク内のパスをテストするための能力も提供する。
本明細書の主題の一つもしくは複数の実施形態の詳細を、添付図面および以下の発明を実施するための形態で説明する。主題の他の機能、態様、および利点は、発明を実施するための形態、図面、および特許請求の範囲から明らかとなる。
ネットワークの例を示す図である。 ネットワークにおいてパスを決定するためのプロセス例の流れ図である。 ネットワークを操作するためのプロセス例の流れ図である。 ネットワークの問題を検出するためのプロセス例の流れ図である。
様々な図面において同じ参照番号および記号は同じ要素を示す。図1は、ネットワーク例100の図である。ネットワーク100は、データのパケットを送受信する相互接続されたデバイスのネットワークの例である。ネットワーク100は、例えば、ローカルエリアネットワーク(LAN:local area network)またはワイドエリアネットワーク(WAN:wide area network)(例:インターネット)の一部分であってもよい。
ネットワーク100は、ネットワークトラフィックを送受信できるネットワークデバイス110、120、130、140、150、160および170を含む。監視装置180を、ネットワークの問題を診断するためにネットワーク100に接続することもできる。上記ネットワークデバイスは、例えば、ルータおよびスイッチであってもよい。監視装置180は、例えば一つまたは複数のプロセッサおよびコンピュータ可読媒体を含む、サーバ、携帯電話、タブレットコンピュータ、ノート型コンピュータ、音楽プレイヤ、eブックリーダ、ラップトップもしくはデスクトップ型コンピュータ、PDA、スマートフォン、または他の固定デバイスもしくは携帯デバイスといった、任意の適切な種類のコンピュータデバイスであってもよい。ネットワークデバイス110乃至170は、内部ゲートウェイプロトコルと外部ゲートウェイプロトコルを含む従来型のルーティングプロトコルに従って、ネットワークトラフィックを転送することができる。
ネットワークデバイス110乃至170は、ソースルーティングプロトコルに従ってネットワークパケットを送受信することもできる。ソースルーティングプロトコルによりネットワークパケットの送信者は、パケットがネットワーク内で通る所定のネットワークデバイスのシーケンス、即ち「パス」を指定することができる。それに対して、ノンソースルーティングプロトコルを用いると、ネットワーク中のルータは、一般にパケットの宛先に基づいてネットワークを通るパスを決定する。上記ノンソースルーティングプロトコルのパスは、変更でき、予測不可能であってもよい。それに対して、ソースルーティングプロトコルで指定されたデバイスのシーケンスを、ネットワークパケット自体を用いて符号化することができ、または、ネットワーク自体の中で符号化することができる。
ソースルーティングプロトコルを、例えばマルチプロトコルラベルスイッチング(MPLS:Multiprotocol Label Switching)で実装することができる。MPLSは、ネットワークデータパケットにラベルを割り当てる仕組みである。ネットワークデバイスは、ラベル付けされたデータ・パケットをラベルの内容に従いパスに沿って転送することができる。MPLSネットワークを通るパスは、ラベルスイッチドパス(LSP:Label Switched Path)と称される。LSPを、例えばリソースリザベーションプロトコル(RSVP:Resource Reservation Protocol)などの多様なプロトコルを介して実装することができる。
ネットワーク100は、何千もの相互接続したネットワークデバイスを含むことができる。従って、個々のデバイスの障害を決定するのは困難となることがある。ネットワーク管理者がネットワークの外縁にあるネットワークデバイスのみへのアクセス権を持っている場合、一般的に広域ネットワークと同様にその困難さは悪化することがある。従来型のルーティングプロトコルでは、障害のあるデバイスの周囲のネットワークトラフィックの経路を変更できるので、ネットワーク管理者は、予想外の待ち時間を認識できるだけで、問題の本質を見抜くことができない。同様に、ネットワークデバイスの現行の問題が特定の期間、検出されないままである可能性がある。
ソースルーティングプロトコルを使用して、確定的にネットワーク問題を診断することができる。ネットワーク問題と障害のあるデバイスを、一つまたは複数の多様な原因、例えば二つのネットワークデバイス間の接続、時間帯、または地理的な位置などに系統的に分類することができる。
ネットワーク問題を診断するために、デバイスのネットワークにより複数のパスを定義することができる。ソースデバイスは、各々の定義されたパスに沿ってデータ・パケットを送信することができ、宛先のデバイスは送信されたパケットを受信することができる。当該宛先のデバイスは、ソースデバイスと同一のデバイスであってもよいし、そうでなくてもよい。所定のパスを介したソースデバイスから宛先デバイスへのパケットの送信は、「プローブ」と称することができる。与えられたプローブのためのパスを、例えばLSPとして実装することができる。いくつかの実装では、LSPは厳密に定義され固定である。上述のように、ネットワーク問題を診断するために使用されるパスは、従来型のルーティングプロトコルで送信されるネットワークトラフィックが通るパスと異なってもよい。さらに、上記定義されたパスは、他のネットワークトラフィックを搬送する必要はない。
ネットワークを通るパスを多様に導出してもよい。いくつかの実装では、管理者は、監視装置からネットワーク内でテストすべき各リンクへの一つのパスを算出することができる。あるいは、管理者はネットワーク内のルータ間の全ての可能なパスを算出することができる。
いくつかの実施では、各パスは、ネットワーク内の一組のルータのうち少なくとも一つを通るように設計される。例えば、ネットワーク管理者は、ネットワーク内の主要な(「バックボーン」)ルータを通るように各パスを設計してもよい。特定のルータを通るパスを定義するために、ネットワーク管理者は、3つの特定のルータの一組の「転送トリプレット」と、2つの対応するリンク(例:A<link1>B<link2>C 「<link>」はルータ間のリンクを示す)を定義し、維持することができる。次に、十分に定義されたプローブパス(例:LSP)を、当該一組の転送トリプレットに基づいて定義することができる。例えば、トリプレット自体が十分に定義されたパスであってもよいし、または、複数のトリプレットを連結して十分に定義されたパスを生成してもよい。
図2は、ネットワーク内の一組の転送トリプレットを決定するためのプロセス例200の流れ図である。プロセス200は、ネットワーク問題を診断するためにネットワーク内でパスを定義するために使用できるプロセスの例である。プロセス200を使用して、ネットワーク内の一組の主要な「バックボーン」ルータのための転送トリプレットに基づくパスを定義することができる。プロセス200を、例えば図1で示すように一つまたは複数のコンピュータ、例えば監視装置180のコンピュータシステムによって実行されるものとして説明する。
上記システムは、バックボーンネットワーク内の全てのアクティブルータを列挙する(210)。例えば、ネットワーク管理者は、バックボーンルータをネットワークトラフィックの大部分を搬送するネットワークの主要なルータであると考えることができる。
上記システムは、バックボーンルータに接続された全ての隣接ルータを列挙する(220)。例えば、上記システムは、バックボーンルータに接続された隣接ルータを識別するためにネットワークトポロジのデータベースにアクセスすることができる。次に、上記システムは任意の2つの隣接ルータから成る全ての組合せを算出する(230)。
上記システムは、各バックボーンルータを2つの隣接ルータから成る組合せの各々の中間に挿入することで転送トリプレットを形成する(240)。転送トリプレット(例:A<->B<->C)が与えられると、システムは、各転送トリプレット(250)に基づいて十分に定義されたプローブを例えばLSPとして生成することができる。上記システムは、転送トリプレット内のルータAまたはCとソースまたは宛先ルータの間の、ネットワーク内の最短パスを算出することによってプローブを定義することができる。例えば、十分に定義されたプローブは、ソースルータからルータA、次いでルータB、次いでルータCへの最短のパスを辿り、次に、ルータCから宛先ルータへの最短パスを辿ることができる。ソースルータからルータAに戻る任意の適切なパスとルータCから宛先ルータに戻る任意の適切なパスを使用することができる。いくつかの場合では、例えばルータAへの特定の最短パス、またはルータCからの特定の最短パスが見つからない場合、転送トリプレットをプローブでカバーすることができないかもしれない。
定義されたパスに沿って送信されたプローブ例を、ソースデバイス、即ちルータ102aがデバイスのネットワークを通る所定のパスに沿ってデータ・パケットを送信することによって図1に示す。このプローブ例は、転送トリプレットR1<->R2<->R3に対応することができる。上記パケットは、ルータ102aからルータ110への矢印103と、ルータ110からルータ120への矢印104と、ルータ120からルータ130への矢印105と、ルータ130からルータ120に戻る矢印106と、ルータ120からルータ110に戻る矢印107と、ルータ110から宛先デバイス102bへの矢印107によって図示されたパス例をたどる。いくつかの実装では、ソースデバイス102aと宛先デバイス102bは、同一のデバイス101に存在してもよい。
監視装置は、宛先デバイス102bで受信したパケットを解析して、例えば、パケット送信時点とパケット受信時点の間の予想外の待ち時間などの、ネットワークの問題を示す原因を求めることができる。さらに、閾値期間内で宛先デバイス102bによって受信されていないパケットにより、ネットワークの問題を示すことができる。上記システムは、予想外の問題がない他のプローブを「問題なし」として分類できる。
以下の表は、転送トリプレットに基づいてネットワークを通る所定のパスを辿る複数のプローブを用いてネットワーク問題を確定的に識別する例を示す。
Figure 2015526022
この例では、上記監視装置は、データを分析して、ルータ120(R2)とルータ130(R3)の間のリンクが故障していることを確定的に決定することができる。プローブ4,5および6は、問題のあるプローブとして識別されている。問題のあるプローブの要素は、以下の通りである。
プローブ4:R1<->R2<->R3
プローブ5:R2<->R3<->R6
プローブ6:R2<->R3<->R5
これらの候補の共通の要素は、R2<->R3である。従って、システムは、問題はルータ120(R2)とルータ130(R3)の間に存在すると決定することができる。
図3は、ネットワークを操作するためのプロセス例300の流れ図である。プロセス300を、相互接続したデバイスのネットワーク、例えば図1に図示したネットワーク100を用いて実施することができる。プロセス300を、ネットワーク管理者またはデバイスのネットワークを管理するように構成された一つまたは複数のコンピュータにインストールしたコンピュータシステムで実施してもよい。
上記システムは、相互接続したデバイスのネットワークを初期化する(310)。該システムは、例えば、ネットワークの接続に関する情報をトポロジデータベースに格納することができる。当該トポロジデータベースを使用して、上述の転送トリプレットを定義することができる。
上記ネットワークは、従来型のルーティングプロトコルによってトラフィックを送信する(320)。いくつかの実装では、利用可能なルータ(例:バックボーンルータ)の一部が、ネットワークトラフィック全体の大部分を処理する。例えば新しいルータがインストールされ、テスト中である場合は、他のルータは、ネットワークトラフィックをほとんど搬送しなくてもよいか、または、全く搬送しなくてもよい。
上記システムは、確定的なパスに沿って送信されたプローブを使用してネットワークの問題を検出する(330)。該システムは、プローブを定期的に使用して、現在展開されているネットワークデバイスの問題を検出することができる。さらに、新しくインストールされたルータの場合では、該システムは、プローブを使用して、新しいルータに製造時レベルのネットワークトラフィックの負荷をかける前に、新しくインストールされたルータをテストし、その問題を診断することができる。
上記検出されたネットワーク問題を修復する(340)。ネットワーク管理者は、ネットワークの問題の原因を確定的に隔離することによって、故障したネットワークデバイスを発見し、修理または交換することができる。ネットワーク管理者は、ネットワークを長時間監視して、ネットワーク性能で生じた問題を検出し、修復することもできる。
図4は、ネットワーク問題を検出するためのプロセス例400の流れ図である。プロセス400を、ネットワークに接続された一つまたは複数のコンピュータデバイスにインストールしたコンピュータプログラムとして実装してもよい。例えば、プロセス400を、監視装置とネットワークパケットの送信と受信の両方を行うルータとによって実施してもよい。プロセス400を、例えば図1に示す監視装置180とルータ101のような監視装置とルータで実施されるものとして説明する。
上記監視装置は、所定のパスの集合を表すデータを格納する(410)。例えば、パスごとに格納されたデータにより、ネットワーク内のルータのシーケンスを特定することができる。当該監視装置は、例えば図2を参照して上述したように、ネットワークトポロジのデータベースから所定のパスを導出することができる。
上記ルータは、所定のパスの各々に沿ってデータ・パケットを送信する(420)。該パケットを、各パケットを転送するネットワークデバイスのシーケンスを定義するソースルーティングプロトコルに従って送信してもよい。上記ルータは、一つまたは複数の送信されたパケットを受信する(430)。いくつかの実装では、別のデバイスが、送信されたパケットを受信する。上記ルータは、パスの双方向をテストするために所定のパスの反対方向に沿って受信したパケットを送信することもできる。上記ルータは、送信されたパケット中の宛先インターネットプロトコルアドレスを変更して、二つの特定のルータ間の全てのスイッチを動作させることもできる。
上記監視装置は問題のあるパスを識別する(440)。送信されたパケットを受信した後、当該監視装置は、受信したパケットを解析して、問題のあるパスを識別することができる。問題のあるパスは、予想外の待ち時間が観測されたパスであってもよい。例えば、送信されたパケットが、閾値を満たす期間の後で受信された場合、当該監視装置は該パスを問題のあるパスとして指定することができる。いくつかの場合では、上記ルータが、送信されたパケットを受信しないこともある。当該監視装置は、閾値期間内に受信されなかったパケットを欠落したものとみなし、当該パスを問題のあるパスとして指定することができる。
上記監視装置は、問題のあるパスを比較する(450)。問題のあるパスの多くの属性を、問題のあるパスを特定したときに記録することができる。送信されたパケットが通ったパスに加えて、当該監視装置は、問題のあるパスごとの時間帯、曜日、地理的位置、加えてその他を記録することができる。
上記監視装置は、比較に基づいて2つのネットワークデバイス間の問題のあるリンクを決定する(460)。当該監視装置は、例えば、問題のあるリンクを決定するために問題のあるパスの一つまたは複数の共通の属性を識別することができる。例えば、監視装置は、2つのネットワークデバイスの間の特定のリンクが故障していると決定することができる。さらに、監視装置は、日曜の朝10時に2つのネットワークデバイス間のリンクに問題が起きたことを決定することができる。
上記監視装置は、問題のあるパスを解析し、問題のあるリンクを決定するためのいくつかの方法を使用することができる。いくつかの実装では、監視装置は、共通部分または相関関係を算出して、問題のあるパスの共通の属性を決定することができる。
上記監視装置は、定期的にパスを監視して、パスの品質の経時的な変化を決定することもできる。例えば、パスの待ち時間が時間とともに徐々に着実に増加する場合には、当該パス上の特定のリンクが将来故障する可能性が高いかもしれないと判定することができる。同様に、監視装置は、当該パスを監視して、ネットワーク性能に関して問題が再発する期間を決定することができる。例えば、監視装置は、当該パスを監視し、特定の曜日の間、特定の建物内または地理的位置で問題のあるパスが生じると決定することができる。
上記監視装置は、時間とともにリンクの品質がどのように悪化するのかを識別するための評価アルゴリズムを使用することもできる。例えば、監視装置は、ネットワーク内の特定のリンクを通る全てのパスを分析し、そのリンクを通るどれだけ多くのパスが問題のあるパスであったかをカウントすることができる。もし、特定のリンクを通る問題のあるパスの数が時間とともに増加する場合には、監視装置は、リンクの品質が時間とともに徐々に低下し、そのリンクが将来故障する可能性が高いかもしれないと決定することができる。
ネットワーク内の問題の診断に加え、確定的なプローブによる監視を使用して、例えば電力網、回路基板、およびパイプラインを含む、他の多数の種類の、ノードとエッジに基づくシステムにおける問題を識別し、診断することができる。
本明細書で説明した主題の実施形態とその機能的な動作を、本明細書で開示された構造およびそれらの構造的な均等物を含む、デジタル電子回路、有形的に具体化したコンピュータソフトウェアもしくはファームウェア、コンピュータハードウェア、またはそれらの一つもしくは複数から成る組合せで実装することができる。本明細書で説明した主題の実施形態を、一つまたは複数のコンピュータプログラム、即ち、データ処理装置によって実行されるかまたはその操作を制御するための有形の非一時的プログラム搬送体で符号化されたコンピュータプログラム命令から成る一つまたは複数のモジュールとして実装することができる。代替または追加して、当該プログラム命令を人工的に生成した伝搬情報、例えば、適切な受信装置に送信してデータ処理装置で実行するための情報を符号化するように生成された機械的に生成した電気信号、光学信号、または電磁気信号で符号化することができる。コンピュータ記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶基板、ランダムもしくはシリアルアクセスメモリデバイス、またはそれらの一つもしくは複数から成る組合せであってもよい。
「データ処理装置」という用語は、例えばプログラム可能なプロセッサ、コンピュータ、またはマルチプロセッサもしくはコンピュータを含む、データを処理するためのあらゆる種類の装置、デバイス、および機械を包含する。上記装置は、例えば、FPGA(field programmable gate array)またはASIC(application-specific integrated circuit)などの特殊目的の論理回路を含んでもよい。上記装置は、ハードウェアに加えて、本件のコンピュータプログラムのための実行環境を生成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらの一つもしくは複数から成る組合せを構成するコードを含んでもよい。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、またはコードと呼ばれるか説明されることもある)を、コンパイル言語もしくはインタープリタ式言語、または宣言型言語もしくは手続き型言語を含む任意の形式のプログラミング言語で記述してもよく、独立プログラムとして、またはモジュール、コンポーネント、サブルーチンもしくはコンピュータ環境での使用に適した他のユニットを含む任意の形式で展開してもよい。コンピュータプログラムが、ファイルシステム内のファイルに相当してもよいが、これは必須ではない。他のプログラムまたはデータ、例えば、マークアップ言語ドキュメントに格納された一つもしくは複数のスクリプトを保持するファイルの一部、本件のプログラムに特化した単一のファイル、または複数の連係ファイル、例えば、一つもしくは複数のモジュール、サブプログラム、もしくはコード部分を格納するファイルに、プログラムを格納してもよい。1つのサイトに配置するか、または、複数のサイトに分散させて通信ネットワークで相互接続した、一つまたは複数のコンピュータにコンピュータプログラムを展開して実行してもよい。
本明細書で説明したプロセスとロジックフローを、入力データで動作し出力を生成することで機能を実行する一つまたは複数のコンピュータプログラムを実施する、一つまたは複数のプログラム可能なコンピュータ、例えば監視装置180によって実施することができる。上記プロセスとロジックフローを、例えばFPGA(field programmable gate array)またはASIC(application-specific integrated circuit)のような特殊目的の論理回路として実装してもよい。
コンピュータプログラムの実行に適したコンピュータは、例えば、汎用目的のもしくは特殊目的のマイクロプロセッサまたはその両方、または他の任意の種類の中央演算装置に基づいたものであってもよい。一般に、中央演算装置は、読取専用メモリもしくはランダムアクセスメモリまたはその両方から命令とデータを受信する。コンピュータの必須要素は、命令を実施または実行するための中央演算装置と、命令とデータを記憶するための一つまたは複数のメモリデバイスである。一般に、コンピュータは、データを受信もしくは送信またはその両方を行うために、一つまたは複数の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光学ディスク等も含むか、または、それに動作可能に接続される。しかしながら、コンピュータがそのようなデバイスを有するのは必須ではない。さらに、コンピュータを、例えばいくつか例に挙げると、携帯電話、PDA(personal digital assistant)、携帯音楽またはビデオプレーヤ、ゲーム装置、GPS(Global Positioning System)受信機、または携帯記憶デバイス(例:USB(universal serial bus)フラッシュドライブ)などの他のデバイス中に組み込んでもよい。
コンピュータプログラム命令とデータを記憶するのに適したコンピュータ可読媒体は、例えば、半導体メモリデバイス、例えばEPROM、EEPROM、およびフラッシュメモリと、磁気ディスク、例えば内部ハードディスクまたは取り外し可能ディスクと、光磁気ディスクと、CD−ROMおよびDVD−ROMディスクとを含む、あらゆる形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。プロセッサとメモリを、特殊目的論理回路で補完してもよく、または、それに組み込んでもよい。
ユーザとの対話を提供するために、本明細書で説明した主題の実施形態を、情報をユーザに表示するためのディスプレイ装置、例えばCRT(cathode ray tube)またはLCD(liquid crystal display)モニタと、ユーザがコンピュータに入力を提供できるキーボードおよびポインタデバイス、例えばマウスまたはトラックボールとを備えたコンピュータで実装することができる。他の種類のデバイスを使用して、ユーザとの対話を提供することもできる。例えば、ユーザに提供されるフィードバックが、視覚フィードバック、聴覚フィードバック、または触覚フィードバックのような任意の形の感覚フィードバックであってもよいし、ユーザからの入力を、音響、発話、触覚の入力を含む任意の形式で受信することができる。さらに、コンピュータは、ユーザが使用するデバイスにドキュメントを送信し、当該デバイスからドキュメントを受信することによって、例えば、ウェブブラウザから要求を受信したことに応答して、ユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することで、ユーザと対話することができる。
本明細書で説明した主題の実施形態を、例えばデータサーバとしてのバックエンド要素を含むか、または例えばアプリケーションサーバのようなミドルウェア要素を含むか、または本明細書で説明した主題の実装によりユーザが対話できるグラフィカルユーザインタフェースまたはウェブブラウザを有するクライアントコンピュータのようなフロントエンド要素を含むか、またはかかるバックエンド要素、ミドルウェア要素、またはフロントエンド要素の一つもしくは複数から成る任意の組合せを含む、コンピュータシステムで実装することができる。当該システムの要素を、任意の形式または媒体のデジタルデータ通信、例えば通信ネットワークにより、例えばネットワーク100などのネットワークへと相互接続することができる。通信ネットワークの例には、ローカルエリアネットワーク(LAN)と広域ネットワーク(WAN)、例えばインターネットがある。
上記コンピュータシステムが、クライアントとサーバを含んでもよい。クライアントとサーバは、一般に、互いから離れており、一般に通信ネットワークを介して対話する。クライアントとサーバの関係は、コンピュータプログラムが各コンピュータで実行され互いに対してクライアントサーバの関係を有するために生ずる。
本明細書は具体的な実装の詳細を含むが、それらは発明または請求の範囲を制限するものとして解釈されるべきではなく、本発明の特定の実施形態に固有な特徴の説明として解釈すべきである。個々の実施形態の状況で本明細書で説明した特定の機能を、単独の実施形態の組合せで実装することもできる。反対に、単一の実施形態の状況で説明した様々な機能を、複数の実施形態で別々に、または、任意の適切な副次的組合せで実装することもできる。さらに、上では機能を特定の組合せで動作するとして説明し、当初はそのように特許請求の範囲に記載したが、特許請求の範囲に記載した組合せからの一つまたは複数の機能をいくつかの場合では当該組合せから実行してもよいし、特許請求の範囲に記載した組合せが、副次的な組合せまたは副次的な組合せの変形に関するものであってもよい。
同様に、動作を特定の順序で図面に示したが、これは、所望の結果を得るために、かかる動作を図示した特定の順序または逐次的な順序で実施すべきこと、または、全ての図示した動作を実施すべきことを要求するものとは理解すべきではない。特定の状況では、マルチタスクと並列処理が有利かもしれない。さらに、上述した実施形態の様々なシステムモジュールと要素の分離は、全ての実施形態でかかる分離が必要であるものとして理解されるべきではなく、説明したプログラム要素とシステムを一般に、単一のソフトウェアに統合するか、または、複数のソフトウェアにパッケージできると理解されるべきである。
主題の特定の実施形態を説明した。他の実施形態は、添付の特許請求の範囲に含まれる。例えば、諸請求項に記載した動作を様々な順序で実行でき、所望の結果を達成することができる。一例として、添付図面に示したプロセスは、所望の結果を達成するために必ずしも図示した特定の順序、または逐次的な順序を必要としない。特定の実施形態では、マルチタスクと並列処理が有利かもしれない。
100 ネットワーク
101 ルータ
102 ルータ
110、120、130、140、150、160 ネットワークデバイス
180 監視装置

Claims (20)

  1. デバイスのネットワークを介して所定のパスの集合を表すデータを格納するステップであって、各パスは、データのパケットを転送するためのネットワークデバイスのシーケンスを含むステップと、
    前記所定のパスの各々に沿って一つもしくは複数のパケットを送信するステップであって、各パケットは、前記所定のパスのうち異なるパスに沿って前記パケットを転送するための命令を含むステップと、
    一つもしくは複数の前記送信されたパケットを受信するステップと、
    前記送信されたパケットと前記受信されたパケットを使用して複数の問題のあるパスを識別するステップと、
    前記問題のあるパスを比較するステップと、
    前記問題のあるパスの比較に基づいて2つのネットワークデバイス間の問題のあるリンクを決定するステップと、
    を含むコンピュータによって実行される方法。
  2. いくつかの送信したパケットといくつかの受信したパケットを計算するステップをさらに含む、請求項1に記載の方法。
  3. 前記ネットワークデバイスは、前記所定のパスに沿って前記パケットを転送するように構成されたルータである、請求項1に記載の方法。
  4. 同一のパスに沿って、前記パケットが前回送信された方向と反対方向に、受信したパケットを再送するステップをさらに含む、請求項1に記載の方法。
  5. 前記問題のあるパスを比較するステップは、前記問題のあるパスの一つまたは複数の属性間の相関関係または共通部分を決定するステップを含む、請求項1に記載の方法。
  6. 問題のあるパスは、前記パスに沿って送信された一つまたは複数のパケットが閾値期間内で受信されるパスである、請求項1に記載の方法。
  7. 問題のあるパスは、前記パスに沿って送信された一つまたは複数のパケットが閾値期間内で受信されないパスである、請求項1に記載の方法。
  8. 前記一つまたは複数のパケットを送信するステップは、前記ネットワークの外縁にあるデバイスから前記一つまたは複数のパケットを送信するステップを含む、請求項1に記載の方法。
  9. ネットワークトポロジのデータベースから前記所定のパスの集合を導出するステップをさらに含む、請求項1に記載の方法。
  10. 各パケット中の、宛先インターネットプロトコルアドレスを変更するステップをさらに含む、請求項1に記載の方法。
  11. 前記ネットワークの中の一組の主要なルータを決定するステップと、
    ルータの転送トリプレットから各所定のパスを決定するステップであって、各転送トリプレットが、主要なルータと前記主要なルータの2つの隣接ルータを含むステップと、
    をさらに含む、請求項1に記載の方法。
  12. 異なる所定のパスに沿ってパケットを受信し、前記パケットを転送するようにそれぞれ構成された一つまたは複数のネットワークデバイスであって、各パスは、前記パケットを送受信するためのネットワークデバイスのシーケンスを含む、一つ又は複数のネットワークデバイスと、
    前記一つまたは複数のネットワークデバイスを介して所定のパスの集合を表すデータを格納するステップと、
    前記所定のパスの各々に沿って一つまたは複数のパケットを送信するステップと、
    一つまたは複数の前記送信されたパケットを受信するステップと、
    前記送信されたパケットと前記受信されたパケットを使用して複数の問題のあるパスを識別するステップと、
    前記問題のあるパスを比較するステップと、
    前記問題のあるパスの比較に基づいて2つのネットワークデバイス間の問題のあるリンクを決定するステップと、
    を含む操作を実行するように構成された一つまたは複数のコンピュータと
    を備えたシステム。
  13. 前記ネットワークデバイスは、前記所定のパスに沿って前記パケットを転送するように構成されたルータである、請求項12に記載のシステム。
  14. 前記操作は、同一のパスに沿って、前記パケットが前回送信された方向と反対方向に受信したパケットを再送するステップをさらに含む、請求項12に記載のシステム。
  15. 前記問題のあるパスを比較するステップは、前記問題のあるパスの一つまたは複数の属性間の相関関係または共通部分を決定するステップを含む、請求項12に記載のシステム。
  16. 問題のあるパスは、前記パスに沿って送信された一つまたは複数のパケットが閾値を満たす待ち時間で受信されるパスである、請求項12に記載のシステム。
  17. 問題のあるパスは、前記パスに沿って送信された一つまたは複数のパケットが閾値期間内で受信されないパスである、請求項12に記載のシステム。
  18. 前記一つまたは複数のパケットを送信するステップは、ネットワークの外縁にあるデバイスから前記一つまたは複数のパケットを送信するステップを含む、請求項12に記載のシステム。
  19. 前記操作は、ネットワークトポロジのデータベースから前記所定のパスの集合を導出するステップをさらに含む、請求項12に記載のシステム。
  20. 一つまたは複数コンピュータによって実行されたとき、前記一つまたは複数のコンピュータに、
    デバイスのネットワークを介して所定のパスの集合を表すデータを格納するステップであって、各パスは、データのパケットを転送するためのネットワークデバイスのシーケンスを含むステップと、
    前記所定のパスの各々に沿って一つもしくは複数のパケットを送信するステップであって、各パケットは、前記所定のパスのうち異なるパスに沿って前記パケットを転送するための命令を含むステップと、
    一つもしくは複数の前記送信されたパケットを受信するステップと、
    前記送信されたパケットと前記受信されたパケットを使用して複数の問題のあるパスを識別するステップと、
    前記問題のあるパスを比較するステップと、
    前記問題のあるパスの比較に基づいて2つのネットワークデバイス間の問題のあるリンクを決定するステップと、
    を含む操作を実行させる命令を含む、コンピュータプログラム。
JP2015520180A 2012-06-27 2013-05-06 決定論的ネットワーク障害検出 Pending JP2015526022A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/535,330 US20140003224A1 (en) 2012-06-27 2012-06-27 Deterministic network failure detection
US13/535,330 2012-06-27
PCT/US2013/039774 WO2014003889A1 (en) 2012-06-27 2013-05-06 Deterministic network failure detection

Publications (1)

Publication Number Publication Date
JP2015526022A true JP2015526022A (ja) 2015-09-07

Family

ID=49778034

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015520180A Pending JP2015526022A (ja) 2012-06-27 2013-05-06 決定論的ネットワーク障害検出

Country Status (5)

Country Link
US (1) US20140003224A1 (ja)
EP (1) EP2813035A4 (ja)
JP (1) JP2015526022A (ja)
CN (1) CN104471902A (ja)
WO (1) WO2014003889A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6310405B2 (ja) * 2015-02-06 2018-04-11 日本電信電話株式会社 サービス影響原因推定装置、サービス影響原因推定プログラム、及びサービス影響原因推定方法
US10320648B2 (en) 2015-09-30 2019-06-11 British Telecommunications Public Limited Company Analysis of network performance
EP3357196B1 (en) 2015-09-30 2019-11-06 British Telecommunications public limited company Analysis of network performance
GB2542832B (en) * 2015-09-30 2017-11-01 British Telecomm Analysis of network performance
CN107852347B (zh) 2015-10-08 2019-02-15 英国电讯有限公司 分析包括多个网络节点的网络的网络性能的方法和设备
CN106899447B (zh) * 2016-06-28 2020-07-21 阿里巴巴集团控股有限公司 一种链路确定的方法及装置
US10979350B1 (en) * 2019-11-15 2021-04-13 Cisco Technology, Inc. Distributed DetNet validation using device/segment specific bitstrings in DetNet OAM ACH

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2806374B2 (ja) * 1996-08-19 1998-09-30 日本電気株式会社 Atmバーチャルパス切替ノード
US6683865B1 (en) * 1999-10-15 2004-01-27 Nokia Wireless Routers, Inc. System for routing and switching in computer networks
US7263100B2 (en) * 2002-06-10 2007-08-28 Lucent Technologies Inc. Capacity allocation for fast path restoration
US7428213B2 (en) * 2003-11-21 2008-09-23 Cisco Technology, Inc. Method and apparatus for determining network routing information based on shared risk link group information
US7583593B2 (en) * 2004-12-01 2009-09-01 Cisco Technology, Inc. System and methods for detecting network failure
US7505402B2 (en) * 2005-06-23 2009-03-17 Cisco Technology, Inc. Method and apparatus for providing faster convergence for redundant sites
US8238253B2 (en) * 2006-08-22 2012-08-07 Embarq Holdings Company, Llc System and method for monitoring interlayer devices and optimizing network performance
US7843840B2 (en) * 2007-08-24 2010-11-30 Opnet Technologies, Inc. Traffic independent survivability analysis
US7808919B2 (en) * 2008-03-18 2010-10-05 Cisco Technology, Inc. Network monitoring using a proxy
EP2107733A1 (en) * 2008-03-31 2009-10-07 British Telecommunications Public Limited Company Admission control and routing in a packet network
US20100034098A1 (en) * 2008-08-05 2010-02-11 At&T Intellectual Property I, Lp Towards Efficient Large-Scale Network Monitoring and Diagnosis Under Operational Constraints
US20100165849A1 (en) * 2008-12-29 2010-07-01 Martin Eisenberg Failure Detection in IP Networks Using Long Packets
JP2010219951A (ja) * 2009-03-17 2010-09-30 Fujitsu Ltd 中継方法、送信装置、受信装置および中継装置
JP5283192B2 (ja) * 2009-09-08 2013-09-04 Kddi株式会社 経路制御プロトコルに基づいて障害リンクをリアルタイムに検出する方法、ノード装置及びプログラム
CN102480753B (zh) * 2010-11-24 2016-03-30 中兴通讯股份有限公司 链路状态检测方法和装置
US8661295B1 (en) * 2011-03-31 2014-02-25 Amazon Technologies, Inc. Monitoring and detecting causes of failures of network paths
WO2012106925A1 (zh) * 2011-07-25 2012-08-16 华为技术有限公司 Ip网络故障定位方法、装置及系统

Also Published As

Publication number Publication date
CN104471902A (zh) 2015-03-25
WO2014003889A1 (en) 2014-01-03
EP2813035A1 (en) 2014-12-17
US20140003224A1 (en) 2014-01-02
EP2813035A4 (en) 2016-01-13

Similar Documents

Publication Publication Date Title
JP2015526022A (ja) 決定論的ネットワーク障害検出
US7995574B2 (en) Detection of forwarding problems for external prefixes
JP4658135B2 (ja) データネットワークにおける往復遅延の遠隔推定
US8204980B1 (en) Storage array network path impact analysis server for path selection in a host-based I/O multi-path system
US20100074118A1 (en) System and method for detecting a network failure
US20140376385A1 (en) Mitigating network connection problems using supporting devices
US20140068106A1 (en) Method and system for providing latency detection based on automated latency measurements of communication network paths
EP3232620B1 (en) Data center based fault analysis method and device
JPWO2008023570A1 (ja) 通信ネットワークシステムにおけるネットワーク上の品質劣化箇所を推定する方法
CN112737871B (zh) 链路故障检测方法、装置、计算机设备及存储介质
US20170351560A1 (en) Software failure impact and selection system
CN104598341A (zh) 用于确定在互连/控制器之间的故障的位置的方法和系统
CN104283780A (zh) 建立数据传输路径的方法和装置
Khanna et al. Automated rule-based diagnosis through a distributed monitor system
JP2017121056A (ja) パケット紛失検出を実装するための方法、装置、およびシステム
Chang et al. Lancet: Better network resilience by designing for pruned failure sets
US20120253772A1 (en) Path failure importance sampling
WO2012106914A1 (zh) 动态隧道故障诊断方法及设备和系统
CN108512698B (zh) 一种网络容灾方法、装置及电子设备
Tati et al. netCSI: A generic fault diagnosis algorithm for large-scale failures in computer networks
US10931796B2 (en) Diffusing packets to identify faulty network apparatuses in multipath inter-data center networks
JP6439701B2 (ja) 通信装置、パケット監視方法及びコンピュータプログラム
WO2011107049A2 (zh) 一种lsp路径检验方法及检测系统
CN107154882B (zh) Bfd会话建立方法及装置
US9705768B2 (en) Distributed fault isolation in connected networks

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20151030

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20151127