JP2005080291A - Bgpルータートポロジーを検出するシステム及び方法 - Google Patents
Bgpルータートポロジーを検出するシステム及び方法 Download PDFInfo
- Publication number
- JP2005080291A JP2005080291A JP2004240949A JP2004240949A JP2005080291A JP 2005080291 A JP2005080291 A JP 2005080291A JP 2004240949 A JP2004240949 A JP 2004240949A JP 2004240949 A JP2004240949 A JP 2004240949A JP 2005080291 A JP2005080291 A JP 2005080291A
- Authority
- JP
- Japan
- Prior art keywords
- router
- bgp
- peer
- detection engine
- information
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】BGPルータートポロジーを正確且つ効率的に自動検出する技法を提供する。
【解決手段】本発明は、対象ドメイン内のルーティングトポロジーを検出するためのシステム及び方法に関するものである。更に詳しくは、対象のドメインに関して、特定のプロトコル(例:BGP)によって通信するルーターのトポロジーを検出することができる。特定の実施例によれば、指定した対象ドメイン内のBGPルーターを自動的に検出可能なBGP検出エンジンが提供される。このBGP検出エンジンは、入力として、対象ドメインとその対象ドメイン内のシードBGPルーターの識別名を受け取り、対象ドメイン内において識別されたBGPルーターに対して、その対象ドメイン内のBGPルーターのトポロジーを作成するための情報に関して再帰的な問合せを行うことができる。
【選択図】図3
【解決手段】本発明は、対象ドメイン内のルーティングトポロジーを検出するためのシステム及び方法に関するものである。更に詳しくは、対象のドメインに関して、特定のプロトコル(例:BGP)によって通信するルーターのトポロジーを検出することができる。特定の実施例によれば、指定した対象ドメイン内のBGPルーターを自動的に検出可能なBGP検出エンジンが提供される。このBGP検出エンジンは、入力として、対象ドメインとその対象ドメイン内のシードBGPルーターの識別名を受け取り、対象ドメイン内において識別されたBGPルーターに対して、その対象ドメイン内のBGPルーターのトポロジーを作成するための情報に関して再帰的な問合せを行うことができる。
【選択図】図3
Description
本発明は、選択した対象ドメイン内におけるイントラドメインルーター及びインタードメインルーターの検出に関し、更に詳しくは、対象ドメイン内のBGP(Border Gateway Protocol、境界ゲートウェイプロトコル)ルータートポロジーを検出するシステム及び方法に関するものである。
インターネットは、いまや、協調性を有しつつ競合するインターネットサービスプロバイダ(ISP)の緩やかな連合体に発展している。それぞれのISPがアクセス可能なネットワークに関する情報は、通常、BGP(Border Gateway Protocol)を使用して伝達される。このプロトコルは、ISPによる相互間のルーティング情報の交換を実現するべく設計されたものである。それぞれのISPは、相互接続されると共に、通常、ISPのネットワークの論理的境界においてその他のISPのルーターと相互接続されているルーター(ネットワーク間でパケットを転送する専用装置)の組を維持管理している。
相互接続されたコンピュータネットワークの大規模システムを管理することは困難なことであるため、1つの企業内で、コンピュータネットワークの小さなグループをAS(Autonomous System、自律システム)又はルーティングドメインとして維持管理することができる。一般的には、それぞれの企業ごとに1つのASを維持管理している。ルーティングドメイン内のルーターは、通常、「イントラドメイン」ルーターとルーティングプロトコルによってルートを伝達する。そして、「インタードメイン」ルーティングプロトコルを実行する「インタードメイン」ルーターを使用し、様々なルーティングドメインのノードを相互接続する。インタードメインルーティングプロトコルの一例がBGPであり、これは、システムのインタードメインルーター間においてルーティング及びアクセス可能性情報を交換することにより、AS間におけるルーティングを実行する。BGPルーターと呼ばれるBGPプロトコルを実行するべく構成されたインタードメインルーターは、ルーティングテーブルを維持管理し、ルーティング更新メッセージを伝送すると共に、ルーティング基準に基づいてルーティングの決定を行う。
それぞれのBGPルーターは、特定のネットワークに対するすべての実現可能な経路を列挙した(BGPに関連する)ルーティングテーブルを維持管理している。1つ又は複数のASの内と外の両方に存在するBGPピアルーターは、特定の状況においてルーティング情報を交換する。通常、ルーティングテーブルには、追加的な更新が加えられる。例えば、BGPルーターが初めてピアルーターに接続する際には、それらは、それぞれのルーティングテーブルの内容の全体を交換することができる。そして、その後、それらの内容に変更が生じた場合には、それらのルーターは、それぞれのピアのテーブルを更新するべく、変化したそれぞれのルーティングテーブルの該当部分のみを交換する。尚、このBGPルーティングプロトコルについては、周知であり、例えば非特許文献1および非特許文献2に更に詳しく記述されている。
残念ながら、ネットワークに障害はつきものである。情報に基づいた現代の経済は通信ネットワークに大きく依存しており、ネットワークに障害が発生すると、情報の主なチャネルをそれらのネットワークに依存している組織に深刻な影響が及ぶことになる。通常、ネットワーク管理とは、ネットワークの完全性を維持管理するプロセスを意味している。これには、通常、ネットワーク要素及びサービスの状態の観察、ネットワークトラフィックの監視、ネットワークのトラブルシューティング、ネットワークに対する変更の実施、及びネットワークに加えた変更が望ましい効果を発揮するようにすることなどの機能が必要とされる。インターネットなどの通信ネットワークのサイズ、多様性、及びこれに対する依存性の拡大に伴い、ネットワーク管理は、益々その重要性を増している。従って、高品質なネットワーク管理が益々重要になっているのである。
ネットワーク管理者は、数多くの複雑な技術的難問に直面している。例えば、ネットワークコンポーネントは、多種多様であって、物理的に分散しており、多くの環境において、ネットワークは、ルーターなどの装置の追加又は除去に伴うほとんど絶え間のない変化に晒されている。従って、ネットワーク管理者は、通常、ネットワーク内における様々な装置とそれぞれの装置の状態を追跡し、問題が発生した場合には、ネットワークに対する被害を極小化するべく、それらの問題を検出し、トラブルシュートするという困難なタスクを有している。
ネットワーク管理者を支援するべく、既に様々なネットワーク管理ツール(例:コンピュータプログラム)が開発されている。例えば、ネットワーク要素及びネットワークサービスを管理するためのツールが提供されている。構成管理ツールは、ルーティング装置の構成に対する変更履歴を示す監査証跡を生成可能であり、ネットワークプローブから情報を収集し、ネットワーク管理者にネットワークの状態を表すデータを提示するべく、ネットワーク管理ステーションを実装することも可能である
Y. Rekhter and T. Li, "Request For Comments (RFC) 1771", 1995 R. Perlman, "Interconnections, Bridges and Routers", pp. 323-329, Addison Wesley Publishing Company, 1992
Y. Rekhter and T. Li, "Request For Comments (RFC) 1771", 1995 R. Perlman, "Interconnections, Bridges and Routers", pp. 323-329, Addison Wesley Publishing Company, 1992
ネットワーク内におけるBGPルーターとそれらの間の関係などのルーティングトポロジーを検出するための技法に対するニーズが存在している。従来のネットワーク管理技法/システムを使用すれば、ネットワーク管理者は、BGPとはまったく関係のないホスト及びルーターを含むネットワーク内のすべての装置を検出することは可能である。しかしながら、その検出範囲をBGPルーターのみに限定する(焦点を絞る)ことが望ましい場合がしばしば存在する。例えば、ネットワーク管理者がBGPルーター及びBGPルーターのみを監視及び観察することを所望する場合がある(例えば、BGPトポロジーを観察するべく、ネットワーク管理システム内に特定のトリガ又はルールを実装する場合)。従来、ネットワーク管理者には、監視対象のそれぞれのBGP装置ごとに多数の情報を入力することが要求されている。
従来の技法を使用し、ネットワーク管理者がネットワーク内のBGPルーターに対してモニタを設定しようとする場合には、ネットワーク管理者は、ネットワークに対して問合せを行い、ネットワーク上のすべての装置を検出し、次いで、その情報を手作業でフィルタリングしてBGPルーターを検出している。多くの場合、ネットワーク管理者は、ネットワーク内における様々な装置に関する情報を含むネットワーク用のデータベースを維持管理している。ネットワーク管理者は、このデータベースを検索し、ネットワーク内のどのルーターがBGPルーターであるかを識別し、次いで、それらのBGPルーターとそれらの間の関係(例:そのピアが誰であるのか)を列挙するフラットファイルを生成することができる。この技法を使用すれば、ネットワーク管理システムに、BGPルータートポロジーデータを供給することができる。しかしながら、この技法は、ネットワーク管理者によるデータベースの生成及び管理が必要とされるという点において、非効率的であり、ネットワーク管理者による手作業のデータ入力が必要とされるため、誤りが発生する可能性が極めて大きい。
従来のネットワーク管理システムにおいては、一例として、ネットワーク内のすべてのBGPルーターを監視するには、ユーザーが外部及び内部ピアの両方を含むそれぞれのルーターごとの特定のピアリングマップと共に、監視対象のそれぞれのBGPルーターのIP(Internet Protocol、インターネットプロトコル)アドレス又はルーター名、並びにSNMP(Simple Network Management Protocol、簡易ネットワーク管理プロトコル)アクセス情報を手作業で入力する必要がある。これには、中規模サイズのネットワークの場合でも、大量の時間を所要し、データ入力に誤りが発生しやすく、且つ、ネットワーク内におけるBGPルーター及びピアのトポロジーに関する先見的な知識が必要とされる。
従って、BGPルータートポロジーを正確且つ効率的に検出する技法に対するニーズが存在している。具体的には、このようなトポロジーをユーザーが手作業で(例:データベースの検索やネットワーク内の全装置のリストのフィルタリングによって)識別する必要のないBGPルータートポロジーを検出する技法に対するニーズが存在しているのである。
本発明は、対象ドメイン内のルーティングトポロジーを検出するためのシステム及び方法に関するものである。更に詳しくは、特定の実施例によれば、対象のドメインに関して、特定のプロトコル(例:BGP)によって通信するルーターのトポロジーを検出することができる。特定の実施例によれば、指定した対象ドメイン内のBGPルーターを自動的に検出可能なBGP検出エンジンが提供される。例えば、このBGP検出エンジンは、入力として、対象ドメインとその対象ドメイン内の「シード(seed)」BGPルーターの識別名(identification)を受け取り、対象ドメイン内において識別されたBGPルーターに対して、その対象ドメイン内のBGPルーターのトポロジーを作成するための情報に関して再帰的な問合せを行うことができる。例えば、このBGP検出エンジンは、まず、シードBGPルーターに対して、そのピア(peer)テーブルに関して問合せを行い、次いで、そのピアテーブルにおいて識別されたそれぞれのピアルーターに対し、それらの個々のピアルーターに関して問合せを行い、BGP検出エンジンが、対象ドメイン内のすべてのBGPルーターに対して問合せを行い、それらから受信した情報を使用してその対象ドメイン内のBGPルーターのトポロジーを作成する作業を完了する時点まで、これを継続することができる。
一実施例によれば、後述するように、オペレータ(例:ネットワーク管理者)は、この検出エンジンに対して、1つのBGPルーターの識別名(例:BGPルーターの名称又はIPアドレス)、対象の1つ又は複数のAS(Autonomous System)の識別名(例:対象ドメインを形成する1つ又は複数のASのAS番号)、及びSNMPアクセス情報を供給する。検出エンジンは、この情報を使用し、対象ドメイン内において検出されたBGPルーターに対して再帰的な問合せを行い、対象ドメイン内におけるすべてのBGP対応ルーターのIPアドレス、名称、及びピアリストを作成する。
この結果、本発明の実施例によれば、オペレータ(例:ネットワーク管理者)に要求される作業量を最小限に抑えつつ、対象ドメイン内のルーター(例:BGPルーター)のトポロジーを正確且つ効率的に作成することができる。このBGP検出エンジンの実施例は、ネットワーク管理システム、ルーティング管理ソフトウェア、ネットワークマッピングツール、ルーター構成ツール、及び/又はBGPピアトポロジーの知識が求められるその他のアプリケーションを含む(但し、これらに限定されない)対象ドメイン内におけるBGPルーターのトポロジーに関する情報をアプリケーション内で自己供給する様々なアプリケーションに使用可能である。
特定の実施例によれば、方法は、検出エンジンにおいて、対象ドメインの識別名とこの対象ドメイン内のシードルーターの識別名を受け取るステップを有している。検出エンジンは、シードルーターに対して、そのピアルーターの識別名を含む情報に関して問合せを行い、検出エンジンは、シードルーターから情報を受信する。そして、このシードルーターから受信した情報から、検出エンジンは、シードルーターの少なくとも1つのピアルーターを判定する。次いで、検出エンジンは、この判定されたシードルーターの少なくとも1つのピアルーターに対して、そのピアルーターの識別名を含む情報に関して問合せを行う。そして、検出エンジンは、対象ドメイン内におけるルーターのトポロジー情報を作成する。
特定の実施例によれば、BGPルーター検出エンジンは、コンピュータ可読媒体に保存されたコンピュータ実行可能ソフトウェアコードを有しており、このコンピュータ実行可能ソフトウェアコードは、対象ドメイン内のシードBGPルーターに対して、そのピアテーブルの情報に関して問合せを行うコードを有している。更に、このコンピュータ実行可能ソフトウェアコードは、シードBGPルーターからピアテーブル情報を受信するコードと、シードBGPルーターから受信したピアテーブル情報からシードルーターのそれぞれのピアルーターを判定するコードと、シードルーターのそれぞれのピアルーターに対して、その個々のピアテーブルの情報に関して問合せを行うコードと、を有している。又、BGPルーター検出エンジンは、コンピュータ実行可能ソフトウェアコードを実行するためのプロセッサをも有している。
特定の実施例によれば、システムは、対象ドメイン内の識別されたBGPルーターに対して、それらの個々のピアテーブルに関して再帰的な問合せを行い、それらの個々のピアテーブルから、対象ドメイン内のそれらの個々のピアBGPルーターを識別する手段を有している。又、このシステムは、問合せ先のBGPルーターから受信した情報から対象ドメイン内のBGPルーターのトポロジーを作成する手段をも有している。
以上の説明は、以下の本発明に関する詳細な説明を十分に理解できるように、本発明の特徴と技術的な利点に関して、かなり広範に概説したものであり、本発明の請求項の主題を構成する本発明の更なる特徴及び利点については後述する。尚、開示される概念及び特定の実施例は、本発明と同一の目的を実現するべく、その他の構造を変更又は設計するための基礎として容易に利用可能であることを理解されたい。又、その等価構造は、添付の請求項に記述されている本発明を逸脱するものではないことについても理解されたい。その組織及び動作方法の両方の観点において本発明の特徴を表すと考えられる新しい特徴については、更なる目的及び利点と共に、添付の図面との関連で以下の説明を参照することにより、十分に理解されよう。しかしながら、それぞれの図面は、例示及び説明を目的として提供されているに過ぎず、本発明の範囲を定義することを意図するものではないことを明確に理解されたい。
図1は、本発明の実施例を利用可能な代表的なコンピュータネットワーク100の概略ブロックダイアグラムを示している。コンピュータネットワーク100は、インタードメインルーター102と呼ばれる中間ノードによって相互接続された複数のAS(Autonomous System)又はルーティングドメインを有している。この図1の例に示されているように、インターネットサービスプロバイダ(ISP)のドメインには、インタードメインルーター102によって相互接続された複数のルーティングドメイン(AS4、AS3)を含むことができる。インタードメインルーター102は、ローカルエリアネットワーク(LAN)などの共有媒体ネットワーク103やフレームリレーリンクなどのポイントツーポイントリンク104、非同期転送モードリンクやその他のシリアルリンクによって相互接続可能である。ルーター101及び102は、BGPルーターを構成することができる。BGPを使用する単一のAS内のルーターは、IBGP(Interior BGP、内部BGP)を使用して互いにルートを交換し、BGPを使用するASを横断して通信するルーターは、EBGP(Exterior BGP、外部BGP)を使用する。周知のように、BGPは、例えば、インターネット内のルーターに共通的に使用されるEGP(Exterior Gateway Protocol、外部ゲートウェイプロトコル)であり、サブタイプであるEBGP及びIBGPは、このプロトコル仕様によって定義されている。
それぞれのルーターは、通常、プロセッサ、メモリ、及びネットワークインターフェイスアダプタなどの複数の相互接続された要素を有している。図2は、バス203を介してメモリ202と複数のネットワークインターフェイスアダプタ204A、204B、及び204Cに接続されたルートプロセッサ201を有する代表的なBGP対応インタードメインルーター102又はイントラドメインルーター101の概略ブロックダイアグラムを示している。ネットワークインターフェイス204A〜204Cは、その他のBGP対応ルーターRA〜Cに接続可能である。メモリ202は、当技術分野において周知のように、ソフトウェアプログラムとデータ構造を保存するべく、プロセッサ201によってアドレス指定可能なストレージ位置とインターフェイスアダプタ204A〜204Cを有することができる。例えば、メモリ202は、ピアテーブル202A及びルーティングテーブル202Bなどのデータ構造を保存することができる。
ルートプロセッサ201は、ソフトウェアプログラムを実行しデータ構造を操作するための処理要素又はロジックを有することができる。一般に、その一部が通常メモリ202内に存在しルートプロセッサ201によって実行されるオペレーティングシステム(OS)が、特に、ルーター上で稼働するソフトウェアプロセスをサポートするネットワーク動作を起動することにより、ルータが機能的に組織化される。当業者には、プログラム命令を保存及び実行するべく、ルーター102内において、様々なコンピュータ可読媒体を含むその他のプロセッサ及びメモリ手段を使用可能であることは明らかであろう。
BGPプロトコルに従ってルーティング操作を実行するべく、それぞれのBGP対応インタードメインルーター102及びイントラドメインルーター101は、一般に、ルーターのピアルーター(当該ルーターがBGPセッションを有する相手のルーター)を識別するピアテーブル202Aと、特定のネットワークに対するすべての実現可能な経路を列挙したルーティングテーブル202Bを維持管理している。又、ルーターは、それぞれのルーティングテーブルが変更された場合に、ルーティング更新メッセージを使用し、ルーティング情報を交換する。このルーティング更新メッセージは、コンピュータネットワーク全体において、その隣接するピア(受信)ルーターのそれぞれに対する最適な経路を通知する更新(送信)ルーターによって生成される。このようなルーティング更新により、BGPルーターは、首尾一貫した最新のネットワークトポロジーのビューを構築することができる。
後述するように、本発明の実施例によれば、対象ドメイン内におけるルーティングトポロジーを検出するシステム及び方法が提供される。具体的には、特定の実施例によれば、対象のドメインに関して、特定のプロトコル(例:BGP)によって通信するルーターのトポロジーを検出することができる。特定の実施例においては、特定の対象ドメイン内のBGPルーターを自動的に検出可能なBGP検出エンジンが提供される。例えば、このBGP検出エンジンは、入力として、対象ドメインとその対象ドメイン内の「シード」BGPルーターの識別名を受け取り、対象ドメイン内において識別されたBGPルーターに対し、その対象ドメイン内のBGPルーターのトポロジーを作成するための情報に関して再帰的な問合せを行うことができる。例えば、BGP検出エンジンは、まず、シードBGPルーターに対して、そのピアテーブルに関して問合せを行い、次いで、ピアテーブル内において識別されたそれぞれのピアルーターに対して、それらの個々のピアルーターに関して問合せを行い、BGP検出エンジンが、対象ドメイン内のそれぞれのBGPルーターに対して問合せを行い、それらから受信した情報を使用してその対象ドメイン内のBGPルーターのトポロジーを作成する作業を完了する時点まで、これを継続することができる。
後述する一実施例によれば、オペレータ(例:ネットワーク管理者)は、検出エンジンに対して、1つのBGPルーターの識別名(例:BGPルーターの名称又はIPアドレス)、対象の1つ又は複数のAS(Autonomous System)の識別名(例:対象ドメインを形成する1つ又は複数のASのAS番号)、及びSNMPアクセス情報を供給する。SNMPを使用して装置との間で情報の読み取り/書き込みが可能であるため、その使用法には制限が課されている。最も基本的な読み取りアクセスの場合にも、パスワード又はその他のアクセス情報又は構成が必要とされる。この検出エンジンが受け取った情報を使用し、対象ドメイン内のすべてのBGP対応ルーターのIPアドレス及びピアリストを検出することができる。尚、対象ドメインを1つのASに限定する必要がないことを認識されたい。例えば、いくつかのASが1つの管理ドメインの下に存在している場合には、検出エンジンに対してこれらのAS番号を供給することにより、これらのASに跨った検出が同様に可能である。
本発明の実施例は、「ルートの同期を維持するべく、AS内のすべてのBGPルーターは、ルートサーバーに対して完全に統合又は接続されていることを必要とする」というBGPの属性を活用するものである。1つのBGPルーターのシードアドレスを取得し、標準的なBGPのMIB(Management Information Base、管理情報ベース)のSMNP問合せを実行することにより、検出エンジンは、シードルーターのピアテーブルを判定することができる。ピアテーブルには、シードルーターがピアとなるべく構成されたそれぞれのルーターのIPアドレス及びAS番号などの情報が含まれている。そして、シードテーブル内のASと一致するAS(即ち、対象ドメイン内のAS)を有するピアテーブル内のすべてのルーターに対して、同様に、それらの個々のピアテーブルに関して問合せが行われる。一方、ASがASシードリスト内に含まれていない(即ち、対象ドメインに含まれていない)ものに対しては、問合せは行われず、外部ピアというラベルが付加される(これも重要なトポロジー情報である)。ピアテーブルには、それぞれのピアリングセッションの状態も含まれている。この状態情報により、検出エンジンは、無効ピアリングセッションの調査をスキップすることができるが、この情報を使用してトポロジーデータベース(又は「検出テーブル」)に記入することも可能である。尚、無効ピアリングセッションは、ルーターにTCP以外の接続が存在しているか、或いはルーターがピアとして構成されていないことを示すものである。
この結果、本発明の実施例によれば、オペレータ(例:ネットワーク管理者)側に要求される作業量を最小限に抑えつつ、対象ドメイン内のルーター(例:BGPルーター)のトポロジーを正確且つ効率的に作成することができる。このBGP検出エンジンの実施例は、ネットワーク管理システム、ルーティング管理ソフトウェア、ネットワークマッピングツール、ルーター構成ツール、及び/又はBGPピアトポロジーの知識が求められるその他のアプリケーションを含む(但し、これらに限定されない)対象ドメイン内におけるBGPルーターのトポロジーに関する情報をアプリケーション内で自己供給する様々なアプリケーションにおいて使用可能である。
図3は、本発明の実施例のBGP検出エンジン301を実装可能なシステム300のブロックダイアグラムの例を示している。図示のごとく、システム300は、AS1、AS2、AS3、及びAS4を有している。AS1は、インタードメインBGPルーターA及びBとイントラドメインBGPルーターCを含んでいる。AS2は、インタードメインBGPルーターD及びFとイントラドメインBGPルーターEを含んでいる。AS3は、インタードメインBGPルーターGとイントラドメインBGPルーターHを含み、AS4は、インタードメインBGPルーターIとイントラドメインBGPルーターJ及びKを含んでいる。BGP検出エンジン301は、データストレージ303と通信可能に接続されており、このデータストレージは、メモリ(例:ランダムアセクスメモリ(RAM))、光ディスク、フロッピーディスクなどを含む適切なデータストレージ装置を有することができる。後述するように、BGP検出エンジン301は、情報をシードテーブル304及びBGP検出テーブル305に保存することができる。
本発明の実施例によれば、BGP検出エンジン301は、BGP検出テーブル305に特定の対象ドメインのピアBGPルーターに関する情報を記入するべく動作可能である。例えば、BGP検出エンジン301には、図3の例のAS1やAS2などの対象のドメイン(例:AS)を指定する入力302を(例えば、ユーザー又は別のアプリケーションから)供給することができる。この入力302には、図3の例のBGPルーターAなどの対象ドメイン内の「シード」BGPルーターが更に指定されている。BGP検出エンジン301は、この入力情報から対象ドメイン内のピアBGPルーターを検出するべく動作可能であり、特定の実装例においては、BGP検出テーブル305内に、ピアBGPルーターの識別名と共に、それら検出されたBGPルーターに関するその他の望ましい情報(例:それらの関係)を含むことができる。
図3の例においては、BGP検出エンジン301が受け取った入力302には、対象ドメインとしてAS1及びAS2が指定され、対象ドメイン内の「シード」BGPルーターとしてBGPルーターAが指定されている。この実施例においては、BGP検出エンジン301は、対象ドメイン(AS1及びAS2)の識別名をシードテーブル304に保存する。そして、このBGPルーターAの識別名(例:そのIPアドレス)の受領に応答し、BGP検出エンジン301は、BGPルーターAに対して通信可能に接続し、このルーターに対して、そのピアBGPルーターの識別名、並びにそれぞれのピアBGPルーターのASの識別名に関して問合せを行う。この問合せにより、BGPルーターから、それらピアBGPルーターのそれぞれの現在の状態に関する識別名などのその他の情報を返すことも可能である。後述する一実施例においては、シードBGPルーターに対して、そのピアテーブルに関する問合せが行われ、その結果、ピアテーブルの様々な情報をBGP検出エンジン301に返すことができる。尚、この例においては、図3内のそれぞれのルーターは、EBGP、IBGP、又はこれらの両方に対応していると仮定していることに留意されたい。これらのネットワークには、BGPに対応していないその他のルーターやノードも接続されていると仮定しているが、これらは、BGP検出エンジン301によって無視されることになる(これが主な利点である)。
BGP検出エンジン301は、この受信した情報を使用し、BGP検出テーブル305の記入を開始する。この時点において、シードルーターであったことから、BGP検出エンジン301は、BGPルーターAが対象ドメイン内に含まれていると判定することができる。そして、このシードルーターに対する問合せ結果から、BGP検出エンジン301は、対象ドメイン内には、シードBGPルーターAのピアとして、BGPルーターB、C、及びDも含まれていると判定することができる。具体的には、BGP検出テーブル305は、次の表2に示されているように記入されることになる。
従って、この時点において、対象ドメイン(AS1及びAS2)内には、4つのBGPルーターA〜Dが存在していることが判明する。更に、表2に示されているように、BGPルーターAはAS1内に存在しており、これは、ピアBGPルーターB及びCを有すると共に(これらも同様にAS1内に存在している)、AS2に含まれるピアBGPルーターDをも有していることがわかる。このようにして、BGP検出テーブル305内において、対象ドメイン内のBGPルーターのトポロジーの作成が開始される。
本発明の実施例によれば、次いで、BGP検出エンジン301は、対象ドメイン内に存在する検出されたピアBGPのそれぞれに対して問合せを行い、それら自身のピアBGPルーターの検出を行う。例えば、BGP検出エンジン301は、次いで、シードBGPルータAに対して問合せを行ったのと同様の方法により、検出済みのBGPルーターBに対して問合せを行うことができる。このBGPルーターBに対するBGP検出エンジン301からの問合せに応答し、図3の例の場合には、BGP検出エンジン301に、次の表3の情報が返されることになる。
BGP検出エンジン301は、この受信した情報を使用し、BGP検出テーブル305の記入を継続する。この時点で、BGP検出エンジン301は、AS1内のBGPルーターBは、ピアBGPルーターA(これは既に判明している)と、AS1内のC及びAS3内のピアBGPルーターGを有していると更に判定することができる。但し、AS3は、対象ドメインに含まれていないため、BGPルーターGは、BGP検出テーブル305には含まれない。しかしながら、図4の例に関連して後述するように、特定の実施例においては、BGP検出テーブル305において、対象ドメイン外の別のBGPルーターに対するBGPルーターBのインターフェイスを識別することができる。このようにして、BGP検出テーブル305は、更に更新され、次の表4に示されているように、BGPルーターBに関する新たに検出された情報(例:ピアとしてBGPルーターCを有し、BGPルーターCは、ピアとしてBGPルーターBを有している)を反映することができる。
次に、BGP検出エンジン301は、シードBGPルーターAに対して問合せを行ったのと同様の方法により、検出済みのBGPルーターCに対して問合せを行うことができる。このBGPルーターCに対するBGP検出エンジン301からの問合せに応答し、図3の例の場合には、BGP検出エンジン301に、次の表5の情報が返されることになる。
BGP検出エンジン301は、この受信した情報を使用し、BGP検出テーブル305の記入を継続する。この時点で、BGP検出エンジン301は、AS1内のBGPルーターCは、前述の検出結果からいずれも既に判明しているピアBGPルーターA及びBを有していると更に判定することができる。そして、BGPルーターCは、更なるピアBGPルーターを有していないため、BGP検出テーブル305には、なにも追加されない。
次に、BGP検出エンジン301は、シードBGPルーターAに対して問合せを行ったのと同様の方法により、AS2の検出済みのBGPルーターDに対して問合せを行うことができる。このBGPルーターDに対するBGP検出エンジン301からの問合せに応答し、図3の例の場合には、BGP検出エンジン301に、次の表6の情報が返されることになる。
BGP検出エンジン301は、この受信した情報を使用し、BGP検出テーブル305の記入を継続する。この時点で、BGP検出エンジン301は、AS2内のBGPルーターDは、AS1内のピアBGPルーターA(これは、既に判明している)と、AS2内のピアBGPルーターE及びFを有していると更に判定することができる。このようにして、BGP検出テーブル305は、更に更新され、次の表7に示されているように、BGPルーターDに関して新しく検出された情報を反映することができる。
従って、この時点において、対象ドメイン(AS1及びAS2)内には、6つのBGPルーターA〜Fが存在することが判明している。更に、表7に示されているように、BGPルーターA〜Cは、AS1内に存在しており、それぞれが互いをピアBGPルーターとして有していることがわかる。更に、表7からは、BGPルーターAが、AS2のBGPルーターDをピアBGPルーターとして有しており、BGPルーターDは、AS2内にピアとしてBGPルーターE及びFを有していることがわかる。このようにして、BGP検出テーブル305内において、対象ドメイン内のBGPルーターのトポロジーが更に詳細に作成される。
次に、BGP検出エンジン301は、シードBGPルーターAに対して問合せを行ったのと同様の方法により、検出済みのBGPルーターFに対して問合せを行うことができる。このBGPルーターFに対するBGP検出エンジン301からの問合せに応答し、図3の例の場合には、BGP検出エンジン301に、次の表8の情報が返されることになる。
BGP検出エンジン301は、この受信した情報を使用し、BGP検出テーブル305の記入を継続する。この時点において、BGP検出エンジン301は、AS2内のBGPルーターFは、AS2内のピアBGPルーターD(これは、既に判明している)及びEと、AS4内のピアBGPルーターIを有していると更に判定することができる。但し、AS4は、対象ドメインに含まれていないため、BGP検出テーブル305内にBGPルーターIは含まれない。しかしながら、図4の例に関して後述するように、特定の実施例においては、BGP検出テーブル305内において、対象ドメイン外の別のBGPルーターに対するBGPルーターFのインターフェイスを識別することができる。このようにして、BGP検出テーブル305は、更に更新され、次の表9に示されているように、BGPルーターFに関する新たに検出された情報(例:ピアとしてBGPルーターEを有し、BGPルーターEは、ピアとしてBGPルーターFを有している)を反映することができる。
次に、BGP検出エンジン301は、シードBGPルーターAに対して問合せを行ったのと同様の方法により、検出済みのBGPルーターEに対して問合せを行うことができる。このBGPルーターEに対するBGP検出エンジン301からの問合せに応答し、図3の例の場合には、BGP検出エンジン301に、次の表10の情報が返されることになる。
BGP検出エンジン301は、この受信した情報を使用し、BGP検出テーブル305の記入を継続する。この時点において、BGP検出エンジン301は、AS1内のBGPルーターEは、いずれも前述の検出結果から既に判明しているピアBGPルーターA及びBを有していると判定することができる。そして、BGPルーターEは、更なるピアBGPルーターを有していないため、BGP検出テーブル305には、なにも追加されない。このようにして、この時点で、BGP検出テーブル305により、対象ドメイン(AS1及びAS2)内のBGPルーターの完全なトポロジーが提供されており、このトポロジーは、対象ドメイン(AS1及びAS2)と、この指定された対象ドメイン内のシードBGPルーター(BGPルーターA)を指定する入力302に応答し、BGP検出エンジン301によって独自に構築されたものである。
次に図4を参照し、図示されている例示用のシステム400との関連で、BGP検出エンジン301の一実施例の更に具体的な動作例について説明する。この例において、BGP検出エンジン301は、ワークステーションWS1上に存在している。本発明の一実施例の動作の一例として、BGP検出エンジン301には、対象ドメインとしてAS1が、そして、この対象ドメイン内のBGPルーター(この例においては、BGPルーターA)の識別子としてIPアドレス10.2.1.1が供給されるものと仮定しており、この場合に、SNMPバージョン1が使用され、BGP検出エンジン301には、更に、AS1内のルーターの読み出し専用アクセス用のコミュニティストリングが入力され、これらのルーターは、すべて同一のコミュニティストリングを有するものと仮定している。尚、この例においては、ユーザー(例:ネットワーク管理者)は、IPアドレス10.2.1.1を入力しているが、ユーザーは、シードBGPルーターとして供給するために、AS1内の3つのルーターの6つのインターフェイスのどれでも選択可能であることを認識されたい。
次いで、BGP検出エンジン301は、(受け取ったIPアドレス10.2.1.1により)BGPルーターAに対してSNMP問合せを実行し、bgpPeerTableのMIBを要求する。そして、これに応答し、次の表11に類似したテーブルが返される。
この表12の情報を使用し、BGP検出エンジン301は、BGP検出テーブル305(これは、「トポロジーマップ」と呼ぶことができる)に対して、そのリモートアドレス及びAS番号によって識別される2つの内部ピア(BGPルーターB及びC)と1つの外部ピア(AS5のBGPルーター)を記入する。この結果、BGP検出エンジン301は、シードルーターAに対する第2のインターフェイスを識別することになる。即ち、BGP検出エンジン301は、シードルーターAが、インターフェイス10.2.1.1(これは、この例において、検出エンジンに入力されたシードアドレスであった)のみならず、ルーターB及びCとのIBGPピアリングに使用される10.102.1.1というアドレスのインターフェイスをも有していることを識別する。表12内の最初の2つのエントリは、AS1に関するものであり(これは、シードAS(即ち、「対象ドメイン」)である)、第3のエントリは、BGP検出エンジン301がSNMPアクセスを有していない外部ピアであることから、エンジンは、新しい問合せを、まず、10.101.1.1(BGPルーターB)に対して、次いで、10.100.1.1(BGPルーターC)に対して送信し、再度、これらのBGPルーターのそれぞれに対して、bgpPeerTableのMIBテーブルを要求する。
この表13の情報を使用し、BGP検出エンジン301は、BGP検出テーブル305(又は「トポロジーマップ」)に、そのリモートアドレス及びAS番号(10.3.1.6におけるAS6と10.3.1.7におけるAS7)によって識別される2つの新しい外部ピアを記入する。又、インターフェイス10.3.1.1がAS7及びAS6とのピアリング用のローカルインターフェイスとして列挙されているため、このインターフェイス10.3.1.1をルーターBに追加する
10.2.1.1は、シードアドレスであり、AS6及びAS7は、外部ピアであるため、BGP検出エンジン301は、更に10.100.1.1に対してのみ、bgpPeerTableに関する問合せを行うことにより、次の簡略化された表14が生成される。
10.2.1.1は、シードアドレスであり、AS6及びAS7は、外部ピアであるため、BGP検出エンジン301は、更に10.100.1.1に対してのみ、bgpPeerTableに関する問合せを行うことにより、次の簡略化された表14が生成される。
BGP検出エンジン301は、BGP検出テーブル305(又は、「トポロジーマップ」)に、そのリモートアドレス及びAS番号(10.1.1.2におけるAS2、10.1.1.3におけるAS3、及び10.1.1.4におけるAS4)によって識別される3つの新しい外部ピアを記入する。又、インターフェイス10.1.1.1が、AS2、AS3、及びAS4とのピアリングのために列挙されたローカルアドレスであるため、インターフェイス10.1.1.1をルーターCに追加する。この結果、最終的に、BGP検出エンジンにより、次の表15に類似したBGP検出テーブル305(即ち、「トポロジーマップ」)が生成される。
従って、この表15内に作成された情報は、対象ドメイン(即ち、上述の例においては、AS1)におけるBGPルーターのトポロジーを表している。この表15の情報を使用し、図4に示されているものに類似したグラフィカルなマップを描くことが可能であると共に/或いは、対象ドメインにおけるBGPルーターのトポロジーを記述するテキスト情報を出力することもできる。従って、対象ドメイン(例:AS1)、その対象ドメイン内の1つのBGPルーター上の1つのインターフェイスアドレス、及びSNMP読み出し専用コミュニティストリングのみを知ることにより、検出エンジン301は、対象ドメイン内のすべてのBGPルーターのトポロジーを作成することができる。尚、前述の例においては、1つのASを検出エンジン301に供給しているが、(図3の例におけるAS1及びAS2と同様に)ドメイン内で管理されているすべてのASを検出エンジン301に供給することにより、検出エンジン301によって、複数ASのドメインのトポロジーマップを生成することができる。
図5を参照すれば、本発明の一実施例によるBGP検出エンジン301の動作フローダイアグラムの例が示されている。図示のごとく、BGP検出エンジン301は、操作ブロック501において、対象ドメイン(例:1つ又は複数のAS)、この対象ドメイン内のシードBGPルーター、及びこのシードルーターに対するアクセスを可能にする装置アクセス情報(例:SNMPコミュニティストリング)を指定する入力(例:図3の例における入力302)を受け取る。操作ブロック502において、BGP検出エンジン301は、シードBGPルーターと通信を確立し、ブロック503において、BGP検出エンジン301は、(例えば、SNMP問合せを使用して)シードBGPルーターに対し、そのピアテーブルに関して問合せを行う。そして、BGP検出エンジン301は、この要求したピアテーブルを受信し(図示されてはいない)、ブロック504において、このピアテーブルから、対象ドメイン内に存在するシードルーターのピアルーターを識別する。操作ブロック505において、BGP検出エンジン301は、対象ドメイン内に存在しているシードルーターのピアルーターをBGP検出テーブ305に追加する。即ち、検出エンジン301は、シードルーターのピアテーブルから判定された対象ドメイン内のBGPルーターのトポロジーに関する情報をBGP検出テーブル305に記入するのである。
特定の実施例においては、BGP検出エンジン301は、操作ブロック506及び507を実行することができる(この実装例においては、これらは、任意選択であり、図5には、点線で示されている)。具体的には、操作ブロック506において、BGP検出エンジン301は、対象ドメイン外に存在しているルーターに対するシードルーターのインターフェイスをシードルーターのピアテーブルから判定し、操作ブロック507において、図4の例に関して前述したように、それらのシードルーターのインターフェイス識別名をBGP検出テーブル305に追加する。
操作ブロック508において、BGP検出エンジン301は、(例えば、SNMP問合せを使用して)対象ドメイン内に存在するものとして識別されたピアルーターの最初のものと通信を確立し(図示されてはいない)、このルーターに対して、そのピアテーブルに関する問合せを行う。そして、BGP検出エンジン301は、要求したピアテーブルを受信し(図示されてはいない)、ブロック509において、そのピアテーブルから、対象ドメイン内に存在する問合せ先のピアルーターのピアルーターを識別する。操作ブロック510において、BGP検出エンジン301は、それらの対象ドメイン内に存在する問合せ先のルーターのピアルーターをBGP検出テーブル305に追加する。即ち、検出エンジン301は、対象ドメイン内のBGPルーターのトポロジーに関する問合せ先のルーターのピアテーブルから判定された更なる情報をBGP検出テーブル305に記入するのである。
特定の実施例においては、BGP検出エンジン301は、操作ブロック511及び512を実行することができる(この実装例においては、これらは、任意選択であり、図5には、点線で示されている)。具体的には、操作ブロック511において、BGP検出エンジン301は、問合せ先のルーターのピアテーブルから、対象ドメイン外に存在するルーターに対する問合せ先のルーターのインターフェイスを判定し、操作ブロック512において、図4の例に関して前述したように、問合せ先のルーターのそれらのインターフェイス識別名をBGP検出テーブル305に追加する。
次いで、BGP検出エンジン301は、ブロック513において、そのピアテーブルに関してまだ問合せが行われていない対象ドメイン内に存在するものとして識別されている(例:BGP検出テーブル305に書き込まれている)更なるピアルーターが存在するかどうかを判定する。そして、そのピアテーブルに関してまだ問合せが行われていないピアルーターが対象ドメイン内に少なくとも1つ以上存在する場合には、操作は、ブロック514に進み、BGP検出エンジン301は、対象ドメイン内に存在するものとして識別されたピアルーターの次のものと通信を確立し(図示されてはいない)、このルーターに対して、そのピアテーブルに関する問合せを行う。次いで、操作は、ブロック509に戻る。
一方、ブロック513において、対象ドメイン内に存在するものとして識別されたピアルーターのすべてのその個々のピアテーブルに関する問合せが完了したとBGP検出エンジン301が判定した場合には、特定の実施例において、操作は、操作ブロック515に進む(この実装例においては、これは、任意選択であり、図5には、点線で示されている)。操作ブロック515において、BGP検出エンジン301は、指定された対象ドメイン内のBGPルーターのトポロジーの表示物を構築し、出力することができる。この表示物は、例えば、テキスト出力(例:表、フラットファイルなど)から構成すると共に/又は、判定されたトポロジーのグラフィカルな表現から構成することができる。そして、操作は、ブロック516において終了する。
コンピュータ実行可能命令によって実装する場合には、本発明の実施例のBGP検出エンジンの様々な要素は、本質的に、その操作を定義するソフトウェアコードである。実行可能な命令又はソフトウェアコードは、可読媒体(例:ハードドライブ媒体、光媒体、EPROM、EEPROM、テープ媒体、カートリッジ媒体、フラッシュメモリ、ROM、メモリスティック、及び/又はこれらに類似のもの)から取得可能であり、或いは、通信媒体(例:インターネット)からデータ信号によって伝達することも可能である。実際に、可読媒体には、情報を保存又は転送可能なあらゆる媒体が含まれる。
図6は、前述のBGP検出エンジンを実装するべく本発明の実施例に従って適合されたコンピュータシステムの例600を示している。即ち、コンピュータシステム600は、本発明の(BGP検出エンジン301などの)実施例を実装可能なシステムの例を構成している。中央処理装置(CPU)601は、システムバス602に結合されている。CPU601は、どのような汎用CPUであってもよく、CPU601が前述の本発明による操作をサポートしている限り、本発明は、CPU601のアーキテクチャによって限定されるものではない。CPU601は、本発明の実施例による様々な論理命令を実行することができる。例えば、CPU601は、図3及び4に関連して前述した操作例に従うと共に/又は図5との関連で前述した模範的な操作フローに従って機械レベルの命令を実行することができる。
又、コンピュータシステム600は、好ましくは、ランダムアクセスメモリ(RAM)603を含んでおり、これは、SRAM、DRAM、SDRAM、又はこれらに類似するものであってよい。コンピュータ600は、好ましくは、読み出し専用メモリ(ROM)604をも含んでおり、これは、PROM、EPROM、EEPROM、又はこれらに類似するものであってよい。RAM603及びROM604は、当技術分野において周知のように、BGP検出エンジン301に関連するデータ(例:シードテーブル304及び/又はBGP検出テーブル305)などのユーザー及びシステムのデータ及びプログラムを保持するものである。
又、コンピュータシステム600は、好ましくは、入出力(I/O)アダプタ605、通信アダプタ611、ユーザーインターフェイスアダプタ608、及びディスプレイアダプタ609を含んでいる。I/Oアダプタ605、ユーザーインターフェイスアダプタ608、及び/又は通信アダプタ611は、特定の実施例においては、図3の例における入力302などの情報を入力するべく、ユーザーがコンピュータシステム600とやり取りすることを可能にするものである。
I/Oアダプタ605は、好ましくは、1つ又は複数のハードドライブ、コンパクトディスク(CD)ドライブ、フロッピーディスクドライブ、テープドライブなどのストレージ装置606をコンピュータシステム600に接続している。このストレージ装置は、BGP検出エンジン301のデータ保存と関連するメモリ要件の観点で、RAM603が不足している場合に、利用することができる。通信アダプタ611は、好ましくは、コンピュータシステム600をネットワーク612(例:対象のAS)に接続するべく適合されている。ユーザーインターフェイス608は、キーボード613、ポインティング装置607、及びマイクロフォン614などのユーザー入力装置及び/又はスピーカ615などの出力装置をコンピュータシステム600に接続するものである。ディスプレイアダプタ609は、ディスプレイ装置610上の表示を制御し、例えば、ユーザーインターフェイスを表示するべく(例:ユーザーからの入力情報の受領及び/又はユーザーに対するBGPトポロジー情報の出力用)、CPU601によって駆動可能である。
尚、本発明は、このシステム600のアーキテクチャに限定されるものではないことを理解されたい。例えば、パーソナルコンピュータ、ラップトップコンピュータ、コンピュータワークステーション、マルチプロセッササーバーを含む(但し、これらに限定されない)あらゆる適切なプロセッサに基づいた装置を利用することができる。更には、特定用途向け集積回路(ASIC)や超大規模集積回路(VLSI)上に、本発明の実施例を実装することも可能である。実際に、当業者であれば、本発明の実施例による論理的な操作を実行する能力を有する好適な構造をいくらでも利用することができよう。
又、前述の例は、BGPルータートポロジーを検出するためのものであるが、本発明の実施例は、その他のタイプのルーターのトポロジーを検出するためにも同様に使用可能であることを理解されたい。例えば、その個々のピアルーターのリストを維持管理するものであれば、どのようなルーターのトポロジーであっても、前述の方法により、検出エンジンによって検出可能である。従って、本発明の実施例は、特に、BGPルータートポロジーを検出するために適用可能なものではあるが、当業者であれば、これらの実施例を使用して対象ドメイン内の識別されたあらゆるタイプのルーターに対して再帰的な問合せを実行し、それらのトポロジーを作成可能であることを理解するであろう。
以上、本発明とその利点について詳細に説明したが、添付の請求項によって定義される本発明を逸脱することなしに、これらに対して様々な変更、置換、及び変形を加えることが可能であることを理解されたい。又、本発明は、本明細書に記述されたプロセス、機械、製造、事物の組成、手段、方法、及びステップの特定の実施例に限定されるものではない。この開示内容から容易に理解できるように、現存する或いは将来開発されるであろう本明細書に記述された対応する実施例と実質的に同一の機能を実行或いは実質的に同一の結果を実現するプロセス、機械、製造、事物の組成、手段、方法、又はステップを利用することができる。従って、添付の請求項は、これらのプロセス、機械、製造、事物の組成、手段、方法、又はステップをも、その範囲内に含むことを意図するものである。
301 BGP検出エンジン
305 BGP検出テーブル
601 プロセッサ
603、604、606 コンピュータ可読媒体
305 BGP検出テーブル
601 プロセッサ
603、604、606 コンピュータ可読媒体
Claims (10)
- 検出エンジンにおいて、対象ドメインの識別名と前記対象ドメイン内のシードルーターの識別名を受け取るステップと、
前記検出エンジンが、前記シードルーターと接続する各ピアルーターの識別名を含む情報について、該シードルーターに問合せを行うステップと、
前記検出エンジンにおいて、前記シードルーターから前記情報を受信するステップと、
前記シードルーターから受信した情報から、前記検出エンジンが、前記シードルーターの少なくとも1つのピアルーターを判定するステップと、
前記検出エンジンが、前記少なくとも1つのピアルーターに、該ピアルーターと接続する各ピアルーターの識別名を含む情報について問合せを行うステップと、
前記検出エンジンが、前記対象ドメイン内の前記ルーターのトポロジー情報を作成するステップと、
を有する方法。 - 前記ルーターが、該ルーターと接続する各ピアルーターの識別名を含む前記情報を有する、請求項1記載の方法。
- 前記ルーターが、共通プロトコルによって通信可能なルーターである、請求項2記載の方法。
- 前記共通プロトコルがBGPを有する、請求項3記載の方法。
- 前記検出エンジンにおいて、前記シードルーターのアクセス情報を受け取るステップを更に有する、請求項1記載の方法。
- BGPルーター検出エンジンであって、
対象ドメイン内のシードBGPルーターにピアテーブルの情報について問合せを行うコードと、前記シードBGPルーターから前記ピアテーブル情報を受信するコードと、前記シードBGPルーターから受信した前記ピアテーブル情報から前記シードルーターの各ピアルーターを判定するコードと、前記シードルーターの各ピアルーターにピアテーブルの情報について問合せを行うコードと、を有し、コンピュータ可読媒体に保存される、コンピュータ実行可能ソフトウェアコードと、
前記コンピュータ実行可能ソフトウェアコードを実行するプロセッサと、
を有するBGPルーター検出エンジン。 - 前記問合せ先のルーターから受信した前記ピアテーブル情報を使用し、前記対象ドメイン内の前記BGPルーターのトポロジー情報を作成するコードを有する、請求項6記載のBGPルーター検出エンジン。
- 前記トポロジー情報が、前記対象ドメイン内の各BGPルーターのインターフェイスの識別名と、前記対象ドメイン内の各BGPルーターのすべてのピアルーターの識別名と、前記対象ドメイン内の各BGPルーターの状態の表示と、を含む、請求項7記載のBGPルーター検出エンジン。
- 前記問合せ先のBGPルーターから受信した前記ピアテーブル情報から、該ピアテーブル情報についてまだ問合せが実行されていない新規に検出されたピアルーターを識別するコードと、
前記新規に検出されたピアルーターに、該ピアルーターのピアテーブル情報について問合せを行うコードと、
を更に有する請求項6記載のBGPルーター検出エンジン。 - 対象ドメイン内において識別された複数のBGPルーターに、ピアテーブルについて再帰的な問合せを行い、該ピアテーブルから前記対象ドメイン内の各ピアBGPルーターを識別する手段と、
前記問合せ先のBGPルーターから受信した情報から、前記対象ドメイン内の前記BGPルーターのトポロジーを作成する手段と、
を有するシステム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/651,585 US20050050225A1 (en) | 2003-08-29 | 2003-08-29 | System and method for discovery of BGP router topology |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005080291A true JP2005080291A (ja) | 2005-03-24 |
Family
ID=34104736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004240949A Pending JP2005080291A (ja) | 2003-08-29 | 2004-08-20 | Bgpルータートポロジーを検出するシステム及び方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20050050225A1 (ja) |
EP (1) | EP1511248A3 (ja) |
JP (1) | JP2005080291A (ja) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050198269A1 (en) * | 2004-02-13 | 2005-09-08 | Champagne Andrew F. | Method and system for monitoring border gateway protocol (BGP) data in a distributed computer network |
US7761577B2 (en) * | 2004-03-16 | 2010-07-20 | Dialogic Corporation | Method and apparatus for detecting stuck calls in a communication session |
US7869382B2 (en) * | 2004-12-06 | 2011-01-11 | Hewlett-Packard Development Company, L.P. | Network management assisted discovery |
WO2006086776A2 (en) * | 2005-02-11 | 2006-08-17 | Nexthop Technologies, Inc. | Bgp dynamic as renumbering |
US20070005784A1 (en) * | 2005-02-11 | 2007-01-04 | Hares Susan K | BGP dynamic AS renumbering |
US7519700B1 (en) * | 2005-02-18 | 2009-04-14 | Opnet Technologies, Inc. | Method and system for topological navigation of hierarchical data groups |
US7616574B2 (en) * | 2005-03-15 | 2009-11-10 | Cisco Technology, Inc. | Dynamic retrieval of routing information for inter-AS TE-LSPs |
US8228786B2 (en) * | 2005-04-07 | 2012-07-24 | Cisco Technology, Inc. | Dynamic shared risk node group (SRNG) membership discovery |
US8155126B1 (en) * | 2005-06-03 | 2012-04-10 | At&T Intellectual Property Ii, L.P. | Method and apparatus for inferring network paths |
US7675912B1 (en) * | 2005-07-05 | 2010-03-09 | Cisco Technology, Inc. | Method and apparatus for border gateway protocol (BGP) auto discovery |
US8223667B2 (en) | 2007-06-11 | 2012-07-17 | International Business Machines Corporation | Inferred discovery of a data communications device |
US8914481B2 (en) * | 2008-10-24 | 2014-12-16 | Novell, Inc. | Spontaneous resource management |
US8521904B1 (en) | 2008-12-16 | 2013-08-27 | At&T Intellectual Property I, L.P. | Devices, systems, and/or methods for determining internet topology |
US9721238B2 (en) | 2009-02-13 | 2017-08-01 | Visa U.S.A. Inc. | Point of interaction loyalty currency redemption in a transaction |
US8972561B1 (en) * | 2009-05-13 | 2015-03-03 | Tellabs Operations, Inc. | Methods and apparatus for obtaining network information using file transfer |
US8578034B2 (en) * | 2010-11-24 | 2013-11-05 | Verizon Patent And Licensing Inc. | Optimized network device discovery |
US8989046B1 (en) | 2012-11-12 | 2015-03-24 | The Aerospace Corporation | Inter-domain routing message distribution through wide area broadcast channel |
US10616049B2 (en) * | 2013-01-25 | 2020-04-07 | Dell Products, L.P. | System and method for determining the configuration of switches in virtual link trunking environments |
US9338223B2 (en) * | 2013-08-14 | 2016-05-10 | Verizon Patent And Licensing Inc. | Private cloud topology management system |
US9871717B2 (en) | 2014-04-25 | 2018-01-16 | Metaswitch Networks Ltd | Data processing |
US9923799B2 (en) | 2014-04-25 | 2018-03-20 | Metaswitch Networks Ltd. | Data processing |
US10063456B2 (en) | 2014-04-25 | 2018-08-28 | Metaswitch Networks Ltd | Data processing |
CN109246008B (zh) * | 2014-07-23 | 2021-08-20 | 华为技术有限公司 | 网络设备、系统和发送bgp信息的方法 |
US10917889B2 (en) | 2015-01-30 | 2021-02-09 | Itron Networked Solutions, Inc. | Techniques for managing heterogenous nodes configured to support a homogeneous communication protocol |
WO2016123561A1 (en) * | 2015-01-30 | 2016-08-04 | Silver Spring Networks, Inc. | Techniques for managing heterogeneous nodes configured to support a homogeneous communication protocol |
US9838315B2 (en) * | 2015-07-29 | 2017-12-05 | Cisco Technology, Inc. | Stretched subnet routing |
CN112532402B (zh) * | 2019-09-17 | 2024-01-12 | 北京京东尚科信息技术有限公司 | 一种探测网络拓扑的方法、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09181722A (ja) * | 1995-12-26 | 1997-07-11 | Kodo Tsushin Syst Kenkyusho:Kk | Bgpルーティング情報を用いたネットワークマップの自動生成方式 |
JP2002252638A (ja) * | 2001-02-23 | 2002-09-06 | Nippon Telegr & Teleph Corp <Ntt> | 配信ルートサーバ装置、配信ルートサーバ方法、配信ルートサーバプログラムを記録した記録媒体及び配信ルートサーバプログラム |
US20030026212A1 (en) * | 2001-05-18 | 2003-02-06 | Martin Daniel J. | Method and system for determining network characteristics using routing protocols |
US20030046390A1 (en) * | 2000-05-05 | 2003-03-06 | Scott Ball | Systems and methods for construction multi-layer topological models of computer networks |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6393486B1 (en) * | 1995-06-23 | 2002-05-21 | Cisco Technology, Inc. | System and method using level three protocol information for network centric problem analysis and topology construction of actual or planned routed network |
JP2985940B2 (ja) * | 1996-11-08 | 1999-12-06 | 日本電気株式会社 | 障害回復装置 |
US6584093B1 (en) * | 1998-08-25 | 2003-06-24 | Cisco Technology, Inc. | Method and apparatus for automatic inter-domain routing of calls |
US6553423B1 (en) * | 1999-05-27 | 2003-04-22 | Cisco Technology, Inc. | Method and apparatus for dynamic exchange of capabilities between adjacent/neighboring networks nodes |
US6557044B1 (en) * | 1999-06-01 | 2003-04-29 | Nortel Networks Limited | Method and apparatus for exchange of routing database information |
US6567380B1 (en) * | 1999-06-30 | 2003-05-20 | Cisco Technology, Inc. | Technique for selective routing updates |
US7336613B2 (en) * | 2000-10-17 | 2008-02-26 | Avaya Technology Corp. | Method and apparatus for the assessment and optimization of network traffic |
-
2003
- 2003-08-29 US US10/651,585 patent/US20050050225A1/en not_active Abandoned
-
2004
- 2004-07-23 EP EP04254404A patent/EP1511248A3/en not_active Withdrawn
- 2004-08-20 JP JP2004240949A patent/JP2005080291A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09181722A (ja) * | 1995-12-26 | 1997-07-11 | Kodo Tsushin Syst Kenkyusho:Kk | Bgpルーティング情報を用いたネットワークマップの自動生成方式 |
US20030046390A1 (en) * | 2000-05-05 | 2003-03-06 | Scott Ball | Systems and methods for construction multi-layer topological models of computer networks |
JP2002252638A (ja) * | 2001-02-23 | 2002-09-06 | Nippon Telegr & Teleph Corp <Ntt> | 配信ルートサーバ装置、配信ルートサーバ方法、配信ルートサーバプログラムを記録した記録媒体及び配信ルートサーバプログラム |
US20030026212A1 (en) * | 2001-05-18 | 2003-02-06 | Martin Daniel J. | Method and system for determining network characteristics using routing protocols |
Also Published As
Publication number | Publication date |
---|---|
EP1511248A2 (en) | 2005-03-02 |
EP1511248A3 (en) | 2006-04-26 |
US20050050225A1 (en) | 2005-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005080291A (ja) | Bgpルータートポロジーを検出するシステム及び方法 | |
CA2457928C (en) | Topology discovery by partitioning multiple discovery techniques | |
EP1560379B1 (en) | Methods and systems for unnumbered network link discovery | |
EP1387527A1 (en) | Identifying network routers and paths | |
US9391886B2 (en) | Identification of the paths taken through a network of interconnected devices | |
US8549124B2 (en) | Network management discovery tool | |
US8289879B2 (en) | Methods and systems for preventing the misconfiguration of optical networks using a network management system | |
US9537760B2 (en) | Executing loops | |
US9544217B2 (en) | Identification of paths in a network of mixed routing/switching devices | |
US9559909B2 (en) | Identifying an egress port of a device | |
US9531598B2 (en) | Querying a traffic forwarding table | |
US11509552B2 (en) | Application aware device monitoring correlation and visualization | |
US20090210523A1 (en) | Network management method and system | |
Pandey et al. | SNMP‐based enterprise IP network topology discovery | |
US11032124B1 (en) | Application aware device monitoring | |
CN117176639B (zh) | 一种基于多协议的网络拓扑自动发现方法和装置 | |
JP2020047968A (ja) | 転送装置および転送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20070511 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070814 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091030 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100324 |