JP2005509369A - データネットワーク上での情報のルーティング制御を実現するためのシステム及び方法 - Google Patents

データネットワーク上での情報のルーティング制御を実現するためのシステム及び方法 Download PDF

Info

Publication number
JP2005509369A
JP2005509369A JP2003543256A JP2003543256A JP2005509369A JP 2005509369 A JP2005509369 A JP 2005509369A JP 2003543256 A JP2003543256 A JP 2003543256A JP 2003543256 A JP2003543256 A JP 2003543256A JP 2005509369 A JP2005509369 A JP 2005509369A
Authority
JP
Japan
Prior art keywords
data
usage
network
point
performance
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
JP2003543256A
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26685274&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2005509369(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by ネットヴィエムジー インコーポレイテッド filed Critical ネットヴィエムジー インコーポレイテッド
Publication of JP2005509369A publication Critical patent/JP2005509369A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • 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
    • 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
    • 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/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/308Route determination based on user's profile, e.g. premium users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9023Buffering arrangements for implementing a jitter-buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

複数のネットワーク上でのデータのルーティングを制御するためのシステム及び方法。したがって、ネットワークユーザは、待ち時間、損失、ジッタまたは複数のネットワーク全体でのコストと帯域幅の管理を含む許容できるレベルの使用量という点である特定のデータトラフィック(95)のフローが性能の許容できるレベルを維持することを確実にするために特定のフローポリシー(90)を定義できる。

Description

関連出願
本願は、代理人明細書番号第021089−000200US号により識別され、2001年11月2日に提出され、すべての目的のために参考のために示される「インテリジェントルーティングによるネットワークサービスレベル及び帯域幅管理を保証するためのシステム及び方法(SYSTEM AND METHOD TO ASSURE NETWORK SERVICE LEVELS AND BANDWIDTH MANAGEMENT WITH INTELLIGENT ROUTING)」と題された米国仮特許出願から優先順位を主張する。さらに、米国特許出願番号第09/833,219号及び代理人明細書番号第021089−000100US号を有し、2001年4月10日に提出された「インテリジェントルーティングによるネットワークサービスレベルを保証するためのシステム及び方法(SYSTEM AND METHOD TO ASSURE NETWORK SERVICE LEVELS WITH INTELLIGENT ROUTING)」と題される米国特許出願がすべての目的のために参考のために示される。
背景技術
本発明は、概してネットワーク化された通信システム上でのデータのルーティングに関し、さらに詳細にはインターネットプロトコル(「IP」)ネットワークまたはインターネットなどのネットワーク上でのデータの制御されたルーティングに関する。
1つのこのようなデータネットワークが、企業と消費者の間の通信のためのトランスポートの方法としてますます使用されているインターネットである。性能のボトルネックは経時的に出現し、ビジネスに不可欠なアプリケーションのためのインターネットインフラストラクチャの有用性を制限する。これらのボトルネックは、通常、あるソースからある目的地への多くのネットワーク経路に沿って異なった場所で発生する。それぞれの別個のボトルネックは固有の解決策を必要とする。
「ラストマイル」ボトルネックは過去数年の間に最大の注目を集め、エンドユーザをインターネットに接続する帯域幅として定義することができる。ラストマイルの性能を劇的に改善するためにxDSL及びケーブルインターネットアクセスなどの解決策が現れてきた。「ファーストマイル」ボトルネックとは、コンテンツがウェブサーバ上で提供されるネットワークセグメントである。ファーストマイルアクセスは、例えばさらに強力なウェブサーバ、サーバと記憶装置の間のさらに高速の通信チャネル、及びロードバランシング技法を使用することにより改善してきた。
しかしながら、「ミドルマイル」はインターネットルーティングの分野で対処されなければならない最後の障害であり、このようなボトルネックを解決する従来の手法の元では最も複雑な問題である。「ミドルマイル」、つまりインターネットのコアは大型バックボーンネットワークと、これらのネットワークがともに接続される「ピアリングポイント」から構成されている。ピアリングポイントは構造的に中途半端に構築されているため、それらはデータトラフィックの輻輳の領域となる傾向がある。一般的に、バックボーンネットワークプロバイダが協調して、このような輻輳を緩和するためのインセンティブは存在していない。すべてのインターネットトラフィックの約95%以上がネットワークサービスプロバイダにより運営される複数のネットワークを通過することを考慮すると、コア帯域幅を増加し、例えば光学的なピアリングを導入するだけではこれらの問題に適切な解決策は提供されない。
ピアリングとは、2つのネットワークサービスプロバイダ(「NSP」)、または代わりには2つのインターネットサービスプロバイダ(「ISP」)が、固定のない(settlement−free)方法で接続し、それらのサブシステム間でルートを交換するときである。例えば、NSP1がNSP2に匹敵する場合は、NSP1はNSP1からNSP2内で、及び逆もまた同様に到達可能なルートだけを広告するだろう。これは、完全なインターネットルーティングテーブルが交換される通過接続とは異なる。別の相違点は、ピアリングは通常固定なし(settlement−free)である一方、通過接続が通常有料接続である点である。すなわち、それぞれの側はピアリングポイントに回路またはルートのコストを支払うが、超えていない(not beyond)。ピアリング回路と通過回路(つまり有料ピアリング)のハイブリッドが存在するが、完全なルーティングテーブルの部分集合だけが送信され、有料ピアリングポイントに送信されるトラフィックは「変更なし」として受信される。このような応答は効果的なルート制御を妨害する。
ピアリングポイントを通して受信されるルートは、ボーダーゲートウェイプロトコル(「BGP」)ルーティングの観点から離れた1つの自律システム(AS)である。それは、プロトコルによって(及びそれらのコネクションにはコストがかからないためプロバイダによっても)それら(ルート?)をきわめて好適にする。しかしながら、ピアリングポイントに容量の問題があり、ピアリングポイントを通る性能が劣化する(suffers)場合、BGPに関連するトラフィックが依然として問題のあるピアリングポイントを優先するため、すべてのデータトラフィックのエンドツーエンド性能が劣化する。
構造上、インターネット及びそのピアリングポイントは一連の相互接続されたネットワークサービスプロバイダを含んでいる。これらのネットワークサービスプロバイダは、通常、それらの自律システム(AS)内の保証された性能またはサービスのレベルを維持する。保証性能は、通常、ネットワークサービスプロバイダとユーザ間のサービス内容合意書(「SLA」)に指定されている。該サービス内容合意書は、プロバイダにそのネットワーク上で最小レベルのネットワーク性能を維持することを義務付ける。しかしながら、プロバイダは自分のシステムの外部の他のネットワークサービスプロバイダとこのような保証は交わさない。すなわちネットワークサービスプロバイダをリンクするピアリングポイント全体ではこのような合意書は提供されないのである。したがって、どちらの関係者もそのピアリングポイント全体でアクセスまたは最小レベルのサービスを他のネットワークサービスプロバイダと維持することは義務付けられていない。データトラフィックは、常にこれらのピアリングポイントで輻輳する。したがってエンドツーエンドのインターネット経路は通常アンマネージである。これはインターネットを必須のアプリケーションのためのデータトランスポート機構として信頼できないものにする。さらに、線路切断、(例えば、定期保守または更新動作のための)計画休止、装置故障、停電、ルートフラッピング及び多数のその他の現象等の他の要因が輻輳を悪化させる。
従来、複数のネットワークサービスプロバイダは、主要なネットワークサービスプロバイダ間で「プライベートNAP」サービスを使用することによりインターネットの一般的な不信頼性を改善しようと試みる。しかしながら、この解決策では、それ欄プロバイダの外部または下流のサービスレベルのコミットメントを維持することはできない。加えて、最適経路を選択するために使用されている一般的な技術的なアプローチはダウンストリームプロバイダのマルチパス(例えばECMP)の影響を受けやすい。従来の技術はこのようにしてリアルタイムで、またはほぼリアルタイムデ問題を検出したり、回避することはできない。
さらに、従来のネットワーク技術またはルーティング制御技術は出口トラフィック(つまりアウトバウンド)だけで作用する。しかしながら、ネットワークの入口トラフィック(インバウンド)を制御するのは困難である。これは、一般的には本来双方向であるアプリケーションにとって大部分のネットワーク技術及びルーティング制御システムを無効にする。これは、今日インターネット上で使用されている大部分の音声、VPN、ASP及び他のビジネスアプリケーションを含む。このようなビジネスアプリケーションは、多くの他の種類のアプリケーションだけではなく、時間に敏感な金融サービス、オンライン音声及びビデオコンテンツのストリーミングも含む。これらの欠点は、性能が維持されるか最適される、あるいはコストがインターネット上などのエンドツーエンドデータトラフィックで最小限に抑えられるという任意の種類の保証を複数のプロバイダ全体で防止することである。
いくつかの共通したアプローチでは、ある特定のネットワークサービスプロバイダにより提供されているサービスレベルを決定することが可能である。この技術は、少なくとも2種類を含む。第1は、ICMP、トレースルート、スティング(Sting)などのツール、及びCQOS社(CQOS,Inc.)及びキーノート社(Keynote,Inc.)などのベンダまたはサービスプロバイダを使用する、データ経路のほぼリアルタイムでのアクティブな較正である。別の従来のアプローチは、TCPダンプなどのツール及びネットワークアソシエーツ社(Network Associates,Inc.)、ナルス社(Narus,Inc.)、ブリックス社(Brix,Inc.)及びPキューブ社(P−cube、Inc.)などのベンダを活用して、送受されているトラフィックのリアルタイムパッシブ分析である。
しかしながら、これらの従来の技術的な方法はサービス内容合意書が違反されているかどうか、あるいはネットワーク性能が一般的にいつ劣化されるのかを判断するだけである。従来のインターネットルーティングに対する方法のどれも、データネットワーク全体での効果的なルーティング制御、あるいは分析のポイントを超えてネットワーク内の可視性を提供しない。このようなサービスレベルの分析はサービスレベル保証の必要な部分であるが、SLA性能またはコストを保証することだけでは不十分である。したがって、該共通のアプローチは慢性的なウェブサイトの休止、不十分なダウンロード速度、神経過敏のビデオ及びファジーな音声などのインターネットの問題を検出する、あるいは最適に回避することもできない。
前述されたルート制御技法の欠点を克服するために、インターネットなどのデータネットワークの多くのユーザは2つまたは3つ以上のデータネットワークコネクションを使用している。複数のコネクションは、帯域幅つまりネットワークを横切ることができるデータ量のスループットを高める。帯域幅が増大すると、インターネットトラフィックの性能と信頼性は改善される。やはり技術で「マルチホーミング」として知られている、インターネットに対するこれらの複数のコネクションは通常複数のさまざまなネットワークサービスプロバイダ全体である。マルチホーミングは通常ボーダーゲートウェイプロトコルを使用して、1つまたは複数のネットワークサービスプロバイダのリンク全体でトラフィックを誘導する。この従来のアプローチは信頼性を高めるが、パケット損失、待ち時間及びジッタという点での性能は予測できないままである。この従来の予測不可能性はBGPの固有の性質のために生じ、ある特定のエンドツーエンド経路で性能劣化としてトラフィックを別のルートに切り替えない。さらにBGPはトラフィックを、宛て先への最少数のホップを提供するにすぎないリンク上に誘導する傾向があり、通常は最も費用効率が高いリンクではない。これは、複数のプロバイダ全体での帯域幅のオーバープロビジョニングなどの非効率な(in efficient)ルーティング制御技法につながる。しかしながら、これは、金銭上またはそれ以外の場合のどちらかでコストの増加につながる。
従来のマルチホーミング技法の予測不可能性を考慮すると、ネットワークサービスプロバイダは、通常予測不可能なレベルのインターネット性能を、さまざまなコスト構造で送達する。今日使用可能なシステムはどれも、インターネットカスタマが、少なくともコスト、帯域幅、性能等という観点で複数のプロバイダ全体で帯域幅を管理できるようにしない。
発明の概要
したがって、技術では、従来の方法前述された短所を克服し、複数のネットワーク上でデータのルーティングを効果的且つ効率的に管理するためのシステム及び方法に対するニーズがある。したがって、データをトランスポートするために使用されるある特定の経路が、該特定の経路が少なくとも許容できる性能レベルと複数のネットワーク全体でのコストを維持するように選択されることを確実にするために、インターネットユーザなどのネットワークユーザにインテリジェントルーティング制御を提供するニーズがある。
ある実施形態では、本発明の1つの実施形態による例示的なフロー制御システム及び方法が例えばデータネットワークの端縁に配備される1つまたは複数のモジュールを含む。フロー制御システムは、リアルタイムまたはほぼリアルタイムで、高性能の経路上でトラフィックを連続的に監視、転送、または転送し直し、このようにしてビジネスに特殊なアプリケーション要件と一貫した予測可能な性能を可能にする。
例示的なシステムは、カスタマにより定義される性能ポリシーの定義と実現に加えて、カスタマにより定義される帯域幅使用ポリシーの定義及び実現を可能にする。ユーザによって定められるポリシーにより、ネットワークリソースの高価なオーバープロビジョニングなしに既存の帯域幅の費用効率が高い使用が可能になる。別の実施形態では、システム及び方法はBGPなどのネットワーク構成を積極的に管理し、ネットワーク性能とコストの目的をIPインフラストラクチャの使用量に整合するためにレポートとツールを提供する。
別の実施形態では、本発明は、複数の技法を使用してインターネットトランシットプロバイダなどのさまざまなネットワークプロバイダ全体でトラフィック性能統計の監視に備える。システムには、ユーザのトラフィックが流れ込む、及びそこから流れ出す宛て先、それらの宛て先に到達するために使用される経路、損失または待ち時間性能及び定義したコストポリシーのトランシット使用が満たされているかどうか等を示す情報を与えられる。さらに、フロー制御システムはアプリケーションと無関係なトラフィックフロー識別及びトラフィックフローの性能測定、ユーザの視点からの複数のネットワーク全体での実際のエンドツーエンドフロー性能の正確な測定、リアルタイムまたはほぼリアルタイムの統計収集を実現する。さらに別の実施形態では、システムは、ユーザのトラフィックルーティングに対する違反、あるいは特定の宛て先向けのフローポリシーを検出し、BGPルート更新を例えばユーザのルータに発行することにより代替経路にトラフィックを向ける。
特定の実施形態では、本発明はデータネットワーク上で通信されるデータのためのポリシーを施行する方法を提供する。データネットワークは、ソースと宛て先の間などの第1のポイントと第2のポイントの間のデータを送るように設計されている。第1のポイントは第1のネットワークに結合され、同様に該第1のネットワークは1つまたは複数の第2のネットワークに結合される。第2のネットワークの1つが、第2のポイントへ通信されるデータをトランスポートするために第2のポイントに結合される。各ネットワークは、流れるデータを含む経路または経路セグメント、あるいは第1のポイントから第2のポイントへのデータのルーティングを含む経路のセグメントを含む。ネットワークの少なくとも2つが相互接続点で結合され、データは該相互接続点を通って流れる。方法は、少なくとも1つのセグメントと関連する少なくとも1つの使用量特性を監視することと、ポリシーの関連使用量要件と該少なくとも1つの使用量特性を比較することとを含む。別の特定的な実施形態では、方法は、第1のネットワーク内でのデータのルーティングに関連付けられる該少なくとも1つの使用量特性が使用量要件に違反しているかどうかを判断することを含む。
発明の実施の形態の詳細な説明
実施形態の詳細な説明をここに示す。しかしながら、本発明が多様な形態で具体化されてよいことが理解されなければならない。したがって、ここに開示されている特定の詳細は制限的として解釈されるべきではなく、むしろ主張の基礎として、及び実際的には任意の適切に詳説されるシステム、構造、方法、プロセスまたは様式において本発明を利用するために当業者に教示するための代表的な根拠として解釈されるべきである。
図1A、図1B、及び図1Cは、本発明の特定的な実施形態を実践するために適切な基本的なハードウェア構成要素を描いている。図1Aはディスプレイ画面5を有するディスプレイ3を含む例示的なコンピュータシステム1の図である。キャビネット7にはディスクドライブ、CD−ROMドライブ、ディスプレイアダプタ、ネットワークカード、ランダムアクセスメモリ(RAM)、中央演算処理装置(CPU)、及び他の構成要素、サブシステム及びデバイスなどの標準的なコンピュータ構成要素が収容されている。ボタン13を有するマウス11及びキーボード9などのデバイスが図示されている。トラックボール、タッチスクリーン、デジタル化タブレット、音声または視覚認識等の他のユーザ入力装置が使用できる。一般的には、コンピュータシステムは、本発明とともに使用するために適切なデスクトップコンピュータなどの1種類のコンピュータシステムを除き(but)例証する。コンピュータは多くのさまざまなハードウェア構成要素で構成でき、多くの寸法及び様式で製造できる(例えばラップトップ、パームトップ、ペントップ、サーバ、ワークステーション、メインフレーム)。ここに説明される処理を実行するために適しているハードウェアプラットホームは、本発明とともに使用するのに適している。
図1Bは、コンピュータ1などのコンピュータに通常見出される可能性のあるサブシステムを描いている。図1Bでは、ボックス20内のサブシステムが内蔵バス22に直接的に接続されている。このようなサブシステムは、通常、図1Aのキャビネット7の中などのコンピュータシステム内に含まれている。サブシステムは入力/出力(I/O)コントローラ24、システムメモリ(またはランダムアクセスメモリ「RAM」)26、中央演算処理装置CPU28、表示アダプタ30、シリアルポート40、固定ディスク42、同様に技術で既知である電気的な手段、無線手段、または光学手段などによってネットワークと通信するように構成されるネットワークインタフェースアダプタ44(例えば、ネットワークインタフェースカード、つまりNIC)を含む。バス22を使用することにより、サブシステムのそれぞれがサブシステムの間で、最も重要なことにはCPUとデータを転送することができ、CPUはSparc(登録商標)、Intel CPU、PowerPC(登録商標)、または同等物である可能性がある。外部装置はバス上のサブシステムと接続することによってバス22を介してCPUまたは他のサブシステムと通信できる。したがって、モニタ46はディスプレイアダプタ30と接続し、相対ポインティングデバイス(例えばマウス)はシリアルポート40などのポートを通して接続する。キーボード50などのいくつかのデバイスは、例えば中断コントローラまたは関連付けられたレジスタを介してなどのように、メインデータバスを使用せずに直接的な手段によりCPUと通信できる。
図1Aに図示される外部物理構成の場合と同様に、多くのサブシステム構成が考えられる。図1Bは1つの適切な構成以外を示している。図1Bに図示されているもの以外のサブシステム、構成要素またはデバイスを加えることができる。適切なコンピュータシステムは、図1Bに図示されているサブシステムのすべてより少数を使用して達成することもできる。例えば、ネットワークインタフェース44が必要とされないだろうため、スタンドアロンコンピュータはネットワークに結合される必要はない。CD−ROMドライブ、グラフィクアクセレレータ等の他のサブシステムは本発明のシステムの性能に影響を及ぼすことなく構成に含むことができる。
図1Cは本発明の実施形態を実践するために使用される可能性のある典型的なネットワークの汎用図である。図1Cでは、ネットワークシステム80は、インターネット、WAN(広域ネットワーク)または類似したネットワークなどのコンピュータデータネットワーク82に結合される複数のローカルネットワークを含む。ここに説明されているようなネットワークシステムは、ソースから宛て先へ、及び逆もまた同様に1つまたは複数の経路を構成する、1つまたは複数のローカルネットワーク及びネットワークサービスプロバイダに関する。しかしながら、ネットワークシステムは、ネットワーキング技術を使用して通信する1台または複数台の計算装置を含むデータネットワークも示すと理解される必要がある。特定のネットワークプロトコル、物理層、トポロジ、及び他のネットワークプロパティがここに提示されているが、本発明は、(他のネットワークに相互接続されるマルチホーミングネットワークなどの)任意の経路が多岐に渡るネットワーク、特に、プロトコルに従って情報の1つまたは複数のパケットを有するフローなどのデータを転送するためのインターネットプロトコル(IP)を利用するそれらのネットワークとともに使用するために適している。さらに、特定のインプリメンテーションは図1Cに図示されていないが、普通の熟練者は、ネットワークシステム80と動作するために、1つまたは複数のデータネットワーク82内で本発明によるフロー制御システムを配備または構成できることを理解する必要がある。
図1Cでは、コンピュータユーザ1がサーバ1に接続され、コネクションはイーサネット、非同期転送モード、IEEE規格 1553バス、モデムコネクション、ユニバーサルシリアルバス等の任意のネットワークプロトコルによる場合がある。通信リンクはワイヤである必要がないが、赤外線、電波伝送等である場合がある。描かれているように、サーバ1は、インターネットあるいは例えばデータ通信のためにインターネットプロトコルを使用する任意の他のデータネットワークなどのデータネットワーク82に結合されている。データネットワークはサーバルータ82の集合体として象徴的に図示されている。
情報の分散または通信のためのインターネットの例示的な使用は、本発明を実践するために厳密に必要ではないが、特定の実施形態を描くために単に使用されるにすぎない。さらに、サーバコンピュータの使用、及びサーバマシンとクライアントマシンの指定は本発明のインプリメンテーションにとって重大ではない。ユーザ1コンピュータは直接的にインターネットに接続できる。サーバ1のインターネットへのコネクションは、それはユーザ1の場合と同様に類似した様式で接続される可能性もあるが、通常、T1回線、T3回線、メトロエリアイーサネット等などの相対的に高い帯域幅の伝送媒体による。同様に、他のコンピュータ84は、ユーザ1コンピュータとは別の場所にあるローカルネットワーク(例えば、ローカルエリアネットワーク、つまりLAN)を活用して示されている。84にあるコンピュータはサーバ2を介してインターネットに結合される。コンピュータ84は単一サーバ(例えばサーバ2)だけを含むとして示されるが、コンピュータ84と関連付けられているローカルネットワークに2台または3台以上のサーバを接続することができる。ユーザ3とサーバ3構成は、まだ計算装置の第3のネットワークを表している。
図1Dは、アクティブな較正だけを使用するルート制御システムに対する典型的なマルチパス(例えばECMP)技法の影響を示す。指定ネットワークサービスプロバイダについて、ワシントンDCとサンホセの間には考えられる2つの経路が存在する。第1の経路170はニューヨーク、シカゴ及びシアトルを横断する。第2の経路171はアトランタ、ダラス、及びロサンジェルスを横断する。該経路のどちらかを使用するコストがルーティングプロトコルで等しいと仮定する。大部分のルータベンダは、2つの等しいコストの経路を提示されると、それらの間でトラフィックを負荷分担し(load share)、同じ流れの中の経路が同じルートに従うことを確認する。経路の選択プロセスはベンダに特定であり、通常、既知のソースと宛て先のIPアドレスに依存する。ソースIPアドレスと宛て先IPアドレスが同じでない限り、トラフィックは別の等しいコストの経路を取る可能性がある。経路較正は、宛て先IPアドレスは同じであるが、ソースIPアドレスは異なっているために、カスタマのトラフィックがダラス173を通る南部経路を取ってよいが、ワシントンDCとサンホセ間のネットワーク全体で送信されるアクティブなプローブがシカゴ172を通る北部経路を取ってよいことを仄めかしている。従って、測定される経路は、カスタマのトラフィックによって実際に取られる経路でない可能性がある。本発明はとりわけ、本発明によるカスタマデータトラフィックのサービスレベルを保証するためのシステム及び技法を使用して、データトラフィックを含むルートをインテリジェントに制御した。
図1Eは、NSP92を含む図1Cのネットワークシステム80の一部の中の例示的なデータネットワーク、及び本発明の特定の実施形態によるフロー制御システムを描いている。例示的なフロー制御システム90はデータネットワークの1つまたは複数のネットワーク要素と通信するように構成されている。フロー制御システム90は、ソースネットワーク94、スイッチ96、及びルータ99の要素の外部に、それらと通信して図示されているが、フロー制御システム90は図示されている要素のどれかで全体的に具体化できる、あるいは代わりに該要素のそれぞれで分けて分散できる。別の実施形態では、フロー制御システム90は例示的なソースネットワーク94内の1つまたは複数のサーバまたはネットワーク要素に常駐する。
例示的なデータネットワークは1つまたは複数のソースネットワーク94を含む。ソースネットワーク94は、通常、アプリケーションサービスプロバイダ、管理サービスプロバイダ、コンテント送達ネットワーク、ウェブホスト企業、個々の企業、法人、エンティティ等により所有、運営される1台または複数台のサーバを含むローカルネットワークである。このようなサービスプロバイダは、通常、NSP1、NSP2、NSP3,...及びNSPnなどのマルチホーミングネットワークサービスプロバイダ92からさらに削除されるユーザに情報を通信する。一例では、ネットワークサービスプロバイダ92は、データネットワークの第1の集合と見なされるように、ソースネットワークまたはソースポイントに結合される。これらのNSP、つまりデータネットワークの第1の集合は同様にネットワークの第2の集合に結合され、第2の集合は複数の他のネットワークに接続され、このようにしてソースから宛て先への1つまたは複数の経路を確立する。ここに説明されているような経路は、各セグメントが完全にプロバイダ内に常駐する複数のセグメントに分割される、ソースから宛て先へのルートである場合がある。
ルータ98と複数のネットワークサービスプロバイダ92間の複数のコネクションは、最良の成果を上げるネットワークサービスプロバイダに従った直接データトラフィックにソースネットワーク94の運用者を提供する。スイッチ96は、IPデータなどの双方向データ99を、ソースネットワーク94からルータ98に双方向で転送するために動作する。単一のルータとスイッチが図示されているが、普通の技術の熟練者は、追加ルータとスイッチまたは他の適切なデバイスのどちらかが、本発明の別の実施形態に従って置換できることを認識するだろう。さらに、スイッチ96は主題発明を実践するために使用される必要はない。特定の実施形態では、ルータ98は、例えば(シスコ(登録商標)(Cicso)またはジュニパーインプリメンテーション(登録商標)(Juniper implementations)などの)ボーダーゲートウェイプロトコルなどの例示的なプロトコルを実行する1台または複数台のルータを含み、好ましくは複数のネットワークサービスプロバイダ全体でのルート可視性を有する。
フロー制御システム90の実施形態では、システム90は、性能、コスト、帯域幅等のフロー特性の観点からエンドツーエンド(つまりソースから宛て先及び宛て先からソースへの)データトラフィック95を操作する。フロー制御システム90は、リアルタイムまたはほぼリアルタイムで複数のネットワークサービスプロバイダ全体でデータ経路と関連付けられる統計も作成する。このような統計は、オンザフライレポートが作成され、ルート変更活動、選択された宛て先に送達されるようなトラフィック性能、及びトランジットプロバイダ使用量(つまり帯域幅)、コスト等に関する情報を提供するようにネットワークエンジニアリング人員に、例えばレポート情報91を提供するためにソースネットワーク94に通信される。
本発明のある実施形態では、ローカルコンピューティング装置がシステム90からレポート情報91を使用し、例えばユーザフレンドリインタフェース(「UI」)上で視覚表現及びグラフィック表現を生成し、該表現は(ソースと宛て先間の経路などの)1つまたは複数の経路に沿ったデータトラフィックを示す。ソースネットワーク94にアクセスするネットワーク人員、またはフロー管理を担当する任意のエンティティは、次に制御情報93をフロー制御システム90に提供し、例えば、働きの悪い現在の、つまりデフォルトの経路から働きがよい経路にデータ後らフィックフローを変更することによりシステム動作を修正できる。しかしながら、ネットワーク人員による介入は、フロー管理システム90が本発明に従って動作するには必要ではない。
フロー制御システム90は、さらに、ある特定のトラフィックフローが関連するフローポリシーの1つまたは複数の規則を満たすかどうかを判断するために特定のデータトラフィックフロー(つまりデータネットワークへのアウトバウンドの、及びデータネットワークへのインバウンドの単方向と双方向のトラフィックフローの両方)を比較するために機能する。ここで参照されるようなフローポリシーは、(例えば、IPアドレス接頭語により示されるように)特定のシステムユーザに関係する特定のデータトラフィックフローと関連付けられる1つまたは複数の規則の集合を含む。
規則、つまり基準は最小レベル、最大レベル、またはトラフィックフロー特性と関連つけられる許容できるルーティング動作を定義する一連の値である。例えば、規則は、ネットワークサービスプロバイダのコストを考慮する、あるいは考慮しない最大許容コスト、特定のプロバイダを通るトラフィックフローと関連付けられる最大負荷または帯域幅使用量、一連の許容できる(または許容できない)サービスプロバイダ、複数のネットワークサービスプロバイダ全体での1つまたは複数の経路上での最大許容可能待ち時間または損失、最大バースト制限、最小性能コミットメント、及びコストの範囲(つまり、日時、トラフィックの種類等を考慮したコスト構造)などの、各ネットワークサービスプロバイダのための性能の許容範囲、及びデータトラフィックの測定または制御に影響を及ぼすことがある任意の他のデータフロー特性を設定できる。
フロー制御システム90は、さらに、1つまたは複数の規則、つまりポリシーを施行することがいつ違反されるのかを検出し、次に矯正処置を講じるために動作する。すなわちフロー制御システム90は、性能(つまり、サービスレベル保証)における有害な偏差、コストまたは帯域幅(つまり、経路単位で使用可能な%の容量単位での負荷)を補正することにより、データトラフィックフローに関連付けられるフローを施行する。フロー制御システム90は、リアルタイムまたはほぼリアルタイムのトラフィック分析、ローカル経路ダイバシティ(つまり、データネットワークからの1つまたは複数の出口経路の修正)、及び下流の使用可能な経路に対する可視度に基づいてこのような補正を行う。例えば、ある特定のトラフィックフローに関係する宛て先について、フロー制御システム90は、フロー特性という点で、ある特定のフローのそのフローポリシーからの逸脱を解決するために1つまたは複数の代替経路にトラフィックを向けるまたは向け直す。
図2は、図1Dのフロー制御システム90の特定の実施形態を描く。別の実施形態では、図2のフロー制御システムは反応フロー制御システムである。すなわち、反応フロー制御システムは、許容できる動作のなんらかの目標とされるレベルでの性能を最適化するのではなく、1つまたは複数のデータネットワークまたはサービスプロバイダでのデータトラフィックの規格はずれのルーティングを示すポリシー違反に反応する(つまり、合格−不合格基準に対処する)ように設計されている。
フロー制御システム200は、コントローラ205、パッシブ較正装置203、アクティブ較正装置208、構成要素211、及び使用量コレクタ214を含み、そのそれぞれはハードウェア、ソフトウェアまたはその組み合わせで実現できる。例えば、コントローラ205、パッシブ較正装置203、アクティブ較正装置208、構成要素211及び使用量コレクタ214は、本発明に従ってここに説明されるような特定のプロセスを実行するように設計されたソフトウェアモジュールである。このようなモジュールは、図1Aに図示されるコンピューティング装置などの1台または複数台のコンピューティング装置に、あるいは代わりにデータネットワークまたはネットワークシステム上で結合される1台または複数台のユーザ型機械(つまり、サーバ)に常駐できる。
例示的なパッシブ較正装置203、アクティブ較正装置208、及び使用量コレクタ214はコントローラ205に結合され、部分的にデータトラフィックのフロー特性を提供する。コレクタ205は施行されるフローポリシーだけではなく監視されたフロー特性も受け取る。コントローラ205は、フローポリシーが違反されているかどうかを判断し、このような違反が検出された場合には、次に違反を解決するための矯正処置を選択するように構成される。構成要素211は、矯正処置を開始するための情報を受け取るために使用されるコントローラ205に結合され、データディレクタ220にこのような処置を伝達する。それ以後、データディレクタ220が、例えば、現在の経路から働きがよい経路にトラフィックフローを変更することにより未決の違反を解決するための補正処置を実現する。
さらに、フロー制御システム200はトラフィックレポジトリ221及びフローポリシーレポジトリ218を含む。例示的なトラフィックレポジトリ221及びフローポリシーレポジトリ218は、1つまたは複数のデータ構造の中に多数のレコードを記憶するように構成された、記憶装置などのデータベースである。トラフィックレポジトリ221は、トラフィック特性及びルート特性に関する情報を記憶し、通信するように設計され、フローポリシーレポジトリ218は、データトラフィックフローのそれぞれの性能とコストを規定するためのポリシー情報または規則を記憶、通信するように設計される。データベース管理の技術の普通の技能の熟練者は、本発明のレポジトリを達成するために多くのデータベース技法が利用されてよいことを理解する必要がある。
運転中、図2のフロー制御システム200は、IPデータトラフィックなどの出口と入口のデータフロー201を監視し、ソースネットワークとの間のデータフロー201が関連フローポリシーにより設定される性能公差範囲内にあるかどうかを判断する。フロー制御システム200は、ある実施形態では、光スプリッタなどのスプリッタ、または普通の技術の技術野熟練者に既知である任意の他のタッピング手段を使用することにより、例えばネットワークスイッチによってなど、複製によりデータフロー201を受け取る。データフロー201内に含まれている情報とまったく、またはほぼまったく同じであるデータフロー202はパッシブ較正装置203に提供される。
パッシブ較正装置203はデータフロー201のデータトラフィックを監視し、トラフィックとトラフィック性能に関係する情報204をコントローラ205に通信する。コントローラ205は、特定のデータフローなどの特定のトラフィックフローに対応する1つまたは複数のポリシーを表すポリシーデータ206を受信するように構成される。さらに、特定のデータフローは、例えば宛て先接頭語によって識別される一定のユーザに関連付けることができる。ポリシーデータ206から、コントローラ205は性能のレベル、コストまたは特定のトラフィックが満たさなければならない稼働率を決定する。例えば、コントローラ205は、インバウンドネットワーク待ち時間とアウトバウンドネットワーク待ち時間、パケット損失及びネットワークジッタなどの、データフロー201の特定のトラフィックフローが定められた性能レベル(つまりサービスレベル)を満たしているかどうかを判断する。
アクティブ較正装置208は、変化する種類の1つまたは複数のアクティブプローブ207をデータネットワークの中に送信し、データネットワークから受信するために機能する。これらのプローブは、1つまたは複数の使用可能なプロバイダ(つまり、プロバイダがピアASよりむしろトランジットASであるかどうかを判断するために)全体で取られた経路、使用されている次のホップ(next hop−in−use)、及び他のネットワークパラメータを含むネットワーク性能を測定するように設計される。アクティブ較正装置208を起動するために、コントローラ205はアクティブプローブ要求209をアクティブ較正装置208に送信する。コントローラ205が、代替経路に関する追加情報を決定するか、あるいはネットワークシステム特性が反応フロー制御システム内でポリシーをさらによく施行する、あるいは代わりに最適化されたフロー制御システムでこのようなポリシー違反を妨げるために必要である場合に、このような要求が必要とされる。
使用量コレクタ214は、1つまたは複数のネットワークプロバイダ構成を表現するNSPデータ217を受信するように構成される。一般的には、このような構成は各プロバイダと関連する経路(「パイプ」)の数及びそのサイズを含む。さらに、NSPデータ217は、プロバイダのコストまたは料金請求書作成発行構造に関係し、各プロバイダのアドレスの関連する集合または部分集合、各プロバイダの料金請求書作成発行方法(つまり、毎分あたりバイト等)等を含むこともできる。さらに、使用量コレクタ214はスイッチ、ボーダルータ、プロバイダギア、及びデータネットワーク上でデータを移送するために使用される他のデバイスなどのネットワーク要素から使用量情報213を収集するように構成される。使用量コレクタ214は、NSPデータ217と使用量情報213に基づいた集計データを表すプロバイダ稼働率と料金請求書作成発行の情報215をコントローラ205に提供するように構成される。稼働率と料金請求書作成発行の情報215は、当該のネットワークサービスプロバイダごとにコスト、料金請求書作成発行、稼働率等を表すデータを含む。
普通の技術の熟練者は、NSPデータ217が多岐に渡る方法で使用量コレクタ214に提供できることを理解しなければならない。例えば、データはデータフローにより使用されるデータ経路によって提供できる、あるいはそのようにする権利を有するエンティティによって提供でき、このようなネットワークエンジニアは図1Eのソースネットワークのコンピューティング装置に該データを入力する。
さらに、使用量コレクタ214は、ネットワークサービスプロバイダのデータトラフィック容量、コスト等を定義する使用量特性を監視するように構成される。使用量コレクタ214に提供される使用量情報213は、スイッチ、ボーダルータ、ルータ、プロバイダギア、及びデータネットワーク上でデータを移送するために使用される他のデバイスなどのネットワーク要素からの使用量特性を含む。使用量は、例えば、各ネットワークサービスプロバイダの負荷及び使用可能な容量を定義する特性(つまり使用量特性)の瞬時またはほぼ瞬時の測定値を表す(時間(0)でのX Mbサンプルなどの未処理データ)データを指す。稼働率は経時的な使用率である。例えば、NSP1を監視している使用量コレクタがその稼働率、つまり経時的な容量を時間(0)でのX MB及び時間(1)でのY Mbとして測定すると仮定する。この未処理データ、つまり使用量は、稼働率、つまりNSP1についての使用率を計算する(例えば、Y−X/時間(1)−時間(0))ために使用される。帯域幅は、経路またはトラフィックフローに使用可能な経路のセグメントごとの総容量である。ある実施形態では、使用量は、任意の数のホップでの任意の経路の任意のセグメント、または第1のポイントからのネットワークで測定できる。負荷は、通常、特定の経路がデータトラフィックを搬送するために使用される容量の量を定義し、負荷/帯域幅として表すことができる。
使用量コレクタ214は、使用量情報1213とNSPデータ217に基づいて稼働率と料金請求書作成発行情報215を生成するように設計されている。プロバイダのそれぞれが、使用量コストを決定するための方法だけではなく、異なるコストと料金請求書作成発行構造を有しているため、使用量コレクタ214はコントローラ205に稼働率と料金請求書作成発行情報215を与えるために相応して使用量情報213を集計するために動作する。
使用量コレクタ214は、次に、当該のネットワークサービスプロバイダごとに稼働率料金請求書作成発行情報215をコレクタ205に提供する。普通の技術の熟練者は、使用量コレクタが、ルート制御をさらに上手に達成するために必要に応じて、プロバイダ使用量情報に基づいて追加情報をコントローラに提供できることを理解する必要がある。
コントローラ205は、パッシブ較正装置203、アクティブ較正装置208、使用量コレクタ214、及びオプションでトラフィックレポジトリ221のそれぞれから情報(つまり、集計された性能と使用量特性)を収集する。収集された情報に基づいて、コントローラ205は、コントローラ205に伝達されるポリシーデータ206により表される情報に関してポリシー違反を最もよく緩和する行動計画を決定する。いったん行動計画が決定されたら、コントローラ205はネットワークルーティング変更要求212を開始し、構成要素211に送信する。特定の実施形態では、コントローラ205は、ポリシー違反を解決するために使用できる1つまたは複数の代替データ経路を表すデータも提供する。
構成要素211は、データディレクタ220にネットワーク内のルーティング変更を伝達するように設計される。いったん構成要素211が1つまたは複数のルーティング変更を送信すると、データディレクタ220は次に現在の経路から別の経路(例えば、NSP1からNSPnに、またはNSP1の第1の経路からNSP1の第2の経路)にデータフロー201を移動する。このようにしてデータディレクタ220は、例えばコスト及び各リンク全体で測定される性能に基づいて複数のネットワークサービスプロバイダリンク全体でこれらの宛て先へのトラフィックを分散するために動作する。
運転中、構成要素211は、例えばBGPなどのルーティングプロトコルを使用することにより、データディレクタ220と、1つまたは複数のルーティング変更210を通信する。構成要素211は、構成要素211を通過するトラフィックのソースアドレスを修正することによってルーティング動作を動的に制御するために機能する。ソースアドレスは、コスト要件だけではなくアプリケーション性能も改善するように修正される。
以下の説明は、例示的な制御システム200の要素のそれぞれのさらに多くの説明である。アクティブ較正装置208を参照し直すと、アクティブ較正装置208は、下流経路または上流経路の性質を決定するためにシステム200内でアクティブな機構を提供する。この情報は、通常、インターネットなどのデータネットワーク上で使用される任意の従来のプロトコルでは使用できず、通常のプロセスネットワーキングの外部で収集されなければならない。図2に示されているように、アクティブ較正装置208は、最小性能レベルなどのポリシー要件を満たしていない少なくとも1つの宛て先接頭語を提供するためにコントローラ205に結合される。いったん受信されると、アクティブ較正装置208は、次に、性能レベルだけではなく宛て先アドレスに対する使用可能なネットワーク経路の大部分またはすべてを決定する較正プロセスを開始する。コントローラ205は、施行または補正を必要とする特定のポリシーに基づいて、アクティブ較正装置208が使用することになる最も適切なプローブを選択し、それ以後アクティブ較正装置208を使用してネットワーク経路のアクティブな厳密な調査を開始するように設計される。
ある実施形態では、アクティブな較正プローブがプローブ経路207を介して使用可能なネットワークまたはインターネット経路に伝達される。戻る側のアクティブな較正プローブはプローブ経路207を介してアクティブ較正装置208に入る。アクティブ較正装置は、次にプローブ情報209を、代替使用可能経路を含む性能情報を含むコントローラ205に転送する。コントローラ205は、次に、主題のトラフィックフローと関連するポリシーの詳細を最善に施行する方法を決定する。例示的なアクティブ較正装置208は、例えば長期統計を提供するためにアクティブ較正機構を利用する。
本発明の別の実施形態では、アクティブ較正装置208はコントローラ205内のデータディレクタ220に常駐するか、あるいは代わりにコントローラ205に統合できる。本発明を実践するために適切な市販されているルータの複数の独占インプリメンテーションがある。適切なアクティブプローブの1つの例はRMONプローブである。シスコのシステムは、アクティブプローブを送出するために遠隔操作(「RMON」)プローブから派生するサービス保証エージェント(「SAA」)を使用する。SAAにより、ルータはネットワーク発のアプリケーション往復時間を測定、報告できる。後述されるあらゆるプローブがSAAにおいてネットワーク較正に使用できるわけではないが、当業者は、以下のそれぞれが本発明の1つまたは複数の実施形態を実践するためにどのようにして実現される可能性があるのかを理解するだろう。
例示的なアクティブ較正装置208は、ICMP(インターネット制御メッセージプロトコル)エコー要求または他のピーンと音を出す(ping)型のプローブ、軽量TCPベースプローブ、スティング(Sting)プローブ、「pathchar」プローブ、ユーザデータグラムプロトコル(「UDP」)パケットを所定のTTL(生きる時間)とともに使用する軽量プローブ、tracerouteプローブ、または本発明に従ってアクティブな較正装置208による使用に適している他のアクティブを使用できる。
図2のアクティブ較正装置208により受信し直されるこれらのプローブはそれらのソースアドレス単位で送出される。このようなプローブはすべて、例えばローカルな施設内に常駐する例示的なstatsコンピュータシステムで、またはルータ上のstatsプロセスとして調達、受信される。別の実施形態では、アクティブな較正装置及びプローブのその使用は米国特許出願番号第09/833,219号及び代理人明細書番号第021089−000100US号を有し、2001年4月10日に提出された「インテリジェントルーティングによりネットワークサービスレベルを保証するためのシステム及び方法(System and Method to Assure Network Service Levels with Intelligent Routing)」と題され、すべての目的のために引用例として本明細書に取り込まれる米国特許出願に説明されているプローブに従って動作する。
図2の例示的なパッシブ較正装置203は、カスタマネットワークまたはインターネットトラフィックなどのネットワーク通信データ201を妨害せずに受信するように構成される。パッシブ較正装置203により監視されるようなネットワーク通信データ経路201(つまりIPデータトラフィック)は、データディレクタ220からパッシブ較正要素203に提供されるデータトラフィックのデフォルトの、あるいは現在転送されている経路を含む。現在転送されている経路は、例えばパケットが、標準的なルーティングプロトコルにより決定されるように取るだろうルータ間の経路(例えば、ホップ単位)である。パッシブ較正装置203は(つまり、電気的に、光学的に、または電波によって等)コントローラ205に結合され、特定のIPデータトラフィックがフローポリシーにより決定されるような許容できる性能測定基準範囲内にあるかどうかを示す情報を提供する。パッシブ較正装置203は、データフロー202を介して受信されるすべてのトラフィックを瞬間的に監視するために動作し、図1Dに関して図示されるようにEMCPなどのアクティブトラフィック分析だけに依存するという複雑な状態を克服するように設計されている。コントローラがポリシー違反に対処すると、例えば、パッシブ較正装置203はマルチパス(例えばECMP)が存在する場合にアクティブトラフィック分析だけを実行するという困難な状況を克服するために動作する。
本発明の別の実施形態では、パッシブ較正装置203が両方向(つまり、入口と出口)でのトラフィックストリームを検査し、フローの中へのトラフィックストリームのそれぞれを分類する。トラフィックフローは経時的に根本的なプロトコル状態(例えばTCPセッションに関してなど)に従ってパッシブ較正装置203内で監視される。例えば、パッシブ較正装置203は往復待ち時間、失われたパケットのパーセンテージ、及びトラフィックルートまたはフローごとのジッタに従ってトラフィックフローを分類する。このようなトラフィックルート情報は、流量を含むトラフィックフローを搬送する経路の「エンドツーエンド」性能を特徴付けるために使用され、一連のネットワーク接頭語に集計される。
前述されたように、パッシブ較正装置203は、トラフィックレポジトリ221(コネクションは図示せず)に記憶されるトラフィック情報とルート情報を記憶、フェッチ、及び更新するために結合される。例示的なトラフィックレポジトリ221は、例えばネットワークサービスプロバイダの運用者だけではなく、図2のシステム200などのフロー制御システムを利用するエンドユーザに有効であるトラフィック情報とルート情報をあらわすデータを記憶し、維持するように構成されるデータベースである。トラフィックレポジトリ221内のデータはトラフィックについての長期的な統計を含んでいる。これらの統計は、分析の目的を報告し、本発明によるフロー制御システムのユーザに一般的なフィードバックを与えるために使用されるだろう。
このようなフィードバックは、例えば、送信されているトラフィック、ソースアドレス、宛て先アドレス、アプリケーション、(差別化された料金請求書作成発行システムに統合される可能性のある)ToSまたはDSCP(「DiffServコードポイント」)設定値により送信されるトラフィック、及びトラフィックの量から成り立つ。これらの統計は、例えばレポートエンジンまたはなんらかの他の分析プロセスがそれらにアクセスするトラフィックレポジトリ221の中に送られる。トラフィックレポジトリ221に記憶される情報は、当業者に理解されるように任意の適切なデータ構造に配列されるこのようなトラフィックルート特性を表すデータである。
図3は、本発明の実施形態によるパッシブ較正装置303の例示的な要素を示す詳細な機能ブロック図である。パッシブ較正装置303は、例えば、パッシブフローアナライザ330、エクスポートフローアナライザ331、及びコンテンツアナライザ332を含む。
ある実施形態では、パッシブフローアナライザ330が現在のトラフィックフロー特性を監視するためにトラフィックに関してパッシブ分析を実行するため、コントローラは、監視されている現在のトラフィックフローが関連するポリシー要件を満たすかどうかを判断できる。エクスポートフローアナライザ331は、トラフィックタイプ、ソースアドレスと宛て先アドレス、及びそれがサービスプロバイダリンク全体で移動するトラフィックに関係する他の情報を広告するそれらのデバイス(例えばルータ)からなど、ネットワークデバイスからエクスポートされたフローレコードに関してパッシブ的な分析を実行する。このようなネットワークデバイスの一例がシスコのネットフロー(登録商標)(Netflow)製品である。別の実施形態では、パッシブフローアナライザ330が、前述された米国特許出願番号第09/833,219号に説明されるパッシブフローアナライザに従って動作する。
コンテンツフローアナライザ332は、ウェブサイトコンテンツなどのデータコンテンツの特定の要素のパッシブ分析を実行する。エクスポートフローアナライザ331及びコンテンツフローアナライザ332は特定のユーザのポリシーに関連付けられている関連接頭語の集合つまり接頭語リスト334を決定する。接頭語リスト334は、このような接頭語を表すデータとしてコントローラ内のアクティブな検出プロセスに送信される。接頭語リスト334は、接頭語リスト334は、1つまたは複数のリスト、つまり性能及び使用量特性を表すデータを記憶するように較正されるデータ構造である場合があり、例えばコントローラによる照会を受け取るように設計されている。いったん照会されると、パッシブフローアナライザは、どのルートまたは経路がフローポリシーに従っているのか、どの経路がデータを転送するために最適な経路であるのか等を決定するために、該1つまたは複数の接頭語リスト、またはその部分を、ポリシー違反を決定する上で使用するためのコントローラに提供する。例示的な接頭語リストは、パッシブフローアナライザ330だけではなく、エクスポートフローアナライザ331及びコンテンツフローアナライザ332によっても生成できる。
図17は、ここに説明されている接頭語リストの1つまたは複数に備えるために適切な例示的なデータ構造1900を示す。データ構造、つまりリスト1900は各アドレス(例えば宛て先)に関連する多くのレコード1910または可変粒度の接頭語とともに多くのIPアドレス1920を含む。各レコード1910はアドレス1920(つまり接頭語)、期間1930中の多くの発生、サンプリングされたバイトの数1940、サンプリングが発生した時間間隔(デルタt)1950、新規接頭語フラグ1960(1が新しい接頭語を表し、0が旧い接頭語を表す)等を含む。
リスト1970は、各アドレス1920つまり接頭語ごとに集計フロー情報を含む。例えば、レコード1975は以下のデータを含む。アドレス1.2.4.7の場合、このアドレスはサンプリング時間間隔(デルタ)tの間に4回監視され、総流量は360バイトである。新規接頭語フラグがセットされたレコード1990での場合(つまり、このアドレスが始めて監視されたとき)、新規接頭語リスト1980は、(デルタ)t間隔で1回の発生(初回)を有するアドレス1.2.4.9を含む。技術野普通の熟練者は、他の関連データが監視されてよく、リスト1900に記憶できることを理解する必要がある。さらに、アドレス、発生、バイト数、時間間隔等を表すデータは、コントローラが容易に入手できる方法でデータを操作するために使用できる。
例えば、リスト1920の中に記憶されるデータは、アドレスつまり接頭語に従って集計またはグループ化できる。図17に図示されるように、集計リスト1995は1.2.4Xに対応するアドレスのグループを含む。例えば、集計アドレスのレコード1997は、アドレスの集合体が時間間隔中に5回監視され、540バイトの総量を有したことを示すデータを含んでいる。技術野普通の熟練者は、アドレスつまり接頭語が多くの方法でグループ化または集計できることを理解する必要がある。
エクスポートフローアナライザ331及びコンテンツフローアナライザ332も、過去に見たことがない接頭語が接頭語リスト334に追加されたときにコントローラ305に通知するように構成されている。新規接頭語通知信号335により、制御要素1005はこの接頭語について新しい基準性能を確立し、必要に応じてルーティングテーブルに非デフォルトルート、つまり代替ルート(つまり非BGP)を与える。ある実施形態では、エクスポートフローアナライザ331及びコンテンツフローアナライザ332が性能特性の監視に備える。
コンテンツフローアナライザ332は、通常、トラフィックフロー340のメインソースがウェブサイトまたは他のコンテンツであるときに使用される。コンテンツソース341は、最適化されなければならない特殊なまたは高級なコンテンツ342が、例えば埋め込まれたURL343を使用することによりフロー制御システムによって識別できるように構成することができる。URL343は、コンテンツフローアナライザ332上で実行中の小さなコンテンツサーバにクライアントを向け直す。コンテンツフローアナライザ332は、通常は小さな画像ファイル(例えば、1×1 GIF)であり、メインのオリジナルコンテンツに関して非可視である、あるいは感知できない該小さなコンテンツ要素に対する要求を受け取り、該小さなコンテンツ要素344でクライアントに応える。コンテンツフローアナライザ332は、このトランザクションを記憶する、またはログして、これらのログを使用することによって、コンテンツフローアナライザ332は集計を実行し、コンテンツ接頭語リスト334をアセンブルすることができる。リスト334は、例えばアクティブサービスレベル監視及びポリシー施行のために、コントローラ205に渡される。
図4は例示的なコンテンツフローアナライザ432の機能ブロック図を描いている。コンテンツフローアナライザ432は、例えば結果として生じるページ上で(感知できない必要はないが)感知できない1×1ピクセル画像ファイルであるコンテンツの小さな要素に対する要求420を処理する。該小さな要素はコンテンツのより大きなセットの高級なまたは一般的に特定のページに関連付けられている。該小さな要素は、例えばコンテンツの中に埋め込まれた小さなリダイレクトURLである。
小さなリダイレクトURLは、コンテンツの小さな要素に応えてHTTP要求420を生成する働きをする。コンテンツフローアナライザ432はこの要求420と応答422を、例えば軽量HTTPサーバ453と共に見る。このサーバは高速且つ軽量であり、画像ファイルで応答する以外何もしない。軽量ウェブサーバ453はウェブページを要求するクライアントのIPアドレスをログし、該1つまたは複数のアドレスをアグレゲータ(aggregator)554に送る。アグレゲータ454は、個々のIP要素424を変化する粒度(例えば、/8から/32)の接頭語に統合する、つまり照合し、各接頭語がある時間間隔で見られる頻度を集計する。
すなわち、アグレゲータ454はその発生頻度に従って接頭語を分類し、接頭語リストジェネレータ455に集計した(つまりグループ化した)接頭語426を提供する。接頭語リストジェネレータ455は、例えば、集計またはグループ化された接頭語426により定義されるようにシステムの全体的な動作に関する接頭語の重要性に従って宛て先接頭語リスト428を作成する。例えば、それぞれの監視されたトラフィックフローは、宛て先接頭語つまりアドレスと関連する性能特性を決定するために調べられる。
集まった接頭語426は、通常、フロー頻度、及び平均流量または総流量の観点から分類される。接頭語リストジェネレータ455は図2のコントローラ205に対し現在の接頭語リスト428に対する更新を送り、新規接頭語が認められると新規接頭語通知信号432でシステムの他の要素に通知する。接頭語リストジェネレータ455は、報告及び分析の目的で接頭語情報430を固定記憶域に記憶する。新規接頭語は、ある特定の時点まで道であった追加の代わりの経路または経路セグメントを提供する。新規接頭語に関連付けられた新規代替経路または経路セグメントはフローポリシー準拠に備え、このようにしてポリシー違反を未然に防ぐためにデータのルーティングを転送し直すまたは改変するために使用できる。
図3を参照し直すと、エクスポートフローアナライザ331は、アナライザ331によって使用可能なフォーマットでフロー情報をエクスポート(つまり通信)できるネットワーク要素に連動して動作する。1つの例示的なフォーマットはシスコのネットフロー(登録商標)エクスポートフォーマットである。また、ルータ345または層2スイッチなどのフロー情報をエクスポートするように設計された任意のネットワーク要素は、このようにしてそれが処理しているトラフィックをパッシブ的に監視するように構成され、エクスポートレコード346をエクスポートフローアナライザ331に転送する。エクスポートフローアナライザ331は、エクスポートフローレコード346を処理するために機能し、フローを接頭語要素に集計し、接頭語リスト334を作成する。接頭語リストは、通常、フロー制御システムにより観察されるすべての接頭語の部分集合である。接頭語は、観察期間での流量とフロー頻度に基づいてすべての接頭語から選択される。該選択された接頭語は、次に、例えば図2のコントローラ205に渡されたリストの前の接頭語リスト334に入れられる。
図5は、例示的なエクスポートフローアナライザ531の機能ブロック図を描いている。エクスポートフローアナライザ531はフォーマットインタプリタ549、パーサ550及び接頭語リストジェネレータ552を含む。フォーマットインタプリタ549は、それらを送信するように設計されたネットワーク要素からエクスポートフローデータグラム520を受信するように構成される。フォーマットインタプリタ549は、次に個々のフロー情報522をパーサ550に通信する。パーサ550は、パッシブ較正装置により監視されるフローから宛て先IP要素を解釈するために動作する。パーサ550は、例えば宛て先アドレスのフロー頻度だけではなく総流量または輸送率(例えば、バイト/時間単位の)にも従ってトラフィックフローを集計要素に集計する。その後、パーサ550は集計要素524をアグレゲータ551に送信する。アグレゲータ551は、次に接頭語レベルの宛て先情報526(つまり、集計接頭語量と周波数)を(例えば、/8から/32までの)多岐に渡る接頭語粒度で生成する。言い換えると、アグレゲータ551は、周波数、セッションまたは特定の接頭語及び観察される時間間隔でのその接頭語に関係する発生の合計量を決定する。
宛て先接頭語リスト528は、例えば相対的重要度の順序で接頭語に関係するトラフィックフロー特性を分類し、編成することにより、接頭語リストジェネレータ552によって作成される。リスト528は、接頭語リスト528の集合体を表すデータを含み、ポリシー施行を確実にするためにシステムまたはエンティティにより決定されるように関連性を決定する際に編成される。例えば、1つまたは複数の接頭語は、全体的なシステムの中で使用可能な接頭語に関係してフロー頻度及び平均流量または総流量の観点で並べることができる。接頭語リストジェネレータ552は、現在の接頭語リストに対する更新を図2のコントローラ205に送り、新規接頭語が認められると新規接頭語通知信号232を介してシステムの他の要素にも知らせる。接頭語リストジェネレータ552は、報告及び分析の目的ですべての接頭語情報530を固定記憶域に記憶する。
図6は、図3の例示的なパッシブフローアナライザ630の機能ブロック図を描いている。ある実施形態では、パッシブフローアナライザ630は接頭語リスト634と新規接頭語通知信号635を作成するように設計されており、関連する特性にグループ化されたネットワーク性能と使用量統計を含む集計されたフローデータ680を生成する。例えば、経時的に観察されるように最高トラフィック量から最低トラフィック量に、特定のサイズの接頭語を集計する、あるいはグループ化することができる。集計されたフローデータ680はコントローラ605に通信され、現在のトラフィックフローが指定された宛て先のための関連付けられたフローポリシーに違反しているのか、あるいは準拠できないのかを判断するためにコントローラにより使用される。パッシブフローアナライザ630は集計されたフローデータ680を、それが履歴ルート及びトラフィックフロー性能を特徴付けるために使用できるトラフィックレポジトリ621に記憶するためにも機能する。本発明の別の実施形態では、図6の接頭語リストジェネレータはパッシブフローアナライザに含まれていない。
パッシブフローアナライザ630は、トラフィックについてネットワーク性能を監視するために、図2に図示されるようにパッシブネットワークタップまたはスパンスイッチポートを介してトラフィック602のコピーを使用する。また、パッシブフローアナライザー630は、非周期的なトラフィックフロー等のような異常な動作の検出のためにトラフィックパターンを監視し、特徴付ける。パッシブフローアナライザ630は、問題のアプリケーションの通常のUDP動作を学習し、理解するために多様なニューラルネットワーク技法を使用し、その動作がいつ変化したのかを示し、おそらく周知のアクティブプローブ技法で検証または説明できるサービスレベル違反を示すことができる。
さらにパッシブフローアナライザ630は、特定のトラフィックフローのそれぞれがどのように分類されるのかに従って「アプリケーション認識」であるように設計されている。トラフィックは、前述された米国特許出願番号第09/833,219号に説明されている分類子に従って分類できる。すなわち、パッシブフローアナライザ630はトラフィック602の各パケットのペイロードを検査し、例えばボイスオーバIP(「VoiP」)用のリアルタイムトランスポート制御プロトコル(「RTCP」)の捕捉及び解釈など、特定のネットワークアプリケーションの性能及び動作を解釈できる。
図6では、パッシブフローアナライザ330は、パケット捕捉エンジン650、パケットパーサ651、相関エンジン652、及びアグレゲータ653を含む。パケット捕捉エンジン650はネットワークに入ってくる、及びネットワークから出て行くトラフィック(例えばIPデータトラフィック)を受信するように構成されたパッシブ受信機である。トラフィックの捕捉は、トラフィック分析を容易にするために、及び現在のトラフィックルートが最小サービスレベルまたはポリシー要件を満たすかどうかを判断するために使用される。パケット捕捉エンジン650は、ネットワークを離れるパケットとネットワークに入るパケットを含む、1個のパケット、数個のパケット、またはすべてのパケットをトラフィックストリームから削除するように設計されている。パケット捕捉エンジン250は、カスタムネットワークドライバを書き込み、パケットの部分を捕捉することによって、例えば、カーネル内のネットワークドライバからユーザ空間の中に特定のパケットを削除するために動作する。DMAを使用すると、コンピュータのCPUを使用しなくても、部分的なパケットをユーザ空間の中に直接的にコピーすることができる。このようなパケットは、通常、それらが細くされる前に1つまたは複数のフィルタに従って削除される。このようなフィルタ及びその使用は技術で周知であり、例えば、すべての種類のTCPトラフィック、特定のアドレスの1つまたは複数の範囲、あるいはソースアドレスまたは宛て先アドレス、プロトコル、パケットサイズまたはデータ一致などの任意の組み合わせを削除するように設計することができる。複数の共通ライブラリがこの機能を実行するために存在し、最も一般的なのが「libpcap」である。Libpcapはローレンスバークレーナショナルラボラトリー(Lawrence Berkeley National Laboratory)で作成されるパケット捕捉用のシステムと無関係なインタフェースである。バークレーパケットフィルタ(Berkeley Packet Filter)は、このような捕捉プログラムの別の例である。
パーサ651は捕捉された未処理パケットを受信するために結合され、パケットを破壊し、トラフィックフロー内のそれぞれからパケットについて特定的な情報を取り出すために動作する。例示的なパーサ651はIPヘッダとTCPヘッダから情報を抽出する。このようなIPヘッダから抽出された情報はソースIPアドレスと宛て先IPアドレス、ToS(つまり「サービスの種別」)ビットで符号化されたDSCP情報等を含む。DSCPはIPパケットQoS要件についての情報を搬送する。各DSCPはトラフィッククラスのホップ単位動作(Per Hop Behavior)を定義する。DiffServは、それが64種別の異なる種別のトラフィック分類を定義できるように64個のコードポイントを有する。TCPヘッダ情報はソースポート番号と宛て先ポート番号、シーケンス番号、ACK番号、TCPフラグ(SYN、ACK、FIN等)、ウィンドウサイズ等を含む。
TCPヘッダから構文解析されたTCP要素は、ポリシーが施行されているかどうかを、性能という観点で判断する上で特に有効である。しかしながら、増加するトラフィック量はTCPに依存せず、代わりにUDPを使用する。UDPは従来のアプローチに従ってサービスレベルを決定するために必要な情報を含んでいない。
これらの宛て先に対するサービスレベルを決定するために、本発明は同じ接頭語または同じ宛て先への一連のアクティブプローブに移動する付帯TCPトラフィックの統計的に関連する量を利用するか、あるいはアナライザにパケットのさらに深くまで構文解析させ、アプリケーション層(例えば層7)でトラフィックを理解させる可能性がある。ネットワーク上の大部分の他のデータトラフィックとは異なる非常に特定的な要件を有するUDP上で実行しているいくつかのプロトコルがある。これらのプロトコルは「リアルタイム」プロトコルとして大まかに分類され、ストリーミング媒体とボイスオーバIP(「H.323」)のようなものも含む。一定のレベルに満たないパケット損失と待ち時間はリアルタイムプロトコルにとって二次的な懸念である。
しかしながら、最も重要なのは、パケット間到達時間の食い違い(つまりネットワークジッタ)を削減することである。H.323などの多くのリアルタイムプロトコルは、IPマルチキャストを介してフィードバックとともに時間依存型媒体データを分散するために使用されるRTCP(「リアルタイムトランスポート制御プロトコル」)として知られているバックチャネル通信で観察されたジッタを報告する。図3のパッシブフローアナライザ630が「アプリケーション認識」である場合、それはRTCPのコンテンツを捕捉、観察し、根本的な経路が最小ジッタ要件を満たしていないときに認識することができる。これは30%のパケット損失がトリガするのと同じようにSLA違反をトリガできるだろう。
相関器652は、フローの現在のサービスレベルを決定するためにパケットからパケット要素(例えば、TCPとIP)を解釈し、グループ化するために動作し、次にパケットを特定のトラフィックフローにグループ化する。フローは、ファイアウォールのstateful監視のプロセスと同様に、ソースIPアドレスと宛て先IPアドレスを一致させることにより再構築またはグループ化される。相関器252はTCPトランザクション中に複数のトラフィック特性を測定することにより現在のサービスレベルを決定する。例えば、相関器252はネットワークで被られる往復時間(「RTT」)を決定するため、これがネットワークトラフィックのための待ち時間の基準としての役割を果たす。
図7は、ソース(例えば、ソースアドレスを持つクライアント)の近くに設置された図6のパッシブフローアナライザ630の相関器652がどのようにしてTCPトラフィックストリームのネットワーク待ち時間(「NL」)とサーバ応答時間(「SRT」)を決定できるのかを示している。図8は、宛て先(例えば、宛て先アドレスを有するサーバ)の近くに設置された図6のパッシブフローアナライザ630が、どのようにしてネットワーク待ち時間(「NL」)及びTCPトラフィックストリームのサーバ応答時間(「SRT」)を決定できるのかを示している。
図6の相関器652は、例えば、TCP SYNパケットとその対応するTCP SYN ACKパケットの間の時間の図7の差異791を推定することによりNLを決定する。SYNとSYN ACK791の間の時間の差異は、サーバがSYNに応答するのに要する少量の時間790を除くRTTの大まかな推定である。SYN ACKパケットは大部分のオペレーティングシステムのカーネルで処理され、通常、ゼロに近いと仮定される。ソースから開始される新規TCPストリームごとに、相関器652がネットワーク待ち時間の時間瞬間値を観察できる。
パケット損失は、相関器652によって、発生する再送パケットのすべての状態を維持することにより、パーセンテージとして計算される。この値から相関器652は送信されたセグメントの総カウントからパーセンテージパケット損失を計算する。
相関器652は、例えばHTTP GETメッセージ795と受信された第1のデータセグメントの間のデルタ時間(つまり、差異)793を推定し、次にRTTの過去の値を差し引くことによって図7のSRT792も決定する。これは、RTTの過去の値が、TCPハンドシェークが発生してから動作可能な範囲を超えて変化していないことを仮定する。794により示される測定は、測定された輻輳が、SRT792が相応して上昇するにつれ経路内で増大することを示している。この例の目的のために、初期のHTTP GETのデータセグメントが連続して送信されることが仮定される。図7では、パッシブフローアナライザ630はインターネットなどのIPデータネットワークからコンテンツを要求するクライアントに近く(つまり、地理学的に異なる場所のために最小の、つまりごくわずかな待ち時間)配備される。
また、相関器652は、例えば、HTTP GETメッセージ893と第1のデータセグメント894間のデルタ時間を推定することによって図8のSRT892を決定する。図8では、図6のパッシブフローアナライザ630が、大部分のコンテンツ送達設備について発生するようにサーバ端部に配備される。
図8を参照し直すと、相関器652により決定されるSRT892は、トラフィックが横断する経路に沿ったその場所に依存している。図6のパッシブフローアナライザ630がクライアント側にある場合、図7のサーバ応答時間792は、図7に図示されるようにGET要求の前に認められたRTTを差し引いた、HTTP GET要求メッセージと返された第1のデータセグメントの間のデルタとして推定できる。図6のパッシブフローアナライザ630がサーバ側により近い場合、推定は、図8に図示されるように、本来、GET要求と応答の間の時間のデルタである。TCP輻輳ウィンドウ(「cwnd」)を使用することにより、及びサーバによって連続して送信されたセグメント間の受信時間のデルタを識別することにより輻輳推定も可能であり、TCP輻輳ウィンドウは、TCPフローがつねにネットワーク内に有する可能性があるパケットの数を制御する。相関器652はアグレゲータ653に前記決定された例示的なフロー特性を提供するために結合される。
図6を参照し直すと、アグレゲータ653は、おもに特定の宛て先の各集合に移動するすべてのフローをグループ化するために動作する。アグレゲータ653は、相関器652から受け取られる個々のフローのそれぞれにサービスレベル統計を使用し、インターネットなどのデータネットワーク内の同じ宛て先に移動しなければならないフローの各グループ化のための複数のレベル統計の集合体を生成する。アグレゲータ653はこのような集計された(つまりアドレス接頭語単位でグループ化された)トラフィックフロー特性を記憶するためにトラフィック記憶装置621にも結合される。トラフィックフロー特性(つまりトラフィックプロファイル)は、次に、統計操作及びフロー予測のために使用される。特定の実施形態では、記憶装置621は図2の記憶装置221と同等または同じである。
宛て先の粒度はルーティングテーブルの中で加えることのできる変更の粒度と同じである。通常、図2のフロー制御システムは、一般的な感光ではそのようにすることはないが、任意の長さ(つまり0/から/32)の接頭語でルートをインストールできるだろう。したがって、アグレゲータ653は、/32レベル(つまりCクラスネットワーク)でフロー統計の集計を開始し、patriciaまたは基数trieなどのデータ構造、あるいは親子構造等のデータ構造の中に/8レベル(つまりAクラスネットワーク)までずっと続行する。このようにして、サービスレベルが満たされていることを確実にするために加えられる必要があるルーティング変化の粒度を、非常に迅速に求めることが可能である。
アグレゲータ653により利用される集計技法は、1つまたは複数のフローポリシー要件により決定されるように、図2のシステム200を許容できる性能サービスレベルに維持するために使用される。ネットワーク性能はガウス分布またはポアソン分散などの従来の統計的な分散に従わないと示されていたため、すべてのフロー全体でのサービスレベルの平均計算は、所定の間隔中の典型的な性能動作の測定値ほど信頼できない。しかしながら、サービス内容合意書(SLA)またはポリシーが、平均サービスレベルが維持されなければならないと述べる場合には、粗末な性能の範囲外にある発生により、平均が歪められ、このようにして提供されている最小サービスレベルを復元するための補正処置を必要とする。すべてのフロー全体で提供されている典型的なサービスレベルを記述するための有意義な方法は、平均値よりむしろ中央の値を使用することである。普通の技術の熟練者が、どちらかの技法が可能であり、維持されなければならないサービスレベルの定義に依存することを理解するだろう。
図9は、本発明の別の実施形態に従ってパッシブフローアナライザ930が、どのようにして複数のネットワークインタフェース全体でパケット捕捉及びフロー再構築を行うことができるのかを描いており、各インタフェースはネットワークインタフェースカード(「NIC」)によって表されている。実際問題として、多くのスイッチファブリックは、データストリーム内の単一の点にタッピングし、単一ポートを複製することによるように構築される。スイッチは、パッシブフローアナライザ930が両方向のトラフィックのすべてを見ることを保証しない。パッシブ分析のための、オプションのフロー再構築のためには双方向トラフィックが必要とされる。図9では、図示されているスイッチファブリックは(図示されているような)4つの場所にあるタップポイント921でパッシブにタッピングされ、4枚の異なるネットワークインタフェースカード(NIC)922でパッシブフローアナライザ931に連結される。タップポイント921でのパッシブタップは、ミラーリングされたスイッチポートまたは光/電気パッシブタップである場合がある。パッシブフローアナライザ930はフロー再構築を実行するために複数のネットワーク情報から捕捉データを収集できる単一のまたは結合された集計済みのフロー再構築要素953を有する。
図10は、本来、図6のパッシブフローアナライザ630が分散されている本発明のまだ別の実施形態を描いている。図10は複数のローカルトラフィックソースポイントを介して双方向に移動するトラフィックフロー1020を示している。分散された負荷パッシブ流量エージェント1025は、タップポイント1024でトラフィックフロー1020の中にパッシブ的にタッピングされる。パッシブフローアナライザ1025は、各エージェントが個々のフロー特性を監視し、伝達するように分散されている。トラフィックソースは、例えば層3のインフラ全体で分散され、1台または複数台のルータ1026によって分離される。この仕組みにより、図9のパッシブフローアナライザ930は、図9でのように同じ層2のスイッチファブリック全体で情報を収集するのを妨げられる。パッシブフローエージェント1025のそれぞれがローカルフロー再構築を実行してから、ネットワーク上で中央パッシブフローアナライザ1028にフローデータレコード1027をエクスポートし、分散されたパッシブフローエージェント1025のすべて全体でフロー集計及びサービスレベル分析を実行する。
図11は、別々に分散される複数のパッシブフローエージェント1125、及び単一の中央パッシブフローアナライザ1128を描くさらに詳細な機能ブロック図を描いている。各パッシブフローエージェント1125は、パケット捕捉1150、パーサ1151及び相関器1152の機能を、ローカルトラフィックフローのそれぞれに含む。相関器1152は、フローレコード1129を中央パッシブフローアナライザ1128にエクスポートし、中央パッシブフローアナライザ1128にとってはかなりのデータ削減となる。かなりのデータ削減は、中央パッシブフローアナライザに転送される情報量を削減するために使用され、周知の符号化技法を使用することにより達成できる。中央パッシブフローアナライザ1128は、各パッシブフローエージェント1125からフローエクスポートレコード1129を受け入れ、中央アグレゲータ1153はエクスポートされたフローのそれぞれで接頭語集計を実行する。このようにして、中心に集計されるフロー情報は、特定のポリシー違反が発生しているかどうかを判断するために使用できる。
図12は、図2の使用量コレクタ214の詳細ブロック図を示す。使用量コレクタ1215は、バイトカウンタ(つまり、ネットワークサービスプロバイダに送信され、ネットワークサービスプロバイダから受信されるトラフィックの量)などの、ネットワークプロバイダから使用量情報1273を収集するために動作する。使用量コレクタ1215はこの情報を使用して、プロバイダに関連付けられているデータ経路のネットワークサービスプロバイダの稼働率、負荷等を計算する。
使用量コレクタ1215は、プロバイダ料金請求書作成発行レコードを再構築するためにも動作する。使用量コレクタ1215は、各ネットワークサービスプロバイダ(NSP)コネクションに関係するプロバイダ構成情報1271を受け入れる。このNSP構成情報1271は、多様なルータ1272(例えば出口ルータ)上でのプロバイダインタフェース、(トレースプローブとともに使用している現在のプロバイダを検証するための)プロバイダ次ホップアドレストレースルート(traceroute)プローブ、料金請求書作成発行開始日と終了日、毎秒メガビット単位で稼働率と価格を計算するための回路帯域幅、最小帯域幅コミットメント、バースト可能レート、プロバイダサンプリング間隔、プロバイダ料金請求書作成発行アルゴリズム、稼働率警報スレッショルド等を詳説する。
運転中、例示的な未処理コレクタ1274は、照会1290(例えばSNMP)を送信し、指定サンプリング間隔でインタフェース未処理バイトカウンタをプロバイダ回路のそれぞれのルータ1272から収集する。プロバイダ回路は、経路、パイプ、仮想または物理的、T1等を含む。未処理コレクタ1274は、後の報告及び分析のために未処理バイトカウンタ1280を固定記憶域の中に入れる。未処理コレクタ1274は、2つの他の構成要素、つまり稼働率モニタ1275と請求書再構築器(bill reconstructor)1276に未処理情報を送信する。
稼働率モニタ1275は、未処理バイトカウントとNSP構成情報1271を使用するプロバイダごとに入口と出口の回路稼働率を計算する。1つの例では、NSP構成情報1271がプロバイダの回路の帯域幅を含む。稼働率情報264は、稼働率モニタ1275が、帯域幅が指定サービスプロバイダについて上昇傾向にあるのか、あるいは下降傾向にあるのか(つまりサイズが拡大するか、減少する)を決定できるように短距離予測モデル(例えば、ARIMA、指数関数平滑化等)と使用するための稼動率傾向を表すデータを含んでいる。
請求書再構築器1276は、NSP構成データ1271から料金請求書作成発行を使用し、現在の料金請求書作成発行期間について現在のプロバイダの請求書作成可能レートを再構築する。料金請求書作成発行情報は、特定のプロバイダが、料金請求書作成発行などのコストを計算するために使用する方法を説明する情報を含む。ネットワークプロバイダを使用するために請求書を計算するこのような方法が当業者において周知である。請求書再構築器1276は、未処理コレクタ1274から類似したプロバイダ料金請求書作成発行方法を未処理バイトカウンタに適用し、請求書と関連する料金請求書作成発行レート等を生成する。ドル額にマッピングされる作成された請求書は、プロバイダと使用量コレクタ1215間のサンプル時間は正確に一致しないため、典型的には推定である。請求書再構築器1276は、ピーク回避及び最小コストルーティングで使用するために、料金請求書作成発行情報1261をコントローラ1202に送る。ピーク回避は、図15に示されるように、さらに高い料金請求書作成発行レートで経路または経路セグメントを使用することを回避する方法として定義される。最小コストルーティングは、最も安価なプロバイダに対するトラフィックを使用するあるいはデフォルトする方法を指す。
さらに、性能が重大ではない場合に最も安価を選択する最小コスト固定方法で使用するためのコントローラ1202に送信できる。すなわち、コントローラ1202は、料金請求書作成発行レートを含む料金請求書作成発行メッセージ1261からのデータを使用し、フローポリシーに従って、ルートの自由な帯域幅(つまり、ルートは追加使用コストを被らない)に部分的に基づいて代替ルートを決定する。
図2を参照し直すと、構成要素211がコントローラ205とデータディレクタ220に結合されている。コントローラ205は、宛て先接頭語に到達するための最良のルートを構成要素211に提供する。構成要素211は、是正処置を必要とする宛て先についてデフォルトのルーティング動作(つまり現在の経路)を変更するために動作する。構成要素211は、アドレスの修正されたルーティングテーブルをデータディレクタ220に送信することによってルーティング動作を変更する。
いったんデータディレクタ220がこの情報を受信すると、ディレクタ220はコントローラ205に、ルート変更が実現された事を知らせる。それ以後、コントローラ205は、その状態をクリアし、宛て先の監視を再開するためにパッシブ較正装置202に信号230を戻す。宛て先は、ルーティングテーブルの更新されたルート、つまり経路が最小サービスレベル(例えば、SLAの違反なし、関連フローポリシーによって定義されるように合意された性能測定基準からの受け入れがたい偏差なし)を満たしていることを確実にするために監視されている。
ある態様では、構成要素211はルートサーバに常駐する。別の態様では、構成要素211がルータに常駐し、ルートマップまたはテーブルを修正しようと構成される。さらに別の態様では、構成要素211が構成情報つまりルーティングテーブルを提供するように適応される。さらに別の態様では、それがインバウンドトラフィックに関係しているのか、あるいはアウトバウンドトラフィックに関連しているのかに応じて、ルート情報は構成要素211内に記憶される。
図13は本発明のさらに別の実施形態の一例を示し、図2の構成要素211がルートサーバ1391などのネットワーク要素に常駐する。図13の構成要素1384はここに説明されている構成要素の他の適応に類似して動作する。すなわち、構成要素1384はデータトラフィックの現在の、あるいはデフォルトのルートを変調し、このようにして例えばローカル配備(例えばポイントオブプレゼンス、つまり「POP」)でデフォルトルーティング動作を修正する。ルートサーバ1391(「RS」)は、当該データネットワークからルーティングテーブルの完全な集合または部分集合を受信する。
ある実施形態では、ルーティングテーブルは、ローカルトランシットプロバイダの完全な集合または部分的な集合からBGP4エンジン1382の中に送り込む1つまたは複数のデフォルトBGP4フィード1392によってルートサーバ1391の中に受け取られる。BGP4エンジン1382は、単一のBGP4ルーティングテーブル1383最良使用可能ルートの中にルートのすべてを統合する、つまりマージする。別に実施形態では、ルートサーバ1391は、図13に図示されるようにBGP4セッションを維持するのではなくむしろ内部BGP可能ルータのすべてでiBGPセッション維持する。単一のiBGPセッションでは、ルート変更を行う前にネットワークサービスプロバイダとBGPセッションのすべてを構成するニーズはない。
構成要素1384は、1つまたは複数の制御信号と、BGP4エンジン1382から1つまたは複数のBGP4ルーティングテーブル1382を受け取るように設計され、1つまたは複数の制御信号と、コントローラ1305の制御プロセスから生じるデータとを受け取るように適応される。運転中、構成要素1384は、コントローラ1305からデフォルトルーティングテーブル1388で実現される必要なルーティング変更を受け取る。したがって、構成要素1384は修正されたルーティングテーブル1389に1つまたは複数の変更の受け取りを組み込む。
このようにして、構成要素1384はBGP4ルーティングテーブル1383を修正し、1つまたは複数の修正されたBGP4ルーティングテーブル1388を作成するように動作する。修正されたBGP4ルーティングテーブル1388は変更されたルーティング1389、複数の特定なルートの広告等を含む。新規の修正されたBGP4ルーティングテーブル1388が、次に、宛て先にトラフィックを誘導するために使用されるネットワーク内のすべてのBGPクライアントに送られる。
指定ソースアドレスの場合、ネットワークへの入口点は、通常ダウンストリームプロバイダ及びプロバイダポリシー(このようなプロバイダによってセットアップされる規則の集合)に対して行われたルートの広告によって決定される。最終的には、宛て先をホストしているネットワークサービスプロバイダ(例えば「ISP」)がこのような広告を受け取るだろう。
図2のコントローラ205は、使用量コレクタにより監視されるような帯域幅、コスト等の使用量特性だけではなく、待ち時間、損失、ジッタ等の性能特性を受け取るように設計されている。コントローラ205は、通常サービスレベル合意書(「SLA」)性能測定を含むフローポリシーを受け取るためにポリシーレポジトリ218に結合される。これらの測定基準、つまり要件は監視されている性能と使用量特性に対して比較される。ある特定のポリシーが違反している(つまり1つまたは複数の予想範囲または値の外では、1つまたは複数の性能測定基準である)場合、コントローラ205は、関連するフローポリシーに準拠している1つまたは複数の代替データ経路を決定する。別の例では、コントローラ205は、ポリシーにより定められるように、性能要件と使用量要件を最善に満たす代替データ経路として最善の、つまり最も最適化された経路を選択する。
アクティブ較正装置とパッシブ較正装置が性能要件を提供する。アクティブ較正装置に関しては、コントローラ205は要求アクティブプロービングによりアクティブ較正を開始する。アクティブ較正装置は、プローブ経路207上で1つまたは複数の較正プローブを1つまたは複数のデータネットワークの中に送信する。プローブ経路207上の戻るプローブは、使用可能な経路のアイデンティティとそれに関係する性能情報とを含む、コントローラ205に戻る情報を提供する。
パッシブ較正装置に関して、コントローラ205は、それがアクセスするトラフィックフロー内のモニタとして、パッシブ較正装置230から、リアルタイムまたはほぼリアルタイムのネットワーク性能特性(つまり、損失、待ち時間、ジッタ等)を受け取るように設計されている。コントローラ205が較正要素211にルーティングの変更つまり更新を提供した後、それはまた、更新されたルート変更が特定の宛て先に対し行われるときパッシブ較正装置203に信号230を通信する。信号230は、較正装置が特定の宛て先の監視を再開し、ルーティングテーブルの更新されたルート、つまり経路がフローポリシーに対応していることを確実にするように、パッシブ較正装置203の状態のクリアを開始する。図3の状態クリア信号338はパッシブフローアナライザの状態のリセットを開始するためにコントローラから発信される信号を描いている。
1つの例では、コントローラ205は、宛て先接頭語のグループ化のそれぞれについて間隔で集計されたフローデータを解釈するために動作する。そして、ポリシー違反が発生すると、コントローラ205は、代替ルート、つまり経路のどれが現在のトラフィックフローに関連する接頭語つまりトラフィック種別に最善に適しているのかを判断する。コントローラ205は、次に必要なルーティング変更を構成要素211に送信する。すなわち、コントローラ205は、関連するフローポリシーに従って、対応していないネットワーク性能特性に関係するポリシー違反を解決する。このプロセスは、ポリシー違反が解決されるまで繰り返される。
別の実施形態では、図12のコントローラ1202が、使用率、料金請求書作成発行レート等の、ネットワーク使用量特性を表すリアルタイムまたはほぼリアルタイムデータを、使用量コレクタ1215から受け取るように設計される。コントローラ1202は、関連するフローポリシーに従って、非対応使用量特性に関するポリシー違反を解決するためにこの情報を使用する。すなわち、ルート変更の前、あるいはルート変更の間に、コントローラ1202は代替経路の性能を考慮するだけではなく、それらの代替経路が特定のプロバイダの経路上で(つまり、turn−of−dayに関係する適当な帯域幅)ピークデータトラフィックを回避するか、あるいはフローポリシーを考慮した最小コスト経路であるかのどちらかであると考える。
使用量型ポリシー違反を解決するためには、コントローラ1202は、例えば現在のトラフィックフローまたは特定の経路上のデータのルーティング、またはその経路セグメントのどれが、ある特定の1つまたは複数のプロバイダ経路に関して輻輳しているのか(つまりロードされているのか)を決定するためにルーティングテーブルを受信する。また、コントローラ1202は、指定宛て先接頭語への、及び指定宛て先接頭語からのトラフィックフローの集合のフローのどの部分集合がトラフィックフロー量に関して関連するフローポリシーに準拠しているのかを決定するために代替プロバイダ経路ごとに流量を表すデータを受信するように設計されている。
本発明の例示的なコントローラは、このようにして、データネットワークの性能と使用量に関係する情報を入手し、少なくとも関連するポリシー要件を満たす経路または経路のセグメント上でデータを効果的且つ効率的に転送するために是正処置を行うように設計されている。
以下の説明はフローポリシー、及びポリシー違反を解決する上、及びポリシー要件または測定基準を施行する上でのこのようなポリシーの適用に関する。図2を参照し直すと、コントローラ205は1つまたは複数のポリシーを受け取るためにポリシーレポジトリ218に結合されている。前述されたように、ポリシーは、コントローラ205が特定のトラフィックフローの実際のフロー特性に比較する一式の規則つまり閾値(つまり、最大、最小及び許容できる動作の範囲)である。例えば、ポリシーは、特定のトラフィックフローを検出するためにコントローラ205により利用されるユーザによって定義される機構である。例えば、ポリシーは、必要な場合に監視され、作用されなければならない特定トラフィックフローを検出するためにコントローラ205によって利用されるユーザ定義機構である。一例として、ポリシーは、特定のポリシーがどのように施行されるべきかを指定することもできる(つまり、最高の優先順位から最低の優先順位に違反を解決するための階層構造を含む)。例示的なポリシーは、検出に関係する要件つまり規則、性能、コスト及び手順を含むが、技術の普通の熟練者は、本発明に従ってさらに少ないパラメータまたは追加のパラメータを測定、施行できることを理解する必要がある。
検出は、フロー制御システム200が、どのトラフィックがポリシー違反に応えて作用する必要があるのかを判断する技法または機構として定義される。トラフィックフローは、名称、ソースアドレスまたは宛て先アドレス、ソースポートまたは宛て先ポート、あるいは任意の他の既知の識別技法によって識別できる。例えば、ポリシーはただ1つの接頭語に関連付けることができる。つまり、システム200は特定の接頭語への、及び特定の接頭語からのトラフィックフローを監視し、必要な場合には、関連するフローポリシーをその要件に従って監視する。さらに、検出に関して、さらに多くの特定接頭語について定義されるポリシーは、より一般的な接頭語に優先できる。例えば、/24について定義されたポリシーは、/16が特定的な/24を含んでいても/16に優先する。
性能とは、指定接頭語または接頭語リストに適用される1つまたは複数のターゲット性能レベル(つまりネットワーク/QoSポリシーパラメータ)または閾値を記述するポリシー要件である。複数の性能に基づいたポリシー要件が定義されてよいが、この例では単一のポリシーだけが指定接頭語または接頭語リストに適用される。例示的な性能要件は損失、待ち時間、及びジッタを含む。
さらに、このような要件は、例えば絶対値、固定値、または指数関数的に加重された移動平均(「EWMA」)として構成できる。絶対値は、パーセンテージとして表現される、あるいは構成可能時間ウィンドウでのパーセンテージとして、あるいは時間単位で描かれるような数値閾値を確立する。EWMA方法は、最も最近のサンプルに指数関数加重をかける履歴サンプリングに基づいて移動式位置を確立し、それにより現在のネットワーク状況を、それらが履歴状況に関するにつれて考慮に入れる閾値を主張する。
コストは優先順位及びポリシーが予測的なのか、あるいは反応的なのかという点でポリシー定義に表されている。コストは、請求書再構築及び集計レベルと非常に粒状レベル(例えば、/24宛て先ネットワークによる)の両方での帯域幅活用率の調和を通して図2の使用量コレクタ214によって特徴付けられる。コスト予測要件は、新規のまたはさらに高い請求書作成可能レートをトリガしてよいピーク(つまり「ピーク回避」)を確立するのを回避するためにあるプロバイダから別のプロバイダにトラフィックを積極的に逸らすために使用される。コスト反応要件は最小のコミットレートまたは現在の請求書作成可能レートが超えられると、あるプロバイダから別のプロバイダにトラフィックを反応して逸らすために使用される。
通常、コスト予測要件と反応要件の両方ともバイナリ決定(つまり、例えば回路または経路は、フローポリシーに準拠しているかあるいは違反しているかのどちらかである)を生じさせる。予測コストのケースでは、トランシット回路は準拠しているか、あるいはすぐにフローポリシーの違反になるかのどちらかである。それにも関わらず、コストが性能に先行されない(つまり、性能要件が、コストをベースにした変更を行う前に対処されなければならない)限り、状況を解決するために処置を講じなければならない。
優先順位とは、1つまたは複数のターゲット使用量または稼働率特性またはレベルを記述するポリシー要件である。優先順位はプロバイダの優先順位と最大稼働率(つまり負荷)要件を含む。プロバイダ優先順位要件は、例えば、処置を講じなければならないときであるが、2つまたは3つ以上のトランシットがポリシーを施行するために選択されてよいときに、使用されるプロバイダの任意の分類である。フロー制御システムは、それがシステムの運用者により明示的に構成されていない場合にはプロバイダまたは経路の優先順位件を自動的に設定できる。この要件は、次に、最高の優先順位を持ったプロバイダが関係を勝ち取り、このようにして逸れたトラフィックフローを受信できるように、行き詰まった状況においてタイブレーカとして適用される。
最大使用量要件は、どちらかが超えられない実際の稼動閾値としてまたはタイブレーカとして使用されてもよいように使用できる。最小使用量は、構成のトランシットプロバイダセクション内で構成され、パーセンテージ引数(つまり使用可能な帯域幅の観点で)を取るか、あるいは代わりにMb/秒という観点で絶対値として設定できる。
以下は、特定のポリシーが準拠しているかどうかを判断するために、及び準拠していない場合には行動計画を決定するためにコントローラとともに使用されるポリシーの例である。
例えば、以下のポリシーがある特定のトラフィックフローに使用されると考える。
Figure 2005509369
トラフィックフローが、接頭語24.0.34.0/24に関連付けられており、現在は240kbits/秒でトラフィックを搬送中であり、3のプロバイダ1を介して到達されると仮定する。プロバイダ1は現在2Mbits/秒で搬送中であり、5Mbits/秒という最小コミットを有する。
ポリシーを使用するフロー制御システムのコントローラは代替トラフィックルート、つまり経路を監視でき、それらはプロバイダに関係するので以下のフロー特性を決定できる。
Figure 2005509369
このケースでは、5%という損失が2%という最大損失要件を超えているため、及び損失が10という優先順位で指定され、50が最低であるため、ISP1は違反状態にある。是正処置が講じられなければならない。ポリシーは、待ち時間または損失情報なしで、施行されるだろう(つまり、例えば他のリンクの性能に対する可視性がないため)。このケースでは、コントローラは、(ISP2とISP3を含む)他のISPが準拠しているかを判断するために、アクティブ較正装置を使用してアクティブプローブを開始することがある。代わりに、コントローラは要件が既知である(例えばこのケースではコスト)ポリシーの次のパラメータに基づいて行動計画を決定する可能性がある。ISP2は準拠しており、ISP3が準拠していないため、ISP2がコントローラによって選ばれるだろう。2つとも準拠している場合には、コントローラは、MaxUtilである次のランクが付けられた要件に移動する。これが当てはまる場合、ISP2は依然として選択されている。
要約すると、前記の例示的なポリシーのようなポリシーは図2のコントローラ205に入力され、例えば特定接頭語と関連付けられる。一般的な検出方法(絶対的または基準履歴)は接頭語によって指定でき、このようにして他の宛て先には基準方法を使用する一方で、周知であるいくつかの宛て先についてはハード閾値または絶対閾値を指定する。ポリシーは、違反と見なされ、解決される前に満たされなければならない性能測定基準との組み合わせで使用される解像度方法(例えば手順)を定義する。コストと稼働率の閾値のような他のパラメータは接頭語あたりで設定できる。これにより、どの接頭語がコストまたは稼働率の理由からいままでに移動されたことがないのか、及びどのような状況にあってもどの接頭語が移動されなければならないのかの表示をコントローラに与える。
コントローラ205がピアリングコネクションを処理するために、コントローラ205は、まさに変更されるところの特定の接頭語についてデータディレクタ220と通信し、到達可能性情報(つまりルーティングテーブル)を検索する。トランシット回路のケースでは、コントローラ205は、指定される宛て先について、例えば宛て先にアクティブプローブを送信し、応答を待機することによって、アクティブ較正装置207を使用し、到達可能性情報(つまりルーティングテーブル)を決定する。ピアリングコネクションは多くの場合到達不能であるが、いくつかのプロバイダはピアリングポイントで効果的にトラフィックをフィルタしていない可能性があり、代わりにそれらの広告された宛て先へのトラフィックだけが受信されることを確実にするためにhonor状システムに依存する。
したがって、ピアリングのケースでは、コントローラ205は、ピアリングコネクションにトラフィックを移動する前にその宛て先の広告のためのルーティングテーブルを見なければならない。図15を参照すると、iBGPフィード1599は、アクティブなルートだけではなく広告されたイナクティブなルートも含んでいる。それ以外の場合、図2のデータディレクタ220が図13のルートサーバ1591に従って構成でき、eBGPはすべてのプロバイダから構成できる。
図14は、「空き」帯域幅の可用性が指定プロバイダ向けに、図2の使用量コレクタ214によって測定されるようにどのように表現されるのかを描いている。t0からt1の任意の指定時間で、現在の使用率1602と現在の請求書作成可能レート1600は決定されない。図辞されるように、タイムポイントt0.5 1603は、オーバサンプリング(over−sampled)時間ポイントを表している。これらの2つの値の再1601が、追加コストを被らずに使用される使用可能な帯域幅の量を表している。プロバイダごとの空き帯域幅は、性能に基づいたポリシーが現在の、つまりデフォルトのプロバイダによって違反されるときに対応するプロバイダの部分集合を選択するために使用できる。さらに、この情報は、プロバイダごとにコストと負荷に基づいたポリシーを適用するために使用される。
図15は、図14に図示されるように使用量コレクタ214が時間連続請求書作成可能レートをどのようにして計算するのかを描いている。大部分のプロバイダは最小コミットメントレベル1710で開始する。現在の使用量がそのコミットメント未満で開始すると、空き帯域幅1771が図示される。サンプルは、プロバイダのサンプリングレートの2倍で収集され、正確なレートが計算されていることを確実にする(つまり、これは保守的な推定値であり、レートがプロバイダレートから逸れる場合、それはさらに高くなり、請求書作成可能レートの過大評価を表すだろう)。時間軸の小さなチェックマークはシステムにより収集されたサンプルを表している(オーバサンプリング)。十分なサンプルが得られると、通常はすべてのレートサンプルの95番目の百分率として表現される請求書作成発行可能レートが図15の請求書作成発行可能レートの連続してさらに高い層1713によって示されるような最低のコミットメントを超えてよい。トラフィックがこのレート未満に低下すると、新しい請求書作成可能レート1714が設定され、システムはもう一度空き帯域幅1718を有するだろう。
図16は、例示的なシステム200がどのようにしてコストに基づいたポリシー違反を検出するのかを示す。コストポリシー要件が1813によって示されるように絶対閾値になるように定義されると仮定する。この閾値は絶対レートまたは使うための設定ドル額である場合がある(システムによって平均請求所作成発行可能レートに換算される)。サンプル単位で、実際のトラフィックレート1814は、1813を超える新規請求書作成発行可能レートが絶対に確立されないようでなければならない。短距離予測技法を使用すると、次のいくつかのサンプル1815のトラフィックレートを予測することができ、この予測が、新しい請求書作成発行可能レート1816が確立されると、図2のコントローラ205が、このプロバイダからトラフィックを離すことによって反応できる。
本発明は特定の実施形態に関して説明されてきたが、技術の普通の熟練者は、これらの実施形態が発明の単に例示的にすぎず、制限的ではないことを理解するだろう。例えば、前記説明はインターネットトラフィックとしてネットワーク通信データを説明するが、本発明が一般的なネットワークに関し、インターネットデータに制限される必要がないことが理解されなければならない。本発明の範囲は添付請求項によってのみ決定されなければならない。
前記明細書では、本発明はその特定の実施形態に従って説明されるが、当業者は、発明がそれに制限されていないことを認識するだろう。前述された発明の多様な特徴及び態様は、個々にまたは共同で使用されてよい。さらに本発明は特定の環境における、特定のアプリケーションのためにそのインプリメンテーションという文脈で説明されてきたが、その有用性はそれに制限されず、それは、どの幅広い精神と範囲から逸脱することなく、任意の数の環境及びアプリケーションで活用することができる。したがって明細書及び図面は、制限的ではなく例示的と見なされるべきである。
ユーザに対し、本発明の実施形態を実践するために適したユーザインタフェースを提示するための例示的なコンピュータシステムである。 図1Aのコンピュータシステムの基本的なサブシステムを示す。 本発明とともに使用するために適した1つの例示的なコンピュータネットワークの汎用化された図である。 マルチパスを使用する典型的なデータネットワークを描く。 本発明の特定の実施形態に従って簡略化されたデータネットワーク及びフロー制御システムを描く。 本発明の1つの実施形態によるフロー制御システムの1つの実施形態の簡略化されたブロック図である。 図2の例示的なパッシブ較正装置の機能ブロック図である。 図3の例示的なコンテンツフローアナライザの機能ブロック図である。 本発明のある実施形態による図3のエクスポートフローアナライザの機能ブロック図である。 特定の実施形態による図3のパッシブフローアナライザの機能ブロック図である。 クライアントまたはソース近くに配置される例示的なフロー制御システムでネットワーク性能測定基準を決定する簡略化されたタイミング図である。 サーバまたは宛て先近くに配置される例示的なフロー制御システムでネットワーク性能測定基準を決定する簡略化されたタイミング図である。 本発明の別の実施形態による分散パケット捕捉とともに例示的なパッシブ較正装置のネットワーク図である。 本発明のさらに別の実施形態による分散パッシブフロー要素のネットワーク図である。 本発明のなおさらに別の実施形態による図10の分散パッシブフロー要素の機能ブロック図である。 本発明の特定的な実施形態による例示的な使用量コレクタの詳細なブロック図である。 本発明のある実施形態に従って、複数のBGP4フィードまたは少なくとも1つのiBGPフィードのどちらかを受信する関連構成要素を使用するルートサーバのブロック図である。 本発明に従って、追加コストなしで使用できる帯域幅の量を決定するための例示的な方法を描くグラフィック表現である。 本発明に従って料金請求書作成発行可能なレートを計算するための例示的な方法を描くグラフィック表現である。 本発明に従って短距離予測を使用して料金請求書作成発行レートを計算するための例示的な方法を描くグラフィック表現である。 本発明の実施形態による例示的なアドレスリストまたはプリフィックスリストの表現である。

Claims (33)

  1. 第1のポイントと第2のポイントの間でデータを転送するように設計されたコンピュータネットワークにより通信されるデータのポリシーを施行するための方法であって、第1のポイントが1つまたは複数の第1のネットワークに結合され、該1つまたは複数の第1のネットワークの少なくとも1つが複数の第2のネットワークの少なくとも1つに結合され、第2のネットワークの少なくとも1つが第2のポイントに結合され、ネットワークのそれぞれが経路の少なくとも1つのセグメントを含み、経路が、第2のポートに通信されるデータをトランスポートするために第1のポイントから第2のポイントまでであり、ネットワークの少なくとも2つが相互接続で結合され、通信されるデータが、相互接続点を通して流れ、
    少なくとも1つのセグメントに関連付けられた少なくとも1つの使用量特性を監視するステップであって、該少なくとも1つのセグメントが第1のネットワーク内にあるステップと、
    該少なくとも1つの使用量特性を、ポリシーの関連付けられた使用量要件と比較するステップと、
    を備えることを特徴とする方法。
  2. 第1のネットワーク内でのデータのルーティングに関連付けられた該少なくとも1つの使用量特性が使用量要件に違反しているかどうかを判断するステップと、
    をさらに備えることを特徴とする請求項1記載の方法。
  3. 第1のネットワーク内でのデータのルーティングに関連付けられた該少なくとも1つの使用量特性が使用量要件に違反しないようにデータのルーティングを修正するステップと、
    をさらに備えることを特徴とする請求項2記載の方法。
  4. データのルーティングを修正するステップが、
    別の第1ネットワークに配置される少なくとも別のセグメントと関連付けられた少なくとも1つの使用量特性を監視するステップと、
    別の第1ネットワーク内のデータのルーティングと関連付けられた1つまたは複数の使用量特性が使用量要件に準拠していることを確認するステップと、
    データが別の第1のネットワークに位置する別のセグメントを通して転送されるようにデータのルーティングを改変するステップと、
    を備えることを特徴とする請求項3記載の方法。
  5. 経路と関連付けられている少なくとも1つの性能特性を監視するステップと、
    をさらに備えることを特徴とする請求項1記載の方法。
  6. 経路に関連付けられた該少なくとも1つの性能特性が1つまたは複数の性能要件に違反するかどうかを判断するステップと、
    別の経路に関連付けられた少なくとも1つの性能特性を監視するステップと、
    別の経路内のデータのルーティングに関連付けられた1つまたは複数の性能特性が性能要件に準拠することを確認するステップと、
    データが別の経路を通って転送されるようにデータのルーティングを改変するステップと、
    をさらに備えることを特徴とする請求項5記載の方法。
  7. 少なくとも1つの使用量特性を監視するステップが、
    該少なくとも1つのセグメントの稼働率に関係する使用量特性を測定するステップと、
    を備えることを特徴とする請求項1記載の方法。
  8. 少なくとも1つの使用量特性を監視するステップが、
    該少なくとも1つのセグメントの使用量に関係する使用量特性を測定するステップと、
    を備えることを特徴とする請求項1記載の方法。
  9. 少なくとも1つの使用量特性を該監視するステップが、
    該少なくとも1つのセグメントの負荷に関係する使用量特性を測定するステップと、
    を備えることを特徴とする請求項1記載の方法。
  10. 少なくとも1つの使用量特性を該監視するステップが、
    該少なくとも1つのセグメントのコストに関係する使用量特性を測定するステップと、
    を備えることを特徴とする請求項1記載の方法。
  11. 少なくとも1つの性能特性を監視するステップが、
    損失に関係する性能特性を測定するステップと、
    を備えることを特徴とする請求項1記載の方法。
  12. 少なくとも1つの性能特性を監視するステップが、
    待ち時間に関係する性能特性を測定するステップと、
    を備えることを特徴とする請求項1記載の方法。
  13. 少なくとも1つの性能特性を監視するステップが、
    ジッタに関係する性能特性を測定するステップと、
    を備えることを特徴とする請求項1記載の方法。
  14. 第1のポイントと第2のポイント間でデータを転送するように設計されたコンピュータネットワークにより通信されるデータについてポリシーを施行するためのシステムであって、第1のポイントは、1つまたは複数の第1のネットワークに結合され、該1つまたは複数の第1のネットワークの少なくとも1つが複数の第2のネットワークの少なくとも1つに結合され、第2のネットワークの少なくとも1つが第2のポイントに結合され、ネットワークのそれぞれが経路の少なくとも1つのセグメントを含み、経路が、第2のポイントに通信されるデータを輸送するために、第1のポイントから第2のポイントまでであり、ネットワークの少なくとも2つが相互接続で結合され、通信されるデータが相互接続点を通って流れ、該システムが、
    少なくとも1つのセグメントと関連付けられる少なくとも1つの使用量特性を監視するように構成された使用量監視モジュールと、
    ポリシーの関連使用量要件と、該少なくとも1つの使用量特性を比較するために構成可能である比較モジュールと、
    を備えることを特徴とするシステム。
  15. 第1のネットワーク内のデータのルーティングに関連付けられる少なくとも1つの使用量特性が使用量要件に違反しているかどうかを判断するために構成可能である使用量決定モジュールと、
    をさらに備えることを特徴とする請求項14記載のシステム。
  16. 第1のネットワーク内のデータのルーティングと関連付けられる該少なくとも1つの使用量特性がもはや使用量要件に違反していないようにデータのルーティングを修正するように構成可能である修正モジュールと、
    をさらに備えることを特徴とする請求項15記載のシステム。
  17. 修正モジュールが、
    別の第1のネットワーク内に配置される少なくとも別のセグメントと関連付けられる少なくとも1つの使用量特性を監視するために構成可能である第1のモジュールと、
    別の第1のネットワーク内のデータのルーティングと関連付けられる1つまたは複数の使用量特性を決定するために構成可能である第2のモジュールと、
    別の第1のネットワーク内に配置される別のセグメントを通してデータが送られるようにデータのルーティングを改変するために構成可能である第3のモジュールと、
    をさらに備えることを特徴とする請求項16記載のシステム。
  18. 経路と関連付けられる少なくとも1つの性能特性を監視するために構成可能である性能監視モジュールと、
    をさらに備えることを特徴とする請求項14記載のシステム。
  19. 経路と関連付けられる該少なくとも1つの性能特性が1つまたは複数の性能要件に違反するかどうかを判断するために構成可能である性能決定モジュールと、
    別の経路と関連付けられる少なくとも1つの性能特性を監視するために構成可能である性能監視モジュールと、
    別の経路内のデータのルーティングに関連付けられた1つまたは複数の性能特性が性能要件に準拠していることを確認するために構成可能である性能決定モジュールと、
    データが別の経路を通って転送されるようにデータのルーティングを改変するために構成可能である改変モジュールと、
    をさらに備えることを特徴とする請求項18記載のシステム。
  20. 使用量監視モジュールが、
    該少なくとも1つのセグメントの稼働率に関する稼働率特性を測定するために構成可能である稼働率測定モジュールと、
    を備えることを特徴とする請求項14記載のシステム。
  21. 使用量監視モジュールが、
    該少なくとも1つのセグメントの使用量に関係する使用量特性を測定するために構成可能である使用量測定モジュールと、
    を備えることを特徴とする請求項14記載のシステム。
  22. 使用量監視モジュールが、
    該少なくとも1つのセグメントの負荷に関係する使用量特性を測定するために構成可能である負荷測定モジュールと、
    を備えることを特徴とする請求項14記載のシステム。
  23. 使用量監視モジュールが、
    該少なくとも1つのセグメントのコストに関係する使用量特性を測定するために構成可能であるコスト測定モジュールと、
    を備えることを特徴とする請求項14記載のシステム。
  24. 使用量監視モジュールが、
    損失に関係する性能特性を測定するために構成可能である損失測定モジュールと、
    を備えることを特徴とする請求項14記載のシステム。
  25. 使用量監視モジュールが、
    損失に関係する性能特性を測定するために構成可能である待ち時間測定モジュールと、
    を備えることを特徴とする請求項14記載のシステム。
  26. 性能監視モジュールが、
    ジッタに関係する性能特性を測定するために構成可能であるジッタ測定モジュールと、
    を備えることを特徴とする請求項14記載のシステム。
  27. 第1のポイントと第2のポイントの間でデータを転送するように設計されるコンピュータネットワークにより通信されるデータについてポリシーを施行するためのシステムであって、第1のポイントは1つまたは複数の第1のネットワークに結合され、該1つまたは複数の第1のネットワークの少なくとも1つが複数の第2のネットワークの少なくとも1つに結合され、第2のネットワークの少なくとも1つが第2のポイントに結合され、ネットワークのそれぞれが経路の少なくとも1つのセグメントを含み、経路が第2のポイントに通信されるデータをトランスポートするために第1のポイントから第2のポイントまでであり、ネットワークの少なくとも2つが相互接続で結合され、通信されるデータが相互接続点を通って流れ、該システムが、
    第1のネットワークに配置される該少なくとも1つのセグメントと関連付けられる少なくとも1つの使用量特性を監視するための手段と、
    該少なくとも1つの使用量特性をポリシーの関連使用量要件と比較するための手段と、
    を備えることを特徴とするシステム。
  28. 第1のネットワーク内のデータのルーティングに関連付けられる該少なくとも1つの使用量特性が使用量要件に違反するかどうかを判断するための手段と、
    をさらに備えることを特徴とする請求項27記載のシステム。
  29. 第1ネットワーク内でのデータのルーティングに関連付けられる該少なくとも一つの使用量特性がもはや使用量要件に違反していないようにデータのルーティングを修正するための手段と、
    をさらに備えることを特徴とする請求項28記載のシステム。
  30. 第1のポイントと第2のポイント間でデータを転送するように設計されたコンピュータネットワークにより通信されるデータのポリシーを施行するためのコンピュータ読み取り可能媒体であって、第1のポイントが1つまたは複数の第1のネットワークに結合され、1つまたは複数の第1のネットワークの少なくとも一つが複数の第2のネットワークの少なくとも1つに結合され、第2のネットワークの少なくとも1つが第2のポイントに結合され、ネットワークのそれぞれが経路の少なくとも一つのセグメントを含み、経路が、第2のポイントに通信されるデータをトランスポートするために第1のポイントから第2のポイントまでであり、ネットワークの少なくとも2つが相互接続で結合され、通信されるデータが相互接続点を通って流れ、該コンピュータ読み取り可能媒体が
    第1のネットワークに配置される少なくとも1つのセグメントと関連付けられる少なくとも1つの使用量特性を監視するための命令と、
    該少なくとも1つの使用量特性をポリシーの関連使用量要件に比較するための命令と
    を備えることを特徴とするコンピュータ読み取り可能媒体。
  31. 第1のネットワーク内でのデータのルーティングに関連付けられる該少なくとも一つの使用量特性が使用量要件に違反するかどうかを判断するための命令と、
    をさらに備えることを特徴とする請求項30記載のコンピュータ読み取り可能媒体。
  32. 第1のネットワーク内でのデータのルーティングに関連付けられる該少なくとも一つの使用量特性が使用量要件にもはや依存しないようにデータのルーティングを修正するための命令と、
    をさらに備えることを特徴とする請求項31記載のコンピュータ読み取り可能媒体。
  33. 第1のポイントと第2のポイントとの間でデータを転送するように設計されたコンピュータネットワークにより通信される複数のデータを施行する方法であって、第1のポイントは1つまたは複数の第1のネットワークに結合され、該1つまたは複数の第1のネットワークの少なくとも1つが複数の第2のネットワークの少なくとも1つに結合され、第2のネットワークの少なくとも1つが第2のポイントに結合され、ネットワークのそれぞれが経路の少なくとも1つのセグメントを含み、経路が、第2のポイントに通信されるデータを輸送するために第1のポイントから第2のポイントまでであり、ネットワークの少なくとも2つが相互接続で結合され、通信されるデータが相互接続点を通って流れ、該方法が、
    ポリシーの関連使用量要件と該少なくとも1つの使用量特性を比較するステップと、
    第1のネットワーク内のデータのルーティングに関連付けられる該少なくとも1つの使用量特性が使用量要件に違反するかどうかを判断するステップと、
    第1のネットワーク内のデータのルーティングに関連付けられる少なくとも1つの使用量特性がもはや使用量要件に違反しないようにデータのルーティングを修正するステップと、
    を備えることを特徴とする方法。
JP2003543256A 2001-11-02 2002-11-01 データネットワーク上での情報のルーティング制御を実現するためのシステム及び方法 Pending JP2005509369A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US35018601P 2001-11-02 2001-11-02
US10/013,809 US7222190B2 (en) 2001-11-02 2001-12-07 System and method to provide routing control of information over data networks
PCT/US2002/035158 WO2003041342A1 (en) 2001-11-02 2002-11-01 System and method to provide routing control of information over data networks

Publications (1)

Publication Number Publication Date
JP2005509369A true JP2005509369A (ja) 2005-04-07

Family

ID=26685274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003543256A Pending JP2005509369A (ja) 2001-11-02 2002-11-01 データネットワーク上での情報のルーティング制御を実現するためのシステム及び方法

Country Status (4)

Country Link
US (1) US7222190B2 (ja)
EP (1) EP1446917A1 (ja)
JP (1) JP2005509369A (ja)
WO (1) WO2003041342A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011205187A (ja) * 2010-03-24 2011-10-13 Fujitsu Ltd 監視装置,監視方法および監視プログラム

Families Citing this family (274)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8023421B2 (en) * 2002-07-25 2011-09-20 Avaya Inc. Method and apparatus for the assessment and optimization of network traffic
DE60141417D1 (de) * 2000-10-17 2010-04-08 Avaya Technology Corp Verfahren und vorrichtung zur optimierung der leistung und des kosten in einem internetzwerk
US7487237B2 (en) * 2000-10-17 2009-02-03 Avaya Technology Corp. Load optimization
EP1239635A1 (en) * 2001-03-07 2002-09-11 BRITISH TELECOMMUNICATIONS public limited company Method of providing service classes in a packet network
US7155510B1 (en) * 2001-03-28 2006-12-26 Predictwallstreet, Inc. System and method for forecasting information using collective intelligence from diverse sources
US7269157B2 (en) 2001-04-10 2007-09-11 Internap Network Services Corporation System and method to assure network service levels with intelligent routing
EP1251669A1 (en) * 2001-04-19 2002-10-23 BRITISH TELECOMMUNICATIONS public limited company Communications network
US7133365B2 (en) * 2001-11-02 2006-11-07 Internap Network Services Corporation System and method to provide routing control of information over networks
US7222190B2 (en) * 2001-11-02 2007-05-22 Internap Network Services Corporation System and method to provide routing control of information over data networks
US7668966B2 (en) * 2001-11-02 2010-02-23 Internap Network Services Corporation Data network controller
US7561517B2 (en) 2001-11-02 2009-07-14 Internap Network Services Corporation Passive route control of data networks
US20030105855A1 (en) * 2001-11-26 2003-06-05 Big Pipe Inc. Usage-based billing method and system for computer networks
US7139692B2 (en) * 2001-12-21 2006-11-21 Opnet Technologies, Inc. Flow propagation analysis using iterative signaling
EP1335535A1 (en) * 2002-01-31 2003-08-13 BRITISH TELECOMMUNICATIONS public limited company Network service selection
US7099277B2 (en) * 2002-02-20 2006-08-29 Mitsubishi Electric Research Laboratories, Inc. Dynamic optimal path selection in multiple communications networks
US7260102B2 (en) * 2002-02-22 2007-08-21 Nortel Networks Limited Traffic switching using multi-dimensional packet classification
US8914492B2 (en) * 2002-05-07 2014-12-16 British Telecommunication Plc Method and apparatus for selecting user policies
US7339943B1 (en) 2002-05-10 2008-03-04 Altera Corporation Apparatus and method for queuing flow management between input, intermediate and output queues
US7606248B1 (en) 2002-05-10 2009-10-20 Altera Corporation Method and apparatus for using multiple network processors to achieve higher performance networking applications
US7320037B1 (en) 2002-05-10 2008-01-15 Altera Corporation Method and apparatus for packet segmentation, enqueuing and queue servicing for multiple network processor architecture
US7336669B1 (en) * 2002-05-20 2008-02-26 Altera Corporation Mechanism for distributing statistics across multiple elements
US7593334B1 (en) 2002-05-20 2009-09-22 Altera Corporation Method of policing network traffic
US7328259B2 (en) * 2002-11-08 2008-02-05 Symantec Operating Corporation Systems and methods for policy-based application management
WO2004056047A1 (en) * 2002-12-13 2004-07-01 Internap Network Services Corporation Topology aware route control
JP4024146B2 (ja) * 2002-12-27 2007-12-19 株式会社エヌ・ティ・ティ・ドコモ モビリティ制御ノード、ページングエリア形成方法、及びモビリティ制御プログラム
US7447798B2 (en) * 2003-02-10 2008-11-04 Internap Network Services Corporation Methods and systems for providing dynamic domain name system for inbound route control
US7373416B2 (en) * 2003-04-24 2008-05-13 Akamai Technologies, Inc. Method and system for constraining server usage in a distributed network
US7430179B2 (en) * 2003-06-28 2008-09-30 Geopacket Corporation Quality determination for packetized information
US7437459B2 (en) * 2003-08-14 2008-10-14 Oracle International Corporation Calculation of service performance grades in a multi-node environment that hosts the services
CN100547583C (zh) * 2003-08-14 2009-10-07 甲骨文国际公司 数据库的自动和动态提供的方法
US7441033B2 (en) 2003-08-14 2008-10-21 Oracle International Corporation On demand node and server instance allocation and de-allocation
US7552171B2 (en) * 2003-08-14 2009-06-23 Oracle International Corporation Incremental run-time session balancing in a multi-node system
US7953860B2 (en) * 2003-08-14 2011-05-31 Oracle International Corporation Fast reorganization of connections in response to an event in a clustered computing system
US7516221B2 (en) * 2003-08-14 2009-04-07 Oracle International Corporation Hierarchical management of the dynamic allocation of resources in a multi-node system
US8365193B2 (en) * 2003-08-14 2013-01-29 Oracle International Corporation Recoverable asynchronous message driven processing in a multi-node system
US7664847B2 (en) * 2003-08-14 2010-02-16 Oracle International Corporation Managing workload by service
US20060064400A1 (en) * 2004-09-21 2006-03-23 Oracle International Corporation, A California Corporation Methods, systems and software for identifying and managing database work
US20050256971A1 (en) * 2003-08-14 2005-11-17 Oracle International Corporation Runtime load balancing of work across a clustered computing system using current service performance levels
US7437460B2 (en) * 2003-08-14 2008-10-14 Oracle International Corporation Service placement for enforcing performance and availability levels in a multi-node system
CN100433702C (zh) * 2003-09-01 2008-11-12 日本电信电话株式会社 分组通信方法
US7525919B2 (en) 2003-09-01 2009-04-28 Nippon Telegraph And Telephone Corporation Packet communication method with increased traffic engineering efficiency
US7388841B2 (en) * 2003-10-20 2008-06-17 Mitsubishi Electric Research Laboratories, Inc. Selecting multiple paths in overlay networks for streaming data
US20050132031A1 (en) * 2003-12-12 2005-06-16 Reiner Sailer Method and system for measuring status and state of remotely executing programs
JP5015458B2 (ja) * 2003-12-19 2012-08-29 テレフオンアクチーボラゲット エル エム エリクソン(パブル) マルチホップネットワークにおいて確立された設定の接続に対する高速/便乗的な分散資源再割当て
US8868745B1 (en) * 2003-12-22 2014-10-21 Avaya Inc. Method and system for providing configurable route table limits in a service provider for managing VPN resource usage
US7562143B2 (en) * 2004-01-13 2009-07-14 International Business Machines Corporation Managing escalating resource needs within a grid environment
US7406691B2 (en) * 2004-01-13 2008-07-29 International Business Machines Corporation Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment
US7552437B2 (en) * 2004-01-14 2009-06-23 International Business Machines Corporation Maintaining application operations within a suboptimal grid environment
US7464159B2 (en) * 2004-01-14 2008-12-09 International Business Machines Corporation Managing analysis of a degraded service in a grid environment
US8055755B2 (en) * 2004-02-05 2011-11-08 At&T Intellectual Property Ii, L.P. Method for determining VoIP gateway performance and SLAs based upon path measurements
US7426181B1 (en) * 2004-03-26 2008-09-16 Packeteer, Inc. Slow-start adaptive mechanisms to improve efficiency of bandwidth allocation
US7617303B2 (en) * 2004-04-27 2009-11-10 At&T Intellectual Property Ii, L.P. Systems and method for optimizing access provisioning and capacity planning in IP networks
US7266547B2 (en) * 2004-06-10 2007-09-04 International Business Machines Corporation Query meaning determination through a grid service
US7533186B2 (en) * 2004-06-30 2009-05-12 Intel Corporation Integrated security framework
US10862994B1 (en) 2006-11-15 2020-12-08 Conviva Inc. Facilitating client decisions
US8139475B2 (en) 2004-07-29 2012-03-20 Telecom Italia S.P.A. Method and system for fault and performance recovery in communication networks, related network and computer program product therefor
US7769875B1 (en) * 2004-08-03 2010-08-03 Juniper Networks, Inc. Managing a network flow using application classification information and active signaling relay
US7502824B2 (en) * 2004-08-12 2009-03-10 Oracle International Corporation Database shutdown with session migration
US20060041647A1 (en) * 2004-08-17 2006-02-23 Michael Perham System and method for profiling messages
EP1790131B1 (en) * 2004-09-09 2012-12-05 Avaya Inc. Methods of and systems for network traffic security
US7712100B2 (en) * 2004-09-14 2010-05-04 International Business Machines Corporation Determining a capacity of a grid environment to handle a required workload for a virtual grid job request
US20060075093A1 (en) * 2004-10-05 2006-04-06 Enterasys Networks, Inc. Using flow metric events to control network operation
US20060107313A1 (en) * 2004-11-12 2006-05-18 Dowless & Associates Method, system, and medium for the analysis of information system security
US9489424B2 (en) * 2004-12-20 2016-11-08 Oracle International Corporation Cursor pre-fetching
US7590623B2 (en) * 2005-01-06 2009-09-15 International Business Machines Corporation Automated management of software images for efficient resource node building within a grid environment
US7761557B2 (en) * 2005-01-06 2010-07-20 International Business Machines Corporation Facilitating overall grid environment management by monitoring and distributing grid activity
US7668741B2 (en) * 2005-01-06 2010-02-23 International Business Machines Corporation Managing compliance with service level agreements in a grid environment
US7793308B2 (en) * 2005-01-06 2010-09-07 International Business Machines Corporation Setting operation based resource utilization thresholds for resource use by a process
US7707288B2 (en) * 2005-01-06 2010-04-27 International Business Machines Corporation Automatically building a locally managed virtual node grouping to handle a grid job requiring a degree of resource parallelism within a grid environment
US7533170B2 (en) * 2005-01-06 2009-05-12 International Business Machines Corporation Coordinating the monitoring, management, and prediction of unintended changes within a grid environment
US7502850B2 (en) * 2005-01-06 2009-03-10 International Business Machines Corporation Verifying resource functionality before use by a grid job submitted to a grid environment
US7571120B2 (en) * 2005-01-12 2009-08-04 International Business Machines Corporation Computer implemented method for estimating future grid job costs by classifying grid jobs and storing results of processing grid job microcosms
US7472079B2 (en) * 2005-01-12 2008-12-30 International Business Machines Corporation Computer implemented method for automatically controlling selection of a grid provider for a grid job
US7562035B2 (en) * 2005-01-12 2009-07-14 International Business Machines Corporation Automating responses by grid providers to bid requests indicating criteria for a grid job
US7467196B2 (en) * 2005-01-12 2008-12-16 International Business Machines Corporation Managing network errors communicated in a message transaction with error information using a troubleshooting agent
IL166390A (en) * 2005-01-19 2011-08-31 Tejas Israel Ltd Routing method and system
WO2006081540A2 (en) * 2005-01-28 2006-08-03 Cariden Technologies, Inc. A method and system for communicating predicted network behavior between interconnected networks
US20060174035A1 (en) * 2005-01-28 2006-08-03 At&T Corp. System, device, & method for applying COS policies
US9176772B2 (en) 2005-02-11 2015-11-03 Oracle International Corporation Suspending and resuming of sessions
US7760859B2 (en) * 2005-03-07 2010-07-20 Net Optics, Inc. Intelligent communications network tap port aggregator
US20060224773A1 (en) * 2005-03-31 2006-10-05 International Business Machines Corporation Systems and methods for content-aware load balancing
US7715312B2 (en) * 2005-04-25 2010-05-11 Verizon Services Corp. Methods and systems for maintaining quality of service (QOS) levels for data transmissions
US9197533B1 (en) 2005-05-09 2015-11-24 Cisco Technology, Inc. Technique for maintaining and enforcing relative policies with thresholds
US7773503B2 (en) * 2005-06-09 2010-08-10 At&T Intellectual Property I, L.P. Proactive congestion control scheme for VoIP traffic on IP routers
US7636305B1 (en) 2005-06-17 2009-12-22 Cisco Technology, Inc. Method and apparatus for monitoring network traffic
US8130767B2 (en) * 2005-06-17 2012-03-06 Cisco Technology, Inc. Method and apparatus for aggregating network traffic flows
US7657624B2 (en) * 2005-06-22 2010-02-02 Hewlett-Packard Development Company, L.P. Network usage management system and method
CN1905517A (zh) * 2005-07-30 2007-01-31 华为技术有限公司 在ngn网络中为媒体流选择转发路径的控制系统及方法
US7961625B2 (en) * 2005-08-01 2011-06-14 Limelight Networks, Inc. Routing under heavy loading
US7706280B2 (en) * 2005-08-01 2010-04-27 Limelight Networks, Inc. Heavy load packet-switched routing
US7436799B2 (en) * 2005-09-30 2008-10-14 Lucent Technologies Inc. Method for minimizing expenditures associated with optimized backhaul networks
CN100401689C (zh) * 2005-10-24 2008-07-09 华为技术有限公司 一种网络资源配置方法
US8141156B1 (en) * 2005-12-28 2012-03-20 At&T Intellectual Property Ii, L.P. Method and apparatus for mitigating routing misbehavior in a network
US7647426B2 (en) * 2006-01-12 2010-01-12 Cisco Technology, Inc. Method and apparatus for achieving Border Gateway Protocol convergence using alternate route information
US7466694B2 (en) 2006-06-10 2008-12-16 Cisco Technology, Inc. Routing protocol with packet network attributes for improved route selection
US8289965B2 (en) 2006-10-19 2012-10-16 Embarq Holdings Company, Llc System and method for establishing a communications session with an end-user based on the state of a network connection
US7765294B2 (en) 2006-06-30 2010-07-27 Embarq Holdings Company, Llc System and method for managing subscriber usage of a communications network
US7948909B2 (en) 2006-06-30 2011-05-24 Embarq Holdings Company, Llc System and method for resetting counters counting network performance information at network communications devices on a packet network
US8488447B2 (en) 2006-06-30 2013-07-16 Centurylink Intellectual Property Llc System and method for adjusting code speed in a transmission path during call set-up due to reduced transmission performance
US8717911B2 (en) 2006-06-30 2014-05-06 Centurylink Intellectual Property Llc System and method for collecting network performance information
US9094257B2 (en) 2006-06-30 2015-07-28 Centurylink Intellectual Property Llc System and method for selecting a content delivery network
US8000318B2 (en) * 2006-06-30 2011-08-16 Embarq Holdings Company, Llc System and method for call routing based on transmission performance of a packet network
US8194643B2 (en) 2006-10-19 2012-06-05 Embarq Holdings Company, Llc System and method for monitoring the connection of an end-user to a remote network
US8223655B2 (en) 2006-08-22 2012-07-17 Embarq Holdings Company, Llc System and method for provisioning resources of a packet network based on collected network performance information
US7843831B2 (en) 2006-08-22 2010-11-30 Embarq Holdings Company Llc System and method for routing data on a packet network
US8144587B2 (en) 2006-08-22 2012-03-27 Embarq Holdings Company, Llc System and method for load balancing network resources using a connection admission control engine
US8531954B2 (en) 2006-08-22 2013-09-10 Centurylink Intellectual Property Llc System and method for handling reservation requests with a connection admission control engine
US8743703B2 (en) 2006-08-22 2014-06-03 Centurylink Intellectual Property Llc System and method for tracking application resource usage
US8199653B2 (en) 2006-08-22 2012-06-12 Embarq Holdings Company, Llc System and method for communicating network performance information over a packet network
US8238253B2 (en) 2006-08-22 2012-08-07 Embarq Holdings Company, Llc System and method for monitoring interlayer devices and optimizing network performance
US8407765B2 (en) 2006-08-22 2013-03-26 Centurylink Intellectual Property Llc System and method for restricting access to network performance information tables
US8130793B2 (en) 2006-08-22 2012-03-06 Embarq Holdings Company, Llc System and method for enabling reciprocal billing for different types of communications over a packet network
US7808918B2 (en) 2006-08-22 2010-10-05 Embarq Holdings Company, Llc System and method for dynamically shaping network traffic
US8224255B2 (en) 2006-08-22 2012-07-17 Embarq Holdings Company, Llc System and method for managing radio frequency windows
US8549405B2 (en) 2006-08-22 2013-10-01 Centurylink Intellectual Property Llc System and method for displaying a graphical representation of a network to identify nodes and node segments on the network that are not operating normally
US8144586B2 (en) 2006-08-22 2012-03-27 Embarq Holdings Company, Llc System and method for controlling network bandwidth with a connection admission control engine
US8228791B2 (en) 2006-08-22 2012-07-24 Embarq Holdings Company, Llc System and method for routing communications between packet networks based on intercarrier agreements
US8307065B2 (en) 2006-08-22 2012-11-06 Centurylink Intellectual Property Llc System and method for remotely controlling network operators
US7940735B2 (en) 2006-08-22 2011-05-10 Embarq Holdings Company, Llc System and method for selecting an access point
US8102770B2 (en) 2006-08-22 2012-01-24 Embarq Holdings Company, LP System and method for monitoring and optimizing network performance with vector performance tables and engines
US8064391B2 (en) 2006-08-22 2011-11-22 Embarq Holdings Company, Llc System and method for monitoring and optimizing network performance to a wireless device
US8098579B2 (en) * 2006-08-22 2012-01-17 Embarq Holdings Company, LP System and method for adjusting the window size of a TCP packet through remote network elements
US8537695B2 (en) 2006-08-22 2013-09-17 Centurylink Intellectual Property Llc System and method for establishing a call being received by a trunk on a packet network
US8576722B2 (en) 2006-08-22 2013-11-05 Centurylink Intellectual Property Llc System and method for modifying connectivity fault management packets
US9479341B2 (en) 2006-08-22 2016-10-25 Centurylink Intellectual Property Llc System and method for initiating diagnostics on a packet network node
US8619600B2 (en) 2006-08-22 2013-12-31 Centurylink Intellectual Property Llc System and method for establishing calls over a call path having best path metrics
US8015294B2 (en) 2006-08-22 2011-09-06 Embarq Holdings Company, LP Pin-hole firewall for communicating data packets on a packet network
US8040811B2 (en) 2006-08-22 2011-10-18 Embarq Holdings Company, Llc System and method for collecting and managing network performance information
US8194555B2 (en) 2006-08-22 2012-06-05 Embarq Holdings Company, Llc System and method for using distributed network performance information tables to manage network communications
US8189468B2 (en) 2006-10-25 2012-05-29 Embarq Holdings, Company, LLC System and method for regulating messages between networks
US8750158B2 (en) 2006-08-22 2014-06-10 Centurylink Intellectual Property Llc System and method for differentiated billing
US8125897B2 (en) 2006-08-22 2012-02-28 Embarq Holdings Company Lp System and method for monitoring and optimizing network performance with user datagram protocol network performance information packets
US20080049629A1 (en) * 2006-08-22 2008-02-28 Morrill Robert J System and method for monitoring data link layer devices and optimizing interlayer network performance
US8107366B2 (en) * 2006-08-22 2012-01-31 Embarq Holdings Company, LP System and method for using centralized network performance tables to manage network communications
WO2008024387A2 (en) 2006-08-22 2008-02-28 Embarq Holdings Company Llc System and method for synchronizing counters on an asynchronous packet communications network
US7684332B2 (en) 2006-08-22 2010-03-23 Embarq Holdings Company, Llc System and method for adjusting the window size of a TCP packet through network elements
US8274905B2 (en) 2006-08-22 2012-09-25 Embarq Holdings Company, Llc System and method for displaying a graph representative of network performance over a time period
US8751605B1 (en) 2006-11-15 2014-06-10 Conviva Inc. Accounting for network traffic
US9124601B2 (en) 2006-11-15 2015-09-01 Conviva Inc. Data client
US9264780B1 (en) 2006-11-15 2016-02-16 Conviva Inc. Managing synchronized data requests in a content delivery network
US8874725B1 (en) 2006-11-15 2014-10-28 Conviva Inc. Monitoring the performance of a content player
US8144631B2 (en) 2006-12-13 2012-03-27 Cisco Technology, Inc. Interconnecting IP video endpoints with reduced H.320 call setup time
US8140666B2 (en) * 2007-03-29 2012-03-20 International Business Machines Corporation Method and apparatus for network distribution and provisioning of applications across multiple domains
US9027025B2 (en) * 2007-04-17 2015-05-05 Oracle International Corporation Real-time database exception monitoring tool using instance eviction data
US8111692B2 (en) 2007-05-31 2012-02-07 Embarq Holdings Company Llc System and method for modifying network traffic
US9306812B2 (en) * 2007-07-05 2016-04-05 Rpx Clearinghouse Llc System and method for providing network application performance management in a network
US8339965B2 (en) * 2007-10-02 2012-12-25 Microsoft Corporation Uncovering the differences in backbone networks
US7817547B2 (en) * 2007-10-02 2010-10-19 Microsoft Corporation Uncovering the differences in backbone networks
US8527663B2 (en) * 2007-12-21 2013-09-03 At&T Intellectual Property I, L.P. Methods and apparatus for performing non-intrusive network layer performance measurement in communication networks
US8706862B2 (en) * 2007-12-21 2014-04-22 At&T Intellectual Property I, L.P. Methods and apparatus for performing non-intrusive data link layer performance measurement in communication networks
US8161166B2 (en) * 2008-01-15 2012-04-17 Adobe Systems Incorporated Information communication using numerical residuals
US8667175B2 (en) * 2008-03-13 2014-03-04 Cisco Technology, Inc. Server selection for routing content to a client using application layer redirection
US8068425B2 (en) 2008-04-09 2011-11-29 Embarq Holdings Company, Llc System and method for using network performance information to determine improved measures of path states
US8082320B1 (en) 2008-04-09 2011-12-20 Adobe Systems Incorporated Communicating supplemental information over a block erasure channel
US8924543B2 (en) 2009-01-28 2014-12-30 Headwater Partners I Llc Service design center for device assisted services
US8832777B2 (en) 2009-03-02 2014-09-09 Headwater Partners I Llc Adapting network policies based on device service processor configuration
US8589541B2 (en) 2009-01-28 2013-11-19 Headwater Partners I Llc Device-assisted services for protecting network capacity
US8626115B2 (en) 2009-01-28 2014-01-07 Headwater Partners I Llc Wireless network service interfaces
US8725123B2 (en) 2008-06-05 2014-05-13 Headwater Partners I Llc Communications device with secure data path processing agents
US8402111B2 (en) 2009-01-28 2013-03-19 Headwater Partners I, Llc Device assisted services install
US8635335B2 (en) 2009-01-28 2014-01-21 Headwater Partners I Llc System and method for wireless network offloading
US8548428B2 (en) 2009-01-28 2013-10-01 Headwater Partners I Llc Device group partitions and settlement platform
US8340634B2 (en) 2009-01-28 2012-12-25 Headwater Partners I, Llc Enhanced roaming services and converged carrier networks with device assisted services and a proxy
US8898293B2 (en) 2009-01-28 2014-11-25 Headwater Partners I Llc Service offer set publishing to device agent with on-device service selection
US8275830B2 (en) 2009-01-28 2012-09-25 Headwater Partners I Llc Device assisted CDR creation, aggregation, mediation and billing
US8391834B2 (en) 2009-01-28 2013-03-05 Headwater Partners I Llc Security techniques for device assisted services
US8583781B2 (en) 2009-01-28 2013-11-12 Headwater Partners I Llc Simplified service network architecture
US8346225B2 (en) 2009-01-28 2013-01-01 Headwater Partners I, Llc Quality of service for device assisted services
US8924469B2 (en) 2008-06-05 2014-12-30 Headwater Partners I Llc Enterprise access control and accounting allocation for access networks
US8406748B2 (en) 2009-01-28 2013-03-26 Headwater Partners I Llc Adaptive ambient services
US8126995B2 (en) * 2008-06-23 2012-02-28 Adobe Systems Incorporated Multi-source broadcasting in peer-to-peer network
US8331369B2 (en) * 2008-07-10 2012-12-11 At&T Intellectual Property I, L.P. Methods and apparatus to distribute network IP traffic
US8438269B1 (en) 2008-09-12 2013-05-07 At&T Intellectual Property I, Lp Method and apparatus for measuring the end-to-end performance and capacity of complex network service
AU2010276462B1 (en) 2010-12-27 2012-01-12 Limelight Networks, Inc. Partial object caching
CN102203758A (zh) * 2008-09-19 2011-09-28 杰出网络公司 内容传递网络流服务器片段分发
AU2010202034B1 (en) 2010-04-07 2010-12-23 Limelight Networks, Inc. Partial object distribution in content delivery network
US8234369B2 (en) * 2008-12-23 2012-07-31 Verizon Patent And Licensing Inc. Web page response monitoring
US9253663B2 (en) 2009-01-28 2016-02-02 Headwater Partners I Llc Controlling mobile device communications on a roaming network based on device state
US9578182B2 (en) 2009-01-28 2017-02-21 Headwater Partners I Llc Mobile device and service management
US9351193B2 (en) 2009-01-28 2016-05-24 Headwater Partners I Llc Intermediate networking devices
US10841839B2 (en) 2009-01-28 2020-11-17 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US10779177B2 (en) 2009-01-28 2020-09-15 Headwater Research Llc Device group partitions and settlement platform
US8606911B2 (en) 2009-03-02 2013-12-10 Headwater Partners I Llc Flow tagging for service policy implementation
US9955332B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Method for child wireless device activation to subscriber account of a master wireless device
US10484858B2 (en) 2009-01-28 2019-11-19 Headwater Research Llc Enhanced roaming services and converged carrier networks with device assisted services and a proxy
US8351898B2 (en) 2009-01-28 2013-01-08 Headwater Partners I Llc Verifiable device assisted service usage billing with integrated accounting, mediation accounting, and multi-account
US8893009B2 (en) 2009-01-28 2014-11-18 Headwater Partners I Llc End user device that secures an association of application to service policy with an application certificate check
US9954975B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Enhanced curfew and protection associated with a device group
US9270559B2 (en) 2009-01-28 2016-02-23 Headwater Partners I Llc Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow
US10492102B2 (en) 2009-01-28 2019-11-26 Headwater Research Llc Intermediate networking devices
US10237757B2 (en) 2009-01-28 2019-03-19 Headwater Research Llc System and method for wireless network offloading
US8793758B2 (en) 2009-01-28 2014-07-29 Headwater Partners I Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US10200541B2 (en) 2009-01-28 2019-02-05 Headwater Research Llc Wireless end-user device with divided user space/kernel space traffic policy system
US9609510B2 (en) 2009-01-28 2017-03-28 Headwater Research Llc Automated credential porting for mobile devices
US10248996B2 (en) 2009-01-28 2019-04-02 Headwater Research Llc Method for operating a wireless end-user device mobile payment agent
US9755842B2 (en) 2009-01-28 2017-09-05 Headwater Research Llc Managing service user discovery and service launch object placement on a device
US10264138B2 (en) 2009-01-28 2019-04-16 Headwater Research Llc Mobile device and service management
US9980146B2 (en) 2009-01-28 2018-05-22 Headwater Research Llc Communications device with secure data path processing agents
US9572019B2 (en) 2009-01-28 2017-02-14 Headwater Partners LLC Service selection set published to device agent with on-device service selection
US9858559B2 (en) 2009-01-28 2018-01-02 Headwater Research Llc Network service plan design
US10064055B2 (en) 2009-01-28 2018-08-28 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US10715342B2 (en) 2009-01-28 2020-07-14 Headwater Research Llc Managing service user discovery and service launch object placement on a device
US9557889B2 (en) 2009-01-28 2017-01-31 Headwater Partners I Llc Service plan design, user interfaces, application programming interfaces, and device management
US9706061B2 (en) 2009-01-28 2017-07-11 Headwater Partners I Llc Service design center for device assisted services
US11218854B2 (en) 2009-01-28 2022-01-04 Headwater Research Llc Service plan design, user interfaces, application programming interfaces, and device management
US10057775B2 (en) 2009-01-28 2018-08-21 Headwater Research Llc Virtualized policy and charging system
US10798252B2 (en) 2009-01-28 2020-10-06 Headwater Research Llc System and method for providing user notifications
US9392462B2 (en) * 2009-01-28 2016-07-12 Headwater Partners I Llc Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy
US8745191B2 (en) 2009-01-28 2014-06-03 Headwater Partners I Llc System and method for providing user notifications
US9647918B2 (en) 2009-01-28 2017-05-09 Headwater Research Llc Mobile device and method attributing media services network usage to requesting application
US10783581B2 (en) 2009-01-28 2020-09-22 Headwater Research Llc Wireless end-user device providing ambient or sponsored services
US10326800B2 (en) 2009-01-28 2019-06-18 Headwater Research Llc Wireless network service interfaces
US9565707B2 (en) 2009-01-28 2017-02-07 Headwater Partners I Llc Wireless end-user device with wireless data attribution to multiple personas
US9571559B2 (en) 2009-01-28 2017-02-14 Headwater Partners I Llc Enhanced curfew and protection associated with a device group
US9128895B2 (en) * 2009-02-19 2015-09-08 Oracle International Corporation Intelligent flood control management
US8402494B1 (en) 2009-03-23 2013-03-19 Conviva Inc. Switching content
US20100256823A1 (en) * 2009-04-04 2010-10-07 Cisco Technology, Inc. Mechanism for On-Demand Environmental Services Based on Network Activity
US20100299349A1 (en) * 2009-05-20 2010-11-25 Microsoft Corporation Reducing Latency in Returning Online Search Results
EP2436155B1 (fr) * 2009-05-25 2019-02-20 Orange Procédé de gestion de chemins entre un noeud source et un noeud destinataire au niveau de la couche de liaison, noeud source et table correspondants
US9100288B1 (en) 2009-07-20 2015-08-04 Conviva Inc. Augmenting the functionality of a content player
US8108551B1 (en) * 2009-09-15 2012-01-31 Symantec Corporation Systems and methods for monitoring physical paths within a computer network
EP2315392A1 (en) * 2009-10-21 2011-04-27 Nederlandse Organisatie voor toegepast -natuurwetenschappelijk onderzoek TNO Telecommunication quality of service control
WO2011056796A1 (en) 2009-11-04 2011-05-12 Martin Kagan Internet infrastructure survey
US8386600B2 (en) * 2009-12-16 2013-02-26 Verizon Patent And Licensing Inc. Performance monitoring of E-tree service
US9203652B2 (en) 2009-12-21 2015-12-01 8X8, Inc. Systems, methods, devices and arrangements for cost-effective routing
US9058119B1 (en) * 2010-01-11 2015-06-16 Netapp, Inc. Efficient data migration
US9165086B2 (en) 2010-01-20 2015-10-20 Oracle International Corporation Hybrid binary XML storage model for efficient XML processing
KR101089832B1 (ko) * 2010-01-25 2011-12-05 포항공과대학교 산학협력단 네트워크 자율 관리 시스템
US8824487B1 (en) * 2010-04-29 2014-09-02 Centurylink Intellectual Property Llc Multi-access gateway for direct to residence communication services
US8699484B2 (en) 2010-05-24 2014-04-15 At&T Intellectual Property I, L.P. Methods and apparatus to route packets in a network
US9491085B2 (en) 2010-05-24 2016-11-08 At&T Intellectual Property I, L.P. Methods and apparatus to route control packets based on address partitioning
US20120030760A1 (en) * 2010-08-02 2012-02-02 Long Lu Method and apparatus for combating web-based surreptitious binary installations
US8458530B2 (en) 2010-09-21 2013-06-04 Oracle International Corporation Continuous system health indicator for managing computer system alerts
US9286298B1 (en) 2010-10-14 2016-03-15 F5 Networks, Inc. Methods for enhancing management of backup data sets and devices thereof
US8867346B2 (en) * 2010-11-17 2014-10-21 At&T Intellectual Property I, L.P. Method, system, and computer program product for providing network data flow analysis and routing
US9385917B1 (en) * 2011-03-31 2016-07-05 Amazon Technologies, Inc. Monitoring and detecting causes of failures of network paths
US9154826B2 (en) 2011-04-06 2015-10-06 Headwater Partners Ii Llc Distributing content and service launch objects to mobile devices
US9613042B1 (en) 2012-04-09 2017-04-04 Conviva Inc. Dynamic generation of video manifest files
US10182096B1 (en) 2012-09-05 2019-01-15 Conviva Inc. Virtual resource locator
US9246965B1 (en) 2012-09-05 2016-01-26 Conviva Inc. Source assignment based on network partitioning
US9519501B1 (en) 2012-09-30 2016-12-13 F5 Networks, Inc. Hardware assisted flow acceleration and L2 SMAC management in a heterogeneous distributed multi-tenant virtualized clustered system
KR101419437B1 (ko) * 2012-11-15 2014-07-14 (주)씨디네트웍스 데이터 가속 알고리즘을 선택하여 콘텐츠를 제공하는 방법 및 장치
US10375155B1 (en) 2013-02-19 2019-08-06 F5 Networks, Inc. System and method for achieving hardware acceleration for asymmetric flow connections
US9554418B1 (en) 2013-02-28 2017-01-24 F5 Networks, Inc. Device for topology hiding of a visited network
CN104168195A (zh) * 2013-05-16 2014-11-26 宇宙互联有限公司 传输管理装置、系统及方法
US10320628B2 (en) 2013-06-19 2019-06-11 Citrix Systems, Inc. Confidence scoring of device reputation based on characteristic network behavior
US10003536B2 (en) 2013-07-25 2018-06-19 Grigore Raileanu System and method for managing bandwidth usage rates in a packet-switched network
US9525638B2 (en) 2013-10-15 2016-12-20 Internap Corporation Routing system for internet traffic
FI20145054L (fi) * 2014-01-21 2015-07-22 Tellabs Oy Tiedonsiirtoverkon verkkoelementti
US9537743B2 (en) * 2014-04-25 2017-01-03 International Business Machines Corporation Maximizing storage controller bandwidth utilization in heterogeneous storage area networks
US10439909B2 (en) * 2014-05-16 2019-10-08 Cisco Technology, Inc. Performance monitoring in a multi-site environment
KR101761737B1 (ko) * 2014-05-20 2017-07-26 한국전자통신연구원 제어 시스템의 이상행위 탐지 시스템 및 방법
US20160044339A1 (en) * 2014-08-07 2016-02-11 Qualcomm Incorporated System and method for reordering of prefixes and suffixes in variable length coding to increase throughput
US10924408B2 (en) * 2014-11-07 2021-02-16 Noction, Inc. System and method for optimizing traffic in packet-switched networks with internet exchanges
US10178043B1 (en) 2014-12-08 2019-01-08 Conviva Inc. Dynamic bitrate range selection in the cloud for optimized video streaming
US10305955B1 (en) 2014-12-08 2019-05-28 Conviva Inc. Streaming decision in the cloud
US9769070B2 (en) 2015-01-28 2017-09-19 Maxim Basunov System and method of providing a platform for optimizing traffic through a computer network with distributed routing domains interconnected through data center interconnect links
US9973572B2 (en) 2015-04-14 2018-05-15 SkyKick, Inc. Server load management for data migration
CN107534587B (zh) * 2015-07-01 2020-11-20 慧与发展有限责任合伙企业 时延测量系统及方法
US9942171B2 (en) 2015-07-02 2018-04-10 Arista Networks, Inc. Network data processor having per-input port virtual output queues
US10419310B1 (en) 2015-12-17 2019-09-17 8×8, Inc. Monitor device for use with endpoint devices
US10778809B2 (en) * 2016-02-26 2020-09-15 Arista Networks, Inc. Per-input port, per-control plane network data traffic class control plane policing
US11076051B1 (en) 2016-05-04 2021-07-27 8X8, Inc. Endpoint location update control for call routing decisions
US10542150B1 (en) 2016-05-04 2020-01-21 8X8, Inc. Server generated timing of location updates for call routing decisions
US10326888B1 (en) 2016-05-04 2019-06-18 8X8, Inc. Location updates for call routing decisions
US10530934B1 (en) 2016-05-04 2020-01-07 8X8, Inc. Endpoint location determination for call routing decisions
US10474653B2 (en) 2016-09-30 2019-11-12 Oracle International Corporation Flexible in-memory column store placement
US10819632B2 (en) 2017-01-18 2020-10-27 Synology Inc. Routers and methods for traffic management
US10511507B2 (en) * 2017-05-09 2019-12-17 Cisco Technology, Inc. Routing network traffic based on whether an application associated with traffic is a rerouting application as defined by a policy and whether a second path ranking exceeds a first path ranking
US10462042B2 (en) 2017-06-20 2019-10-29 Cisco Technology, Inc. Network path selection
US11556500B2 (en) 2017-09-29 2023-01-17 Oracle International Corporation Session templates
US11936739B2 (en) 2019-09-12 2024-03-19 Oracle International Corporation Automated reset of session state
US20220014512A1 (en) * 2020-07-13 2022-01-13 Headwater Research Llc End User Device That Secures an Association of Application to Service Policy With an Application Certificate Check
US11924112B2 (en) * 2021-03-30 2024-03-05 Cisco Technology, Inc. Real-time data transaction configuration of network devices

Family Cites Families (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6181679B1 (en) * 1993-03-19 2001-01-30 International Business Machines Corporation Management of packet transmission networks
US5724513A (en) * 1994-06-30 1998-03-03 Digital Equipment Corporation Traffic shaping system for asynchronous transfer mode networks
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
US5781534A (en) * 1995-10-31 1998-07-14 Novell, Inc. Method and apparatus for determining characteristics of a path
JP2723097B2 (ja) * 1995-12-04 1998-03-09 日本電気株式会社 Qosルーティング装置
US5870561A (en) * 1996-03-15 1999-02-09 Novell, Inc. Network traffic manager server for providing policy-based recommendations to clients
US6400681B1 (en) * 1996-06-20 2002-06-04 Cisco Technology, Inc. Method and system for minimizing the connection set up time in high speed packet switching networks
US6404769B1 (en) * 1996-06-26 2002-06-11 Motorola, Inc. Directional routing of packets in a satellite network
US6064677A (en) * 1996-06-27 2000-05-16 Xerox Corporation Multiple rate sensitive priority queues for reducing relative data transport unit delay variations in time multiplexed outputs from output queued routing mechanisms
US5953312A (en) * 1996-09-13 1999-09-14 Bay Networks Method and apparatus for determining alternate routes in a network using a connection-oriented protocol
US5898668A (en) * 1996-12-13 1999-04-27 Siemens Information And Communication Networks, Inc. Method and system for increasing quality of service at or below a threshold cost
US5870581A (en) 1996-12-20 1999-02-09 Oak Technology, Inc. Method and apparatus for performing concurrent write operations to a single-write-input register file and an accumulator register
US6047331A (en) * 1997-02-19 2000-04-04 Massachusetts Institute Of Technology Method and apparatus for automatic protection switching
US6047326A (en) * 1997-03-20 2000-04-04 Nokia Telecommunications, Oy Accounting system and method for a nominal bit rate network service
US6104700A (en) * 1997-08-29 2000-08-15 Extreme Networks Policy based quality of service
US6292464B1 (en) * 1997-09-17 2001-09-18 Nortel Networks Limited Apparatus and method for self routing control mechanism for restoring fiber optic communications network connections
CN100571787C (zh) * 1997-11-12 2009-12-23 Ge健康公司 仲氢标记剂及其在磁共振成像中的应用
US6055571A (en) * 1997-11-20 2000-04-25 Nec Usa, Inc. Computer network with microeconomic flow control
US6226751B1 (en) * 1998-04-17 2001-05-01 Vpnet Technologies, Inc. Method and apparatus for configuring a virtual private network
US6154778A (en) * 1998-05-19 2000-11-28 Hewlett-Packard Company Utility-based multi-category quality-of-service negotiation in distributed systems
JP3576811B2 (ja) * 1998-05-22 2004-10-13 日本電気株式会社 QoSマネジメント装置
US6185635B1 (en) * 1998-05-30 2001-02-06 Alcatel Networks Corporation Method and circuit for transporting data based on the content of ingress data words and egress data words
US6097699A (en) * 1998-06-05 2000-08-01 Gte Laboratories Incorporated Method and system for monitoring broadband quality of services
US6665702B1 (en) * 1998-07-15 2003-12-16 Radware Ltd. Load balancing
US6249801B1 (en) * 1998-07-15 2001-06-19 Radware Ltd. Load balancing
US6256314B1 (en) * 1998-08-11 2001-07-03 Avaya Technology Corp. Apparatus and methods for routerless layer 3 forwarding in a network
US6130890A (en) * 1998-09-11 2000-10-10 Digital Island, Inc. Method and system for optimizing routing of data packets
US6262976B1 (en) * 1998-09-17 2001-07-17 Ordered Networks, Inc. System and method for network flow optimization using traffic classes
AU774267B2 (en) * 1998-11-24 2004-06-24 Niksun, Inc. Apparatus and method for collecting and analyzing communications data
US6363053B1 (en) * 1999-02-08 2002-03-26 3Com Corporation Method and apparatus for measurement-based conformance testing of service level agreements in networks
US6724722B1 (en) * 1999-03-19 2004-04-20 Lucent Technologies Inc. Managing congestion and potential traffic growth in an information network
JP2000269999A (ja) * 1999-03-19 2000-09-29 Fujitsu Ltd ネットワーク間通信装置
US6252848B1 (en) * 1999-03-22 2001-06-26 Pluris, Inc. System performance in a data network through queue management based on ingress rate monitoring
US6801502B1 (en) * 1999-05-07 2004-10-05 At&T Corp. Method and apparatus for load-sensitive routing of long-lived packet flows
US6275470B1 (en) * 1999-06-18 2001-08-14 Digital Island, Inc. On-demand overlay routing for computer-based communication networks
US6405219B2 (en) * 1999-06-22 2002-06-11 F5 Networks, Inc. Method and system for automatically updating the version of a set of files stored on content servers
US6466984B1 (en) * 1999-07-02 2002-10-15 Cisco Technology, Inc. Method and apparatus for policy-based management of quality of service treatments of network data traffic flows by integrating policies with application programs
US6374300B2 (en) * 1999-07-15 2002-04-16 F5 Networks, Inc. Method and system for storing load balancing information with an HTTP cookie
US6728265B1 (en) * 1999-07-30 2004-04-27 Intel Corporation Controlling frame transmission
US6842783B1 (en) * 2000-02-18 2005-01-11 International Business Machines Corporation System and method for enforcing communications bandwidth based service level agreements to plurality of customers hosted on a clustered web server
JP3994614B2 (ja) * 2000-03-13 2007-10-24 株式会社日立製作所 パケット交換機、ネットワーク監視システム及びネットワーク監視方法
US7343413B2 (en) * 2000-03-21 2008-03-11 F5 Networks, Inc. Method and system for optimizing a network by independently scaling control segments and data flow
US6785237B1 (en) * 2000-03-31 2004-08-31 Networks Associates Technology, Inc. Method and system for passive quality of service monitoring of a network
US6857025B1 (en) * 2000-04-05 2005-02-15 International Business Machines Corporation Highly scalable system and method of regulating internet traffic to server farm to support (min,max) bandwidth usage-based service level agreements
US6574195B2 (en) 2000-04-19 2003-06-03 Caspian Networks, Inc. Micro-flow management
US7213077B2 (en) * 2000-07-21 2007-05-01 Hughes Network Systems, Inc. Method and system for providing buffer management in a performance enhancing proxy architecture
AU2001276000A1 (en) * 2000-08-31 2002-03-13 Netrake Corporation Method for enforcing service level agreements
US7406539B2 (en) * 2000-10-17 2008-07-29 Avaya Technology Corp. Method and apparatus for performance and cost optimization in an internetwork
US7080161B2 (en) * 2000-10-17 2006-07-18 Avaya Technology Corp. Routing information exchange
US7349994B2 (en) * 2000-10-17 2008-03-25 Avaya Technology Corp. Method and apparatus for coordinating routing parameters via a back-channel communication medium
US6928051B2 (en) * 2000-12-18 2005-08-09 Intel Corporation Application based bandwidth limiting proxies
US7230919B2 (en) * 2001-02-07 2007-06-12 Siemens Communications, Inc. Quality-of-service monitor for voice-over-Internet-protocol calls
US20020141378A1 (en) * 2001-03-28 2002-10-03 Bays Robert James Methods, apparatuses and systems facilitating deployment, support and configuration of network routing policies
US6947379B1 (en) 2001-04-03 2005-09-20 Cisco Technology, Inc. Packet routing to reduce susceptibility to disturbances
US7269157B2 (en) 2001-04-10 2007-09-11 Internap Network Services Corporation System and method to assure network service levels with intelligent routing
US6914886B2 (en) * 2001-05-03 2005-07-05 Radware Ltd. Controlling traffic on links between autonomous systems
US7042848B2 (en) * 2001-05-04 2006-05-09 Slt Logic Llc System and method for hierarchical policing of flows and subflows of a data stream
US6987735B2 (en) * 2001-05-24 2006-01-17 International Business Machines Corporation System and method for enhancing the availability of routing systems through equal cost multipath
US20030079005A1 (en) * 2001-05-29 2003-04-24 61C Networks, Inc. System and method for efficient wide area network routing
WO2003007556A2 (en) * 2001-07-13 2003-01-23 Nortel Networks Limited Routing for a communications network
US7362707B2 (en) 2001-07-23 2008-04-22 Acme Packet, Inc. System and method for determining flow quality statistics for real-time transport protocol data flows
US20030074449A1 (en) * 2001-10-12 2003-04-17 Rory Smith Bandwidth allocation in a synchronous transmission network for packet oriented signals
US7120118B2 (en) * 2001-10-18 2006-10-10 Intel Corporation Multi-path analysis for managing machine communications in a network
US7668966B2 (en) * 2001-11-02 2010-02-23 Internap Network Services Corporation Data network controller
US7561517B2 (en) * 2001-11-02 2009-07-14 Internap Network Services Corporation Passive route control of data networks
US7133365B2 (en) * 2001-11-02 2006-11-07 Internap Network Services Corporation System and method to provide routing control of information over networks
US7222190B2 (en) * 2001-11-02 2007-05-22 Internap Network Services Corporation System and method to provide routing control of information over data networks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011205187A (ja) * 2010-03-24 2011-10-13 Fujitsu Ltd 監視装置,監視方法および監視プログラム

Also Published As

Publication number Publication date
US7222190B2 (en) 2007-05-22
US20030088671A1 (en) 2003-05-08
WO2003041342A1 (en) 2003-05-15
EP1446917A1 (en) 2004-08-18

Similar Documents

Publication Publication Date Title
US7222190B2 (en) System and method to provide routing control of information over data networks
US7561517B2 (en) Passive route control of data networks
JP2005508593A (ja) ネットワークで情報のルーティング制御を実現するためのシステム及び方法
US7668966B2 (en) Data network controller
US7269157B2 (en) System and method to assure network service levels with intelligent routing
US7584298B2 (en) Topology aware route control
EP1350363B1 (en) Method and apparatus for the assessment and optimization of network traffic
EP1511220B1 (en) Non-intrusive method for routing policy discovery
US20060262772A1 (en) System and methods for providing a network path verification protocol
KR100862727B1 (ko) 트래픽 분석 방법 및 그 시스템
TW200300313A (en) System and method to provide routing control of information over data networks
EP1826947A2 (en) Method and apparatus for the assessment and optimization of network traffic
Taujuddin et al. DEVELOPMENT OF NETWORK CONGESTED ALERT SYSTEM (NetCAS)