JP2002536913A - ネットワーク上のノードでのデータフローをモニタする装置および方法 - Google Patents

ネットワーク上のノードでのデータフローをモニタする装置および方法

Info

Publication number
JP2002536913A
JP2002536913A JP2000597929A JP2000597929A JP2002536913A JP 2002536913 A JP2002536913 A JP 2002536913A JP 2000597929 A JP2000597929 A JP 2000597929A JP 2000597929 A JP2000597929 A JP 2000597929A JP 2002536913 A JP2002536913 A JP 2002536913A
Authority
JP
Japan
Prior art keywords
data
value
updatable
packet
adjusted
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
JP2000597929A
Other languages
English (en)
Inventor
ジェームス ディー カールソン
Original Assignee
アイロンブリッジ ネットワークス インク
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アイロンブリッジ ネットワークス インク filed Critical アイロンブリッジ ネットワークス インク
Publication of JP2002536913A publication Critical patent/JP2002536913A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L12/5602Bandwidth control in ATM Networks, e.g. leaky bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • 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/215Flow control; Congestion control using token-bucket
    • 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
    • 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/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • 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/31Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
    • 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/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5629Admission control
    • H04L2012/5631Resource management and allocation
    • H04L2012/5636Monitoring or policing, e.g. compliance with allocated rate, corrective actions
    • H04L2012/5637Leaky Buckets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13103Memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13106Microprocessor, CPU
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1325Priority service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13251Restricted service, class of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13296Packet switching, X.25, frame relay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13389LAN, internet

Landscapes

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

Abstract

