(57)【要約】  実施形態は、ネットワーク内におけるデータトラフィックのルートを管理するために提供される。管理は、ウェブサーバと対話して設定ファイルを更新するグラフィカルユーザインタフェースを介して実行されてよい。設定ファイルは、ネットワーク管理デバイス（例えば、ＢＧＰスピーカ）によって、ルータ管理コマンドに変換され得る。コマンドは、次に、ネットワークトラフィックを制御するために境界ルータに送信され得る。実施形態は、ネットワークにおいて加えられたルーティングの更新をキャプチャ及びログ記録するためにも提供される。
2018506237.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク内におけるデータトラフィックのルートを管理する方法であって、前記方法は、
アドレス及び第１のルーティング動作を入力るためのユーザインタフェースをユーザに提供する段階と、
前記ユーザインタフェースを介して、前記アドレス及び前記第１のルーティング動作を受信する段階と、
前記アドレスに関して実行されるべき前記第１のルーティング動作を指定すべく、設定ファイルを更新する段階と、
前記設定ファイルをルータ管理コマンドへと変換する段階と、
前記ルータ管理コマンドを前記ネットワークの複数の境界ルータに送信する段階と
をコンピュータシステムによって実行する段階を備える方法。
【請求項２】
前記アドレスは、送信元アドレスである、請求項１に記載の方法。
【請求項３】
前記アドレスは、宛先アドレスである、請求項１又は２に記載の方法。
【請求項４】
前記ルータ管理コマンドを送信するための前記複数の境界ルータは、前記複数の境界ルータの地理的位置に基づいて決定される、請求項１から３の何れか一項に記載の方法。
【請求項５】
前記設定ファイルを更新する段階は、前記アドレスを前記設定ファイルに追加する段階を含む、請求項１から４の何れか一項に記載の方法。
【請求項６】
前記設定ファイルを更新する段階は、前記アドレスに関する前のルーティング動作を前記第１のルーティング動作となるように変更する段階を含む、請求項１から５の何れか一項に記載の方法。
【請求項７】
前記コンピュータシステムは、サーバである、請求項１から６の何れか一項に記載の方法。
【請求項８】
前記ルータ管理コマンドは、ボーダーゲートウェイプロトコル（ＢＧＰ）コマンドであり、前記サーバは、ＢＧＰスピーカとして機能する、請求項７に記載の方法。
【請求項９】
前記ユーザインタフェースは、前記ユーザインタフェースをクライアントデバイスに設定するサーバによって提供される、請求項１から６の何れか一項に記載の方法。
【請求項１０】
前記コンピュータシステムは、送信デバイス内にサーバを含み、前記送信デバイスは、前記設定ファイルを変換し、前記ルータ管理コマンドを送信する、請求項１から６の何れか一項に記載の方法。
【請求項１１】
前記ユーザインタフェースは、その中から選択するための複数のルーティング動作を提供する、請求項１から１０の何れか一項に記載の方法。
【請求項１２】
前記複数のルーティング動作は、ｎｕｌｌルーティング動作を含む、請求項１１に記載の方法。
【請求項１３】
前記複数のルーティング動作は、前記ネットワーク内の宛先アドレスではないコンピューティングデバイスを指定する迂回ルーティング動作を含む、請求項１１又は１２に記載の方法。
【請求項１４】
前記複数のルーティング動作は、破棄ルーティング動作を含み、前記破棄ルーティング動作は、前記複数の境界ルータで生じる、請求項１１から１３の何れか一項に記載の方法。
【請求項１５】
コンピューティングデバイスは、規則に基づいて、ネットワークトラフィックをフィルタリングする、請求項１３に記載の方法。
【請求項１６】
前記フィルタリングは、宛先アドレスに対するサービス拒否攻撃を軽減する、請求項１５に記載の方法。
【請求項１７】
前記第１のルーティング動作に基づいて、前記複数の境界ルータから１又は複数の他のルータへと１又は複数のルータ管理コマンドを転送する段階をさらに備える、請求項１から１６の何れか一項に記載の方法。
【請求項１８】
前記アドレスは、アドレスの範囲を指定する、請求項１から１７の何れか一項に記載の方法。
【請求項１９】
前記ユーザインタフェースは、宛先アドレス及び関連するルーティング動作のリストを表示する、請求項１から１８の何れか一項に記載の方法。
【請求項２０】
前記ユーザインタフェースは、リストの前記宛先アドレスを編集又は削除するための選択対象を提供する、請求項１９に記載の方法。
【請求項２１】
前記ユーザインタフェースは、前記ルータ管理コマンドが送信される境界ルータを追加するための選択対象を提供する、請求項１９又は２０に記載の方法。
【請求項２２】
前記ユーザインタフェースは、前記リスト上の各宛先アドレスと関連する時間を表示する、請求項１９から２１の何れか一項に記載の方法。
【請求項２３】
前記時間は、前記関連するルーティング動作が、前記リスト上の各宛先アドレスに関して、どのくらいの期間実行されているかに対応する、請求項２２に記載の方法。
【請求項２４】
前記アドレスに対応する第１の送信元アドレスを受信する段階であって、前記第１の送信元アドレスは、良好なアドレスとして指定される、受信する段階と、
アドレス指定された前記第１の送信元アドレスを設定ファイルに追加する段階と
をさらに備え、
前記ルータ管理コマンドは、前記第１の送信元アドレスからのネットワークトラフィックが、あらゆるルーティング動作に関して前記アドレスに送信されるべきであると指定する、請求項１から２３の何れか一項に記載の方法。
【請求項２５】
前記第１のルーティング動作が使用されるべき未来時を前記ユーザインタフェースを介して受信する段階と、
前記設定ファイルを更新することを前記未来時まで待機する段階と
をさらに備える、請求項１から２４の何れか一項に記載の方法。
【請求項２６】
前記第１のルーティング動作が終了し、前のルーティング動作が使用されるべき未来時を前記ユーザインタフェースを介して受信する段階と、
未来時が到来したと識別する段階と、
前記識別の後、前記アドレスに関して前記前のルーティング動作が実行されたことを指定すべく、前記設定ファイルを更新する段階と、
前記設定ファイルを新しいルータ管理コマンドへと変換する段階と、
前記新しいルータ管理コマンドを送信する段階と
をさらに備える、請求項１から２５の何れか一項に記載の方法。
【請求項２７】
メッセージを前記複数の境界ルータの各々に送信する段階と、
前記複数の境界ルータからの応答に基づいて、前記ユーザインタフェース上のステータスを更新する段階と
をさらに備える、請求項１から２６の何れか一項に記載の方法。
【請求項２８】
境界ルータから応答が受信されない場合、アラートメッセージをシステムオペレータに送信する段階をさらに備える、請求項２７に記載の方法。
【請求項２９】
ルーティング変更のためのルーティングのログファイルを照会する段階と、
あらゆる新しいルート変更をルーティング変更のデータベースに追加する段階と
をさらに備える、請求項１から２６の何れか一項に記載の方法。
【請求項３０】
前記アドレスは、宛先アドレスであり、前記方法は、
前記アドレスへの可能なルートを決定すべく、前記ネットワークの複数のルータから複数のルーティングテーブルにアクセスする段階であって、前記複数のルータは、前記複数の境界ルータを含む、アクセスする段階と、
前記アドレスへの前記可能なルートについての情報を表示する段階と
をさらに備える、請求項１から２９の何れか一項に記載の方法。
【請求項３１】
前記可能なルートについての前記情報は、前記ルートが、前記ネットワークを出るであろう場所を含む、請求項３０に記載の方法。
【請求項３２】
前記ユーザから認証情報を受信する段階と、
前記認証情報に基づいて、複数のアカウントタイプから、前記ユーザのアカウントタイプを決定する段階とをさらに備え、
１つのアカウントタイプは、許容される全てのルーティング動作のサブセットである、ルーティング動作を可能にさせている、限定的なアカウントである、請求項１から３１の何れか一項に記載の方法。
【請求項３３】
前記限定的なアカウントを有する特定のユーザに対し、許容されるルーティング動作のみを表示する段階をさらに備える、請求項３２に記載の方法。
【請求項３４】
ルータの正常性チェックを実施する方法であって、前記方法は、
ユーザインタフェースを介して、アドレス及びルーティング動作を受信する段階と、
前記アドレスに関して実行されるべき前記ルーティング動作を指定すべく、設定ファイルを更新する段階と、
前記設定ファイルをルータ管理コマンドへと変換する段階と、
前記ルータ管理コマンドをネットワークの複数の境界ルータに送信する段階と、
前記複数の境界ルータの各々にメッセージを送信する段階と、
前記複数の境界ルータから１又は複数の応答を受信する段階と、
前記複数の境界ルータからの応答に基づいて、前記ユーザインタフェース上のステータスを更新する段階と
をコンピュータシステムによって実行する段階を備える方法。
【請求項３５】
ルータを設定する方法であって、前記方法は、
複数の顧客ルータアドレスを含む顧客ネットワークを指定し、軽減ネットワークを介して前期顧客ネットワークに対してトラフィックをルーティングするルーティング動作を入力するためのユーザインタフェースをユーザに提供する段階と、
前記ユーザインタフェースを介して、前記顧客ネットワークの仕様、及び、前記軽減ネットワークを介して、前記顧客ネットワークに対してトラフィックをルーティングする前記ルーティング動作を受信する段階と、
複数のルーティングの変数を使用して、前記軽減ネットワークと前記顧客ネットワークとの間の１又は複数の接続を開始する段階と、
前記軽減ネットワークに対して前記顧客ネットワークに宛てられたトラフィックをルーティングするルータ管理コマンドを複数のルーティングデバイスに送信し、複数のルーティングデバイスは、前記軽減ネットワークに対して外部である、送信する段階と
をコンピュータシステムによって実行する段階を備える方法。
【請求項３６】
前記顧客ネットワークは、複数のネットワークアドレスとして指定される、請求項３５に記載の方法。
【請求項３７】
前記ルーティングの変数は、イーサネット（登録商標）フレームサイズを含む、請求項３５又は３６に記載の方法。
【請求項３８】
前記ルーティングの変数は、複数の内部アドレスを含む、請求項３５から３７の何れか一項に記載の方法。
【請求項３９】
前記ルーティングの変数は、複数の外部アドレスを含む、請求項３５から３８の何れか一項に記載の方法。
【請求項４０】
前記１又は複数の接続は、ＩＰトンネルである、請求項３５から３９の何れか一項に記載の方法。
【請求項４１】
前記ユーザインタフェースは、複数のルーティングの変数を入力するためのメカニズムをさらに含み、前記ルーティングの変数は、前記ＩＰトンネルを開始するために使用される、請求項４０に記載の方法。
【請求項４２】
前記ユーザインタフェースは、開始されるべき前記ＩＰトンネルの数を入力するためのメカニズムをさらに含む、請求項４０又は４１に記載の方法。
【請求項４３】
前記ＩＰトンネルは、ＧＲＥトンネルである、請求項４０から４２の何れか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照］
本特許協力条約（ＰＣＴ）特許出願は、２０１６年１月８日に出願された米国非仮出願第１４／９９１，０２４号「ＤＤＯＳを軽減するネットワークにおけるトラフィック制御の管理」に対し優先権を主張し、当該出願は、２０１５年２月２３日に出願された「ＤＤＯＳを軽減するネットワークにおけるトラフィック制御の管理」と題する米国仮特許出願第６２／１１９，７５１号からの優先権の利益を米国特許法第１１９条（ｅ）項の下、主張する。その全内容は、あらゆる目的のために、参照により本明細書に完全に組み込まれる。本願は、２０１５年１０月２２日に出願された「ＤＤＯＳを軽減するネットワークにおけるトラフィック制御の管理」と題する米国特許出願第１４／９２０，４６５号にも関連し、その全内容は、あらゆる目的のために、参照により本明細書に完全に組み込まれる。
【背景技術】
【０００２】
インターネットのような分散型ネットワークにおいて、種々のコンピュータ及びコンピュータネットワークは、仮想接続され得、様々なルートを介してアクセス可能であり得る。コンピュータ又はコンピュータネットワークが、例えば、分散型サービス拒否（ＤＤｏＳ）攻撃などの攻撃を受けている場合、他のネットワーク及びコンピュータに対する、ネットワークのアクセスしやすさを維持する目的で、攻撃に対する応答がなされなくてはならない。ネットワークアドミニストレータのチームは、適切なネットワークオペレーションを維持するために、手動でルータにログインし、攻撃に応答してルーティング規則を変更できる。
【０００３】
しかし、そのような解決策は、いくつかの望ましくない特性を有する。この方法は、拡大縮小せず、効率性を欠き、ネットワークにおいて、誰が、どんな、いつ、なぜ、及びどのように変更したかを知ることを望んでいるかもしれない事業責任者に対して、コンテキストをほとんど提供しない。
【０００４】
さらに、断片化されたネットワークアドミニストレータのチームを使用して複数の境界ルータを管理することは、問題を生じさせる。多くの場合、ジュニアネットワークアドミニストレータは、適切な認証を有さず、ネットワーク変更を加えるために認定されていないことが、ネットワークをリスクにさらす。また、キャプチャされ得る履歴データはほとんどない。これが、ルート注入を経時的に管理することを困難にする。
【０００５】
本発明の実施形態は、これらの及び他の問題に、個別及び集合的に対処する。
【発明の概要】
【０００６】
実施形態は、ネットワーク内におけるデータトラフィックのルートを管理するために提供される。管理は、ウェブサーバと対話して設定ファイルを更新するグラフィカルユーザインタフェースを介して実行されてよい。設定ファイルは、ネットワーク管理デバイス（例えば、ＢＧＰスピーカ）によって、ルータ管理コマンドに変換され得る。コマンドは、次に、ネットワークトラフィックを制御するために境界ルータに送信され得る。
【０００７】
実施形態は、ＤＤＯＳ及び他のネットワーク攻撃に応答する変更を含む、必要なルーティング変更を提供するために、より自動化され、よりタイムリーな応答を可能にし得る。実施形態は、ルーティングを制御し、認定されていない人がネットワーク制御にアクセスすることを防ぐだけでなく、全ての加えられたルーティング変更をログ記録するための中心点を提供し得る。実施形態は、ネットワークにおいて加えられたルーティングの更新をキャプチャ及びログ記録するためにも提供される。
【０００８】
他の実施形態は、本明細書に記載する方法に関連するシステム、デバイス、及びコンピュータ可読媒体に関する。
【０００９】
本発明の実施形態の性質及び利点についてのさらなる理解は、以下の詳細な説明、及び添付図面に関連して得られ得る。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係る、自律システム、境界ルータ、ウェブサーバ、及び端末を示す系統図である。
【００１１】
【図２】本発明の実施形態に係る、ルートを管理するためのサーバ及び端末を示す系統図である。
【００１２】
【図３】本発明の実施形態に係る、ルーティングを管理するためのシステムＧＵＩを示す。
【００１３】
【図４】本発明の実施形態に係る、ユーザインタフェースへルーティングコマンドを入力すること、及び、当該コマンドをコンピュータネットワークの適する境界ルータに伝播すること、を説明するフローチャートである。
【００１４】
【図５】本発明の実施形態に係る、１又は複数のルータにわたってＰＦＮ製品を設定するためのフローチャートである。
【００１５】
【図６】本発明の実施形態に係る、ＢＧＰスピーカ及びルータ間で、ルータの正常性チェックを実施することを説明するフローチャートである。
【００１６】
【図７】本発明の実施形態に係るシステム及び方法で使用可能な、例示的なコンピュータシステムのブロック図を示す。
【発明を実施するための形態】
【００１７】
コンピュータネットワークのためのルーティングを管理する場合、ネットワーキングアドミニストレータは、多くの場合、ルーティングを手動で更新しなければならない。これは、特に、ネットワークがＤＤＯＳ又は他の攻撃を受けている場合、煩雑な作業となり得る。実施形態は、効率的な及び制御された態様で、ネットワークアドレスのためのルーティングを管理するため、並びに、グラフィカルユーザインタフェースを含む、ルーティングへの変更をログ記録するために説明される。
【００１８】
[Ｉ．ＢＧＰ及びルーティング]
インターネットは、１又は複数のネットワークオペレータの制御下のシステムである、接続された自律システムの集合体である。インターネット上で自律システムは、共通の、明確に規定されたルーティングポリシをインターネットに対して提示する、接続されたＩＰルーティングプレフィックスの集合体である。インターネットのような分散型ネットワークにおいて、種々のコンピュータ及びコンピュータネットワークは、仮想接続され得、様々なルートを介してアクセス可能であり得る。
【００１９】
図１は、本発明の実施形態に係る、２つの自律システム１０１及び１０２を示す系統図である。自律システム１０１は、ルータ１３１、１３２、１３３、１４１及び１４２を含む。ルータ１３１、１３２及び１３３は、境界ルータである。端末１１０は、ウェブサーバ１２０を介して、ルーティングコマンドを境界ルータへ送信すべく、システムアドミニストレータによって使用される。自律システム１０２は、ルータ１３４及び１４３を有する。境界ルータ１３１及び１３４は、自律システム１０１及び１０２を接続するために使用される。
【００２０】
システムが相互に接続されるやり方は、インターネットのルーティングを備える。ボーダーゲートウェイプロトコル（ＢＧＰ）は、インターネット上の自律システム間で、ルーティング及び到達可能性情報を交換すべく設計される、標準化された外部ゲートウェイプロトコルであって、自律システム間で、ループフリールーティングトポロジの作成を可能にする。ＢＧＰは、自律システム内でのルーティングにも使用され得る。一旦ピアマシンが、ルーティング情報を交換するために設定されていると、それらは、ＴＣＰ接続を形成し、ＢＧＰで通信することを開始し得るであろう。
【００２１】
少なくともＲＦＣ１７７１、１９９７及び４２７１で規定されるように、ＢＧＰコミュニティは、いくつかの共通する特性を共有する宛先グループである。各自律システムのアドミニストレータは、宛先がどのコミュニティに属するかを規定してよい。デフォルトで、全ての宛先は、一般的なインターネットコミュニティに属する。それらは、例えば、システムがどのルーティング情報を承諾する、優先する、又は他の近傍のものに配布するか等の、ある共通目的を実現するために受信プレフィックス、又は発信プレフィックスに適用され得る属性タグである。
【００２２】
コミュニティ属性は、例えば承諾、優先、及び再配布等の、共通のルーティング決定が適用され得るコミュニティのグループ化を可能にする。コミュニティ文字列は、ルータの設定に明示される規則に従って、ルータによって適用される。これらは、ルーティングポリシとして公知である。いくつかの共通の、予め規定されたコミュニティ属性は、外部ピアに対してルートを通知させないことを引き起こす「ｎｏ−ｅｘｐｏｒｔ」、あらゆるピアに対してルートを通知させないことを引き起こす「ｎｏ−ａｄｖｅｒｔｉｓｅ」、インターネットコミュニティ全体に対してルートを通知させることを引き起こす「ｉｎｔｅｒｎｅｔ」である。
【００２３】
他のプロトコルとは異なり、ＢＧＰは、自体の全てのルーティングテーブルをブロードキャストしない。代わりに、起動時にのみ、ピアは、ピアの全てのルーティングテーブルを引き渡すであろう。それ以後、ルーティングを変更するためには、更新メッセージが使用される。ルート更新は、宛先への複数の経路を含み得るルーティング情報ベース（ＲＩＢ）に適用される。各ルータは、これらルートのうち、どのルートがルーティングテーブルに加えられるであろうか、それによって、どの経路が使用されるであろうかを決定しなくてはならない。ルートが撤回されると、利用可能な場合、同一の宛先への別のルートをＲＩＢから得ることができる。
【００２４】
属性を使用するだけでなく、ＢＧＰは、クラスレスドメイン間ルーティング（ＣＩＤＲ）を使用して、ルーティングテーブルのサイズを低減する。ＣＩＤＲは、アドレスクラス（例えば、ＩＰｖ４アドレスに関する１９２．１６８．２．０／２４、及びＩＰｖ６アドレスに関する２００１：ｄｂ８：：／３２）に関係なく、プレフィックスのルーティング情報及びプレフィックス長のルーティング情報を交換するための処理である。
【００２５】
各自律システム内の特定のルータが、プロトコルを実行し、ルーティング情報を交換するであろうルータとして指定されることができる。ＢＧＰスピーカと呼ばれるこれらのルータは、ＢＧＰメッセージを通知し、新しいルーティング情報を他のＢＧＰスピーカと交換する。ＢＧＰスピーカは、ルーティングループを伴う経路を検出及び回避する一方、特定の宛先に到達するための経路を決定できる。ルーティング情報は、宛先に関してプレフィックスされたルート、宛先への自律システムの経路、及び追加経路の属性を含むことができる。
【００２６】
[ＩＩ．ネットワークルーティングを管理するためのシステム]
これまで、ルータ上で実行されるソフトウェアは、どのようにルーティングするかについての命令を受信し、また、次にそれらのルートを残りのインターネットにブロードキャストすることを可能にするために適切に機能するネットワークを維持する目的で（例えば、ルータにログインすることによって）、手動で管理される。認証されたネットワークアドミニストレータは、ルートを変更でき、且つそれらをどのように変更するかを把握している、又は、ガイドラインのセットを少なくとも守る。しかしながら、多くの場合、必要な変更を加えるために認定された人が、必ずしも十分に居ない。１つの考えられる解決策は、ジュニアネットワークアドミニストレータが、非常に具体的な機能を行うことだけを許容されるような態様となるように、彼らに対してアクセスを制限することであるが、そのような制限は、攻撃に対する応答が遅延することを引き起こし得る。ｎｕｌｌルートの手動管理は、手に負えないものであり得る。アドミニストレータは、時間をかけて、ルータにログインし、次にキーを確認し、その後、変更をコミットしなければならない。これは、かなり時間がかかり得る。ルートの数がより多いと、これらを手動で管理するために必要な時間が大幅に増加する。
【００２７】
図２は、本発明の実施形態に係る、境界ルータの管理を示す系統図である。端末２００は、ウェブサービス２１１に情報を提供するためのクライアントソフトウェア２０１を有する。クライアントソフトウェア２０１は、ウェブサービス２１１によって（例えば、ウェブブラウザを介して）、端末２００に提供され得、又は、ウェブサービス２１１と通信するスタンドアロンアプリケーションであり得る。示されるように、サーバ２１０は、端末２００上のクライアントソフトウェア２０１が接続する、ウェブサービス２１１をホストする。サーバ２１０は、全ての加えられたルーティング変更の履歴をログ記録するためのデータベース２１２も有する。ユーザは、クライアントソフトウェア２０１を介して更新情報を指定でき、当該更新情報は、設定ファイル２１３を更新するために使用され得る。サーバ２１０は、変更が加えられた場合に設定ファイル２１３が再構築されるよう、設定ファイル２１３を維持できる。管理デバイス２１５は、設定ファイル２１３を読み取ることができ、境界ルータ２２０及び２２１に送信されるルータ管理コマンドへと、当該情報を変換できる。１つの実施形態において、管理デバイス２１５は、ＢＧＰを実行でき、ＢＧＰコマンドを発信することによってＢＧＰスピーカとして機能できる。様々な実施形態において、管理デバイス２１５は、サーバ２１０内であることができ、又はサーバ２１０とは別個であることができる。境界ルータ２２０及び２２１は、ＢＧＰスピーカとして機能することもできる。クライアントソフトウェアは、ルートの修正のためのインタフェースを提供するＧＵＩを含むことができる。
【００２８】
ＢＧＰのｎｕｌｌルートは、上流キャリアが特定の宛先アドレス宛てのトラフィックを受信した場合、トラフィックを破棄するよう上流キャリアに伝えるために、システムによって使用され得る。ｎｕｌｌルートは、様々な目的で使用され得る。ｎｕｌｌルートは、例えば、ネットワークデバイスが、特定の宛先アドレスについて、自体が処理できるものより多くのトラフィックを受信している場合、又は、ネットワークデバイスが、特定の宛先アドレスについて、顧客が契約しているものより多くのトラフィックを受信している場合に使用され得る。ｎｕｌｌルートの別の使用例は、ネットワークデバイスにメンテナンスが実行されている場合である。
【００２９】
例えば、ｎｕｌｌルートを含む、数百又はそれより多くのルートの管理のための自動システムが、所望される。時間をかけて、ルータにログインし、次にキーを確認し、その後、変更をコミットしなければならない、かなり時間がかかり得る動作に対して、多くのルートに適用される動作は数秒で実行できるので、そのようなシステムは、処理を簡略化する。これは、誰かが、より少ない数の段階を行うことがより容易であるように、管理を合理化することによって、管理の一部を自動化することができる。
【００３０】
自動化されたシステムは、ログデータの追加のキャプチャを可能にすることもできる。アドミニストレータが手動でコマンドを入力する場合、何が起こったか、何のキーが打たれたか等の自動化された監査証跡は、自動的に生成されない。アドミニストレータが、ルート注入を経時的に管理することを可能にすべく、キャプチャされることができる履歴データがある。
【００３１】
システムは、ルータ及びＢＧＰスピーカを制御するための中心点として機能できる。中心点は、境界ルータの全ての全制御がそこを通じて行われる場所である。ＢＧＰスピーカは、コミュニティ情報を使用して、他の近傍の境界デバイスへのルーティング情報配布を制御することができる。ネットワークアドミニストレータは、そこをナビゲートでき、各ルータにログインすることに代えて、ｎｕｌｌルートのようなコマンドがキャリアに伝播されることができ、その後、キャリアは、そのｎｕｌｌルートが、グローバルにどこから入ってこようとも、そのｎｕｌｌルートを保持できる。ｎｕｌｌルートを処理するべく、１つのルータだけが必要かもしれない。
【００３２】
このシステムソフトウェアにログインした人なら誰でも、単一のインタフェースを通じて、複数のルータを制御できるかもしれない。いくつかの実施形態において、ソフトウェアを場合によっては実行する複数の人が同時に居てよい。ネットワークアドミニストレータが、任意のルーティングを変更しようとしている場合、それは、当該単一のユーザインタフェースを通じて行われることができる。
【００３３】
ルーティングシステムが自動化されると、複数の攻撃が生じる場合、潜在的により多くのルータに同時に、より迅速に変更を適用できるアドミニストレータにとって、それは、手に負えないほどではないことがあり得る。結果として、ネットワークアドミニストレータがルートを調整するためにより少ない時間を費やさなければならない場合、彼らは、より最適なルーティングを見出すことができ、且つネットワークを最適化するための処理において、ｎｕｌｌルーティングを使用する必要がより少ない。ルータ毎に１つのキーを有することに対して、複数のルータのルート変更のためのキーは、数秒内に単に１つのインタフェースに配布されることができる。
【００３４】
これは、ｎｕｌｌルーティングの使用を簡略化できる。その一方で、手動で処理される複数の攻撃がある場合、それら全てに着手することは困難であり得、あるものをｎｕｌｌルートする必要性は、依然として起こり得る。しかしながら、集中型システムでは、必要とされるｎｕｌｌルーティングは、簡略化されるであろう。
【００３５】
理想的なｎｕｌｌルートが、必ずしも所望されないかもしれない場合がある。ネットワークアドミニストレータは、特定のタスク又は特定の要求に対して、もう少しきめ細かく調整されるあることを行ってよい。当該きめ細かな調整の整合をなすために行われる必要があるであろうことは、多くあり得、それは、手動で設定されるネットワークにおいては、かなりの時間がかかるであろう。手動で設定されるネットワークにおいて、そのことは、アドミニストレータが実際にｎｕｌｌルートを行うことに至るかもしれない。なぜなら、それが、アドミニストレータが時間枠のうちにそのように迅速に行うことができる唯一のことだからである。集中的に管理されたシステムでは、きめ細かく調整されたルーティング又は他の変更を提供し得る能力があり、アドミニストレータは、それらを必要とされる時間内で行うことができるかもしれない。従って、アドミニストレータは、ｎｕｌｌルートを導入する必要がないであろう。
【００３６】
ルータを切り替える能力、又は地理的位置によってルータを設定する能力も存在し得る。多くの場合、場所を設定するために使用されるルータの冗長ペアがある。１つのルータに変更が加えられる場合、変更は、両方のルータに加えられることができる。例えば、バージニアのルータ、又はロサンゼルスのルータ、又はサンノゼのルータ、又は、その変更が作用され得る実際の場所がある何れかのような同一の地理的位置で、１つ目と２つ目とのルータの間で同一の設定を有することは、有益であり得る。
【００３７】
ルータを選択するための方法もあり得る。デフォルトは、全か無かであってよく、システムは、１又は複数の地理的位置の周囲のルータを選択できる。直接各々に進むのとは対照的に、選択された場合、場所を利用してそれらをハードウェアを通じてマッピングするであろう、中間のマッピングテーブルがあり得る。
【００３８】
システムは、宛先エンドに宛先アドレス及びルーティング動作に関連するコマンドを送信できる。システムは、アドレス動作及びルーティング動作に加えて、ルータに他のコマンドを発信することもできる。
【００３９】
システムは、ネットワーク上の特定の宛先アドレスに関する規則を発信することもできる。例えば、バージニア宛のトラフィックを有する顧客がいる場合、全てのルータにわたって、グローバルにコマンドを通信することは必要ないかもしれない。システムは、バージニアのルータのみに変更を加えることを望むであろう。
【００４０】
ルーティング動作のいくつかの部分は、特定の宛先に必ずしも結び付けられないかもしれない。代わりに、それは、単にそれ自体による単なるルーティング動作であるかもしれない。パケットがルータを通過する場合、パケットは、ファイアウォールフィルタを通過できる。ファイアウォールフィルタは、当該パケットに対する多数の特性について宛先アドレスを確認して、それらが接続するかを調べ、その後、パケットを維持するか又はドロップするか否かを決定する。データがどこから入ってくるか、又は、どこに進むのかとは対照的に、ルーティング動作は、それがどのデータタイプであるかに基づいているかもしれない。
【００４１】
他のファイアウォール規則は、送信元アドレス又は宛先アドレスに関連するかもしれない。これらファイアウォール規則のいくつかは、パケットタイプに適用するかもしれない。システムが、送信元に基づいてトラフィックに作用することを望んでよい場合がある。システムが、送信元アドレスに作用することを望むであろう場合、システムは、ファイアウォール規則又はルーティングポリシと同様の効果を有することができる。
【００４２】
[ＩＩＩ．ユーザインタフェース]
グラフィカルユーザインタフェース（ＧＵＩ）は、システムがウェブベースであるので、ウェブサービスと対話する。ＧＵＩは、入力の選択をユーザから取得し、次に、ルータ管理コマンドとしても既知である、適切なＢＧＰコマンドへと当該入力を変換する。ＧＵＩのバックエンドは、アドレス及び要求された動作をデータベース内に格納する。変更がある度に、システムは設定ファイルを再構築し、それをＢＧＰスピーカにプッシュアウトする。次に、システムは、ＢＧＰスピーカにそれら自体を再読み込みするよう伝える。設定ファイルはこのように使用される。
【００４３】
ＧＵＩは、ＢＧＰがベンダのハードウェアに結び付けられる、又はルータにログインするネットワークエンジニアを必要とすることなく、専門家以外の人が、ＢＧＰを再設定し、ルート注入を行うことを可能にする。それは、非技術者が、ネットワークにおいてルートを追加、除去、及び操作することを可能にする。
【００４４】
ＧＵＩ上で、システムに新しいアドレス又はアドレスの範囲を追加する選択肢がある。アドミニストレータは、トラフィックがスクラブセンターに進まなければならないように、フィルタリングを強いることができる、又は、システムが過大なトラフィックのフィルタリングを始める場合、それを止めることができるように、フィルタリングしないことを強いることができる。これが提供するのは、実際には、フィルタリングをオーバーライドするための手動オーバーライドのようなものである。ＧＵＩは、同様にシステムからアドレスを除去することも可能にし、これにより、アドミニストレータは、ルート除去のためにこの手動処理を有することをもはや必要とせず、単に望ましくないルートを除去することができる。
【００４５】
図３は、本発明の実施形態に係る、システムＧＵＩのサンプルである。ＧＵＩは、アドレス用の空白のテキストボックス、検索のプルダウンメニュー（例えば、動作選択のため）、コメント用の空白のテキストボックス、実行（ｇｏ）と表示されたボタン、及び、消去（ｃｌｅａｒ）と表示されたボタンを含む。メニューにおける利用可能な動作は、許容される動作に限定でき、これにより、誰かがルータにログインした場合、入力されるかもしれないルーティングエラーを誰かが生じさせる恐れを除去する。
【００４６】
空白のアドレステキストボックスの下に列挙されるのは、部分的に編集されたＩＰアドレス、各ＩＰアドレスに対してルーティングに変更が加えられてからの時間である、適用時間、及びステータスのリストである。ステータスは、加えられた変更のタイプを示す。例えば、変更のタイプは、ｎｕｌｌルート、又は、ＤＤＯＳシステムに迂回されたことを意味する、ＡＤＳへの迂回であり得る。検索のプルダウンは、空白のテキストボックスに入力されるＩＰアドレス又はアドレスの範囲に適用されるべき選択肢を与える。ＩＰアドレスの範囲は、ＣＩＤＲ表記で入力できる。ユーザが、検索のプルダウンメニューから選択できる選択肢は、検索、ｎｕｌｌルート、ＡＤＳへの迂回、又は、迂回しないを含む。検索は、ＩＰアドレスが入力された場合、その特定のアドレス又はアドレスの範囲について、現在のステータスが何なのかを検索する及び与えるであろうことを意味する。ユーザは、また、ＣＩＤＲ表記でアドレスの範囲を入力でき、アドレス毎に対してとは対照的に、その範囲全体に同一の更新を適用できる。その更新は、接続されている全てのルータに渡される。１つの実施形態において、コメントフィールドが提供され得、ステータスタイプに関するソートの選択肢が提供され得る。
【００４７】
さらにＧＵＩに含まれるのは、コメント、編集、及び削除の３つのリンクである。各アドレス又はアドレスグループに関する編集は、検索ボックス内のアドレス又はアドレスグループを編集することである。削除は、削除をするためである。従って、アドミニストレータは、システムからアドレス又はアドレスグループを削除することができる。アドレス又は複数のアドレスが削除された場合、システムは、もはやそれらを管理していないことを意味する。ステータスは、同様に設定ファイルから削除される。その時点で、新しい設定ファイルの情報が境界ルータにプッシュアウトされ、ステータスがプッシュアウトされる場合、境界ルータは、そのための何らの情報も有していないので、それに対して何も特別なことは行わない。それは、単に、そのために規則を有さないあらゆる他の宛先が通過するように通過できる。コメントリンクは、特定のエントリに関するコメントの挿入を可能にする。
【００４８】
[ＩＶ．ネットワークルーティングを管理するための方法]
システムのバックエンドは、ＧＵＩにおいて指定される変更を実装できる。ルーティングにおける変更が所望される場合、バックエンドは、設定ファイルを再構築し、ＢＧＰスピーカに変更をプッシュアウトし、次に、ＧＵＩにおいて指定される変更に基づいて、ＢＧＰスピーカにそれら自体を再読み込みするよう伝える。設定ファイルを再構築することは、設定ファイルのコンテンツをＢＧＰルーティングコマンドに変換することを伴う。システムは、スピーカにデータをプッシュアウトする場合、スピーカからの設定を増やす。スピーカは、次に、スピーカにそれ自体を再読み込みするよう伝える。それらの前には、同様にウェブベースである、スケジュール画面がある。その背後の動作は、設定ファイルをルータに発信できる。
【００４９】
図４は、本発明の実施形態に係る、ネットワーク内におけるデータトラフィックのルートを管理するための方法４００のフローチャートである。方法４００は、ＧＵＩ、例えば、図３に示されるＧＵＩによって実行されてよい。
【００５０】
ブロック４１０で、ユーザにアドレス及びルーティング動作を入力するためのユーザインタフェースが提供される。アドレスは、ＣＩＤＲ形式で入力されてよく、ルーティング動作は、例えば、アドレスのステータスに関する検索、アドレスに対するｎｕｌｌルート、アドレスに向けたトラフィックをＡＤＳに迂回させること、又はアドレスに向けたトラフィックを迂回させないことを含むことができる。
【００５１】
ブロック４２０で、アドレス及びルーティング動作は、ＧＵＩを介してシステムに受信される。例えば、ユーザは、検索ボックスにアドレスを指定でき、メニュー（例えば、ドロップダウンメニュー）からルーティング動作を選択できる。
【００５２】
ブロック４３０で、アドレスに関して実行されるべきルーティング動作を指定すべく、設定ファイルが更新される。例えば、ＧＵＩに入力されたアドレス及び所望のルーティング動作は、設定ファイルにおいて、設定ファイルの形式で更新されることができる。
【００５３】
ブロック４４０で、更新された設定ファイルは、ルータ管理コマンドに変換される。設定ファイルは、読み取られ、適切なルータ管理コマンドが生成される。これらのコマンドは、これらが送信される先のルータによって読み取られること、及び理解されることができる。１つの実施形態において、コマンドは、ＢＧＰコマンドであってよい。
【００５４】
ブロック４５０で、ルータ管理コマンドは、ネットワーク又は自律システムの複数の境界ルータに送信される。例えば、コマンドは、境界ルータ２２０及び２２１に送信されることができる。
【００５５】
システムが設定ファイルを境界ルータに発信すると、境界ルータが、それ以外のものをインターネットの他の部分にブロードキャストする必要がある場合、境界ルータは、今度は、ＢＧＰスピーカとして機能できる。システムのバックエンドでは、設定ファイルが更新される。設定ファイルは、既存の形式からルータが理解できるコマンド（例えば、ＢＧＰコマンド）へ変換され得る。スピーカは、次に、この情報を指定されたセットのルータにブロードキャストする。
【００５６】
ＧＵＩは、ウェブベースであってよく、アドミニストレータが情報を入力することを可能にする。情報は、ウェブサーバに至る。ウェブサーバから、コマンドが、ウェブサーバ上であり得る、又はアーキテクチャ的に別個であり得る境界ルータへ（例えば、ＢＧＰスピーカを介して）送信される。ＧＵＩは、アドミニストレータがアドレス又はアドレスの範囲を指定すること、次に、実装されるべきステータスを指定することを可能にし得る。ＧＵＩのバックエンドは、コマンドを受信できる。コマンドが、既存のルーティングを変更しないであろう場合、システムは、それを識別でき、単に何も行わない。例えば、あるアドレスに関しての場合、システムがｎｕｌｌルートしようとしている場合で、一方、アドレスは既にｎｕｌｌルートされている場合、システムは、その数値を現在の設定と比較し、それが同一の設定に既に設定されているかを調べ得、何も行わない。
【００５７】
一旦、オペレータがＧＵＩ上に変更を加えると、設定ファイルは更新される。この更新は、管理デバイス／モジュール（例えば、ＢＧＰスピーカ）に、その設定ファイルをルータコマンドに変換させることを生じさせるソフトウェアをトリガでき、次に、これらのコマンドを、接続されたルータを通じて発信する。
【００５８】
ＧＵＩは、タイマを含むことができ、ルート注入を関連付けることができる。例えば、誰かがルート、例えばｎｕｌｌルートを注入する場合、システムは、それがどのくらい前に発生したのか、それが何のチケット（注入に関連するＩＤ番号）に関連していたのかをアドミニストレータが調べ、イベントの隣に注記又はコメントを配置することを可能にし得る。このように、ＧＵＩ及びサーバは、イベント管理の態様を利用し、それらをルート管理に接続できる。
【００５９】
様々な実施形態において、タイマは、ルーティング動作、又はルートをアクティブ化させるタイマを終了させるために使用され得る。アドミニストレータは、タイマを設定できるが、変更は、すぐに実際には加えられない。例えば、ユーザは、特定の時間にトリガするように、ルートに対してタイマを設定できる。タイマは、ルーティング動作が使用されるべき未来時を設定するために使用され得る。システムは、タイマを使用して、設定ファイルを更新することを未来時まで待機することもできる。
【００６０】
いくつかの実施形態において、設定ファイルにおける各レコードは、挿入されたルートに対応し得る。レコードは、例えば、それがいつ発生したか、なぜ発生したか、誰が実施したか、彼らは誰のために実施したか、何回発生したか等のビジネスに有用なメタデータも含むことができる。これらのこと全ては、追跡されることができる。データベース（例えば、２１２）は、変更を追跡し続けることができる。それは、ビジネスのコンテキストを提供する。そのようなコンテキスト、特にルータにわたってのコンテキストは、ネットワークアドミニストレータがルータにログインし、変更を加える場合、存在しない。
【００６１】
ネットワークアドミニストレータが、ルートを追加及び除去して変更する場合、システムは統計値を追跡でき、どのシステムがどのリソースをより多くの場合必要とするか調べることができる。アドミニストレータは、アドミニストレータがルータに手動で変更を入力しているのみの場合には、アドミニストレータが全てのログを通して構文解析しない限り、通常、利用可能でなかったであろう観測データを取得できる。しかし、それでも、アドミニストレータは、誰がルートを配置したかのようなデータを欠いているであろう。さらに、ルートにおけるログは、ルートがどのくらいの期間、所定位置にあったのかを追跡しない。このシステムは、データの当該ギャップを満たすことができる。実施形態は、ネットワークに実施された全てのことを含むことができる。ルートを注入する場合、アドミニストレータは、注記又はアラートのようなビジネスコンテキストを追加できる。それは、ネットワーク変更にコンテキストと見識を与え得る。
【００６２】
[Ｖ．複数のルータにわたってネットワーク保護の設定を提供するためのシステム]
適切なネットワーク保護を提供するためのトラフィック制御の設定は、単一のルータのみに関してでもかなりの量の変更を伴い得る。ネットワークの保護（ＰＦＮ）サービスは、ＢＧＰベースのＤＤｏＳ保護を提供できる。ＰＦＮ製品の設定処理は、エラーの元になり得る。例えば、単に変更を発生させるためにタイプインする必要があり得る多くの行の設定があるので、設定におけるタイプミスが生じ得る。システムは、この処理を、複数のルータにわたってはるかに速くなるように合理化できる。システムは、ユーザ自身で変更をセットアップするためのポータルをユーザに提供することもできる。システムは、ルーティングに対する変更を作用するために使用され得るが、それは、エラー率を減少させるための様々な方法を含む。例えば、提案されたルーティング変更を調査するために、健全性チェックが組み込まれ得る。ルーティング設定に対する提案された変更を確認するための方法は、より一貫して見えるルータの設定をもたらすことができ、これは、システムがセットアップに対する健全性チェックを実行する場合、より低いエラー率をもたらすことができる。システムは、同時に複数のルータを管理することをより容易にする。このことは時間がかかり、エラーを起こしやすい、手動で全てのファイアウォール規則をタイプインすることとは対照的に、数秒で多数のルータにわたって、ファイアウォール規則の管理を可能にする。
【００６３】
システムは、汎用ルーティングカプセル化（ＧＲＥ）のようなトンネリングプロトコルにより、ＢＧＰを介してジェネリック監視ネットワークと顧客ネットワークとの間にピアリングセッションをセットアップするためのルータを設定できる。ユーザは、システムがそれらのネットワークに関してこれらの設定を事前認証したとのアナウンスを送信され得る。システムは、例えば別のシステムがユーザのシステムアドレスを見つける必要がある場合、次に世界に向けて再度アナウンスし得る。当該他のシステムがユーザのシステムアドレスを要求する場合、グローバルルーティングテーブルは、他のシステムが監視ネットワークを調べる必要があることを他のシステムに伝えることができ、その後、他のシステムのトラフィックは、監視ネットワークへとルーティングできる。テスト及び監視であり得る、監視ネットワークは、その後、他のシステムを顧客のネットワークに渡すことができる。
【００６４】
図５は、本発明の実施形態に係る、１又は複数のルータにわたってＰＦＮ製品を設定するための方法５００のフローチャートである。
【００６５】
そのようなシステムを適切に設定及び更新するために、誰かに対して正しいオペレーションをトレーニングするための作業がかかり得る。システムは、ユーザが変数の修正を介して監視ネットワークを設定できる形式を提供すること、及び変更が作用されるべきルータの選択を提供することによって、そのようなシステムが持つ多くの課題を緩和できる。変更は、エンドユーザが処理可能であるよりも、はるかに高い正確性と精度で、システムによってバックグラウンドで処理されることができる。
【００６６】
ブロック５１０で、ユーザインタフェースは、軽減ネットワークを介して、顧客ネットワークへのトラフィックをルーティングすべく、顧客ネットワーク及びルーティング動作の入力を可能にする。顧客ネットワークは、１又は複数のネットワークアドレスからなり得る。ルーティング動作は、ネットワークアドレスのうち１又は複数に、どのようにルーティングするのかを指定してよい。顧客ネットワークは、一連のネットワークアドレス、又はネットワークアドレスの範囲として指定されてよく、アドレスは、ＣＩＤＲ表記を使用して指定されてよい。
【００６７】
ブロック５２０で、顧客ネットワーク及びルーティング動作が、ユーザインタフェースから受信される。ルーティング動作は、どのように顧客ネットワークに対して及び顧客ネットワークを通じてルーティングするかを指定する１又は複数のＢＧＰルーティングコマンドとして指定され得る。ＢＧＰコマンドは、オペレータに設定された、いくつかの変数を含み得る。
【００６８】
設定された変数は、ＧＲＥのようなトンネリングプロトコルに関連する変数を含むことができる。設定された変数は、ＧＲＥのための顧客のトンネルエンドポイントを含んでよい。ＧＲＥトンネルは、顧客ネットワークが監視ネットワークと通話することを可能にするために使用され得る。その点において、システムは、ルータのエンドポイント、及び顧客のルータのエンドポイントを把握している。これらは、パブリックアドレスである。システムは、内部アドレスも提供し、それにより、顧客ネットワークと内部監視ネットワークとの間で通信される場合、それが内部アドレスにわたって発生する。ＧＲＥは、トンネルエンドの両側に２つのアドレスで、４つのアドレスで機能できる。１つは、各ルータがトラフィックをそれとの間で送信する外部アドレスである。内部アドレスは、多くの場合、プライベートＩＰ空間のアドレス、又は同様のものである。外部アドレスは、パブリックアドレスであり、ルータは、その内部ネットワーク部分に関する内部アドレスのトラフィックをカプセル化し、その後、ルータは、パブリック部分を送信する。これは、そのうちのＧＲＥコンポーネントが、単にどのように機能するかであり、セットアップを必要とする。
【００６９】
設定され得る他のものは、クライアントを設定に導く説明を含む。何人かのユーザは、異なるサイズのイーサネット（登録商標）フレームを実行することを望んでよい。デフォルトは１，５００バイトである。しかしながら、ＧＲＥが使用されるため２４バイトのオーバヘッドがあるので、最大は、１，４７６バイトであり得る。何人かのユーザは、ユーザのルータ上で、設定可能なフィールドである種々のプロトコルを実行するので、より多くの又はより少ないバイトを実際に必要とする。多くの場合消去することが所望され得る、ビットの断片化がある。しばしば、システムがデータを送信する場合、宛先ルータによって受け取ることができるより大きなサイズを多くの場合送信し、データは、パケット断片化と呼ばれる処理を介して、複数のパケットに分割され得る。顧客は、パケットを再度組み立てるために顧客のルータを設定できるので、これは問題ないことであり得る。しかしながら、これは、莫大なパフォーマンスヒットがかかり得る重度の負荷をルータに生じさせ得る。システムは、顧客側で生じる、パケットのその再組み立てを必要とするであろうビットを設定することによって、顧客ルータがそれを行わないように、強いることを実際に試みることができる。
【００７０】
システムは、同時に、変更されるべき情報の断片全てを入力できる。それは、ＡＳ番号、説明、ＩＰアドレス、どのルータに対して変更を作用することを実際に望むのかを含む、情報の各断片を入力するためのインタフェースを提供できる。
【００７１】
システムは、ユーザが何を行うかを我々が実際に許容するのかに作用するポリシステートメントを有する。システムは、ユーザエンドでのｎｕｌｌルートの実行のような、監視ネットワークの変更を作用し得る特定のルーティングのコミュニティ文字列をアナウンスするための選択肢をユーザに与える。システムは、インターネットに対して実際にアナウンスするには小さ過ぎるルーティングプレフィックスをユーザが送信することを防止するための設定を有する。
【００７２】
トラフィック制御システムは、その後ルータにプッシュされる設定ファイルを生成できる。ユーザは、その後ルータにログインし、実際にそれを適用する。処理は、複数の段階を伴い得る。第１の段階は、変更ファイルをルータにプッシュすることである。次に、送信されたファイルは、転送において何らも破損されていないことを確実にするために確認される。パリティチェック、又は同様の完全性チェックが、送信された設定ファイル上で実行され得る。最後に、変更を施行するために、ユーザはルータにログインすることができ、送信された変更を実装し得る。システムは、複数のルータにわたる変更を可能にする。各ルータは、少なくとも異なるエンドポイントアドレスを有するので、各ルータについて設定ファイルは僅かに異なる。
【００７３】
ブロック５３０で、軽減ネットワークと顧客ネットワークとの間の接続は、様々なルーティングの変数を使用して開始される。ユーザインタフェースは、当該情報を提供でき、その情報の一部は、いくつのユーザトンネル及びエンドポイントがあるかであってよい。システムは、テンプレートに基づいて各ルーティングの設定ファイルを作成する。システムは、２つの異なるルータのための２つの異なる設定ファイルを作成でき、これらをその２つの異なるルータに送信することが可能である。システムは、その後、ユーザがルータにログインし、変更を施行することを可能にし得る。
【００７４】
ブロック５４０で、軽減ネットワークを通じて顧客ネットワークに宛てられるトラフィックのルーティングを可能にするためのルータ管理コマンドが、ルーティングデバイスに送信される。軽減ネットワークを通じてコマンドをルーティングすべく、ルーティングデバイスを指示するためのルータ管理コマンドは、ＢＧＰコマンドからなり得る。ＢＧＰによって決定されるルーティングは、ネットワークアドミニストレータを設定されている経路、ポリシ、又はルールセットに基づき得る。
【００７５】
[ＶＩ．ルータの正常性チェックを実行するためのシステム]
システムは、ＢＧＰスピーカ及びルータ自体の間でルータの正常性チェックを実施できる。これは、システム、ＢＧＰスピーカ、及びルータ間の通信手段を監視したいため、及び、システムが基板にわたって正しく動作していることを確かめたいための一部である。例えば、所望されるルーティング変更が、プッシュされ終えたことを確認する。システムは、オペレータがすぐに問題を知ることができるよう、視覚インジケータも提供し得る。
【００７６】
ユーザは、設定ファイルを作成でき、それらは、その後ルータにプッシュアウトされ、そこで施行される。変更がルータにプッシュされ、変更が実際にコミットされる場合、ユーザは、変更が成功し且つ受け取られたと、又はそうでなかったと述べられているフィードバックをルータから取得する。
【００７７】
図６は、本発明の実施形態に係る、ルータの正常性チェックを実行するための方法６００のフローチャートである。ブロック６１０で、ユーザにアドレス及びルーティング動作を受信するためのユーザインタフェースが提供される。アドレスは、ＣＩＤＲ形式であってよく、ルーティング動作は、例えば、アドレスのステータスに関する検索、アドレスに対するｎｕｌｌルート、アドレスに向けたトラフィックをＡＤＳに迂回させること、又はアドレスに向けたトラフィックを迂回させないことを含むことができる。
【００７８】
ブロック６２０で、アドレスに関して実行されるべきルーティング動作を指定すべく、設定ファイルが更新される。例えば、受信されたアドレス及び所望のルーティング動作は、設定ファイルにおいて、設定ファイルの形式で更新されることができる。
【００７９】
ブロック６３０で、更新された設定ファイルは、ルータ管理コマンドに変換される。設定ファイルは、読み取られ、適切なルータ管理コマンドが生成される。これらのコマンドは、これらが送信される先のルータによって読み取られること、及び理解されることができる。１つの実施形態において、コマンドは、ＢＧＰコマンドであってよい。
【００８０】
ブロック６４０で、ルータ管理コマンドは、ネットワーク又は自律システムの複数の境界ルータに送信される。例えば、コマンドは、境界ルータ２２０及び２２１に送信されることができる。
【００８１】
ユーザが更新をプッシュすると、ユーザは変更が実際に受け取られ、競合がなかったことを保証するためにフィードバックを取得する。ＧＲＥ、又は場合によってはトンネルが既に使用されていることから、多くの場合競合があると、それは、ＩＰアドレス競合、エンドポイントアドレス競合又はアドレス内競合であり得る。これらの設定のうちのいくつかは、間違いであり得、システムは、ユーザが望ましくない設定でオーバーライドしようと試みていることをユーザに知らせている。ユーザが変更を作用するためにコミットする場合、ユーザは、フィードバックのためにＢＧＰルータ及びＢＧＰスピーカを照会でき、これらのことを確認できる。システムは、ルータが実際にこれらの変更を承諾したか、承諾しなかったかを検証できる。
【００８２】
多くの現在のシステムにおいて、ユーザが変更を加えると、ユーザは、それが機能することを単に期待しなければならない。ユーザエラーは、例えばトラフィック制御器とＢＧＰスピーカとの間の関係を断つことができ、長期間に近い間、気付かれずに進まなければならない。正常性チェック過程は、それが設定する全てのコンポーネントに到達する能力を確認することができ、内部では、この場合それはＢＧＰスピーカであろうが、個別のサーバ及び他のコンポーネントに到達してもよい。システムは、通信手段が開放され且つ利用可能であることを保証し、その後、ＢＧＰスピーカに実際に到達できる点で、通信手段を一段階先に進ませる。システムはまた、これらのＢＧＰスピーカを確認し、且つこれらの通信手段を開放し、ＢＧＰスピーカが、ＢＧＰスピーカのアナウンスをプッシュアウトする各ルータでセッションを確立する。システムは、システムのステータスを示すための種々のインジケータを有することができ、アラートメッセージの発信もする。周期的に、システムは、これらのチェックをこれらの特定のデバイスのうちのいくつか又は全てに実行できる。
【００８３】
ブロック６５０で、ルータがどのように応答したか、及び応答したか否かを調べるための正常性チェック過程の一部として、メッセージが複数の境界ルータに送信される。
【００８４】
ブロック６６０で、送信されたメッセージに応答して、１又は複数の応答が、境界ルータから受信される。
【００８５】
ブロック６７０で、システムのステータスが、境界ルータから受信した応答に基づいて更新される。スピーカが、例えば、ルータのうちの１つに対する確立されたセッションを有さない場合、おそらくシステムは、そのミッションを再度開始すべく、スピーカに再度焦点を合わせることを実際に試みる。又は、システムは、開放された通信手段を有しているかを単に調べるため、当該ルータに対するＰＩＮＧテストを行うことができる。システムは、問題を迅速に正確に示すことに役立つように、様々な診断テストを実行することができる。
【００８６】
[ＶＩＩ．トランスペアレントなログ記録]
現在、トラフィック制御システムに加えられた変更の監査証跡は、一般に、容易に利用可能ではない。これが意味するのは、追跡不能で、システムを適切に動作させないようにし得る「ファントム」変更を加えることができるということである。ログ記録機能は、ユーザがシステムに何をしたかの可視性を可能にし、今度は、システムを使用する全ての人にアカウンタビリティを提供する。
【００８７】
システムは、様々なサーバ及び他のマシンから既存のログファイルを取得でき、ログファイルをデータベースに移動し得、その後、それが実際にエンドユーザに利用可能であるように、そのためのパネルを作成し得る。これは、具体的なファイル名及び規約を持つ具体的な場所のログファイルにアクセスするためにサーバにログインする必要性を緩和する。代わりに、他のユーザが何を行ったのか、誰もが調べることができるように、ログは、ユーザがアクセス可能であるようにされる。全ての変更、特にそれに影響を与えた変更を見つけることができる。
【００８８】
加えられた変更のログは、集中化され、アクセス可能であるようにされている。ユーザはこれがあるので、これらの変更を集中化するための当該能力をここで自動的に有し得る。なぜなら、変更は、各ルータでローカルに入力される代わりに、全て集中場所から入ってくるからである。
【００８９】
[ＶＩＩＩ．ルートサーバ]
ネットワーク上に複数のルータがあると、特定の宛先に対してネットワークが利用する最善のルートは何かを知ることが有用であり得る。このシステムは、ユーザが宛先アドレスを入力することを可能にし、特定のルータと当該宛先との間の経路、及び、どこでネットワークを出るのかを見つけるためのチェックが実行され得る。これは、トラブルシューティングにも有用であり得る。
【００９０】
ルートサーバは、トラフィック制御が通信できる追加サーバであり得る。ルートサーバは、ネットワークにわたる全てのルータからのＢＧＰの受信器であり得る。ルートサーバは、各ルータからルーティングテーブル全てを転送でき、その後、特定のアドレスがネットワークをどこで出てよいかを調べて確認することを誰かが所望する場合、ルートサーバは、当該誰かに伝えることができる。ルートサーバは、トラフィック制御器内にネットワークルッキンググラス（ｌｏｏｋｉｎｇ  ｇｌａｓｓ）を有する能力をユーザに与え得る。
【００９１】
全ての他のルータからのルーティングテーブル全てをその後有するのは、サーバであり、ルーティングテーブルはそこに格納される。そうすることで、全ての境界ルータに何が起こっているかの見当を迅速に得ることができる。
【００９２】
[ＩＸ．サブアカウント]
システムは、顧客がログインし、顧客自身でトラフィック制御を使用し、非常に限定的に事を管理する能力を顧客に提供することを望んでいるかもしれない。この着想は、非常に限定的に、顧客が顧客自身のアドレス空間を管理し、それを使用して変更を作用する能力を有する、このシステム上のアカウントを顧客に与えるであろう。全てのルーティング動作のうちのサブセットを実行することのみを許容させるために、限定的なサブアカウントが設定され得る。限定的な機能が、変更の空間のいくらかに変更をプッシュし、特定のファイアウォール規則をそれに適用する又はしない能力を含み得る。
【００９３】
それは、縮小した機能を持つ、ユーザのための別個のポータルであり得る。限定的な機能は、アドレス空間上にフィルタリングすることを可能にするために提供され得る。
【００９４】
[Ｘ．コンピュータシステム]
本明細書に述べられているコンピュータシステムの何れかは、任意の適切な数のサブシステムを利用してよい。そのようなサブシステムの例は、図７のコンピュータ装置１０において示される。いくつかの実施形態において、コンピュータシステムは、サブシステムがコンピュータ装置のコンポーネントであり得る、単一のコンピュータ装置を含む。他の実施形態において、コンピュータシステムは、各々がサブシステムであり、内部コンポーネントを持つ、複数のコンピュータ装置を含むことができる。
【００９５】
図７に示されるサブシステムは、システムバス７５を介して相互接続される。プリンタ７４、キーボード７８、ストレージデバイス７９、ディスプレイアダプタ８２に結合されるモニタ７６、及びその他のもののような追加のサブシステムが示される。Ｉ／Ｏコントローラ７１に結合する周辺機器及び入出力（Ｉ／Ｏ）デバイスは、入出力（Ｉ／Ｏ）ポート７７（例えば、ＵＳＢ、ファイヤワイヤ（登録商標））のような、当技術分野において既知の任意の数の手段によって、コンピュータシステムに接続され得る。例えば、Ｉ／Ｏポート７７又は外部インタフェース８１（例えば、イーサネット（登録商標）、Ｗｉ−Ｆｉ（登録商標）等）は、コンピュータシステム１０をインターネットのようなワイドエリアネットワーク、マウス、入力デバイス、又はスキャナに接続するために使用され得る。システムバス７５を介した相互接続は、セントラルプロセッサ７３が各サブシステムと通信し、システムメモリ７２又はストレージデバイス７９（例えば、ハードドライブ又は光ディスク等の固定ディスク）からの命令の実行を制御すること、並びに、サブシステム間で情報交換することを可能にする。システムメモリ７２及び／又はストレージデバイス７９は、コンピュータ可読媒体を具現化し得る。本明細書に述べられているデータの何れかは、１つのコンポーネントから別のコンポーネントに出力され得、ユーザに出力され得る。
【００９６】
コンピュータシステムは、例えば、外部インタフェース８１によって、又は内部インタフェースによって接続される同一のコンポーネント又はサブシステムの複数を含み得る。いくつかの実施形態において、コンピュータシステム、サブシステム、又は装置は、ネットワーク上で通信できる。そのような事例において、１つのコンピュータは、クライアントとみなされることができ、別のコンピュータは、サーバとみなされることができる。ここで、各コンピュータは同一のコンピュータシステムの一部であり得る。クライアント及びサーバは、各々複数のシステム、サブシステム、又はコンポーネントを含むことができる。
【００９７】
本発明の実施形態の何れかが、ハードウェア（例えば、特定用途向け集積回路、又はフィールドプログラマブルゲートアレイ）を使用して、及び／又は、モジュラーの態様で、又は統合された態様で、汎用プログラマブルプロセッサによるコンピュータソフトウェアを使用して、制御ロジックの形態で実装され得ることが理解されるべきである。本明細書で使用されるように、プロセッサは、シングルコアプロセッサ、同一の集積チップ上のマルチコアプロセッサ、又は単一の回路基板上の若しくはネットワーク接続された複数の処理ユニットを含む。本明細書で提供される開示及び教示に基づいて、当業者は、ハードウェア並びにハードウェア及びソフトウェアの組み合わせを使用して、本発明の実施形態を実装するための他のやり方及び／又は方法を知る及び理解するであろう。
【００９８】
本願に説明されるソフトウェアコンポーネント又は機能の何れかは、例えば、従来又はオブジェクト指向の技術を使用して、例えばＪａｖａ（登録商標）、Ｃ、Ｃ＋＋、Ｃ＃、Ｏｂｊｅｃｔｉｖｅ−Ｃ、Ｓｗｉｆｔ、又は、Ｐｅｒｌ若しくはＰｙｔｈｏｎのようなスクリプト言語等の任意の適切なコンピュータ言語を使用するプロセッサによって実行されるべきソフトウェアコードとして実装され得る。ソフトウェアコードは、格納及び／又は送信のためのコンピュータ可読媒体上の一連の命令又はコマンドとして格納され得る。適切な媒体は、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、ハードドライブ若しくはフロッピー（登録商標）ディスクのような磁気媒体、又はコンパクトディスク（ＣＤ）若しくはＤＶＤ（デジタル多用途ディスク）のような光媒体、フラッシュメモリ、及び同様のものを含む。コンピュータ可読媒体は、そのようなストレージデバイス、又は送信デバイスの任意の組み合わせであり得る。
【００９９】
そのようなプログラムは、インターネットを含む様々なプロトコルに準拠する有線、光、及び／又は無線ネットワークを介する送信に適合されたキャリア信号を使用して、符号化及び送信されてもよい。そのように、本発明の一実施形態に係るコンピュータ可読媒体は、そのようなプログラムで符号化されたデータ信号を使用して作成され得る。プログラムコードで符号化されるコンピュータ可読媒体は、互換デバイスでパッケージ化され得、又は、他のデバイスとは別個に（例えば、インターネットダウンロードを介して）提供され得る。任意のそのようなコンピュータ可読媒体は、（例えば、ハードドライブ、ＣＤ、又はコンピュータシステム全体等の）単一のコンピュータ製品上に、又は単一のコンピュータ製品内に存在し得、システム若しくはネットワーク内の種々のコンピュータ製品上に、又は種々のコンピュータ製品内に提示され得る。コンピュータシステムは、ユーザに本明細書に述べられている結果の何れかを提供するためのモニタ、プリンタ、又は他の適切なディスプレイを含む。
【０１００】
本明細書に記載する方法の何れかは、段階を実行するために設定され得る１又は複数のプロセッサを含むコンピュータシステムで完全に又は部分的に実行され得る。このように、実施形態は、潜在的にそれぞれの段階又は段階のグループのそれぞれを実行する種々のコンポーネントで、本明細書に記載する方法の何れかの段階を実行するように設定されるコンピュータシステムに関することであってよい。番号が付けられた段階として提供されているが、本明細書の方法の段階は、同時に又は異なる順序で実行されてよい。さらに、これらの段階の一部は、他の方法からの他の段階の一部で使用され得る。また、段階の全て又は一部は、任意選択であってよい。さらに、方法の何れかのうちの段階の何れかは、モジュール、回路、又はこれらの段階を実行する他の手段で実行され得る。
【０１０１】
特定の実施形態の具体的な詳細は、本発明の実施形態の趣旨及び範囲から逸脱することなく、任意の適切な態様で組み合わされてよい。しかしながら、本発明の他の実施形態は、個別の態様の各々、又はこれら個別の態様の具体的な組み合わせに関連する具体的な実施形態に関するものであってよい。
【０１０２】
本発明の例示的な実施形態の上記の説明は、例示及び説明の目的で提供されている。網羅的であること、又は説明される厳密な形態に本発明を限定することを意図せず、多くの変更例及び変形例が、上記の教示に照らして可能である。実施形態は、本発明の原理及びその実用的な応用を最も良く説明すべく選択され及び記載されている。これにより、他の当業者が、様々な実施形態において、予期される特定の用途に好適な様々な変更例で、本発明を最も良く利用することを可能にする。
【０１０３】
「一（ａ）」、「一（ａｎ）」、又は「一（ｔｈｅ）」の記述は、そうでないと具体的に示されていない限り、「１又は複数」を意味するように意図される。「又は（ｏｒ）」の使用は、「包括的な（ｉｎｃｌｕｓｉｖｅ）又は」を意味するように意図され、そうでないと具体的に示されていない限り、「排他的な（ｅｘｃｌｕｓｉｖｅ）又は」を意味するように意図されない。
【０１０４】
本明細書に述べられている全ての特許、特許出願、公報、及び説明は、これら全体が、あらゆる目的のために、参照により本明細書に組み込まれる。何れも先行技術として認められない。
【図１】
2018506237.tif 000003
【図２】
2018506237.tif 000004
【図３】
2018506237.tif 000005
【図４】
2018506237.tif 000006
【図５】
2018506237.tif 000007
【図６】
2018506237.tif 000008
【図７】
2018506237.tif 000009
【国際調査報告】
2018506237.tif 000010
2018506237.tif 000011
2018506237.tif 000012