(57)【要約】 ネットワーク上のノードにおけるデータフローをモニタするためメモリ位置すなわち「バケット」がノードにおける複数のリンクおよびサービスクラスの各々に割当てられる。種々のリンクおよびサービスクラスにおける最大許容可能データ速度によって決定される速度で、フリーランニングカウンタが増分される。ある特定のリンクおよびサービスクラスにおいてデータパケットを受信すると(100)、対応のバケットが、現在のカウンタ値を現在のバケット内容から減ずることで調整される(110)。次にこの差を入来するパケット内のデータ単位数、すなわちデータバイト数またはデータバイト群の数に加える(112)。次にこの和を、リンクおよびサービスクラスと関連付けられる許容可能データ速度によって決定される所定のしきい値と比較する(114)。しきい値を超えていれば、その入来するデータパケットはそのようにマークされる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】
本発明は、一般にデジタル通信の分野に関し、特に、デジタルデータネットワ
ークで使用されるスイッチングノードでのデータパケットの交換、およびスイッ
チングノードでのデータフローのモニタのためのシステムおよび方法に関する。
【0002】
【従来の技術】
デジタルネットワークは、デジタルコンピュータシステムおよび他の種々のタ
イプの装置間でデータおよびプログラムを含む情報の転送を促進するべく、開発
されてきた。多様な情報転送方法を用いて、様々なタイプのネットワークが開発
され、実現されてきた。現代のネットワークでは、種々のパターンの通信リンク
によって相互接続されるスイッチングノード網を介して情報が転送される。この
網状の相互接続パターンにより、各コンピュータシステムまたは他の装置からネ
ットワークを介した別のコンピュータシステムまたは他の装置への経路をいくつ
も利用することが可能となる。
【0003】 発信元の装置から着信先の装置へと転送される情報は、一般に固定長または可
変長のデータパケットの形態で転送され、その各々は通常、通信リンクを介して
スイッチングノードに受信され、別の通信リンクを介して送信され、それにより
着信先装置へ、または着信先装置までの経路にある別のスイッチングノードへと
パケットが転送されるよう促進する。一般に各パケットは、パケットを生成した
装置を識別する発信元アドレスと、そのパケットを受信すべき特定の装置を識別
する着信先アドレスとを含むアドレス情報を有する。
【0004】 一般に、スイッチングノードは、その各々がデータパケットを受信するように
ネットワーク上の通信リンクに接続される1つ以上の入力ポートと、その各々が
パケットを送信するようにネットワーク上の通信リンクに接続される1つ以上の
出力ポートとを含む。各ノードはまた、通常、入力ポートからのデータパケット
を送信のために出力ポートに結合するスイッチングファブリックを含む。
【0005】 一般に、ネットワークサービスプロバイダは、入力通信リンクからスイッチン
グファブリックをわたって出力通信リンクへとデータパケットを伝達することの
できる1つ以上のスイッチングノードを保守、操作する。これらのプロバイダは
、リンクを使用してネットワーク上のノードを介してデータを転送する顧客に料
金を課し、通常、この料金は顧客がノードを介したデータ転送に期待できる最大
データ速度に関連する。
【0006】 ノードにおける各リンクには、通常、少なくとも1つの「サービスクラス」が
割当てられる。これは、そのリンクを使用する顧客に与えられた最大許容データ
速度に関連し、顧客がプロバイダに支払う料金に基づく。多くの場合、各リンク
には単独のユーザまたは複数のユーザに関連する複数のサービスクラスが割当て
られる。
【0007】 サービスプロバイダにとっては、各リンク上のデータトラフィックをモニタ、
すなわち「監視する(police)」ことで、顧客が割当てられたリンクを契約した制
限範囲内で使用しているかどうかを判断するのが有益である。リンクの使用、す
なわちデータ速度が契約上の制限を超えていると判断されると、データパケット
を識別し、そのように、すなわち「契約外」とマークする。多くの場合、各サー
ビスクラスにおいて各リンクでのデータトラフィックを注意深くモニタするのが
重要である。さらに、ある特定のパケットが契約外となり得る度合に関してデー
タパケットをマークするのも望ましい場合が多い。例えば、ある特定のパケット
が少しだけ契約外である場合、そのパケットをそのようにマークするのが望まし
いであろうし、さらに、極度にリンクを使用しすぎている場合には、データパケ
ットをそのようにマークするのが望ましいであろう。
【0008】 システムによっては、パケットがリンク契約データ速度を超えている度合を用
いてそのパケットを破棄する上での優先順位を設定するものもある。契約速度を
少しだけ超えているパケットには比較的低い「破棄可能」値が割当てられ、最大
速度を大きく超えているパケットには高い破棄可能値が割当てられる。ある特定
のパケットを落す必要が出てきた場合には、高い破棄可能値を有するものの方が
低い破棄可能値を有するものよりも高い確率で落される。
【0009】 複数のサービスクラスを有する複数のリンクにおけるデータフロー速度をモニ
タするのにいくつかの手法が採られてきた。一般的な手法の1つは、「リーキー
バケット(leaky bucket)」法と称するものである。この手法では、通常「バケッ
ト」と称するメモリまたはレジスタ記憶位置が各リンクおよびサービスクラスに
割当てられる。各記憶位置すなわちバケットはその割当てられたリンクおよびサ
ービスクラスについて受信したデータ単位数のカウントを維持する。データ単位
は、データ1バイトであっても良いし、たとえば各データパケットが複数バイト
のデータを転送する場合にはデータバイト群であっても良い。各バケットについ
て、関連するリンクおよびサービスクラスに対する最大許容データ速度に関する
所定のしきい値となるデータ単位数が生成、記憶される。データパケットが受信
されると、データ単位(バイト)数がバケット内の現在の値またはカウントに加
えられ、更新値がしきい値と比較される。更新値がしきい値を超えると、入来す
るデータパケットはしきい値を超えたとしてマークされる。監視されるのは受信
データの総量ではなくデータ速度であるため、各バケットに記憶された値または
カウントは、最大許容データ速度および減分が行われる周期に関連する所定のデ
ータ単位数分だけ周期的に減分される。この減分は、一般にバケットの「リーキ
ング」と称されている。正しい所定の速度でバケットをリーキング、すなわちリ
ークすることにより、バケット内のデータ単位数が所定のしきい値を超えると最
大許容データ速度が超えられたということが確実となる。
【0010】
【発明が解決しようとする課題】
最大許容データ速度を超える大量のデータの短いバーストを識別するため、で
きるだけ頻繁に各バケットをリークし、しきい値比較を行うのが望ましい。この
ような短いバーストはバケットが十分に頻繁にリーク、およびチェックされなけ
れば見逃されてしまう。比較的バケット数が小さく、比較的小規模のシステムで
は、比較的速くすべてのバケットをシステムが巡回し、大量のデータの短いバー
ストを契約外であると識別できる。このようなシステムでは、バケットはメモリ
位置の形態をとり、リークおよびチェックはシステムのソフトウェアで行われる
。しかし、システムが大きくなり、リンクおよびサービスクラスの数が増え、そ
の結果バケット数が増えると、各バケットに対するリークおよびチェック周期が
長くなる。したがって、バケットはさほど頻繁には保守されなくなり、大量デー
タの短いバーストを識別できない確率が高くなる。したがって、このようなシス
テムにおけるデータ速度の監視(ポリシング)はより不正確となる。
【0011】
【課題を解決するための手段】
本発明は、少なくとも1つのサービスクラスを有する少なくとも1つのリンク
上でのデータ転送を促進するネットワークノードでのデータトラフィックをモニ
タすなわち監視する装置および方法に関する。データはデータパケットの形態で
転送され、各データパケットは少なくとも1単位のデータを含む。少なくとも1
つの選択されたリンクおよびサービスクラスの各々について、更新可能値が記憶
装置に記憶される。カウンタ内のカウンタが、選択されたリンクおよびサービス
クラスに関連づけられる最大許容データ速度によって決定される速度で増分され
る。データパケットが受信され、データパケット内のデータ単位数がカウントさ
れる。データパケットが受信されたときのカウンタ値およびデータパケット内の
データ単位数に従って更新可能値を調整することによって、調整済み更新可能値
が計算される。調整済み更新可能値が、選択されたリンクおよびサービスクラス
と関連づけられる所定のしきい値と比較される。調整済み更新可能値が所定のし
きい値を超えるかどうかに基づいて許容可能データ速度に関してデータパケット
がマークされる。
【0012】 一実施形態においては、更新可能値とデータパケットが受信されたときのカウ
ンタ値との差を計算することで、調整済み更新可能値が計算される。次に、計算
された差を受信データパケット内のデータ単位数に加えて調整済み更新可能値を
計算できる。一実施形態においては、調整済み更新可能値を用いて、例えば調整
済み更新可能値をデータパケット内のデータ単位数に加えてその和を更新値とし
て記憶ユニットに戻して記憶すること等で、更新可能値を更新する。
【0013】 一実施形態においては、各リンクは複数のサービスクラスを含んでも良く、そ
のサービスクラス各々が一意的な許容可能データ速度を有しても良い。その結果
、記憶装置は複数の個々の記憶領域を含んでも良い。例えば、記憶装置は、複数
のアドレス可能位置を有するスタティックランダムアクセスメモリ(SRAM)
等の半導体メモリであっても良い。したがって、記憶装置は複数のリンクおよび
/または複数のサービスクラスの各々について複数の更新可能値を記憶する。
【0014】 一実施形態においては、各データパケットは、データパケットを破棄する上で
の優先順位を識別する破棄可能値と関連づけられる。一般に、データトラフィッ
クの過剰または輻輳を理由に破棄の必要があると判断されると、より高い破棄可
能値を割当てられたパケットはより高い確率で破棄される。したがって、本発明
では、データパケットは、パケットに対する破棄可能値を変えることで、しきい
値を超えることとなるかどうかに従ってマークされてもよい。すなわち、パケッ
トによりしきい値が超えられると、破棄可能性が増して、そのパケットの破棄の
優先順位が上げられるようにしてもよい。
【0015】 一実施形態においては、リンクおよびサービスクラスに複数の所定のしきい値
が割当てられ、どのしきい値を超えるかに依存して破棄可能値を複数の対応レベ
ルのうちの1つに設定できるようにしても良い。一実施形態においては、記憶装
置をさらに設けて複数段階での監視を可能とし、複数の破棄可能レベルが割当て
られるようにしても良い。第2の記憶装置が設けられる場合には、選択されたリ
ンクおよびサービスクラスに関連づけられる第2の更新可能値が第2の記憶装置
に記憶される。データパケットを受信した時点でのカウンタ値およびデータパケ
ット内のデータ単位数に従って、第2の調整済み更新可能値が計算される。第2
の調整済み更新可能値は、パケットの第2の破棄可能レベルを識別するのに第2
の所定のしきい値が選択された場合には、選択されたリンクおよびサービスクラ
スに関連づけられる第2の所定のしきい値と比較される。第2の調整済み更新可
能値が第2の所定のしきい値を超えるかどうかに基づいて、入来するデータパケ
ットは許容可能データ速度に関してマークされる。一実施形態においては、デー
タパケットは、それが第1の所定のしきい値を超える原因となることが判明する
と、第2のおよび他のさらなる段階に関して分析される。
【0016】 このように、本発明では、同時に「バケット」すべてに記憶された値を効果的
に減分するのに単一のカウンタを効果的に使用する。この単一のカウンタをカウ
ンタ導出回路に応用して、任意の数のリンクおよびサービスクラスのための任意
の数のバケットに関するカウンタ値を導出しても良い。本発明では、半導体SR
AMメモリとして実現できるバケット、処理段階、カウンタ、およびカウンタ導
出回路はすべてハードウェアで実現できる。そのため、従来のリーキーバケット
システムに見られる周期的なラウンドロビン減分または「リーキング」が排除さ
れる。バケットの値の減分およびチェックは非常に小さい時間間隔で行うことが
可能であり、それにより短い時間における大きなバーストを識別できる。その結
果、従来のシステムと比較して、はるかに精密で正確な監視法となる。本発明は
、その監視法の精度が高いため、多数のリンクおよびサービスクラスを有する非
常に大規模なシステムに応用することが可能である。
【0017】 本発明は、リンク上のデータトラフィックをモニタするのが望まれる種々のネ
ットワークにおいて応用可能である。例えば、本発明は、本願と同一譲受人に譲
受されたSchwartzらによる「System and Method for Switching Packets in a N
etwork」と題する1998年7月2日出願の同時継続中の米国特許出願第09/108
,771号に記載されるようなスイッチングノードにおいて実現できる。上記出願の
内容はその全体をここに引用をもって援用する。
【0018】 本発明の上述のおよび他の目的、特徴、および利点は、添付の図面に示される
本発明の好適な実施形態の以下のより具体的な説明により明らかになるであろう
。図中、同一の部材は同様の符号で表される。図面は一定の縮尺とは限らず、本
発明の原理を図示することに重点が置かれている。
【0019】
【発明の実施の形態】
図1は、複数のスイッチングノード11(1)から11(N)を含むコンピュ
ータネットワーク10の概略図である。包括的に参照番号11で識別されるこれ
らのスイッチングノードは、いくつかの装置間でデータを表す信号を転送する。
図1においては、これらの装置は広域ネットワーク(WAN)におけるパケット
発信元/着信先装置12(1)−12(M)で表され、包括的に参照番号12で
識別される。パケット発信元/着信先装置12は、従来と同様、デジタルデータ
を記憶、生成、処理、または使用するコンピュータシステムまたは他の装置や、
これらの装置のローカルエリアネットワーク(LAN)、広域ネットワーク10
に対する同様のもの等(個々には示さず)を含む。各パケット発信元/着信先装
置12は、包括的に参照番号13で識別される通信リンクを介してスイッチング
ノード11に接続され、ノードに対するデータの送信、またはノードからのデー
タの受信を促進する。スイッチングノード11は、これも包括的に参照番号13
で識別される通信リンクによって相互接続され、スイッチングノード11(n)
間での情報の転送を促進する。通信リンク13は、例えば電気信号の伝播のため
のワイヤ、光信号の伝播のための光ファイバリンク等を含む任意の好都合な情報
伝送媒体を利用できる。各通信リンク13は好適には双方向であり、スイッチン
グノード11同士と、かつ同じリンクを介して接続された顧客の所有する機器1
2と信号を送受信できるようにする。それぞれの通信リンク13に対して選択さ
れた媒体のタイプに依存して、互いに逆方向に信号を伝送するために複数の媒体
を設けて双方向リンクとしても良い。
【0020】 ネットワーク10において、データはパケットの形態で転送される。一般に、
パケットはヘッダ部とデータ部を含む。ヘッダ部は、ネットワークを介してのパ
ケットのルーティングを援助する情報を含み、その特定の情報はネットワークを
介してパケットをルーティングする際に使用される特定のパケットルーティング
プロトコルに依存する。ネットワーク10に関連して、多数の周知のパケットル
ーティングプロトコルのうちの任意のものを使用でき、一実施形態においては周
知であるインターネットプロトコル(「IP」)が使用される。いずれにせよ、
ヘッダは一般にパケットを生成した特定の発信元装置12(mS)を識別する発
信元アドレスと、そのパケットを受信すべき特定の着信先装置12(mD)を識
別する着信先アドレスとを含むアドレス情報を有する。IPプロトコルでは、パ
ケットは可変長であっても良く、ヘッダは通常、パケット長を識別する長さ情報
を含む。一般に、パケット長はバイト数、またはバイト群が所定のバイト数を含
む場合には、バイト群の数として識別される。ヘッダはまた、通常、パケットの
構造を規定する特定のプロトコルを識別するプロトコル識別子情報等を含む他の
情報を含む。データ部はパケットのデータペイロードを含む。パケットはまた、
パケットを転送する際にエラーが起こったかどうかを判断するのに用いられるエ
ラー検出情報をデータ部の一部として、または他の形態で含んでも良い。
【0021】 発信元装置12(mS)は、着信先装置12(mD)に転送するパケットを生成
後、接続されたスイッチングノード11(n)にそのパケットを与える。スイッ
チングノード11(n)はパケット内の着信先アドレスを用いてルートを特定し
ようとし、それを介してパケットを転送すべきスイッチングノードに接続された
通信リンク13のうちの1つと着信先アドレスを関連付け、着信先装置(mD
がスイッチングノード11(n)に接続されている場合には着信先装置(mD
に、または着信先装置(mD)に至る経路にある別のスイッチングノード11(
n’)(n’≠n)にパケットが転送されるようにする。スイッチングノードは
、受信パケットのためのルートを特定できれば、ルートによって特定された通信
リンクを介してパケットを転送する。パケットを受信する各スイッチングノード
11(n),11(n’’),…は同様の動作を行う。スイッチングノードすべ
てが着信先アドレスに対するそれぞれのルートを有すると、パケットは最終的に
着信先装置12(mD)に到達する。
【0022】 図2は、本発明によるスイッチングノード11の1実施形態を示す概略ブロッ
ク図である。ノード11は、総括して符号20で示される多数の入力モジュール
20(1),20(2),...,20(N)及び総括して符号21で示される
対応する出力ポートモジュール21(1),21(2),...,21(N)を
含む。入力ポートモジュール20と出力ポートモジュール21は、該入力ポート
モジュール20から出力ポートモジュール21へのデータ転送を制御する処理回
路スイッチングファブリック24に接続されている。一般的に、各入力ポートモ
ジュール20(n)は、複数の通信リンク13(n)(1)〜13(n)(M)
にそれぞれ接続可能な、1つ以上の入力ポート22(n)(1)〜22(n)(
M)を含むことができる。同様に、各出力ポートモジュール21(n)は、複数
の通信リンク13(n)(1)〜13(n)(M)にそれぞれ接続が可能な、1
つ以上の出力ポート23(n)(1)〜23(n)(M)を含むことがでる。各
通信リンク13(n)(m)において受信されたデータは、対応する入力モジュ
ール20(n)から、処理回路スイッチングファブリック24を介して適当な出
力モジュール21(n)に送られ、さらに適当なリンク13(n)(m)上のネ
ットワークに出力される。
【0023】 各リンクには、1つ以上のサービスクラス及び、そのリンクを利用する一人以
上の顧客を割り当てることができる。各リンクで開始されたデータトラフィック
は、本発明によるデータモニタリング又はデータポリシング回路26によってモ
ニタできる。一般的に、各入力モジュール20(1),20(2),...20
(N)は、本発明による対応するポリシング回路26(1),26(2),..
.26(N)を含む。なお、ポリシング回路26は、入力モジュール20内に位
置する必要はなく、これに代え、あるいはこれに加えて、ポリシング回路を処理
回路スイッチングファブリック24と出力モジュール21の少なくともいずれか
に設けてもよい。上述のネットワークノード構成は、別個の処理スイッチングフ
ァブリックによって接続された複数のリンクをサポートする入出力モジュールを
含むノード構造に本発明が適用できる一例として示したものであり、本発明を他
のノード構成とともに使用することもできる。例えば、入出力モジュールの少な
くともいずれかと、別個の処理スイッチングファブリックの両者またはいずれか
を省略したノードにも、また、単一の入力又は出力リンクの少なくともいずれか
をサポートするノードにも適用可能である。
【0024】 本発明によるポリシング回路26の1実施形態の概略ブロック図が図3に示さ
れている。図3に示すように、データパケットは、回線27上でポリシング回路
26に受信され、パケット処理回路28によって処理されて、回線31に出力さ
れる。
【0025】 図4は、一般的なデータパケット36に含まれるフィールドの一部を示した概
略ブロック図である。パケット36は、ヘッダ部38とデータ部40とを含む。
ヘッダは、通常、破棄可能性(DE)フィールドとパケット長(PL)フィール
ドとを含む。DEフィールドは、そのパケットが破棄される優先度を設定するD
E値を含む。PL値は、パケット36のデータ部40におけるデータ単位の数で
ある。通常、データ単位はバイトであり、パケット長PLの値はデータ部40に
おけるバイト数を表す。別のシステムでは、パケット長はバイト群の数である。
例えば、特定の1システムにおいては、バイトは32バイトごとの群にまとめら
れ、パケット長の値は、そのデータにおける32バイト群の数である。かかるシ
ステムでは、例えば、パケット長32は、32群分の32データバイト、すなわ
ち1024ビット(1k)のデータに相当する。
【0026】 パケット処理回路28は、パケット36を受信し、そのパケットからDE及び
PLの値を読み出す。これらの初期値は、そのパケットが受信されたリンクの識
別情報及びそのパケットに関連するサービスクラス情報と共に、比較回路35に
送られる。処理回路35は、以下に詳細に説明するような比較処理を行い、その
パケットが、識別されたリンクにおける、識別されたサービスクラスでの許容可
能なデータ転送速度の超過を生じさせているか否かを判断する。1実施形態にお
いては、比較回路35は、リンク及びサービスクラスに割り当てられた1つ以上
の所定しきい値を超過しているか否かに従って、パケットのDE値を調節する。
続いて、処理回路30が新しいDE値でパケットを再構成し、そのパケットをポ
リシング回路26から回線31に出力する。
【0027】 処理回路35は、特定パケットによるリンク上の許容データ転送速度の超過を
判断する回路を含む。例示される実施形態では、上記回路は、そのデータ転送速
度を超過するレベルをさらに定義し、そのレベルに基づきDE値を割り当てる。
【0028】 図3に示される実施形態においては、3つの処理ステージを用いて、特定サー
ビスクラスでの特定リンクを介して受信したデータ単位の数、例えばバイト又は
バイト群の数を、3つの所定しきい値に比較する。この3つの処理ステージでは
、しきい値を超過する程度が4レベルに分類できる。従って、システムは、処理
中のパケットに関連するDE値を4つの可能なレベルに設定できる。
【0029】 この実施形態では、比較回路35は、第1ステージ処理回路50、第2ステー
ジ処理回路52、及び第3ステージ処理回路54を含む。3つの処理回路51,
52,54は、メモリ56,58,60のそれぞれにインターフェース接続され
ている。1実施形態において、各メモリはSRAMメモリである。各メモリは、
ポリシング対象の各リンク及びサービスクラスに対して、1つ又は一群のメモリ
ロケーションを割り当てている。これらのロケーションまたはロケーション群、
すなわち「バケット」は、データパケット受信時に更新が可能な、更新可能値を
保持する。各メモリ56,58,60には、さらに各リンク及びサービスクラス
に対する所定のしきい値が保存され、新しいデータパケットが受信されると、こ
のしきい値と、対応する更新可能値とが比較される。
【0030】 1実施形態においては、第1ステージ処理回路50は、第1メモリ56に保存
されたバケット値と、対応するしきい値とにより第1の比較ステップを行う。バ
ケット値がしきい値を超過している場合、パケットのDE値をインクリメントし
、処理は第2ステージに進む。第2ステージ処理回路52は、メモリ58に保存
された対応バケット値と、関連するしきい値とにより第2の比較を行う。バケッ
ト値がしきい値を上回っていれば、再びDE値をインクリメントし、第3ステー
ジ処理回路54に進む。バケット値が第2ステージのしきい値を超過していない
場合には、ステージ2における現在のDE値を、パケット処理回路の処理回路3
0によって、データパケットと共に保存し直し、DE値を更新したパケットをポ
リシング回路26から出力する。必要であれば、第3ステージ処理回路54によ
り比較を行い、パケットのDE値を再度インクリメントする。いずれのステージ
においても、バケット値がしきい値を超過していなければ、処理回路30によっ
て現在のDE値をパケットと共に保存し、DE値を更新したそのパケットをポリ
シング回路26から出力する。
【0031】 図3に示すように、パケット処理回路28は、カウンタ32及びカウンタ値派
生回路34をさらに含む。1実施形態においては、カウンタ32は、所定の周期
速度でその値がインクリメントするフリーランニングカウンタである。派生回路
34は、複数の所定速度のうち任意の速度でインクリメントしたカウンタ値を引
き出すために使用できる。このように生成された種々のカウンタ値を、以下に詳
細に示すように比較回路35で処理し、種々のリンクにおいて、かつ種々のサー
ビスクラスで受信されたデータパケットが、許容データフロー速度を超過してい
ないか否かを判断する。本明細書を通じて、カウンタ値とは、実際のカウンタ3
2に保存された値である必要はなく、派生回路34によって生成された値の1で
あってもよい。さらに、派生回路34と共に1つのカウンタを使用する代わりに
、複数のカウンタを、派生回路とともに、あるいは派生回路を伴わずに使用する
こともできる。
【0032】 図5は、本発明によるデータフローポリシング方式の1実施形態の論理的フロ
ーを示す概略フローチャートであり、図3及び図5を参照してこのポリシングア
プローチを詳細に説明する。ステップ100に示すように、パケット処理回路2
8は、パケットの受信を待機する。パケットを受信すると、ステップ102にお
いて、該パケットが受信されたリンクを識別するリンク指数と、そのリンクのサ
ービスクラスを読み取る。また、パケットを分析して、パケット長PL及び該パ
ケットの破棄可能性DEを読み出す。次に、これらの情報を第1ステージ処理回
路50に転送する。まず、現在のDE値が、ステージSに関する破棄可能性に一
致するか否かを判定する。両者が等しくない場合、現行ステージではパケットの
処理を行わず、ステップ106において次のステージに進む。受信したパケット
のDE値が現行ステージの適当なレベルにある場合、リンク指数及びサービスク
ラスを使用して、関連するSRAMメモリ、すなわち第1ステージではメモリ5
6、における適当なメモリロケーション、つまり「バケット」にアクセスする。
【0033】 ステップ108において、許容できる最大バケット値(しきい値)Mと現在の
バケット容量値BをSRAM56から読み出す。ステップ110において、バケ
ット容量値Bと現在のカウンタ値Cとの差、すなわちD=B−Cを求める。この
差分計算により、処理されているバケットが効果的にデクリメントまたは「リー
ク」する。前記差Dが0より小さければ、Dを0に設定する。ステップ112に
おいて、データパケットにおけるバイト数またはバイト群の数である、パケット
長PLを前記差Dに加算する。これにより、調整された新たなバケット容量値E
が効果的に計算される。ステップ114において、この調整された値Eをバケッ
トしきい値Mと比較する。Eがしきい値Mを超えていれば、ステップ116にお
いてパケットのDE値をインクリメントする。次に、1実施形態においては、現
行ステージのバケット容量Bをステップ118において更新する。すなわち、前
記差Dをカウンタ値に加算し(B=D+C)、その和を、受信したパケットのリ
ンク指数L及びサービスクラスに関連する新しいバケット値としてSRAM56
に保存し直す。別の実施形態では、バケット容量の更新は、しきい値を超過せず
に可能な限り多くのデータ単位をバケット容量に加算することにより(すなわち
、B=M)行われる。次に、ステップ120において、処理は次のステージ、す
なわちこの場合はステージ2に進み、比較処理を行って、到来するパケットがス
テージのしきい値Mを超過するか否かを判断する。再びステップ114において
、値Eが値Mを超えなければ、カウンタ値Cを合計値Eに加算し、その値を、バ
ケット容量の新しい値Bとしてバケットに保存する(B=E+C)。続いて、ス
テップ124において、パケット処理回路28は、現在のDE値を使用してパケ
ットを再生する。そして、そのパケットをパケット処理回路28から回線31に
送る。ここで、処理は初めに戻り、別のパケットの受信が可能になる。
【0034】 上記処理を各ステージにおいて行い、しきい値Mを上回った各ステージにおい
てDEの値がインクリメントされる。最終的に、本発明のポリシング回路によっ
て変更した新しいDE値で、パケットが再構成される。どのステージにおいても
しきい値を上回っていなければ、パケットのDE値は変化しない。
【0035】 カウンタ、カウンタ派生回路、及びバケットロケーションは、限定されたビッ
トサイズであるため、任意の時において、バケットの最終更新からの時間が長い
場合には、ラップアラウンド又はアンダーフローにより、バケット値とカウンタ
値との差が不明瞭になる可能性がある。本発明では、長さが0のパケットを周期
的にシステムに導入し、アンダーフロー(最小値以下の)バケットを有効な範囲
に戻す、「スクラビング」アプローチによりこの問題に対処する。これらの長さ
0のパケットは、個々のバケットのリセットに用いられ、よって、実際のパケッ
トの符号化と同様に、特定のリンク指数L及びサービスクラスで符号化される。
【0036】 図5に関連して上記説明したアプローチに続き、長さ0のパケットを受信する
と、そのリンク指数L及びサービスクラスが読み出される。これらの値を用いて
、しきい値M及び現在のバケット容量値Bを読み出す。差、すなわちD=B−C
を求め、Dを0に設定する。これは、アンダーフローの場合には、カウンタ値が
バケット値Bを上回るためである。次に、和E=D+PL=0を求める。しきい
値Mとの比較により、Eがしきい値Mを上回らないと判定される。新しいバケッ
ト値、すなわち B=E+C=0+C=C、が求められ、これにより新しいバケ
ット値Bが効果的にカウンタ値Cに設定される。このように、長さ0のパケット
の使用により、バケット容量が現在のカウンタ値に設定され、これにより、バケ
ットが効果的にリセット(zero out)される。バケットアンダーフローが発生し
ていないスクラビング動作の場合には、現在のバケット容量Bは変化しない。
【0037】 このように、本発明の前記説明によれば、カウンタ32及び派生回路34は、
全処理ステージ及び全バケットによる、極めて短いタイムフレーム内のアクセス
が可能である。実際に、データパケットの送受信により定められたタイムフレー
ムにおいて、バケットをほぼ瞬時に更新及びチェックすることができる。よって
、そのタイムフレームにおいて、多数のバケットをほぼ同時に効果的にチェック
して更新できる。これは、従来のリーキーバケット処理に見られたラウンドロビ
ン方式に比べて非常な進歩である。この結果、本発明による「リーク」の目の粗
さは、従来のシステムに比べてはるかに細かい。したがって、データフローを厳
密に監視すべく、しきい値Mを非常に低いレベルに設定できる。実際、上記処理
を用いることにより、しきい値Mを極めて低く設定できるので、許容限度を超え
る十分なデータを有するデータパケットが1つであっても契約違反がマークでき
る。しかしながら、実用的なアプリケーションでは、データバーストの転送が妨
げられるため、このような低いしきい値は使用されない。実際には、本発明によ
る方式が提供する柔軟性により、リンク上のデータトラフィックの許容可能な「
バースト性(burstiness)」の所定レベルを得るべく、しきい値Mを設定できる
。よって、極めて精密で正確なポリシング及びモニタアプローチを供給でき、し
かもこのアプローチではリンク上のトラフィック制御における柔軟性も高い。
【0038】 実際のネットワーク環境においては、データパケットは極めて多くのデータを
含むことができる。例えば、1キロバイト以上のデータを1パケットで転送する
ことは普通である。ある種の一般的なシステム及びプロトコルにおいては、大量
のデータに適応し、多数の処理によって生じる煩雑性を減らすために、データ量
を量子化し、これらのデータをバイト群として特定化している。例えば、1つの
特定アプローチでは、データを量子化して、32バイトの群でカウントする。こ
の結果、通常はバイト単位で提供されるデータパケットのパケット長(PL)の
値を処理して、32バイト単位の数を識別する。通常は、これにより、PLワー
ドの最下位ビット(LSBs)が5つ省略される。従来のシステムにおいては、
これは丸め関数(rounding function)により行われる。すなわち、PLワード
の5つのLSBが、010 から1510 までの数を表す場合には、32バイト単位
の数を表す、処理された新しい値は切り捨てられる。一方、5つのLSBが16 10 から3110であれば、処理された値は切り上げられる。
【0039】 実際のシステムでは、他のパケット長に比べてより一般的なパケット長も存在
するため、受信したパケットのPLワードの5つのLSBは、上記の010から3
10に均等に分布しているわけではない。このような不均等な分布のため、従来
の丸め関数では、重大な誤差が発生する。本発明では、よりランダムな丸め関数
を用いる。すなわち、本発明では、5つのLSBの値をランダムに生成された0 10 から3110の間の数と比較する。5つのLBSの値がランダムに生成されたし
きい値以上であれば、32バイト単位の数を切り上げる。一方、5つのLBSの
値がランダムに生成されたしきい値より小さい場合には、32バイト単位の数を
切り下げる。この結果、処理から誤差を除去する、より均等に分布した丸め関数
を得ることができる。
【0040】 図6には、本発明によるデータ転送速度モニタリング装置及び方法の1実施形
態を示す概略機能ブロック図が示されている。図示されるように、ブロック20
0において、現在のバケット容量Bとカウンタ値Cとの差Dを求める(すなわち
D=B−C)。この差Dが比較ブロック202に送られ、差Dが0より小さいか
否かを判断する。Dが0より小さければ、比較ブロック202からの選択回線(
「x」で示されている)によりMUX204を制御して、値0を出力する。Dが
0以上であれば、差DをMUX204から出力する。
【0041】 加算ブロック206において。到来パケットのパケット長PLを差Dに加算し
、その和E=D+PLを生成する。差Dは、第2MUX208の入力にも送られ
る。ブロック206で生成した和を、MUX208の第2の入力に供給する。こ
の和は、第2比較ブロック210にも供給され、ここで、和が所定のしきい値M
以下であるか否かを判断する。ブロック210の出力は論理信号であり、ブロッ
ク206で求めた和がしきい値M以下であればアクティブ(ハイ)になり、和が
しきい値を超えると非アクティブ(ロー)になる。この論理値は、論理和ブロッ
ク212の第1の入力に供給されるとともに、反転回路214にも供給される。
反転回路214による反転値が第2の論理和ブロック216の1入力に供給され
る。論理和ブロック216への第2の入力は比較ブロック218から供給される
。比較ブロック218は、パケットの現在の破棄可能性(DE)を識別する現在
のS値が、現在の処理ステージにおけるDE値に等しいかを判断する。両者が等
しく、かつブロック210においてしきい値Mの方が小さければ、論理和ブロッ
ク216は、MUX220の選択回線にアクティブ信号を出力し、次のステージ
の値Nが、Sの新しい値として出力される。すなわち、処理は次のステージに進
む。値Nは、準備中の次ステージの指数を備えたハードコードされた値である。
【0042】 ブロック218の比較結果は、論理和ブロック212にも入力される。現行ス
テージの値が正しく、しきい値が超過されていなければ、論理和ブロック212
は、アクティブ信号をMUX208の選択回線に供給し、ブロック206で求め
れらた和E=D+PLが、加算ユニット222に出力される。加算ユニット22
2は、MUX208の出力をカウンタ値Cに加算し、その値を更新されたバケッ
ト容量B(すなわち、B=E+C)として保存する。
【0043】 現在のステージの値が正しくない、すなわち比較ブロック218の出力が非ア
クティブである場合、あるいは、ブロック210においてしきい値の方が小さい
場合には、論理和ブロック212によって、MUX208の選択回線(「y」で
示されている)がロー状態に駆動され、差D=B−Cが加算ブロック222に供
給される。この結果、カウンタ値が差Dに加算され、バケット容量Bは変化しな
い。
【0044】 上述のように、ラップアラウンドエイリアシングの問題を回避するスクラビン
グ動作は、任意で未使用のPL長の値を有する周期的なダミーパケットとして実
施され、Sは2値11に設定され、Lはスクラビング動作ごとにインクリメント
するカウンタ値に設定される。このSの値により、バケットがオーバーフローす
ると、各パイプラインステージはそのバケットを現在のカウンタ値にリセットす
る。
【0045】 本発明の1実施形態においては、バケット容量Bを修正する加算ステップに処
理が達する前に、特定値を前計算することにより、実質的な処理時間を縮小でき
る。図6に示されるデータパス論理により計算できる値が表1に示されている。
【0046】
【表1】 表から、値Bだけが1つのステージ中に読み出して書き込む必要があるが、他
の値は全て(Mも含む)、図6のブロック222におけるB値の修正ステージに
先立ち前もって計算が可能である。この結果、サブステージにおいて計算を行い
、計算時間を縮小することができる。1実施形態においては、2つのサブステー
ジにおいて計算を実施できる。図7Aは、ここで「サブステージA」と呼ぶ第1
のステージを示す概略ブロック図であり、図7Bは「サブステージB」と呼ばれ
る第2のサブステージの概略ブロック図である。
【0047】 図7Aに示すように、和C+PLは、加算ブロック250により求められる。
しきい値Mが反転ブロック252によって反転し、反転したMとPLとの和が加
算ブロック254において求められる。比較ブロック256は、PL−M−1が
0より小さいか否かを判断する。反転ブロック258において値Cが否定され、
ブロック260において、加算ブロック254で計算した和を−Cに加算する。
ブロック262では、値Sをステージ数に設定する。図7Aに示したサブステー
ジAで求めたこれらの値を、図7Bに示すサブステージBに供給する。
【0048】 図7Bに示すように、B、B+PL、C及びC+PLの値が、MUX264の
入力に供給され、MUX264は選択された入力を更新されたバケット容量Bと
して出力する。MUX264の選択回線x及びyは、以下の説明に従って生成さ
れる。加算ブロック266においてBと−Cとの和が求められ、比較回路268
においてこの和を0と比較する。比較回路268の論理出力が選択回線xとして
MUX264に供給される。ブロック266で求めた和が0より小さい場合、選
択回路xはアクティブである。ブロック266で求めた和が0以上であれば、選
択回線xは非アクティブである。選択回線xの値は、MUX270の選択回線に
も供給される。選択回線がアクティブであれば、PL−M−1<0の関係の論理
値を、MUX270の出力に送る。選択回線xが非アクティブであれば、加算回
路274及び比較ブロック276において生成される、関係B−C+Pl−M−
1<0の論理値がMUX270に送られる。
【0049】 MUX270の出力は、Sの値と共に論理和ブロック272に供給される。論
理和ブロック272の出力は、MUX264の選択回線yである。また、MUX
270の出力は、反転回路278によって反転する。反転したブロック278か
らの出力は、Sの値と共に論理和回路280に供給される。論理和280の出力
は、別のMUX282の選択回線として使用される。MUX282は、可変Sの
更新値として出力される、SまたはNのいずれかを選択する。
【0050】 好ましい実施形態を参照して、本発明を特定的に示し、説明したが、当業者で
あれば、添付の請求の範囲に定められた本発明の範囲を逸脱せずに、形式的にま
たは詳細に種々の変更が可能である。
【図面の簡単な説明】
【図1】 本発明による複数のスイッチングノードを含むコンピュータネッ
トワークの概略図である。
【図2】 本発明によるスイッチングノードの概略ブロック図である。
【図3】 本発明によるデータフローモニタ回路の一実施形態の概略ブロッ
ク図である。
【図4】 本発明によって処理できるデータパケットの概略図である。
【図5】 本発明のデータフローモニタ法の一実施形態の論理フローを示す
概略フロー図である。
【図6】 本発明のデータ速度モニタ装置および方法の一実施形態を示す概
略の機能ブロック図である。
【図7A】 本発明による第1の計算サブステージの一実施形態の概略ブロ
ック図である。
【図7B】 本発明による第2の計算サブステージの一実施形態の概略ブロ
ック図である。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SL,SZ,TZ,UG,ZW ),EA(AM,AZ,BY,KG,KZ,MD,RU, TJ,TM),AE,AL,AM,AT,AU,AZ, BA,BB,BG,BR,BY,CA,CH,CN,C U,CZ,DE,DK,EE,ES,FI,GB,GD ,GE,GH,GM,HR,HU,ID,IL,IN, IS,JP,KE,KG,KP,KR,KZ,LC,L K,LR,LS,LT,LU,LV,MD,MG,MK ,MN,MW,MX,NO,NZ,PL,PT,RO, RU,SD,SE,SG,SI,SK,SL,TJ,T M,TR,TT,UA,UG,UZ,VN,YU,ZA ,ZW

Claims (36)

    【特許請求の範囲】
  1. 【請求項1】 ネットワーク上のノードでのデータトラフィックをモニタす
    る方法において、前記ノードが、少なくとも1つのサービスクラスを有する少な
    くとも1つのリンクにおけるデータ転送を促進し、前記データがデータパケット
    の形態で転送され、各データパケットが少なくとも1単位のデータを含む方法で
    あって、 少なくとも1つの選択されたリンクおよびサービスクラスの各々について、記
    憶装置内に更新可能値を記憶するステップと、 前記選択されたリンクおよびサービスクラスに関連づけられる許容可能データ
    速度によって決定される速度でカウンタ内のカウンタ値を増分するステップと、 データパケットを受信するステップと、 前記データパケット内のデータ単位数をカウントするステップと、 前記データパケット内のデータ単位数およびデータパケットを受信した時のカ
    ウンタ値に従って前記更新可能値を調整することにより、調整済み更新可能値を
    計算するステップと、 前記選択されたリンクおよびサービスクラスと関連づけられる所定のしきい値
    と前記調整済み更新可能値を比較するステップと、 前記調整済み更新可能値が前記所定のしきい値を超えるかどうかに基づいて、
    許容可能データ速度に関して前記データパケットをマークするステップと、 を含むことを特徴とする方法。
  2. 【請求項2】 請求項1に記載の方法であって、前記調整済み更新可能値を
    計算するステップが、更新可能値とデータパケットを受信したときのカウンタ値
    との差を計算するステップを含むことを特徴とする方法。
  3. 【請求項3】 請求項2に記載の方法であって、前記調整済み更新可能値を
    計算するステップが、前記データパケット内のデータ単位数と、更新可能値とデ
    ータパケットを受信したときのカウンタ値の差との和を計算するステップをさら
    に含むことを特徴とする方法。
  4. 【請求項4】 請求項3に記載の方法であって、前記調整済み更新可能値を
    用いて前記更新可能値を更新するステップをさらに含むことを特徴とする方法。
  5. 【請求項5】 請求項4に記載の方法であって、前記更新可能値を更新する
    ステップが、前記調整済み更新可能値とデータパケット内のデータ単位数の和を
    計算するステップを含むことを特徴とする方法。
  6. 【請求項6】 請求項1に記載の方法であって、前記調整済み更新可能値を
    用いて前記更新可能値を更新するステップをさらに含むことを特徴とする方法。
  7. 【請求項7】 請求項1に記載の方法であって、各リンクが複数のサービス
    クラスを含んでもよいことを特徴とする方法。
  8. 【請求項8】 請求項7に記載の方法であって、各サービスクラスが一意的
    な許容可能データ速度を有してもよいことを特徴とする方法。
  9. 【請求項9】 請求項1に記載の方法であって、前記記憶装置が、複数のリ
    ンクの各々について複数の更新可能値を記憶することを特徴とする方法。
  10. 【請求項10】 請求項1に記載の方法であって、前記記憶装置が、複数の
    サービスクラスの各々について複数の更新可能値を記憶することを特徴とする方
    法。
  11. 【請求項11】 請求項1に記載の方法であって、前記データパケットをマ
    ークするステップが、前記データパケットを破棄する上での優先順位を設定する
    ステップを含むことを特徴とする方法。
  12. 【請求項12】 請求項1に記載の方法であって、前記データパケットをマ
    ークするステップが、前記データパケットの破棄可能値を変更するステップを含
    むことを特徴とする方法。
  13. 【請求項13】 請求項1に記載の方法であって、前記所定のしきい値をデ
    ータのパケットを破棄する上での優先順位と関連付けるステップをさらに含むこ
    とを特徴とする方法。
  14. 【請求項14】 請求項1に記載の方法であって、前記所定のしきい値を前
    記パケットの破棄可能値と関連付けるステップをさらに含むことを特徴とする方
    法。
  15. 【請求項15】 請求項1に記載の方法であって、前記データ単位がデータ
    1バイトであることを特徴とする方法。
  16. 【請求項16】 請求項1に記載の方法であって、前記データ単位がデータ
    複数バイトであることを特徴とする方法。
  17. 【請求項17】 請求項1に記載の方法であって、リンクおよびサービスク
    ラスが、前記リンクおよびサービスクラスの許容可能データ速度に関連する複数
    の所定のしきい値と関連付けられてもよく、それによって前記データパケットが
    前記所定のしきい値のうちのどれを超えるかに従って分類されることが可能とな
    ることを特徴とする方法。
  18. 【請求項18】 請求項17に記載の方法であって、所定のしきい値の各々
    を、データのパケットを破棄する上での優先順位と関連付けるステップをさらに
    含むことを特徴とする方法。
  19. 【請求項19】 請求項17に記載の方法であって、所定のしきい値の各々
    を、前記パケットの破棄可能値と関連付けるステップをさらに含むことを特徴と
    する方法。
  20. 【請求項20】 請求項17に記載の方法であって、所定のしきい値の各々
    を更新可能値と関連付けるステップをさらに含むことを特徴とする方法。
  21. 【請求項21】 請求項1に記載の方法であって、 前記選択されたリンクおよびサービスクラスと関連付けられる第2の更新可能
    値を第2の記憶装置に記憶するステップと、 前記データパケット内のデータ単位数および前記データパケットを受信したと
    きのカウンタ値に従って第2の調整済み更新可能値を計算するステップと、 前記選択されたリンクおよびサービスクラスと関連付けられる第2の所定のし
    きい値と前記第2の調整済み更新可能値を比較するステップと、 前記第2の調整済み更新可能値が前記第2の所定のしきい値を超えるかどうか
    に基づいて前記許容可能データ速度に関して前記データパケットをマークするス
    テップと、 をさらに含むことを特徴とする方法。
  22. 【請求項22】 請求項21に記載の方法であって、前記第1の調整済み更
    新可能値が前記第1の所定のしきい値を超える場合に、前記第1の所定のしきい
    値を超えさせない前記受信データパケット内のデータ単位数を前記第1の更新可
    能値に加えることで前記第1の更新可能値を更新するステップをさらに含むこと
    を特徴とする方法。
  23. 【請求項23】 請求項1に記載の方法であって、 前記第1の調整済み更新可能値が前記第1の所定のしきい値を超える場合に、
    前記選択されたリンクおよびサービスクラスと関連付けられる第2の更新可能値
    を第2の記憶装置に記憶するステップと、 前記データパケット内のデータ単位数および前記データパケットを受信したと
    きのカウント値に従って第2の調整済み更新可能値を計算するステップと、 前記選択されたリンクおよびサービスクラスに関連付けられる第2の所定のし
    きい値と前記第2の調整済み更新可能値を比較するステップと、 前記第2の調整済み更新可能値が前記第2の所定のしきい値を超えるかどうか
    に基づいて、許容可能データ速度に関して前記データパケットをマークするステ
    ップと、 をさらに含むことを特徴とする方法。
  24. 【請求項24】 請求項1に記載の方法であって、データ単位がゼロのデー
    タパケットを受信して、前記記憶装置内の更新可能値を更新するステップをさら
    に含むことを特徴とする方法。
  25. 【請求項25】 ネットワーク上のノードでのデータトラフィックをモニタ
    するための装置において、前記ノードが、少なくとも1つのサービスクラスを有
    する少なくとも1つのリンクにおけるデータ転送を促進し、前記データがデータ
    パケットの形態で転送され、各データパケットが少なくとも1単位のデータを含
    む装置であって、 少なくとも1つの選択されたリンクおよびサービスクラスの各々について更新
    可能値を記憶するための記憶装置と、 前記選択されたリンクおよびサービスクラスに関連付けられる最大許容可能デ
    ータ速度によって決定される速度で増分されるカウンタ値を保持するためのカウ
    ンタと、 データパケットを受信するための入力ユニットと、 (i)前記データパケット内のデータ単位数をカウントし、(ii)前記デー
    タパケット内のデータユニット数および前記データパケットを受信したときのカ
    ウンタ値に従って前記更新可能値を調整することで調整済み更新可能値を計算し
    、(iii)前記選択されたリンクおよびサービスクラスと関連付けられる所定
    のしきい値と前記調整済み更新可能値を比較し、(iv)前記調整済み更新可能
    値が前記所定のしきい値を超えるかどうかに基づいて前記許容可能データ速度に
    関して前記データパケットをマークする、プロセッサと、 を含むことを特徴とする装置。
  26. 【請求項26】 請求項25に記載の装置であって、前記記憶装置が、複数
    のリンクの各々について複数の更新可能値を記憶することを特徴とする装置。
  27. 【請求項27】 請求項25に記載の装置であって、前記記憶装置が、複数
    のサービスクラスの各々について複数の更新可能値を記憶することを特徴とする
    装置。
  28. 【請求項28】 請求項25に記載の装置であって、前記記憶装置がSRA
    Mを含むことを特徴とする装置。
  29. 【請求項29】 請求項25に記載の装置であって、前記プロセッサが入来
    するデータパケットを、前記データパケットを破棄する上での優先順位を設定す
    ることでマークすることを特徴とする装置。
  30. 【請求項30】 請求項25に記載の装置であって、前記所定のしきい値が
    データのパケットを破棄する上での優先順位と関連付けられることを特徴とする
    装置。
  31. 【請求項31】 請求項25に記載の装置であって、前記データ単位がデー
    タ1バイトであることを特徴とする装置。
  32. 【請求項32】 請求項25に記載の装置であって、前記データ単位がデー
    タ複数バイトであることを特徴とする装置。
  33. 【請求項33】 請求項25に記載の装置であって、前記プロセッサが、前
    記データのパケット内のデータ単位数に基づいて前記更新可能値を更新すること
    を特徴とする装置。
  34. 【請求項34】 請求項25に記載の装置であって、リンクおよびサービス
    クラスが、その最大許容データ速度に関連する複数の所定のしきい値と関連付け
    られてもよく、それによって入来するデータパケットが、前記所定のしきい値の
    うちのどれを超えるかに従って分類されることが可能となることを特徴とする装
    置。
  35. 【請求項35】 請求項25に記載の装置であって、 前記選択されたリンクおよびサービスクラスに関連付けられる第2の更新可能
    値を記憶するための第2の記憶装置と、 (i)前記データパケット内のデータ単位数および前記データパケットを受信
    したときのカウンタ値に従って前記第2の更新可能値を調整することで第2の調
    整済み更新可能値を計算し、(ii)前記選択されたリンクおよびサービスクラ
    スと関連付けられる第2の所定のしきい値と前記第2の調整済み更新可能値を比
    較し、(iii)前記第2の調整済み更新可能値が前記第2の所定のしきい値を
    超えるかどうかに基づいて前記許容可能データ速度に関して前記データパケット
    をマークする、第2のプロセッサと、 をさらに含むことを特徴とする装置。
  36. 【請求項36】 請求項25に記載の装置であって、 前記第1の調整済み更新可能値が前記第1の所定のしきい値を超える場合に、
    前記選択されたリンクおよびサービスクラスと関連付けられる第2の更新可能値
    を記憶するための第2の記憶装置と、 (i)前記データパケット内のデータ単位数および前記データパケットを受信
    したときのカウンタ値に従って前記第2の更新可能値を調整することで第2の調
    整済み更新可能値を計算し、(ii)前記選択されたリンクおよびサービスクラ
    スと関連付けられる第2の所定のしきい値と前記第2の調整済み更新可能値を比
    較し、(iii)前記第2の調整済み更新可能値が前記第2の所定のしきい値を
    超えるかどうかに基づいて前記許容可能データ速度に関して前記データパケット
    をマークする、第2のプロセッサと、 をさらに含むことを特徴とする装置。
JP2000597929A 1999-02-05 2000-01-28 ネットワーク上のノードでのデータフローをモニタする装置および方法 Pending JP2002536913A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/234,082 1999-02-05
US09/234,082 US6381649B1 (en) 1999-02-05 1999-02-05 Data flow monitoring at a network node using periodically incremented counters for comparison to predetermined data flow thresholds
PCT/US2000/002250 WO2000046961A1 (en) 1999-02-05 2000-01-28 Apparatus and method for monitoring data flow at a node on a network

Publications (1)

Publication Number Publication Date
JP2002536913A true JP2002536913A (ja) 2002-10-29

Family

ID=22879837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000597929A Pending JP2002536913A (ja) 1999-02-05 2000-01-28 ネットワーク上のノードでのデータフローをモニタする装置および方法

Country Status (9)

Country Link
US (1) US6381649B1 (ja)
EP (1) EP1068702A1 (ja)
JP (1) JP2002536913A (ja)
CN (1) CN1300490A (ja)
AU (1) AU2744500A (ja)
CA (1) CA2326124A1 (ja)
RU (1) RU2000128051A (ja)
TW (1) TW453073B (ja)
WO (1) WO2000046961A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017017538A (ja) * 2015-07-01 2017-01-19 富士通株式会社 メーター処理方法、メーター処理プログラム及びネットワーク装置

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6339784B1 (en) * 1997-05-20 2002-01-15 America Online, Inc. Self-policing, rate limiting online forums
US6647424B1 (en) * 1998-05-20 2003-11-11 Nortel Networks Limited Method and apparatus for discarding data packets
US6578083B2 (en) * 1999-02-05 2003-06-10 Pluris, Inc. Method for monitoring data flow at a node on a network facilitating data transfer on at least one link having at least one class of service
US6567379B1 (en) * 1999-06-09 2003-05-20 Cisco Technology, Inc. Traffic monitor using leaky bucket with variable fill
US6563792B1 (en) * 1999-07-02 2003-05-13 Accton Technology Corporation Fuzzy leaky bucket method and apparatus for usage parameter control in ATM networks
US6493698B1 (en) * 1999-07-26 2002-12-10 Intel Corporation String search scheme in a distributed architecture
US7917647B2 (en) * 2000-06-16 2011-03-29 Mcafee, Inc. Method and apparatus for rate limiting
US7743134B2 (en) * 2000-09-07 2010-06-22 Riverbed Technology, Inc. Thwarting source address spoofing-based denial of service attacks
US7398317B2 (en) * 2000-09-07 2008-07-08 Mazu Networks, Inc. Thwarting connection-based denial of service attacks
US7043759B2 (en) * 2000-09-07 2006-05-09 Mazu Networks, Inc. Architecture to thwart denial of service attacks
US7124440B2 (en) * 2000-09-07 2006-10-17 Mazu Networks, Inc. Monitoring network traffic denial of service attacks
US7278159B2 (en) * 2000-09-07 2007-10-02 Mazu Networks, Inc. Coordinated thwarting of denial of service attacks
US7702806B2 (en) * 2000-09-07 2010-04-20 Riverbed Technology, Inc. Statistics collection for network traffic
DE60041059D1 (de) * 2000-09-11 2009-01-22 Lucent Technologies Inc Verfahren und Vorrichtung um quellen spezifischen Datenfluss zu steuern
US6879560B1 (en) * 2000-12-08 2005-04-12 At&T Corp. System and method for limiting congestion over a switch network
SE521661C2 (sv) * 2000-12-18 2003-11-25 Ericsson Telefon Ab L M Metod och system för realtidsuppdatering av tillgänglig nätverksserviceaccess i ett kommunikationsnätverk
US6831891B2 (en) * 2001-03-06 2004-12-14 Pluris, Inc. System for fabric packet control
US20020184362A1 (en) * 2001-05-31 2002-12-05 International Business Machines Corporation System and method for extending server security through monitored load management
US20030031129A1 (en) * 2001-06-12 2003-02-13 Motorola, Inc. Network packet flow admission control
US7299470B2 (en) * 2001-09-13 2007-11-20 International Business Machines Corporation Method and system for regulating communication traffic using a limiter thread
US7324448B2 (en) * 2001-11-28 2008-01-29 Samsung Electronics Co., Ltd. Method for classifying service classes of packet data in two way communication network
US7593373B2 (en) * 2001-12-12 2009-09-22 At&T Intelectual Property Ii, Lp Snoop-and-shortcut routing method for better mobility support on networks
NZ516346A (en) * 2001-12-21 2004-09-24 Esphion Ltd A device for evaluating traffic on a computer network to detect traffic abnormalities such as a denial of service attack
US7213264B2 (en) 2002-01-31 2007-05-01 Mazu Networks, Inc. Architecture to thwart denial of service attacks
US7227840B1 (en) * 2002-03-18 2007-06-05 Juniper Networks, Inc. High performance probabilistic rate policer
US7330430B2 (en) * 2002-06-04 2008-02-12 Lucent Technologies Inc. Packet-based traffic shaping
US20040003069A1 (en) * 2002-06-28 2004-01-01 Broadcom Corporation Selective early drop method and system
US7551558B2 (en) * 2002-09-06 2009-06-23 Infineon Technologies Ag Method and system for controlling bandwidth allocation
US8504879B2 (en) * 2002-11-04 2013-08-06 Riverbed Technology, Inc. Connection based anomaly detection
US7363656B2 (en) * 2002-11-04 2008-04-22 Mazu Networks, Inc. Event detection/anomaly correlation heuristics
US8479057B2 (en) * 2002-11-04 2013-07-02 Riverbed Technology, Inc. Aggregator for connection based anomaly detection
US7386612B2 (en) * 2003-06-18 2008-06-10 Honeywell International Inc. Method and apparatus for disambiguating transmit-by-exception telemetry from a multi-path, multi-tier network
US7356612B2 (en) * 2003-06-18 2008-04-08 Honeywell International Inc. Method and apparatus for storing and retrieving data related to paths of a multi-path, multi-tier network
US7366988B2 (en) * 2003-06-18 2008-04-29 Honeywell International Inc. Method and apparatus for converting a network description into a computer program for disambiguating transmit-by-exception telemetry from a multi-path, multi-tier network
US7464181B2 (en) * 2003-09-11 2008-12-09 International Business Machines Corporation Method for caching lookups based upon TCP traffic flow characteristics
US7054968B2 (en) * 2003-09-16 2006-05-30 Denali Software, Inc. Method and apparatus for multi-port memory controller
US7355969B2 (en) * 2003-10-07 2008-04-08 Alcatel Line card port protection rate limiter circuitry
SE0400340D0 (sv) * 2004-02-11 2004-02-11 Ericsson Telefon Ab L M Method in a communication system
US8218569B2 (en) * 2004-04-05 2012-07-10 Verizon Business Global Llc Apparatus and method for terminating service emulation instances
US8249082B2 (en) * 2004-04-05 2012-08-21 Verizon Business Global Llc System method for a communications access network
US8948207B2 (en) * 2004-04-05 2015-02-03 Verizon Patent And Licensing Inc. System and method for transporting time-division multiplexed communications through a packet-switched access network
US20050220059A1 (en) * 2004-04-05 2005-10-06 Delregno Dick System and method for providing a multiple-protocol crossconnect
US7821929B2 (en) * 2004-04-05 2010-10-26 Verizon Business Global Llc System and method for controlling communication flow rates
US8289973B2 (en) 2004-04-05 2012-10-16 Verizon Business Global Llc System and method for indicating classification of a communications flow
US7869450B2 (en) * 2004-04-05 2011-01-11 Verizon Business Global Llc Method and apparatus for processing labeled flows in a communication access network
US8340102B2 (en) 2004-04-05 2012-12-25 Verizon Business Global Llc Apparatus and method for providing a network termination point
US7929534B2 (en) * 2004-06-28 2011-04-19 Riverbed Technology, Inc. Flow logging for connection-based anomaly detection
US7760653B2 (en) * 2004-10-26 2010-07-20 Riverbed Technology, Inc. Stackable aggregation for connection based anomaly detection
JP4674502B2 (ja) * 2005-07-22 2011-04-20 ソニー株式会社 情報通信システム、情報通信装置及び情報通信方法、並びにコンピュータ・プログラム
DE102005058878B4 (de) * 2005-12-09 2007-08-09 Infineon Technologies Ag Datentransfervorrichtung und Verfahren zum Senden von Daten
US8514871B2 (en) * 2006-07-24 2013-08-20 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for marking data packets based on content thereof
CN101174993B (zh) * 2006-11-02 2010-09-08 北京中创信测科技股份有限公司 网络数据监测处理方法和设备
CN100563179C (zh) * 2007-03-09 2009-11-25 杭州中导科技开发有限公司 以太网专线实时监测方法及其监测设备
US20110085444A1 (en) * 2009-10-13 2011-04-14 Brocade Communications Systems, Inc. Flow autodetermination
US8812705B1 (en) * 2013-10-15 2014-08-19 Google Inc. Accessing location-based content
JP6206105B2 (ja) * 2013-11-11 2017-10-04 富士通株式会社 通信システム、通信方法および通信プログラム
US10198724B2 (en) * 2015-08-21 2019-02-05 Mastercard International Incorporated Payment networks and methods for facilitating data transfers within payment networks
CN111385328B (zh) * 2018-12-29 2024-04-05 三六零科技集团有限公司 业务请求的处理方法、系统及电子设备
US11451568B2 (en) 2019-05-13 2022-09-20 Feedzai—Consultadoria e Inovação Tecnólogica, S.A. Automatic model monitoring for data streams
CN112383640A (zh) * 2020-12-09 2021-02-19 上海核工程研究设计院有限公司 一种核电运行监控数据实时上报通讯系统
CN116319158B (zh) * 2023-05-23 2023-08-29 南京芯驰半导体科技有限公司 基于菊花链网络的节点数据处理方法、装置、设备及介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4942515A (en) * 1986-03-31 1990-07-17 Wang Laboratories, Inc. Serial communications controller with FIFO register for storing supplemental data and counter for counting number of words within each transferred frame
FR2653285B1 (fr) 1989-10-12 1991-12-06 Cit Alcatel Dispositif d'evaluation du debit de circuits virtuels empruntant une voie de transmission a multiplexage temporel asynchrone.
SE469252B (sv) * 1991-10-04 1993-06-07 Eritel Ab Foerfarande foer kontroll och styrning av datafloedet i ett paketdatanaet omfattande ett antal linjer och ett antal noder daer linjerna via noder foerbinder ett antal terminaler
US5402426A (en) 1992-04-23 1995-03-28 Siemens Aktiengesellschaft Method and arrangement for checking the observance of prescribed transmission bit rates in an ATM switching equipment
US5590366A (en) * 1992-05-27 1996-12-31 Digital Equipment Corporation Packet forwarding system for measuring the age of data packets flowing through a computer network
US5604866A (en) * 1993-09-30 1997-02-18 Silicon Graphics, Inc. Flow control system having a counter in transmitter for decrementing and incrementing based upon transmitting and received message size respectively for indicating free space in receiver
KR960009474B1 (ko) * 1993-11-29 1996-07-19 양승택 메모리를 이용한 고속 트래픽 통계처리 장치
EP0712220A1 (en) * 1994-11-08 1996-05-15 International Business Machines Corporation Hop-by-hop flow control in an ATM network
US5936939A (en) * 1995-05-22 1999-08-10 Fore Systems, Inc. Digital network including early packet discard mechanism with adjustable threshold
US5862337A (en) * 1996-07-12 1999-01-19 Microsoft Corporation Determining throughput dynamically
JP2930020B2 (ja) * 1996-07-18 1999-08-03 日本電気株式会社 通信制御装置
US5937165A (en) * 1996-09-10 1999-08-10 Ganymede Software, Inc Systems, methods and computer program products for applications traffic based communications network performance testing
JPH10271132A (ja) * 1997-03-27 1998-10-09 Toshiba Corp パケット交換網におけるフロー制御方式
US6170022B1 (en) * 1998-04-03 2001-01-02 International Business Machines Corporation Method and system for monitoring and controlling data flow in a network congestion state by changing each calculated pause time by a random amount

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017017538A (ja) * 2015-07-01 2017-01-19 富士通株式会社 メーター処理方法、メーター処理プログラム及びネットワーク装置

Also Published As

Publication number Publication date
EP1068702A1 (en) 2001-01-17
TW453073B (en) 2001-09-01
US6381649B1 (en) 2002-04-30
RU2000128051A (ru) 2002-10-27
CA2326124A1 (en) 2000-08-10
CN1300490A (zh) 2001-06-20
AU2744500A (en) 2000-08-25
WO2000046961A1 (en) 2000-08-10

Similar Documents

Publication Publication Date Title
JP2002536913A (ja) ネットワーク上のノードでのデータフローをモニタする装置および方法
US6578083B2 (en) Method for monitoring data flow at a node on a network facilitating data transfer on at least one link having at least one class of service
US5949786A (en) Stochastic circuit identification in a multi-protocol network switch
US5838915A (en) System for buffering data in the network having a linked list for each of said plurality of queues
US5604742A (en) Communications system and method for efficient management of bandwidth in a FDDI station
JP3734704B2 (ja) パケット分類エンジン
CA2282159C (en) Packet forwarding apparatus with a flow detection table
US7856512B2 (en) System and method for offloading a processor tasked with calendar processing
US6240140B1 (en) Channel aggregation having low latency and overhead
JPH06197130A (ja) 高速パケット交換装置およびデータパケットの経路指定方法
JPH08223182A (ja) ルーティング情報の格納及び取り出しのシステム及び方法
JP2009524356A (ja) 通信ネットワークを通じたトラフィック分配を向上させる方法およびシステム
EP0525174A1 (en) TRACKING SERIAL NUMBERS IN A PACKET DATA TRANSMISSION SYSTEM.
US7330481B2 (en) Highly channelized port polling in a telecommunications switch
US6647413B1 (en) Method and apparatus for measuring performance in packet-switched networks
US20050144413A1 (en) Method and apparatus utilizing non-uniformly distributed DRAM configurations and to detect in-range memory address matches
CA2260255C (en) Addressable, high speed counter array
US5257258A (en) "Least time to reach bound" service policy for buffer systems
JP3820272B2 (ja) 交換装置
RU2129750C1 (ru) Устройство мультиплексирования элементов данных в асинхронном режиме передачи и способ
US20040030814A1 (en) Reflective mirror for lithographic exposure and production method
JP2985859B2 (ja) ポリシング装置
US6891943B1 (en) Method and device for establishing connection path in a communications network
MXPA00009741A (es) Aparato y metodo para monitorear flujos de datos en un nodo de una red
KR100483546B1 (ko) 에이티엠 입력 셀 복제에 의한 멀티캐스트 스위칭 장치 및방법