JP4041944B2 - ネットワークの混雑制御システムと混雑制御ノード、及び混雑制御プログラム - Google Patents

ネットワークの混雑制御システムと混雑制御ノード、及び混雑制御プログラム Download PDF

Info

Publication number
JP4041944B2
JP4041944B2 JP2001320723A JP2001320723A JP4041944B2 JP 4041944 B2 JP4041944 B2 JP 4041944B2 JP 2001320723 A JP2001320723 A JP 2001320723A JP 2001320723 A JP2001320723 A JP 2001320723A JP 4041944 B2 JP4041944 B2 JP 4041944B2
Authority
JP
Japan
Prior art keywords
congestion
flow
congestion control
node
control node
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.)
Expired - Fee Related
Application number
JP2001320723A
Other languages
English (en)
Other versions
JP2003124954A (ja
Inventor
敦之 榎本
淳 岩田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2001320723A priority Critical patent/JP4041944B2/ja
Priority to EP20020023611 priority patent/EP1304839A3/en
Priority to US10/272,943 priority patent/US7468945B2/en
Publication of JP2003124954A publication Critical patent/JP2003124954A/ja
Application granted granted Critical
Publication of JP4041944B2 publication Critical patent/JP4041944B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/11Identifying congestion
    • 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/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • 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
    • 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/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Monitoring And Testing Of Exchanges (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は通信の混雑制御に関し、特にリング状ネットワークにおける通信の混雑を制御する混雑制御システムと混雑制御ノード、及び混雑制御プログラムに関する。
【0002】
【従来の技術】
従来、この種の混雑制御システムは、リング状トポロジを持ったネットワークにおいて混雑制御を行ない、リング帯域の輻輳を避けるために用いられている。
【0003】
従来の混雑制御システムの一例が、2000年にIETFから発行されたRFC2892の第9頁ないし第28〜32頁に掲載された「2000年8月、ザ・シスコ・エスアールピー・マック・レイヤ・プロトコル(The Cisco SRP MAC Layer Protocol)」と題するD. Tsiang、G. Suwala、Cisco Systemsによる標準化文書に記載されている。
【0004】
この標準化文書に記載された混雑制御システムは、各混雑制御ノードが単一の送信キューを有し、転送バッファ部で混雑を検知した場合は、上流ノードの送信キューからのフレーム出力量を、混雑検出ノードの送信キューからのフレーム出力量と同じになるように制限することにより、混雑制御を可能としている。また、転送バッファの出力量と、各送信キューからの出力量を比較することにより、混雑通知の転送をするか否か判断している。これを従来技術1とする。
【0005】
また、「1996年8月、ザ・エーティーエム・フォーラム・テクニカル・コミッティー・トラフィック・マネージメント・スペシフィケーション・バージョン4.0(The ATM Forum Technical Committee Traffic Management Specification Version 4.0)」と題する標準化文書では、公平な混雑制御のために、フロー毎個々に混雑制御通知を送信している。これを従来技術2とする。
【0006】
更に、「2000年、ダイナミック・パケット・トランスポート・テクノロジー・アンド・パフォーマンス(Dynamic Packet Transport Technology and Performance)」と題するCisco Systemsによる仕様書では、2つ以上のリングを相互接続する際、混雑制御システムをリング毎独立して適用し、2つ以上のリングをまたがるフレームを転送可能にしている。これを従来技術3とする。
【0007】
【発明が解決しようとする課題】
上述した従来の技術では、以下に述べるような問題点があった。
【0008】
第1に、従来技術1では、混雑に関係のないフローまで送信フレーム量が制限され、リンクの利用効率が低下してしまうという問題点があった。その理由は、送信キューが1つしか用意されておらず制御の粒度が荒いため、また、制御の粒度を細かくしても、混雑検出ノードにおいて制限対象となるフローを識別するのは、処理の負荷が大きく難しいからである。
【0009】
第2に、従来技術2では、混雑検出ノードの送信フレーム量が小さい場合に、混雑制御の対象となるノードの送信フレーム量が、必要以上に小さく制限されてしまう可能性があるという問題点があった。その理由は、送信可能フレーム量が、混雑検出ノードの送信フレーム量より決定されていたためである。
【0010】
第3に、従来技術3では、混雑通知が混雑に関係しているノードに到達する前に、転送されなくなってしまう場合があるという問題点があった。その理由は、各ノードは、転送バッファからの流量と送信バッファからの流量を比較し、転送バッファからの流量が送信バッファからの流量を下回る場合には、混雑通知の転送を取りやめてしまうからである。
【0011】
第4に、従来技術4では、混雑通知が混雑に関係しないノードにも、転送されてしまう場合があるという問題点があった。その理由は、各ノードは、転送バッファからの流量と送信バッファからの流量を比較し、転送バッファからの流量が送信バッファからの流量を下回らない限り、混雑通知を転送し続けるからである。
【0012】
第5に、従来技術2では、フロー数が増えるに従い、制御フレームの量が爆発的に増大するという問題点があった。もし、複数のフローが流れているリンクで混雑が発生した場合、混雑に関わるフローを流しているすべてのノードに対して、混雑通知を送る必要がある。リングが多段接続されると、各リンクには膨大な数のフローが流れるため、フロー単位で混雑通知を送ると、リンク帯域を無駄に使用してしまうほか、ノードのCPUその他資源の浪費につながる。
【0013】
第6に、従来技術3では、2つ以上のリングを相互接続させる場合、宛先リングが送信元リングよりも輻輳していると、2つのリングを接続するノードにおいて、フレームロスが発生し、送信元リングに結局は廃棄される無駄なフレームが流れる可能性あるという問題点があった。その理由は、混雑制御をリング毎に独立して行われていたため、及び、2つ以上のリングを通過するフローも、単一リング内で収束するフローと区別なしに扱われているためである。
【0014】
本発明の第1の目的は、上記従来技術1の欠点を解決し、リングの特性を利用して混雑に影響するフローを推定し、混雑に影響するフローのみの送信フレーム量制限ができる混雑制御システムを提供することにある。
【0015】
本発明の第2の目的は、上記従来技術1の欠点を解決し、送信フレーム量と転送フレーム量の双方を考慮することによって最適な混雑制御命令を生成し、急激なレート低下等を発生させない混雑制御システムを提供することにある。
【0016】
本発明の第3の目的は、上記従来技術1の欠点を解決し、混雑に影響するであろうすべてのノードに確実に混雑通知を転送し、公平で素早い混雑解消ができる混雑制御システムを提供することにある。
【0017】
本発明の第4の目的は、上記従来技術1の欠点を解決し、途中のノードがリングの特性を利用して、効果の期待できない混雑通知の転送を取りやめることにより、制御フレームがリンク帯域を浪費しない混雑制御システムを提供することにある。
【0018】
本発明の第5の目的は、上記従来技術2の欠点を解決し、混雑制御ノード毎に混雑通知を発信し、混雑通知を受信したノードがリングの特性を利用して混雑に影響するフローを推定することにより、フローが増えても混雑通知の発信回数が増えることのない(フローの数に依存しない)混雑制御システムを提供することにある。
【0019】
本発明の第6の目的は、上記従来技術3の欠点を解決し、2つ以上のリングが接続された場合に、ある任意のリングで発生した混雑を、他の任意のリングに伝達し、送信ノード又は送信ノードに近い接続ノードでフレーム送出量制限を行なうことで、送信ノードから受信ノードに到達する間のノードで制限を受けて廃棄される無駄なフレームを、リングに流す前に制限することができる混雑制御システムを提供することにある。
【0020】
【課題を解決するための手段】
上記目的を達成するため本発明の混雑制御システムは、ネットワーク上の通信を混雑制御する混雑制御システムにおいて、ネットワーク上において複数備えられる、送信又は中継する通信データを混雑制御する混雑制御ノードが、当該混雑制御ノードにおける通信の混雑の度合いを検知する混雑検知手段と、混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他の前記混雑制御ノードへ通知する混雑通知手段と、他の前記混雑制御ノードから前記混雑の情報を受信する手段と、前記混雑の情報と、通信先への転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路上において前記混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0021】
請求項2の本発明の混雑制御システムは、ネットワーク上の通信を混雑制御する混雑制御システムにおいて、 ネットワーク上において複数備えられる、送信又は中継する通信データを混雑制御する混雑制御ノードが、当該混雑制御ノードにおける通信の混雑の度合いを検知する混雑検知手段と、混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他の前記混雑制御ノードへ通知する混雑通知手段と、他の前記混雑制御ノードから前記混雑の情報を受信する手段と、前記混雑の情報と、通信先への転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路上において前記混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0022】
請求項3の本発明の混雑制御システムは、ネットワーク上の通信を混雑制御する混雑制御システムにおいて、ネットワーク上において複数備えられる、送信又は中継する通信データを混雑制御する混雑制御ノードが、当該混雑制御ノードにおける通信の混雑の度合いを検知する混雑検知手段と、混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他の前記混雑制御ノードへ通知する混雑通知手段と、他の前記混雑制御ノードから前記混雑の情報を受信する手段と、前記混雑の情報と、通信先への転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路上において前記混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、前記ネットワーク上の隣接するノードとの間における前記通信データの転送のために使用する転送バッファと、通信データを送信可能時まで保持する送信バッファと、前記送信バッファから出力される前記通信データの量を測定する出力測定手段を備え、各前記混雑制御ノードの前記混雑検知手段は、前記通信の混雑の度合いを検知する処理を、前記転送バッファの使用量に基づいて行ない、各前記混雑制御ノードの前記混雑通知手段は、前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定手段が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他の混雑制御ノードに対して通信の制限を指示する制御命令を生成する手段と、前記制御命令を前記混雑の情報に付加して前記ネットワーク上の他の混雑制御ノードに対して送信する手段と、前記ネットワーク上の他の混雑制御ノードから、前記制御命令の付加された前記混雑の情報を受信する手段と、受信した前記制御命令を実行する手段を備えることを特徴とする。
【0023】
請求項4の本発明の混雑制御システムは、各前記混雑制御ノードは、前記混雑フロー推定手段により前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める手段と、各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整手段を備えることを特徴とする。
【0024】
請求項5の本発明の混雑制御システムは、各前記混雑制御ノードは、前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0025】
請求項6の本発明の混雑制御システムは、各前記混雑制御ノードは、前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0026】
請求項7の本発明の混雑制御システムは、ネットワーク上の通信を混雑制御する混雑制御システムにおいて、ネットワーク上において複数備えられる、送信又は中継する通信データを混雑制御する混雑制御ノードが、当該混雑制御ノードにおける通信の混雑の度合いを検知する混雑検知手段と、混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他の前記混雑制御ノードへ通知する混雑通知手段と、他の前記混雑制御ノードから前記混雑の情報を受信する手段と、前記混雑の情報と、通信先への転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路上において前記混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、前記ネットワーク上の隣接するノードとの間における前記通信データの転送のために使用する転送バッファと、前記ネットワーク上における通信ができない障害を検出する障害検出手段と、前記障害検出手段により検出された前記障害の発生した前記ネットワーク上の区間の情報を障害通知として、前記ネットワーク上の他の混雑制御ノードに通知する手段を備え、各前記混雑制御ノードの前記混雑検知手段は、前記通信の混雑の度合いを検知する処理を、前記転送バッファの使用量に基づいて行なうことを特徴とする。
【0027】
請求項8の本発明の混雑制御システムは、各前記混雑制御ノードは、前記混雑フロー推定手段により前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める手段と、各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整手段を備えることを特徴とする。
【0028】
請求項9の本発明の混雑制御システムは、各前記混雑制御ノードは、前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0029】
請求項10の本発明の混雑制御システムは、各前記混雑制御ノードは、前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0030】
請求項11の本発明の混雑制御システムは、各前記混雑制御ノードは、通信データを送信可能時まで保持する送信バッファと、前記送信バッファから出力される前記通信データの量を測定する出力測定手段を備え、各前記混雑制御ノードの前記混雑通知手段は、前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定手段が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他の混雑制御ノードに対して通信の制限を指示する制御命令を生成する手段と、前記制御命令を前記混雑の情報に付加して前記ネットワーク上の他の混雑制御ノードに対して送信する手段と、前記ネットワーク上の他の混雑制御ノードから、前記制御命令の付加された前記混雑の情報を受信する手段と、受信した前記制御命令を実行する手段を備えることを特徴とする。
【0031】
請求項12の本発明の混雑制御システムは、各前記混雑制御ノードは、前記ネットワーク上の他の混雑制御ノードから前記障害通知を受信する手段と、受信した前記障害通知に基づいてルーティングテーブルを変更し、前記ネットワーク上における障害の検出された区間を転送経路から回避させる障害処理手段を備えることを特徴とする。
【0032】
請求項13の本発明の混雑制御システムは、各前記混雑制御ノードは、前記ネットワーク上の他の混雑制御ノードに対し、当該混雑制御ノードへの転送経路に前記障害が発生している場合には、前記ネットワーク上において転送される前記障害通知の当該混雑制御ノードに対する転送を破棄する手段を備えることを特徴とする。
【0033】
請求項14の本発明の混雑制御ノードは、ネットワーク上の通信を混雑制御する混雑制御ノードにおいて、前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する手段と、前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0034】
請求項15の本発明の混雑制御ノードは、ネットワーク上の通信を混雑制御する混雑制御ノードにおいて、前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する手段と、前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0035】
請求項16の本発明の混雑制御ノードは、ネットワーク上の通信を混雑制御する混雑制御ノードにおいて、前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する手段と、前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、通信の混雑の度合いを検知する混雑検知手段と、混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他のノードに通知する混雑通知手段と、前記ネットワーク上の隣接する前記ノードとの間における前記通信データの転送のために使用する転送バッファと、通信データを送信可能時まで保持する送信バッファと、前記送信バッファから出力される前記通信データの量を測定する出力測定手段を備え、前記混雑検知手段は、前記通信の混雑の度合いを検知する処理を、前記転送バッファの使用量に基づいて行ない、前記混雑通知手段は、前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定手段が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他のノードに対して通信の制限を指示する制御命令を生成する手段を備え、前記制御命令を前記混雑の情報に含めて前記ネットワーク上の他のノードに対して送信することを特徴とする。
【0036】
請求項17の本発明の混雑制御ノードは、前記混雑フロー推定手段により前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める手段と、各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整手段を備えることを特徴とする。
【0037】
請求項18の本発明の混雑制御ノードは、前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0038】
請求項19の本発明の混雑制御ノードは、前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0039】
請求項20の本発明の混雑制御ノードは、ネットワーク上の通信を混雑制御する混雑制御ノードにおいて、前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する手段と、前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、通信の混雑の度合いを検知する混雑検知手段と、混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他のノードに通知する混雑通知手段と、前記ネットワーク上における通信ができない障害を検出する障害検出手段と、前記障害検出手段により検出された前記障害の発生した前記ネットワーク上の区間の情報を障害通知として、前記ネットワーク上のノードに通知する手段を備えることを特徴とする。
【0040】
請求項21の本発明の混雑制御ノードは、前記混雑フロー推定手段により前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める手段と、各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整手段を備えることを特徴とする。
【0041】
請求項22の本発明の混雑制御ノードは、前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0042】
請求項23の本発明の混雑制御ノードは、前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする。
【0043】
請求項24の本発明の混雑制御ノードは、前記ネットワーク上の隣接する前記ノードとの間における前記通信データの転送のために使用する転送バッファを備え、前記混雑検知手段は、前記通信の混雑の度合いを検知する処理を、前記転送バッファの使用量に基づいて行なうことを特徴とする。
【0044】
請求項25の本発明の混雑制御ノードは、通信データを送信可能時まで保持する送信バッファと、前記送信バッファから出力される前記通信データの量を測定する出力測定手段を備え、前記混雑通知手段は、前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定手段が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他のノードに対して通信の制限を指示する制御命令を生成する手段を備え、前記制御命令を前記混雑の情報に含めて前記ネットワーク上の他のノードに対して送信することを特徴とする。
【0045】
請求項26の本発明の混雑制御ノードは、前記ネットワーク上の他のノードから前記障害通知を受信する手段と、受信した前記障害通知に基づいてルーティングテーブルを変更し、前記ネットワーク上における障害の検出された区間を転送経路から回避させる障害処理手段を備えることを特徴とする。
【0046】
請求項27の本発明の混雑制御ノードは、前記ネットワーク上の他のノードに対し、当該ノードへの転送経路に前記障害が発生している場合には、前記ネットワーク上において転送される前記障害通知の当該ノードに対する転送を破棄する手段を備えることを特徴とする。
【0047】
請求項28の本発明の混雑制御プログラムは、コンピュータを制御することにより、ネットワークと接続しクライアントによる通信を中継する混雑制御ノードにおける通信の混雑を制御する混雑制御プログラムにおいて、前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する機能と、前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定機能と、前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理機能と、前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定機能と、前記フロー数測定機能の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加機能と、各前記制限対象フロー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする。
【0048】
請求項29の本発明の混雑制御プログラムは、コンピュータを制御することにより、ネットワークと接続しクライアントによる通信を中継する混雑制御ノードにおける通信の混雑を制御する混雑制御プログラムにおいて、前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する機能と、前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定機能と、前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理機能と、各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定機能と、前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加機能と、各前記キュー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする。
【0049】
請求項30の本発明の混雑制御プログラムは、コンピュータを制御することにより、ネットワークと接続しクライアントによる通信を中継する混雑制御ノードにおける通信の混雑を制御する混雑制御プログラムにおいて、前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する機能と、前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定機能と、通信の混雑の度合いを検知する混雑検知機能と、混雑検知機能が検知した混雑の情報を、前記ネットワーク上の他のノードに通知する混雑通知機能と、通信データを送信可能時まで保持する送信バッファから出力される前記通信データの量を測定する出力測定機能を備え、前記混雑検知機能において、前記ネットワーク上の隣接する前記ノードとの間における前記通信データの転送のために使用する転送バッファの使用量に基づいて、前記通信の混雑の度合いを検知する処理を実行し、前記混雑通知機能にて、前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定機能が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他のノードに対して通信の制限を指示する制御命令を生成する機能と、前記制御命令を前記混雑の情報に含めて前記ネットワーク上の他のノードに対して送信する機能を備えることを特徴とする。
【0050】
請求項31の本発明の混雑制御プログラムは、前記混雑フロー推定機能により前記前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める機能と、各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整機能を備えることを特徴とする。
【0051】
請求項32の本発明の混雑制御プログラムは、前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理機能と、前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定機能と、前記フロー数測定機能の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加機能と、各前記制限対象フロー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする。
【0052】
請求項33の本発明の混雑制御プログラムは、前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理機能と、各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定機能と、前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加機能と、各前記キュー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする。
【0053】
請求項34の本発明の混雑制御プログラムは、コンピュータを制御することにより、ネットワークと接続しクライアントによる通信を中継する混雑制御ノードにおける通信の混雑を制御する混雑制御プログラムにおいて、前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する機能と、前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定機能と、通信の混雑の度合いを検知する混雑検知機能と、混雑検知機能が検知した混雑の情報を、前記ネットワーク上の他のノードに通知する混雑通知機能と、前記ネットワーク上における通信ができない障害を検出する障害検出機能と、前記障害検出機能により検出された前記障害の発生した前記ネットワーク上の区間の情報を障害通知として、前記ネットワーク上のノードに通知する機能を備えることを特徴とする。
【0054】
本発明の第1の混雑制御システムは、ルーティングテーブル及びリングの特性を利用し、混雑に影響するフローを推定し、混雑に影響するフローのみの送信フレーム量の制限を行なう。これにより、本発明の第1の目的を達成することができる。
【0055】
本発明の第2の混雑制御システムは、送信フレーム量と転送フレーム量の双方を考慮することによって最適な混雑制御命令を生成し、急激なレート低下等を発生させない。これにより、本発明の第2の目的を達成することができる。
【0056】
本発明の第3の混雑制御システムは、混雑に影響するであろうすべてのノードに確実に混雑通知を転送し、公平で素早い混雑解消ができる。これにより、本発明の第3の目的を達成することができる。
【0057】
本発明の第4の混雑制御システムは、途中のノードがリングの特性を利用して、効果の期待できない混雑通知の転送を取りやめることにより、制御フレームの量を削減することができる。これにより、本発明の第4の目的を達成することができる。
【0058】
本発明の第5の混雑制御システムは、混雑制御ノード毎に混雑通知を発信し、混雑通知を受信したノードがリングの特性を利用して混雑に影響するフローを推定することにより、フローが増えても混雑通知の発信回数を増やさずに済む。これにより、本発明の第5の目的を達成することができる。
【0059】
本発明の第6の混雑制御システムは、2つ以上のリングが接続された場合に、ある任意のリングで発生した混雑を、他の任意のリングに伝達し、送信ノード又は送信ノードに近い接続ノードでフレーム送出量制限を行なうことで、送信ノードから受信ノードに到達する間のノードで制限を受けて廃棄される無駄なフレームを、リングに流す前に制限することができる。これにより、本発明の第6の目的を達成することができる。
【0060】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【0061】
以後本明細書においては、リンクを流れる情報をフレームと記述するが、これにはフレームにみではなくパケットやその他のデータをも総合してフレームと呼ぶこととする。また、以下に説明するクライアント群の機能は、混雑制御ノードが併せ持つ場合もある。以下本明細書においては、ある任意のリングで発生した混雑を他の任意のリングに伝達することを、リングをまたがる混雑通知という。
【0062】
また、任意のリング上に存在する任意の1つの混雑制御ノードから、任意のリング上に存在する別の任意の1つの混雑制御ノードへ流れるフレーム全体を、1つのフローと定義する。
【0063】
図1を参照すると、本発明の第1の実施の形態は、リング状ネットワークR1、クライアント群C1〜C4、混雑制御ノードA1〜A4、双方向リンクL100、片方向リンクL101〜104を含む。
【0064】
リング状ネットワークR1は、片方向のリングR11と、片方向リングR11とは逆方向に流れる片方向リングR12を含み、これらの総称をリング状ネットワークR1と呼ぶこととする。リング状ネットワークR1は、混雑制御ノードA1〜A4から送出されたフレームを、別の混雑制御ノードA1〜A4に転送する機能を持つ。
【0065】
クライアント群C1は、1つ以上のクライアントの集合であり、混雑制御ノードA1との間でフレームの送受信を行なう機能を有する。
【0066】
各クライアント群C2、C3、C4は、クライアント群C1と同様のクライアント群である。今後はクライアント群C1〜C4を代表して、クライアント群C1を用いて記述を行なうが、これらクライアント群C1についての記述は、特に断りのない限り他のクライアント群C2〜C4においても同様に適用可能である。
【0067】
混雑制御ノードA1は、プログラム制御されるCPU等で実現され、以下に挙げる7つの機能を有する。
【0068】
(1)クライアント群C1より送出され双方向リンクL100より到着したフレームを、片方向リンクL102又はL104よりリング状ネットワークR1に転送する。
【0069】
(2)リング状ネットワークR1を流れ片方向リンクL102又はL104より到着したフレームを必要に応じて双方向リンクL100よりクライアント群C1に転送する。
【0070】
(3)片方向リンクL101を流れるフレームを片方向リンクL102に、片方向リンクL103を流れるフレームを片方向リンクL104に、それぞれ再転送する。
【0071】
(4)リング状ネットワークR1、すなわち片方向リンクL102及びL104のフレーム混雑を検知する。
【0072】
(5)混雑通知を片方向リンクL102又はL104を通じてリングR1上に存在する混雑制御ノードに向けて送出する。
【0073】
(6)リング状ネットワークR1、すなわち片方向リンクL101及びL103より混雑通知を受信して自ノードよりリング状ネットワークR1(片方向リンクL102及びL104)に送出するフレーム量の調整を行なう。
【0074】
(7)リング状ネットワークR1(片方向リンクL101及びL103)より受信した混雑通知を、片方向リンクL102又はL104を通じて、リングR1上に存在する隣接ノード(ノードA2又はノードA4)に転送する。
【0075】
各混雑制御ノードA2、A3、A4は、混雑制御ノードA1と同様のノードでる。今後は混雑制御ノードA1〜A4を代表して、混雑制御ノードA1を用いて記述を行なうが、これら混雑制御ノードA1についての記述は、特に断りのない限り他の混雑制御ノードA2〜A4においても同様に適用可能である。
【0076】
双方向リンクL100は、クライアント群C1から混雑制御ノードA1、及び、混雑制御ノードA1からクライアント群C1を結ぶ双方向リンクである。
【0077】
片方向リンクL101は、混雑制御ノードA2から混雑制御ノードA1を結ぶ片方向リンクで、リングR11に属する。
【0078】
片方向リンクL102は、混雑制御ノードA1から混雑制御ノードA4を結ぶ片方向リンクで、リングR11に属する。
【0079】
片方向リンクL103は、混雑制御ノードA4から混雑制御ノードA1を結ぶ片方向リンクで、リングR12に属する。
【0080】
片方向リンクL104は、混雑制御ノードA1から混雑制御ノードA2を結ぶ片方向リンクで、リングR12に属する。
【0081】
図2は、混雑制御ノードA1の構成を詳細に示した図である。混雑制御ノードA1は、転送方向決定部A11と、ルーティングテーブルA12と、混雑制御部A13と、別の混雑制御部A14と、双方向リンクL105及びL106を含む。
【0082】
転送方向決定部A11は、クライアント群C1、混雑制御部A13、及び混雑制御部A14より受信したフレームの宛先ノードアドレスを判別し、ルーティングテーブルA12の記述に従い、クライアント群C1、混雑制御部A13、及び混雑制御部A14に向けて転送する機能を持つ。なお、片方向リングR11から片方リングR12へ向かうフレーム、及び片方向リングR12から片方向リングR11へ向かうフレーム、そしてクライアント群C1が宛先もしくは送信元であるフレームは、すべてこの転送方向決定部A11を経由する。
【0083】
ルーティングテーブルA12は、あて先混雑制御ノード毎に、そのノードまでのコストと、送出先片方向リングのIDを記憶しておく機能を有する。送出先片方向リングのIDは、R11及びR12のいずれかである。ルーティングテーブルA12の情報は、転送方向決定部A11及び混雑制御部A13〜A14において利用される。
【0084】
混雑制御部A13は、以下に示す5つの機能を有する。
【0085】
(1)転送方向決定部A11より双方向リンクL105を通じて入力されたフレームを、片方向リンクL102に転送する。
【0086】
(2)片方向リンクL101より入力されたフレームを、必要に応じてリングR11から取り出して双方向リンクL105を通じて転送方向決定部A11に転送する。
【0087】
(3)片方向リンクL102に発生した混雑を検知して、混雑通知を、双方向リンクL105、転送方向決定部A11、双方向リンクL106、混雑制御部A14、片方向リンクL104を経由して、混雑制御ノードA2に向けて送信する。
【0088】
(4)混雑制御ノードA4が発信又は転送した混雑通知を、片方向リンクL103、混雑制御部A14、双方向リンクL106、転送方向決定部A11、双方向リンクL105を経由して受信して、自ノードより片方向リンクL102に送出するフレーム量の調整を行なう。
【0089】
(5)P111で受信した混雑通知を、必要に応じて、双方向リンクL105、転送方向決定部A11、双方向リンクL106,混雑制御部A14、片方向リンクL104を経由して混雑制御ノードA2に転送する。
【0090】
別の混雑制御部A14は、混雑制御部A13と同様の混雑制御機能を備える。今後は混雑制御部A13〜A14を代表し、混雑制御部A13を用いて記述を行なうが、混雑制御部A13についての記述は、特に断りのない限り混雑制御部A14にも同様に適用可能である。
【0091】
双方向リンクL105は、転送方向決定部A11と混雑制御部A13とを結ぶ双方向リンクである。
【0092】
双方向リンクL106は、転送方向決定部A11と混雑制御部A14とを結ぶ双方向リンクである。
【0093】
図3は、混雑制御部A13の構成を詳細に示した図である。混雑制御部A13は、受信決定部A131と、転送バッファ部A132と、出力ミキサ部A133と、混雑通知受信転送部A134と、送信バッファ部A135と、出力測定部A136と、混雑通知送信部A137と、バッファ使用量測定部A138(混雑検知部)と、片方向リンクL107〜L109、通知M101〜M104を含む。
【0094】
受信決定部A131は、片方向リングR11に属するリンクL101から受信したフレームの宛先を判別し、あて先が自ノードもしくはブロードキャスト並びにマルチキャストである場合は、このフレームを転送方向決定部A11に向けて転送する。転送方向決定部A11に向けて転送されなかったフレームは、転送バッファ部A132に転送される。また、必要であればフレームの複製も行なう。
【0095】
転送バッファ部A132は、以下に示す2つの機能を有する。
【0096】
(1)受信決定部A131よりリンクL107を通じて入力されたフレームを、片方向リングR11に属するリンクL102に送出できるタイミングまで格納しておき、送出可能タイミングにリンクL108を通じて出力ミキサ部A133に向けてフレームを転送する。
【0097】
(2)バッファ使用量測定部A138からの要求により、転送バッファ部A132に存在するフレームの数、ビット数、バイト数等を、通知M101を用いて、バッファ使用量測定部A138に通知する。
【0098】
出力ミキサ部A133は、予め設定するか、又は動的に変化する、優先順位や重み付け等にしたがって、転送バッファ部A132又は送信バッファ部A135よりフレームを取り出し、リングR11に属するリンクL102に向けて転送する。
【0099】
混雑通知受信転送部A134は、転送処理部341と、推定部342と、重み付加部343と、制限部344を含む。
【0100】
転送処理部341は、混雑通知受信転送部A134は、片方向リングR11とは逆方向に流れるリングから、転送方向決定部A11及びリンクL105を経由して流れてきた混雑通知を受信し、必要であればこの混雑通知を、リンクL105及び転送方向決定部A11を経由して、片方向リングR11とは逆方向に流れるリングに再送信する。
【0101】
推定部342は、そして混雑通知及びルーティングテーブルA12の情報より、各キュー毎の送信フレーム制限量及び、各フロー毎の収容送信キューを決定する。
【0102】
重み付加部343は、推定部342が決定した各キュー毎の送信フレーム制限量に、各キューが収容するフローの数(重み)を乗ずる。
【0103】
制限部344は、通知M102及びM103を用いて送信バッファ部A135に通知する。
【0104】
送信バッファ部A135は、以下に挙げる4つの機能を有する。
【0105】
(1)送信方向決定部A11よりリンクL105を通じて入力されたフレームを、片方向リングR11に属するリンクL102に送出できるタイミングまで格納しておき、送出可能タイミングにリンクL109を通じて出力ミキサ部A133に向けてフレームを転送する。
【0106】
(2)通知M102によって混雑通知受信転送部A134より設定された送出可能フレーム量以下になるように送信フレーム数を制限する。
【0107】
(3)通知M103によって混雑通知受信転送部A134より設定されたキューに指定されたフローを格納する。
【0108】
(4)通知M104による出力測定部A136からの要求により、送信バッファ部A135から出力ミキサ部A133に転送されるフレームの数、ビット数、バイト数、フレームを1つ以上蓄積している送信キューの数等を、出力測定部A136に通知M103を用いて通知する。
【0109】
出力測定部A136は、送信バッファ部A135より出力され出力ミキサ部A133に転送されるフレームの、フレーム個数、ビット数、バイト数、フレームを1つ以上蓄積している送信キューの数等を、出力測定部A136に通知するように、周期的に送信バッファ部A135に対して要求し、送信バッファ部A135から通知された値を、次の通知まで記憶しておく。
【0110】
混雑通知送信部A137は、バッファ使用量測定部A138から受けた混雑発生検知結果と、出力測定部A136で測定した送信フレーム量等を用いて混雑通知フレームを作成し、リンクL105及び転送方向決定部A11を経由して、この混雑通知フレームを片方向リングR11とは逆方向に流れる片方向リングを用い、片方向リングR11の上流に位置する混雑制御ノードに向けて送信する。
【0111】
バッファ使用量測定部A138は、混雑通知送信部A137からの要求に応じ、転送バッファ部A132に対して、転送バッファ部A132に存在するフレームの数、ビット数、バイト数等を通知するように要求し、その結果(混雑の度合の情報)より混雑が発生しているか否かを判断(混雑の度合が定められた以上であるか否かを判断)して、結果を混雑通知送信部A137に対して通知する。
【0112】
片方向リンクL107は、受信決定部A131から転送バッファ部A132を結ぶ片方向リンクで、片方向リングR11の一部をなす。
【0113】
片方向リンクL108は、転送バッファ部A132から出力ミキサ部A133を結ぶ片方向リンクで、片方向リングR11の一部をなす。
【0114】
片方向リンクL109は、送信バッファ部A135から出力ミキサ部A133を結ぶ片方向リンクである。
【0115】
通知M101は、転送バッファ部A132とバッファ使用量測定部A138との間の、双方向の通知である。
【0116】
通知M102は、混雑通知受信転送部A134と送信バッファ部A135との間の、双方向の通知である。
【0117】
通知M103は、混雑通知受信転送部A134と送信バッファ部A135との間の、双方向の通知である。
【0118】
通知M104は、送信バッファ部A135と出力測定部A136との間の、双方向の通知である。
【0119】
図4は、送信バッファ部A135の構成を詳細に示した図であり、送信キュー部352が、宛先混雑制御ノードの数だけキューを持つ場合に対応する。図4を参照すると、送信バッファ部A135は、入力分類部351と、送信キュー部352と、出力調整部353と、片方向リンクL110〜L111とを含む。
【0120】
入力分類部351は、分類処理部351−1と、リング識別部351−2と、フロー数測定部351−3を含む。
【0121】
分類処理部351−1は、転送方向決定部A11より入力されたフレームを、宛先混雑制御ノードに応じて分類して、宛先混雑制御ノードアドレスに応じた送信キュー部352に転送する。
【0122】
リング識別部351−2は、混雑通知受信転送部A134からの通知M103による要求に応じ、送信バッファ部A135に入力されるフロー毎に、入力元となるリングIDを、通知M103を用いて混雑通知受信転送部A134に通知する。
【0123】
フロー数測定部351−3は、混雑通知受信転送部A134からの通知M103による要求に応じ、利用可能な送信キュー数や、各送信キューを通過するフロー数を、通知M103を用いて混雑通知受信転送部A134に通知する。
【0124】
送信キュー部352は、宛先混雑制御ノード別に用意された送信キュー全体のことであり、入力分類部351から宛先混雑制御ノード別に分類されて入力されたフレームを、出力調整部353からの要求があるまで、蓄積する機能を有する。
【0125】
出力調整部353は、以下に挙げる4つの機能を有する。
【0126】
(1)フレームの出力量が、混雑通知受信転送部A134から通知M102によって各キュー毎に設定された出力量以下になるように制限する。
【0127】
(2)フレーム出力量が(1)の制限のほか、予め設定されるかもしくは動的に変化する、重みや優先順位等に従うよう、調整する。
【0128】
(3)設定された制限量にしたがって、リンク群L111を通じて送信キュー部352の各キューよりフレームを取り出して、リンクL109を通じて出力ミキサ部A133に向けて転送する。
【0129】
(4)出力測定部A136からの通知M104による要求に応じて、送信キュー部352から出力ミキサ部A133に転送するフレームの個数、ビット数、バイト数、フレームを1つ以上蓄積している送信キューの数他を、出力測定部A136に通知M104で通知する。
【0130】
片方向リンク群L110は、入力分類部354から送信キュー部352へ向かうリンクの総称である。
【0131】
片方向リンク群L111は、送信キュー部352から出力調整部353へ向かうリンクの総称である。
【0132】
図5は、送信バッファ部A135の構成を詳細に示した図であり、送信キュー部355が、制限対象キューと制限非対象キューの2つだけキューを持つ場合に対応する。
【0133】
図5を参照すると、送信バッファ部A135は、入力分類部354と、送信キュー部355と、出力調整部353と、片方向リンクL110〜L111とを含む。
【0134】
入力分類部354は、分類処理部354−1と、リング識別部354−2と、フロー数測定部354−3を含む。
【0135】
分類処理部354−1は、混雑通知受信転送部A134が通知M103で指定したフローを、混雑通知受信転送部A134が通知M103で指定した送信キューに転送するよう設定し、転送方向決定部A11よりリンクL105を通じて入力されたフレームを、上で指定された方法もしくは、予め規定された分類法や動的に変化する分類法などに従い、転送量制限対象宛先ノードか転送量制限対象宛先ノードではないか分類し、リンク群L110を通じて分類結果に応じた送信キュー部355に転送する。
【0136】
リング識別部354−2は、混雑通知受信転送部A134からの通知M103による要求に応じ、送信バッファ部A135に入力されるフロー毎に、入力元となるリングIDを、通知M103を用いて混雑通知受信転送部A134に通知する。
【0137】
フロー数測定部354−3は、混雑通知受信転送部A134からの通知M103による要求に応じ、利用可能な送信キュー数や、各送信キューを通過するフロー数を、通知M103を用いて混雑通知受信転送部A134に通知する。
【0138】
送信キュー部355は、転送量制限対象キューと、転送量制限非対象キューの、2つのキュー全体のことであり、入力分類部351から制限対象及び制限非対象に分類されて入力されたフレームを、出力調整部353からの要求があるまで、蓄積する機能を有する。
【0139】
出力調整部353については、図4の出力調整部と同様のものを用いる。
【0140】
片方向リンク群L110は、入力分類部354から送信キュー部355へ向かうリンクの総称である。
【0141】
片方向リンク群L111は、送信キュー部355から出力調整部353へ向かうリンクの総称である。
【0142】
図6は、送信バッファ部A135の構成を詳細に示した図であり、送信キュー部357が、クライアント、ノードグループ、宛先リング、コスト、IPフロー数、その他の単位毎に、任意の数のキューを持つ場合に対応する。図6を参照すると、送信バッファ部A135は、入力分類部356と、送信キュー部357と、出力調整部353と、片方向リンクL110〜L111とを含む。
【0143】
入力分類部356は、分類処理部356−1と、リング識別部356−2と、フロー数測定部356−3を含む。
【0144】
分類処理部356−1は、混雑通知受信転送部A134が通知M103で指定した方法や、宛先クライアントID毎、宛先グループID毎、ノードグループID毎、IPアドレス毎、IPポート番号毎などの、任意の予め規定された方法もしくは動的に変化する方法等により、リンクL105より受信したフレームが各送信キューに分類されるよう設定を行ない、転送方向決定部A11よりリンクL105を通じて入力されたフレームを、上で設定された方法によって分類し、リンク群L110を用いて分類結果に応じた送信キュー部357に転送する。
【0145】
リング識別部356−2は、混雑通知受信転送部A134からの通知M103による要求に応じ、送信バッファ部A135に入力されるフロー毎に、入力元となるリングIDを、通知M103を用いて混雑通知受信転送部A134に通知する。
【0146】
フロー数測定部356−3は、混雑通知受信転送部A134からの通知M103による要求に応じ、利用可能な送信キュー数や、各送信キューを通過するフロー数を、通知M103を用いて混雑通知受信転送部A134に通知する。
【0147】
送信キュー部357は、宛先クライアントID毎、宛先グループID毎、ノードグループID毎、IPアドレス毎、IPポート番号毎などの、任意の単位で用意されたキュー全体のことであり、入力分類部356から宛先クライアント毎に分類されて入力されたフレームを、出力調整部353からの要求があるまで、蓄積する機能を有する。
【0148】
出力調整部353については、図4の出力調整部と同様のものを用いる。
【0149】
片方向リンク群L110は、入力分類部356から送信キュー部357へ向かうリンクの総称である。
【0150】
片方向リンク群L111は、送信キュー部357から出力調整部353へ向かうリンクの総称である。
【0151】
次に、図7を参照して、混雑通知送信部A137において混雑制御機能が有効になっている場合の、混雑通知送信部A137における動作について詳細に説明する。
【0152】
混雑通知送信部A137は、定期的にバッファ使用量測定部A138に対して、混雑発生の有無を確認させる(ステップ101)。
【0153】
混雑通知送信部A137は、バッファ使用量測定部A138より混雑発生有無の通知を受け、混雑発生の場合はステップ103へ、混雑発生なしの場合は、ステップ105に処理を移す(ステップ102)。
【0154】
混雑通知送信部A137は、出力測定部A136に対して、A135からA133に転送されるフレーム全体の、量U、及び宛先混雑制御ノード数Dの通知を要求する(ステップ103)。
【0155】
混雑通知送信部A137は、ステップ103で求められた送信フレーム量U及び宛先混雑制御ノード数Dを用い、各混雑制御ノードの各送信キューにおいて許容される、測定対象片方向リンクR11への最大のフレーム挿入量を決定する。この量を、混雑制御ノードA1よりリングR11に挿入されるフロー1本あたりの平均送信フレーム量、すなわち「送信フレーム量U÷宛先ノード数D」より決定し、今後は許容出力量と呼ぶこととする(ステップ104)。
【0156】
混雑通知送信部A137は、ステップ102においてバッファ使用量測定部A138より混雑発生通知を受けなかった場合は、混雑は発生していないとみなし、許容出力量をNULL値にリセットする。混雑通知は混雑が発生していない場合でも、許容出力量にNULL値が代入して送信される(ステップ105)。
【0157】
混雑通知送信部A137は、ステップ104及びステップ105で決定した許容出力量を、片方向リングR12を用いて、片方向リングR11の入力側に位置する混雑制御ノードに通知する。この混雑通知には、許容出力量のほかに通知発信元ノードのアドレスも含まれる。なお、通知発信元ノードアドレスは、他のノードでこの混雑通知が転送されても変化しない(ステップ106)。
【0158】
次に図8を参照して、混雑通知受信時の、混雑通知受信転送部A134における動作について詳細に説明する。
【0159】
混雑通知受信転送部A134において、混雑制御機能が有効になっている場合、混雑通知受信転送部A134は常に転送方向決定部A11より到着する混雑通知を待ち受けている。混雑通知を受信すると、図8の順序で処理が行われる。
【0160】
ステップ201〜202は、受信した混雑通知フレームを受け入れるかどうか判断する動作、ステップ203は、受信した混雑通知フレームを隣接ノードに転送するための動作、ステップ204〜206は、制限対象となるキューを決定するための動作、ステップ207〜209は、制限対象キューに対して実際に送出フレーム量の制限を行なうための動作、ステップ210〜211は、各フローを各送信キューに分類するための設定を行なう動作である。
【0161】
混雑通知受信転送部A134は、ステップ201で、混雑通知に含まれる、通知発信元ノードアドレスを参照し、通知の発信元ノードが自ノードである場合は、処理を終了する。これにより、リングを1周したフレームや、何らかの事情で通知発信元に戻されたフレームが廃棄される。
【0162】
混雑通知受信転送部A134は、ステップ201で混雑通知に含まれる通知発信元ノードアドレスを参照した結果、発信元が他ノードであった場合は、ステップ202に移り許容出力量を調べる。
【0163】
混雑通知受信転送部A134は、許容出力量がNULL値である場合は、処理を終了する(ステップ202)。
【0164】
混雑通知受信転送部A134は、ステップ202において許容出力量がNULL値以外である場合は、片方向リングR12を用い、受信した混雑通知をそのまま片方向リンクR11の入力側にある隣接混雑制御ノード宛に転送する。この際、通知発信元ノードアドレスには変更を加えず、受信した混雑通知に含まれていた通知発信元ノードアドレスを代入する(ステップ203)。
【0165】
混雑通知受信転送部A134は、混雑通知を受信した片方向リングのリングID(ここではR11又はR12)を調べ、通知を受信したリングとは逆方向に流れるリングにおいて、混雑が発生していると推定する。これは、混雑を検知したノードは、常に混雑発生リングと逆方向のリングを使って混雑通知を送信し、また、混雑通知を転送するノードは、常に通知を受信したリングを使って混雑通知を転送するために、推定することができる(ステップ204)。
【0166】
混雑通知受信転送部A134は、混雑通知の通知発信元ノードアドレスを参照し、ルーティングテーブルA12を用いて、通知発信ノードまでのホップ数及びフレーム送出先リングIDを参照する。そして、ステップ204において推定した混雑発生リングと、今回参照した通知発信ノードへのフレーム送出先リングIDが同じである場合は処理を継続するが、これらが異なっていた場合は処理を中止する。この動作は、混雑リンクを自ノードが送出するフローが通過しているかどうか判断するために行っている(ステップ205)。
【0167】
混雑通知受信転送部A134は、混雑発生リングを使って送信される宛先ノードの内、通知発信ノードまでのホップ数より、多くホップ数のかかるノードへのフローを、リングの特性により混雑リンクを通過していると判断し、これらフローが収容するノードを制限対象キューとして抽出する(ステップ206)。
【0168】
混雑通知受信転送部A134は、制御対象とする各キューについて、それぞれのキューが何本のフローによって利用されているか調べる。そして、通過するフローの本数をFとしたとき、許容出力量U/Dをフロー数Fで乗じた(U/D)×Fの値を、制限出力量とする。この動作は制限対象とする各キュー毎に行なう(ステップ207)。
【0169】
混雑通知受信転送部A134は、制限出力量が現在設定されている制限出力量(今後は旧制限出力量と呼ぶ)よりも大きい場合は、処理を終了する(ステップ208)。
【0170】
混雑通知受信転送部A134は、ステップ208で制限出力量が旧制限出力量よりも小さい場合は、送信バッファ部A135の出力調整部353に対して、おのおのの制限対象のキューについて、出力フレーム量を、ステップ207で決定した制限出力量に制限するよう設定する(ステップ209)。
【0171】
混雑通知受信転送部A134は、送信バッファ部A135に対して、送信キューの分類方法を問い合わせ、送信キューが制御・非制御の2分類にされていた場合など、フロー毎に収容キューを設定する必要があるかどうか判断する(ステップ210)。
【0172】
混雑通知受信転送部A134は、ステップ210で、フロー又はその他の単位毎に、収容キューを個別に設定する必要がないと判断した場合は、処理を終了させる。
【0173】
混雑通知受信転送部A134は、ステップ208で、フロー毎又はその他の単位毎に、収容キューを個別に設定する必要があると判断した場合は、送信バッファ部A135に対して、各フロー又はその他の単位毎に、収容キューを指定していく(ステップ211)。
【0174】
すべてのキューの制限出力量は、最大制限出力量に達するまで定期的に増加していく。また、送信キューが制限・非制限の2つに分けられていた場合は、制限キューに入ったフローは、一定時間後もしくは非制限キューと同じかそれ以上の出力フレーム量になった場合に、非制限キューに移る。
【0175】
図1を参照して、本実施の形態において、宛先混雑制御ノード毎に送信キューを設置した場合の混雑制御の動作について、具体例を用いて詳細に説明する。
【0176】
図1において、クライアント群C1と混雑制御ノードA1、クライアント群C2と混雑制御ノードA2、クライアント群C3と混雑制御ノードA3、クライアント群C4と混雑制御ノードA4を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11及び片方向リングR12の速度を10M(bit/sec)とする。
【0177】
まず、クライアント群C3に属するクライアントが、8M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR11を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR11の帯域幅を下回っているので、混雑は発生しない。
【0178】
この場合、混雑制御ノードA3において、クライアント群C3からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードA1宛の送信バッファを通過する。
【0179】
次に、クライアント群C2に属するクライアントが、8M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR11を経由してフレームを送信する。
【0180】
この場合、混雑制御ノードA2において、片方向リングR11を流れるパケットが利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C2から入力され片方向リングR11に出力されるフレームは、片方向リンクR11より入力されるフレームよりも、優先的に片方向リングR11に向けて送信される。このため、混雑制御ノードA2において、クライアント群C2からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードA1宛の送信バッファを通過する。
【0181】
ここで、片方向リングR11には、既にクライアント群C3より送信されるフレームが流れているため、混雑制御ノードA2における片方向リングR11への出力フレーム量が、片方向リングR11の帯域幅を上回り、混雑制御ノードA2における片方向リングR11への出力側で混雑が発生する。
【0182】
混雑制御ノードA2において、混雑制御ノードA2の転送バッファ利用量が下限値に達していない場合、クライアント群C2から送信されるフレームが、混雑制御ノードA2に片方向リングR11より入力されるフレームよりも優先されるため、混雑制御ノードA2に片方向リングR11より入力されるフレームは、混雑制御ノードA2の転送バッファに蓄積される。
【0183】
混雑制御ノードA2において、混雑制御ノードA2の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードA2に片方向リングR11より入力されるフレームが、クライアント群C2から送信されてリングR11に流れるフレームよりも優先されるようになる。
【0184】
混雑制御ノードA2において、混雑制御ノードA2への入力が過大である場合には、優先順位逆転を行っても、混雑制御ノードA2における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードA2は片方向リングR11における混雑発生を検知する。この実施の形態においては、混雑発生検知は転送バッファで行われ、送信バッファでは混雑発生検知を行なわない。
【0185】
混雑制御ノードA2は、クライアント群C2から入力され片方向リングR11に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR12を用いて混雑制御ノードA3に送信する。ここでクライアント群C2から片方向リングR11に転送されるフレーム量が2M(bit/sec)であったとすると、宛先ノードはA1の1箇所だけであるので、2M(bit/sec)÷1=2M(bit/sec)を、許容出力量として送信する。
【0186】
混雑制御ノードA2は、片方向リングR11の出力側における混雑を検出している間、許容出力量を周期的にノードA3に向けて発信する。
【0187】
混雑制御ノードA2は、片方向リングR12の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR11を用いて周期的にノードA1に向けて発信する。
【0188】
混雑制御ノードA1は、NULL情報の入った混雑通知を受信し、その通知を破棄する。
【0189】
混雑制御ノードA3は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR12を用いて混雑制御ノードA4に送信する。
【0190】
混雑制御ノードA3を出発した混雑通知は、混雑制御ノードA4・混雑制御ノードA1で受信・転送され、片方向リングR12を1周して混雑制御ノードA2に戻る。混雑制御ノードA2は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0191】
混雑制御ノードA3は、混雑通知を片方向リングR12から受信したことから、片方向リングR11で混雑が発生していると推定する。そして、ルーティングテーブルを参照した結果、通知の発信元ノードである混雑制御ノードA2への経路にR11を利用していることから、自ノードが混雑に関係している可能性があると認識する。
【0192】
混雑制御ノードA3は、混雑通知の発信元が混雑制御ノードA2であることから、リングR11における混雑制御ノードA2の出力側で混雑が発生していると推定する。そして、ルーティングテーブルを参照し、リングR11に向けて送信され、混雑制御ノードA2へのコスト(ここでは1とする)より大きいコストが設定されているノード宛のフレームが、混雑リンクを通過するものと推定する。
【0193】
混雑制御ノードA3のルーティングテーブルに設定されている、混雑制御ノードA1への経路がリングR11、コストが2であったとすると、混雑制御ノードA3は、混雑制御ノードA1宛のフレームが、混雑リンクを通過するものと推定する。
【0194】
混雑制御ノードA3において、混雑制御ノードA1へ流れるフロー数は1、混雑制御ノードA1へ流れるフロー数も1であることから、重み係数は1になる。その結果、ノードA1宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)になるよう制限する。
【0195】
混雑制御ノードA3において、クライアント群C3からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードA1宛の送信キューを通過するので、このキューの出力が2M(bit/sec)に制限されることにより、クライアント群C3がクライアント群C1に向けて送信するフレームは、混雑制御ノードA2に4M(bit/sec)の速度で入力されるようになる。
【0196】
混雑制御ノードA2は、片方向リングR11より入力されるフレームの速度が4M(bit/sec)に減少したため、クライアント群C2から入力されるフレームを、8M(bit/sec)の速度で片方向リングR11に向けて送信することができるようになる。
【0197】
混雑制御ノードA2では、片方向リングR11より入力されるフレームの速度が2M(bit/sec)に減少したため、混雑制御ノードA2内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードA2は片方向リングR11の出力側における混雑検出を解除する。
【0198】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。混雑制御ノードA3は、2M(bit/sec)に制限されていた混雑制御ノードA1宛送信キューの出力を、徐々に増加させていく。
【0199】
以降、混雑制御ノードA3が送信キューの出力を上げていくと、再び混雑制御ノードA2で混雑が検知され、上記の動作が繰り返される。クライアント群が送信するフローに変化がない場合は、混雑を検知する毎に許容出力量は徐々に上がっていき、混雑制御ノードA2と混雑制御ノードA3の出力量が徐々にリンク帯域を2等分する5M(bit/sec)に近づく形で収束し、公平な帯域分割が行われる。
【0200】
次に、図1を参照して、本実施の形態において、制御・非制御という2種類のみの送信キューを設置した場合の混雑制御の動作について、具体例を用いて詳細に説明する。
【0201】
送信キューを2種類のみ設置した場合は、送信キューを宛先混雑制御ノード毎に設置した場合と比較して、設置するキューが少なく使用するメモリ量が少なくて済むという点、そして、各フローを「制限あり」「制限なし」という2つの送信キューへ分類するための設定を行なう点が異なる。
【0202】
図1において、クライアント群C1と混雑制御ノードA1、クライアント群C2と混雑制御ノードA2、クライアント群C3と混雑制御ノードA3、クライアント群C4と混雑制御ノードA4を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11及び片方向リングR12の速度を10M(bit/sec)とする。
【0203】
まず、クライアント群C3に属するクライアントが、8M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR11を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR11の帯域幅を下回っているので、混雑は発生しない。
【0204】
混雑制御ノードA3において、クライアント群C3からクライアント群C1に向けて送信されるフレームは、すべて「制限なし」の送信バッファを通過する。
【0205】
次に、クライアント群C2に属するクライアントが、8M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR11を経由してフレームを送信する。
【0206】
混雑制御ノードA2において、片方向リングR11を流れるパケットが利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C2から入力され片方向リングR11に出力されるフレームは、片方向リンクR11より入力されるフレームよりも、優先的に片方向リングR11に向けて送信される。
【0207】
混雑制御ノードA2において、クライアント群C2からクライアント群C1に向けて送信されるフレームは、すべて「制限なし」の送信バッファを通過する。
【0208】
混雑制御ノードA2において、片方向リングR11の出力側には、既にクライアント群C3より送信されるフレームが流れているため、混雑制御ノードA2における片方向リングR11への出力フレーム量が、片方向リングR11の帯域幅を上回り、混雑制御ノードA2における片方向リングR11への出力側で混雑が発生する。
【0209】
混雑制御ノードA2において、混雑制御ノードA2の転送バッファ利用量が下限値に達していない場合、クライアント群C2から送信されるフレームが、混雑制御ノードA2に片方向リングR11より入力されるフレームよりも優先されるため、混雑制御ノードA2に片方向リングR11より入力されるフレームは、混雑制御ノードA2の転送バッファに蓄積される。
【0210】
混雑制御ノードA2において、混雑制御ノードA2の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードA2に片方向リングR11より入力されるフレームが、クライアント群C2から送信されてリングR11に流れるフレームよりも優先されるようになる。
【0211】
混雑制御ノードA2において、混雑制御ノードA2への入力が過大である場合には、混雑制御ノードA2における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードA2は片方向リングR11における混雑発生を検知する。
【0212】
混雑制御ノードA2は、クライアント群C2から入力され片方向リングR11に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR12を用いて混雑制御ノードA3に送信する。ここでクライアント群C2から片方向リングR11に転送されるフレーム量が2M(bit/sec)であったとすると、宛先ノードはA1の1箇所だけであるので、2M(bit/sec)÷1=2M(bit/sec)を、許容出力量として送信する。
【0213】
混雑制御ノードA2は、片方向リングR11の出力側における混雑を検出している間、許容出力量を周期的にノードA3に向けて発信する。
【0214】
混雑制御ノードA2は、片方向リングR12の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR11を用いて周期的にノードA1に向けて発信する。
【0215】
混雑制御ノードA1は、NULL情報の入った混雑通知を受信し、その通知を破棄する。
【0216】
混雑制御ノードA3は、許容出力量の入った混雑通知を片方向リングR12より受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR12を用いて混雑制御ノードA4に転送する。
【0217】
混雑制御ノードA3を出発した混雑通知は、混雑制御ノードA4・混雑制御ノードA1で受信・転送され、片方向リングR12を1周して混雑制御ノードA2に戻る。混雑制御ノードA2は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0218】
混雑制御ノードA3は、混雑通知を片方向リングR12から受信したことから、片方向リングR11で混雑が発生していると推定する。そして、ルーティングテーブルを参照した結果、混雑制御ノードA2への経路にR11を利用していることから、自ノードが混雑に関係している可能性があると認識する。
【0219】
混雑制御ノードA3は、混雑通知の発信元が混雑制御ノードA2であることから、混雑制御ノードA2の出力側で混雑が発生していると推定する。そして、ルーティングテーブルを参照し、リングR11に向けて送信され、混雑制御ノードA2へのコスト(ここでは1とする)より大きいコストが設定されているノード宛のフレームが、混雑リンクを通過するものと推定する。
【0220】
混雑制御ノードA3のルーティングテーブルに設定されている、混雑制御ノードA1への経路がリングR11、コストが2であったとすると、混雑制御ノードA3は、混雑制御ノードA1宛のフレームが、混雑リンクを通過するものと推定する。
【0221】
混雑制御ノードA3において、混雑リンクを通過するフロー数が1であることから、重み係数は1になる。その結果、「制限あり」のバッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)になるよう制限する。このとき、混雑リンクを通過するフローが制限ありの送信キューを通るよう、入力分類部の設定を行なう。
【0222】
混雑制御ノードA3において、クライアント群C3からクライアント群C1に向けて送信されるフレームは、すべて「制限あり」の送信キューを通過するので、このキューの出力が2M(bit/sec)に制限されることにより、クライアント群C3がクライアント群C1に向けて送信するフレームは、混雑制御ノードA2に2M(bit/sec)の速度で入力されるようになる。
【0223】
混雑制御ノードA2は、片方向リングR11より入力されるフレームの速度が2M(bit/sec)に減少したため、クライアント群C2から入力されるフレームを、8M(bit/sec)の速度で片方向リングR11に向けて送信することができるようになる。
【0224】
混雑制御ノードA2では、片方向リングR11より入力されるフレームの速度が2M(bit/sec)に減少したため、混雑制御ノードA2内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードA2は片方向リングR11の出力側における混雑検出を解除する。
【0225】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。混雑制御ノードA3は、2M(bit/sec)に制限されていた制限付き送信キューの出力を、徐々に増加させていく。
【0226】
ここでもし、制限を緩和させた結果、制限付きキューと制限なしキューの出力量が等しくなった場合は、制限付きキューの利用を停止し、すべてのフローを制限なしキューに分類する。
【0227】
以降、混雑制御ノードA3が制限あり送信キューの出力を上げていくと、再び混雑制御ノードA2で混雑が検知され、上記の動作が繰り返される。クライアント群が送信するフローに変化がない場合は、混雑を検知する毎に許容出力量は徐々に上がっていき、混雑制御ノードA2と混雑制御ノードA3の出力量が徐々にリンク帯域を2等分する5M(bit/sec)に近づく形で収束し、公平な帯域分割が行われる。
【0228】
図1を参照して、本実施の形態において、宛先ノードへのコスト毎に送信キューを設置した場合の混雑制御の動作について、具体例を用いて詳細に説明する。
【0229】
送信キューを宛先ノードへのコスト毎に設置した場合は、送信キューを宛先混雑制御ノード毎に設置した場合と比較して、設置するキューが少なく使用するメモリ量が少なくて済むという点が異なる。また、キューを「制限あり」「制限なし」という2つの送信キューへ分類した場合と比較すると、より細かな制御が可能になる点が異なる。
【0230】
図1において、クライアント群C1と混雑制御ノードA1、クライアント群C2と混雑制御ノードA2、クライアント群C3と混雑制御ノードA3、クライアント群C4と混雑制御ノードA4を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11及び片方向リングR12の速度を10M(bit/sec)とする。
【0231】
まず、クライアント群C3に属するクライアントが、8M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR11を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR11の帯域幅を下回っているので、混雑は発生しない。
【0232】
混雑制御ノードA3において、混雑制御ノードA1へのコストが25、ノードA2へのコストが12、ノードA4へのコストが8とルーティングテーブルに設定されており、送信キューがコスト0〜9、10〜19、20〜29という3つの区分で設置されているとする。
【0233】
クライアント群C3からクライアント群C1に向けて送信されるフレームは、ノードA1へのコストが25であることから、すべてコスト20〜29の送信バッファを通過する。
【0234】
次に、クライアント群C2に属するクライアントが、8M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR11を経由してフレームを送信する。
【0235】
混雑制御ノードA2において、片方向リングR11を流れるパケットが利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C2から入力され片方向リングR11に出力されるフレームは、片方向リンクR11より入力されるフレームよりも、優先的に片方向リングR11に向けて送信される。
【0236】
混雑制御ノードA2において、混雑制御ノードA1へのコストが13、ノードA3へのコストが12、ノードA4へのコストが20とルーティングテーブルに設定されており、送信キューがコスト0〜9、10〜19、20〜29という3つの区分で設置されているとする。
【0237】
クライアント群C2からクライアント群C1に向けて送信されるフレームは、ノードA1へのコストが13であることから、すべてコスト10〜19の送信バッファを通過する。
【0238】
混雑制御ノードA2において、片方向リングR11には、既にクライアント群C3より送信されるフレームが流れているため、混雑制御ノードA2における片方向リングR11への出力フレーム量が、片方向リングR11の帯域幅を上回り、混雑制御ノードA2における片方向リングR11への出力側で混雑が発生する。
【0239】
混雑制御ノードA2において、混雑制御ノードA2の転送バッファ利用量が下限値に達していない場合、クライアント群C2から送信されるフレームが、混雑制御ノードA2に片方向リングR11より入力されるフレームよりも優先されるため、混雑制御ノードA2に片方向リングR11より入力されるフレームは、混雑制御ノードA2の転送バッファに蓄積される。
【0240】
混雑制御ノードA2において、混雑制御ノードA2の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードA2に片方向リングR11より入力されるフレームが、クライアント群C2から送信されてリングR11に流れるフレームよりも優先されるようになる。
【0241】
混雑制御ノードA2において、混雑制御ノードA2への入力が過大である場合には、混雑制御ノードA2における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードA2は片方向リングR11における混雑発生を検知する。
【0242】
混雑制御ノードA2において、混雑制御ノードA2は、クライアント群C2から入力され片方向リングR11に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR12を用いて混雑制御ノードA3に送信する。ここでクライアント群C2から片方向リングR11に転送されるフレーム量が2M(bit/sec)であったとすると、宛先ノードはA1の1箇所だけであるので、2M(bit/sec)÷1=2M(bit/sec)を、許容出力量として送信する。
【0243】
混雑制御ノードA2は、片方向リングR11の出力側における混雑を検出している間、許容出力量を周期的にノードA3に向けて発信する。
【0244】
混雑制御ノードA2は、片方向リングR12の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR11を用いて周期的にノードA1に向けて発信する。
【0245】
混雑制御ノードA1は、NULL情報の入った混雑通知を受信し、その通知を破棄する。
【0246】
混雑制御ノードA3は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR12を用いて混雑制御ノードA4に送信する。
【0247】
混雑制御ノードA3を出発した混雑通知は、混雑制御ノードA4・混雑制御ノードA1で受信・転送され、片方向リングR12を1周して混雑制御ノードA2に戻る。混雑制御ノードA2は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0248】
混雑制御ノードA3は、混雑通知を片方向リングR12から受信したことから、片方向リングR11で混雑が発生していると推定する。そして、ルーティングテーブルを参照した結果、混雑制御ノードA2への経路にR11を利用していることから、自ノードが混雑に関係している可能性があると認識する。
【0249】
混雑制御ノードA3は、混雑通知の発信元が混雑制御ノードA2であることから、混雑制御ノードA2の出力側で混雑が発生していると推定する。そして、ルーティングテーブルを参照し、リングR11に向けて送信され、混雑制御ノードA2へのコストより大きいコストが設定されているノード宛のフレームが、混雑リンクを通過するものと推定する。
【0250】
混雑制御ノードA3は、ノードA2へのコストが12であるので、コスト10〜19、及びコスト20〜29の2つのキューが、混雑に関係すると推定する。
【0251】
混雑制御ノードA3において、コスト10〜19、及びコスト20〜29の2つのキューを流れるフロー数の合計は1であることから、重み係数は1になる。その結果、コスト10〜19、及びコスト20〜29の2つの送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)になるよう制限する。
【0252】
混雑制御ノードA3において、クライアント群C3からクライアント群C1に向けて送信されるフレームは、すべてコスト20〜29の送信キューを通過するので、このキューの出力が2M(bit/sec)に制限されることにより、クライアント群C3がクライアント群C1に向けて送信するフレームは、混雑制御ノードA2に2M(bit/sec)の速度で入力されるようになる。
【0253】
混雑制御ノードA2は、片方向リングR11より入力されるフレームの速度が2M(bit/sec)に減少したため、クライアント群C2から入力されるフレームを、8M(bit/sec)の速度で片方向リングR11に向けて送信することができるようになる。
【0254】
混雑制御ノードA2では、片方向リングR11より入力されるフレームの速度が2M(bit/sec)に減少したため、混雑制御ノードA2内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードA2は片方向リングR11の出力側における混雑検出を解除する。
【0255】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。混雑制御ノードA3は、2M(bit/sec)に制限されていたコスト10〜19のノード宛、及びコスト20〜29ノード宛の送信キューの出力を、徐々に増加させていく。
【0256】
以降、混雑制御ノードA3が制限あり送信キューの出力を上げていくと、再び混雑制御ノードA2で混雑が検知され、上記の動作が繰り返される。クライアント群が送信するフローに変化がない場合は、混雑を検知する毎に許容出力量は徐々に上がっていき、混雑制御ノードA2と混雑制御ノードA3の出力量が徐々にリンク帯域を2等分する5M(bit/sec)に近づく形で収束し、公平な帯域分割が行われる。
【0257】
以降、混雑が検知される度に、上記の処理が繰り返されていく。
【0258】
次に、本形態の実施の効果について説明する。
【0259】
従来技術1では、混雑通知を受信したノードからリングR1に挿入されるすべてのフローがフロー送出量制限の対象となり、混雑に関係しないフローまでもが送出量制限の対象となったため、リンク帯域の利用率が低下した。
【0260】
本実施の形態では、混雑制御ノードA1において予めリングR1上の宛先ノード毎等に区分された送信キューを備え、混雑通知を受信した場合は混雑に関係するキューを推定し、混雑に関係するキューの出力のみを制限の対象にする。これにより、混雑に関係のないフローのフレーム送信量が不当に制限されることがなくなり、リンク帯域の有効利用が可能になった。
【0261】
従来技術1では更に、制限出力量が宛先ノード毎ではなく、送信ノード(つまり、クライアント群から受信したフレームをリングに転送する混雑制御ノード)から出力されるすべての送信フレーム量で設定されたため、宛先ノード数が少ない送信元ノードでは、各フローに割り当てられる帯域が大きくなり、宛先ノード数が多い送信元ノードでは各フローに割り当てられる帯域が小さく制限されてしまい、各フロー間の公平性が保たれなかった。
【0262】
本実施の形態では、宛先ノード毎にキューを設置し、利用可能帯域を宛先ノード毎に設定できるため、フロー間における利用可能帯域の差がなくなり、フロー間での公平性を保つことが可能になった。
【0263】
従来技術2において、各フローの使用リンク帯域の公平性を保つためには、本実施の形態における混雑通知にあたるコントロールメッセージを、フロー毎に送信する必要があった。
【0264】
本実施の形態では、混雑発生を検知したノード毎に混雑通知を送信するだけで、各フローの使用リンク帯域の公平性を保つことができる。したがって、混雑通知の送信回数がフロー数に依存しないため、フローが増えた場合でも、混雑通知の送信回数を増やすことなく、フロー間の公平性を保つことができる。
【0265】
次に、本発明の第2の実施の形態について図面を参照して詳細に説明する。
【0266】
本発明の第2の実施の形態は、第1の実施の形態において、混雑通知受信時の、混雑通知受信転送部A134における動作を変更した場合に対応する。なお、構成に変化はない。
【0267】
本実施の形態において、図9に挙げるステップ201〜211は、図8に示された第1の実施の形態におけるステップ201〜211と等しい動作を行なう。
【0268】
図9を参照すると、本発明の第2の実施の形態は、図8に示された第1の実施の形態において、受信した混雑通知フレームを隣接ノードに転送するための動作(ステップ203)が、制限対象となるキューを決定するための動作(ステップ204〜206)の後で行われている点で異なる。
【0269】
これにより、混雑通知受信転送部A134は、ステップ205において自ノードが混雑に関係しないと判断した場合は、リングの特性によって、混雑通知を受信した片方向リング上に存在する自ノードよりも下流にあるノードも、同様に混雑に関係しないと推定できる。したがって、ステップ203による混雑通知の転送を行なわない。
【0270】
次に、本形態の実施の効果について説明する。
【0271】
本実施の形態では、混雑制御ノードにおいて、混雑通知をこれ以上転送しても効果が得られないと判断できた場合には、混雑通知がリングを1周する前に通知の転送を停止することができる。これにより、不要な混雑通知の転送によるリンク帯域の消費を、減少させることができる。
【0272】
次に、本発明の第3の実施の形態について図面を参照して詳細に説明する。
【0273】
本発明の第3の実施の形態は、第1の実施の形態において、混雑制御ノードに障害処理機能を付加した場合に対応する。
【0274】
図10を参照すると、本発明の第3の実施の形態は、図1に示された第1の実施の実施の形態において、混雑制御ノードA1の代わりに混雑制御ノードF1、混雑制御ノードA2の代わりに混雑制御ノードF2、混雑制御ノードA3の代わりに混雑制御ノードF3、混雑制御ノードA4の代わりに混雑制御ノードF4を備えている点で異なる。
【0275】
混雑制御ノードF2〜F4は混雑制御ノードF1と等しい構成を持つ。以降、混雑制御ノードF1〜F4を代表して、混雑制御ノードF1のみについて説明するが、混雑制御ノードF1についての記述は、特に断りのない限り混雑制御ノードF2〜F4にも同様に適用可能である。
【0276】
図11は、混雑制御ノードF1の構成を詳細に示した図である。混雑制御ノードF1は、転送方向決定部A11と、ルーティングテーブルA12と、混雑制御部A13と、別の混雑制御部A14と、障害検出部F17と、障害検出部F18と、障害処理部F19、双方向リンクL201、通知M201〜203を含む。
【0277】
障害検出部F17は、片方向リングR11への出力で発生した障害及び、片方向リングR12からの入力で発生した障害を検出し、検出した障害を障害処理手順F19に通知する。
【0278】
障害検出部F18は、片方向リングR11からの入力で発生した障害及び、片方向リングR12への出力で発生した障害を検出し、検出した障害を障害処理手順F19に通知する。
【0279】
障害処理部F19は、以下に挙げる3つの機能を有する。
【0280】
(1)障害検出部F17又はF18からより通知M201又はM202で通知された障害情報をもとに、通知M203を用いてルーティングテーブルA12を書き換える。
【0281】
(2)障害通知フレームを、双方向リンクL201を通じて転送方向決定部A11に向けて送信し、発生した障害を他の混雑制御ノード内の障害処理部F19に伝達する。
【0282】
(3)他の傷害処理部F19が送信し、双方向リンクL201を通じて転送方向決定部A17より受信した障害通知フレームをもとに、ルーティングテーブルA12を書き換える。
【0283】
双方向リンクL201は、転送方向決定部A11から障害処理部F19、及び、障害処理部F19から転送方向決定部A11に向かう、双方向リンクである。
【0284】
通知M201は、障害検出部F17と障害処理部F19との間の、双方向の通知である。
【0285】
通知M202は、障害検出部F18と障害処理部F19との間の、双方向の通知である。
【0286】
通知M203は、ルーティングテーブルA12と障害処理部F19との間の、双方向の通知である。
【0287】
図10を参照して、本実施の形態において、障害発生時に宛先混雑制御ノード毎に送信キューを設置した場合の混雑制御の動作について、具体例を用いて詳細に説明する。
【0288】
図10において、クライアント群C1と混雑制御ノードF1、クライアント群C2と混雑制御ノードF2、クライアント群C3と混雑制御ノードF3、クライアント群C4と混雑制御ノードF4を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11及び片方向リングR12の速度を10M(bit/sec)とする。
【0289】
リングR1において、混雑制御ノードF1と混雑制御ノードF2の間の、片方向リングR11及び片方向R12の両方に、障害が発生しているとする。障害は既に混雑制御ノードF1及びF2で検知され、混雑制御ノードF1及びF2リングR1に存在するすべてのノードに障害通知が伝達されているとする。
【0290】
すべてのノードにおいて、障害通知によってルーティング情報の変更が完了している。ルーティング情報には、混雑制御ノードF1と混雑制御ノードF2の間のリンクを通らないよう、迂回ルートが設定されている。
【0291】
まず、クライアント群C3に属するクライアントが、8M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR12を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR12の帯域幅を下回っているので、混雑は発生しない。
【0292】
混雑制御ノードF3において、クライアント群C3からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードF1宛の送信バッファを通過する。
【0293】
次に、クライアント群C2に属するクライアントが、8M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR12を経由してフレームを送信する。
【0294】
混雑制御ノードF3において、片方向リングR12を流れるパケットが利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C3から入力され片方向リングR12に出力されるフレームは、片方向リンクR12より入力されるフレームよりも、優先的に片方向リングR12に向けて送信される。
【0295】
混雑制御ノードF2において、クライアント群C2からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードF1宛の送信バッファを通過する。
【0296】
片方向リングR12には、既にクライアント群C3より送信されるフレームが流れているため、混雑制御ノードF3における片方向リングR12への出力フレーム量が、片方向リングR12の帯域幅を上回り、混雑制御ノードF3における片方向リングR12への出力側で混雑が発生する。
【0297】
混雑制御ノードF3において、混雑制御ノードF3の転送バッファ利用量が下限値に達していない場合、クライアント群C3から送信されるフレームが、混雑制御ノードF3に片方向リングR12より入力されるフレームよりも優先されるため、混雑制御ノードF3に片方向リングR12より入力されるフレームは、混雑制御ノードF3の転送バッファに蓄積される。
【0298】
混雑制御ノードF3において、混雑制御ノードF3の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードF3に片方向リングR12より入力されるフレームが、クライアント群C3から送信されてリングR12に流れるフレームよりも優先されるようになる。
【0299】
混雑制御ノードF3において、混雑制御ノードF3への入力が過大である場合には、優先順位逆転による処理が間に合わず、混雑制御ノードF3における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードF3は片方向リングR12における混雑発生を検知する。
【0300】
混雑制御ノードF3は、クライアント群C3から入力され片方向リングR12に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR11を用いて混雑制御ノードF2に送信する。ここでクライアント群C3から片方向リングR12に転送されるフレーム量が4M(bit/sec)であったとすると、宛先ノードはF1の1箇所だけであるので、4M(bit/sec)÷1=4M(bit/sec)を、許容出力量として送信する。
【0301】
混雑制御ノードF3は、片方向リングR12の出力側における混雑を検出している間、許容出力量を周期的にノードF2に向けて発信する。
【0302】
混雑制御ノードF3は、片方向リングR11の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR12を用いて周期的にノードF4に向けて発信する。
【0303】
混雑制御ノードF4は、NULL情報の入った混雑通知を受信し、その通知を破棄する。NULL情報の入った混雑通知は、必ず隣接ノードで破棄される。
【0304】
混雑制御ノードF2は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR11を用いて隣接ノードである混雑制御ノードA1に送信しようとするが、障害のためにこの通知は破棄され、混雑通知の転送が打ち切られる。
【0305】
混雑制御ノードF2は、混雑通知を片方向リングR11から受信したことから、片方向リングR12で混雑が発生していると推定する。そして、ルーティングテーブルを参照した結果、通知の発信元ノードであるF3への経路にR12を利用していることから、自ノードが混雑に関係している可能性があると認識する。
【0306】
混雑制御ノードF2は、混雑通知の発信元が混雑制御ノードF3であることから、リングR12における混雑制御ノードF3の出力側で混雑が発生していると推定する。そして、ルーティングテーブルを参照し、リングR12に向けて送信され、混雑制御ノードF3へのコスト(ここでは1とする)より大きいコストが設定されているノード宛のフレームが、混雑リンクを通過するものと推定する。
【0307】
混雑制御ノードF2のルーティングテーブルに設定されている、混雑制御ノードF1への経路がリングR12、コストが3であり、また、混雑制御ノードF4への経路がリングR12、コストが2であったとすると、混雑制御ノードF2は、混雑制御ノードF1及びF4宛のフレームが、混雑リンクを通過するものと推定する。
【0308】
混雑制御ノードF2において、混雑制御ノードF1へ流れるフロー数は1であることから、重み係数は1になる。その結果、ノードF1宛の送信バッファの出力を、混雑通知で通知された許容出力量である4M(bit/sec)になるよう制限する。
【0309】
混雑制御ノードF2において、クライアント群C2からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードF1宛の送信キューを通過するので、このキューの出力が4M(bit/sec)に制限されることにより、クライアント群C2がクライアント群C1に向けて送信するフレームは、混雑制御ノードF3に4M(bit/sec)の速度で入力されるようになる。
【0310】
混雑制御ノードF3は、片方向リングR12より入力されるフレームの速度が4M(bit/sec)に減少したため、クライアント群C3から入力されるフレームを、6M(bit/sec)の速度で片方向リングR12に向けて送信することができるようになる。
【0311】
混雑制御ノードF3では、片方向リングR12より入力されるフレームの速度が4M(bit/sec)に減少したため、混雑制御ノードF3内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードF3は片方向リングR12の出力側における混雑検出を解除する。
【0312】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。混雑制御ノードF2は、4M(bit/sec)に制限されていた混雑制御ノードF1宛送信キューの出力を、徐々に増加させていく。
【0313】
以降、混雑制御ノードF2が送信キューの出力を上げていくと、再び混雑制御ノードF3で混雑が検知され、上記の動作が繰り返される。クライアント群が送信するフローに変化がなく、障害の状況にも変化がない場合は、混雑を検知する毎に許容出力量は徐々に上がっていき、混雑制御ノードF2と混雑制御ノードF3の出力量が徐々にリンク帯域を2等分する5M(bit/sec)に近づく形で収束し、公平な帯域分割が行われる。
【0314】
次に、本形態の実施の効果について説明する。
【0315】
本実施の形態では、混雑制御ノードにおいて、混雑制御ノードが属するリングに障害が発生し、フレームが迂回経路を通過する場合でも、混雑に関係するキューを推定し、混雑制御を行なうことができる。
【0316】
また、第1の実施の形態と同様に、混雑に関係のないフローのフレーム送信量が不当に制限されることがなく、フロー間における利用可能帯域の差がなくなり、フロー間での公平性を保つことが可能な混雑制御を行なうことができる。
【0317】
更に、障害の影響によって、これ以上混雑通知を転送しても効果が得られない場合は、混雑通知が障害区間で欠落することにより、不要な通知の転送が行われなくなる。これにより、リンク帯域の余分な混雑通知によるで利用を、減らすことができる。
【0318】
次に、本発明の第4の実施の形態について図面を参照して詳細に説明する。
【0319】
本発明の第4の実施の形態は、第1の実施の形態において、許容出力量の決定方法を、混雑検出ノードからリングへの送信フレーム量Uと混雑検出ノードからリングへの送信フロー数Dより求まる、U/Dの大きさによって変更する場合に対応する。
【0320】
図12を参照すると、本発明の第4の実施の形態は、図1に示された第1の実施の形態において、混雑制御ノードA1の代わりに混雑制御ノードB1、混雑制御ノードA2の代わりに混雑制御ノードB2、混雑制御ノードA3の代わりに混雑制御ノードB3、混雑制御ノードA4の代わりに混雑制御ノードB4を備えている点で異なる。
【0321】
混雑制御ノードB2〜B4は混雑制御ノードB1と等しい構成を持つ。以降、混雑制御ノードB1〜B4を代表して、混雑制御ノードB1のみについて説明するが、混雑制御ノードB1についての記述は、特に断りのない限り混雑制御ノードB2〜B4にも同様に適用可能である。
【0322】
図13は、混雑制御ノードB1の構成を詳細に示した図である。混雑制御ノードB1は、転送方向決定部A11と、ルーティングテーブルA12と、混雑制御部B13と、別の混雑制御部B14とを含む。
【0323】
混雑制御ノードB14は混雑制御ノードB13と等しい構成を持つ。以降、混雑制御ノードB13〜B14を代表して、混雑制御ノードB13のみについて説明するが、混雑制御ノードB13についての記述は、特に断りのない限り混雑制御ノードB14にも同様に適用可能である。
【0324】
図14は、混雑制御部B13の構成を詳細に示した図である。混雑制御部B13は、図3の第1の実施の形態における、転送バッファ部A132が転送バッファ部B131に、混雑通知送受信部A137が混雑通知送信部B133に、それぞれ変更され、更に、転送出力測定部B132と、通知M301が追加されている点で異なる。
【0325】
転送バッファ部B131は、以下に挙げる3つの機能を有する。
【0326】
(1)受信決定部A131よりリンクL107を通じて入力されたフレームを、片方向リンクL102に送出できるタイミングまで格納しておき、送出可能タイミングにリンクL108を通じて出力ミキサ部A133に向けてフレームを転送する。
【0327】
(2)バッファ使用量測定部A138からの通知M101による要求により、転送バッファ部B131に存在するフレームの数、ビット数、バイト数等を、バッファ使用量測定部A138に通知M101を用いて通知する。
【0328】
(3)転送出力測定部B132からの通知M301を通じた要求により、転送バッファ部B131から出力ミキサ部A133に転送されるフレームの数、ビット数、バイト数、フレームを1つ以上蓄積している送信キューの数等を、転送出力測定部B132に通知M301を用いて通知する。
【0329】
転送出力測定部B132は、転送バッファ部B131より出力され出力ミキサ部A133に転送されるフレームの、フレーム個数、ビット数、バイト数、フレームを1つ以上蓄積している送信キューの数等を、転送出力測定部B132に通知するように、周期的に転送バッファ部B131に対して要求し、通知された値を次の通知まで記憶しておく。
【0330】
混雑通知送信部B133は、バッファ使用量測定部A138から取得した混雑発生検知結果と、出力測定部A136から取得した送信フレーム量と、転送出力測定部B132から取得した転送フレーム量等を用いて混雑通知フレームを作成し、転送方向決定部A11を経由して、この混雑通知フレームを片方向リングR12を用いて片方向リングR11の上流に位置する混雑制御ノードに向けて送信する。
【0331】
通知M301は、転送バッファ部B131と転送出力測定部B132との間での、双方向の通知である。
【0332】
図15を参照して、本実施の形態において、混雑通知送信部B133において混雑制御機能が有効になっている場合の、混雑通知送信部B133における動作について詳細に説明する。
【0333】
第1の実施の形態における図7との相違点は、状況によって混雑通知に含める制御命令(混雑制御命令)を変化させる点である。
【0334】
混雑通知送信部B133は、定期的にバッファ使用量測定部A138に対して、転送バッファB131内の混雑発生の有無を確認させる(ステップ301)。
【0335】
混雑通知送信部B133は、バッファ使用量測定部A138より混雑発生有無の通知を受け、混雑発生の場合はステップ303へ、混雑発生なしの場合は、ステップ307に処理を移す(ステップ302)。
【0336】
混雑通知送信部B133は、出力測定部A136に対して、送信バッファ部A135から出力ミキサ部A133に転送されるフレーム量U、及び宛先混雑制御ノード数Dの通知を要求する。1つの宛先ノードへの平均送信フレーム量は、U及びDを用い、U/Dであらわすことができる(ステップ303)。
【0337】
混雑通知送信部B133は、U/Dの値や、バッファ使用量測定部A138から取得した混雑発生検知結果や、転送出力測定部B132から取得した転送フレーム量等を用いて、適切な制御命令を選択する(ステップ304)
混雑通知送信部B133は、混雑制御ノードB1よりリングR11に出力されるフレーム量が十分大きい場合などに、第1の実施の形態と同様に、混雑リンクを流れる各フローにおいて許容される最大のフレーム出力量が、オードB1のフロー1本あたりの平均送信フレーム量以下となるよう、送出量を制限させる制御命令を作成する(ステップ305)。
【0338】
混雑通知送信部B133は、U/Dがしきい値以下である場合などに、混雑制御ノードB1よりリングR11に出力されるフレーム量が不十分なため、最大のフレーム出力量(許容出力量)を、現在の出力量よりある割合で削減させる制御命令を作成する(ステップ306)。
【0339】
混雑通知送信部B133は、フローを、ある比や、平均値、規定値、などに制限させる制御命令を作成する(ステップ307)。
【0340】
混雑通知送信部B133は、ステップ302で、転送バッファ内のデータ量が閾値以下であった場合は、混雑は発生していないとみなし、NULL命令を作成する。NULL命令を受信したノードは、その命令を受信しても特に動作は行なわない(ステップ308)。
【0341】
混雑通知送信部B133は、ステップ305〜308で決定した制御命令を含む混雑通知を、片方向リングR11とは逆方向の片方向リングR12を用いて送信する。この混雑通知には、ステップ305〜308で決定した制御命令のほか、混雑通知発信者のノードIDも含まれる(ステップ309)。
【0342】
次に、本実施の形態における混雑通知受信時の混雑制御部A134における動作について詳細に説明する。
【0343】
本実施の形態における混雑通知受信時の混雑制御部A134における動作は、第1の実施の形態における同部A134の動作とほぼ等しいことから、図8を参照して説明する。第1の実施の形態との相違点は、ステップ206において、混雑通知で届いた許容出力量以下になるように制限を行うのだけでなく、混雑通知として送られてきた制御命令の内容により、混雑に影響するフローを、一律にある割合で制限する場合などが存在する点である。
【0344】
混雑通知受信転送部A134において、混雑制御機能が有効になっている場合、混雑通知受信転送部A134は常に転送方向決定部A11より到着する混雑通知を待ち受けている。混雑通知を受信すると、図8の順序で処理が行われる。
【0345】
混雑通知受信転送部A134は、ステップ201で混雑通知の発信元が自ノードである場合は、処理を終了する。
【0346】
混雑通知受信転送部A134は、ステップ201で混雑通知の発信元が他ノードである場合は、ステップ202に移り許容出力量を調べる。
【0347】
混雑通知受信転送部A134は、許容出力量がNULL値である場合は、処理を終了する(ステップ202)。
【0348】
混雑通知受信転送部A134は、ステップ202において許容出力量がNULL値以外である場合は、片方向リングR12を用い、受信した混雑通知をそのまま片方向リンクR11の入力側にある隣接混雑制御ノード宛に転送する(ステップ203)。
【0349】
通知の発信元ノードID及び通知を転送した隣接ノードのIDから混雑区間を特定し、ルーティングテーブルA12を用いて混雑区間を通過するフローを推定する(ステップ204)。
【0350】
混雑通知受信転送部A134は、混雑通知が出力量ではなく割合によって通知された場合は、現在の制限出力量Sに、通知された割合Wを乗じて、S×Wを許容出力量Uとみなす。制御対象とするキューが複数のフローによって利用されているときは、そのキューのみにおいて、U/Dをフロー数Fで乗じたU/D×Fの値を許容出力量とする(ステップ205)。
【0351】
混雑通知受信転送部A134は、ステップ206で、許容出力量が現在の制限出力量よりも大きい場合は、処理を終了する。
【0352】
混雑通知受信転送部A134は、ステップ206で、許容出力量が現在の制限出力量よりも小さい場合は、送信バッファ部A135の出力調整部353に対して、おのおのの制限対象のキューについて、出力フレーム量をステップ205で決定した許容出力量に制限するよう設定する(ステップ207)。
【0353】
混雑通知受信転送部A134は、送信バッファ部A135に対して、送信キューの分類方法を問い合わせ、送信キューが制御・非制御の2分類にされていた場合以外は、処理を終了させる。
【0354】
混雑通知受信転送部A134は、送信バッファ部A135に対して、送信キューの分類方法を問い合わせ、送信キューが制御・非制御の2分類にされていた場合は、送信バッファ部A135に対して、制限対象フローを制限対象キューに収容するよう命令を出す。
【0355】
なお、すべてのキューの制限出力量は、最大制限出力量に達するまで定期的に増加していく。送信キューが制限・非制限の2つに分けられていた場合は、制限キューに入ったフローは一定時間後に非制限キューに移る。
【0356】
図12を参照して、本実施の形態において、宛先混雑制御ノード毎に送信キューを設置した場合、かつ、混雑制御ノードに接続されたクライアント群からの送信フローが小さい場合の混雑制御動作について、具体例を用いて詳細に説明する。
【0357】
図12において、クライアント群C1と混雑制御ノードB1、クライアント群C2と混雑制御ノードB2、クライアント群C3と混雑制御ノードB3、クライアント群C4と混雑制御ノードB4を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11及び片方向リングR12の速度を10M(bit/sec)とする。
【0358】
まず、クライアント群C3に属するクライアントが、9.5M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR11を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR11の帯域幅を下回っているので、混雑は発生しない。
【0359】
混雑制御ノードB3において、クライアント群C3からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードB1宛の送信バッファを通過する。
【0360】
次に、クライアント群C2に属するクライアントが、1M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR11を経由してフレームを送信する。
【0361】
混雑制御ノードB2において、片方向リングR11を流れるパケットが利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C2から入力され片方向リングR11に出力されるフレームは、片方向リンクR11より入力されるフレームよりも、優先的に片方向リングR11に向けて送信される。
【0362】
混雑制御ノードB2において、クライアント群C2からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードB1宛の送信バッファを通過する。
【0363】
片方向リングR11には、既にクライアント群C3より送信されるフレームが流れているため、混雑制御ノードB2における片方向リングR11への出力フレーム量が、片方向リングR11の帯域幅を上回り、混雑制御ノードB2における片方向リングR11への出力側で混雑が発生する。
【0364】
混雑制御ノードB2において、混雑制御ノードB2の転送バッファ利用量が下限値に達していない場合、クライアント群C2から送信されるフレームが、混雑制御ノードB2に片方向リングR11より入力されるフレームよりも優先されるため、混雑制御ノードB2に片方向リングR11より入力されるフレームは、混雑制御ノードB2の転送バッファに蓄積される。
【0365】
混雑制御ノードB2において、混雑制御ノードB2の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードB2に片方向リングR11より入力されるフレームが、クライアント群C2から送信されてリングR11に流れるフレームよりも優先されるようになる。
【0366】
混雑制御ノードB2において、混雑制御ノードB2への入力が過大である場合には、優先順位逆転による処理が間に合わず、混雑制御ノードB2における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードB2は片方向リングR11における混雑発生を検知する。
【0367】
混雑制御ノードB2は、クライアント群C2から入力され片方向リングR11に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR12を用いて混雑制御ノードB3に送信する。ここでクライアント群C2から片方向リングR11に転送されるフレーム量が0.8M(bit/sec)であり、これはしきい値(ここでは1M(bit/sec)とする)を下回っているので、送信する情報は許容する出力量ではなく、出力の削減割合で行われる。削減割合は転送出力測定部B132から得た、転送バッファ部B131から出力ミキサ部A133へ流れるフレーム速度より決定され、この場合は0.9であったとする。これを、許容出力割合として混雑通知で送信する。
【0368】
混雑制御ノードB2は、片方向リングR11の出力側における混雑を検出している間、許容出力量を周期的にノードB3に向けて発信する。
【0369】
混雑制御ノードB2は、片方向リングR12の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR11を用いて周期的にノードB1に向けて発信する。
【0370】
混雑制御ノードB1は、NULL情報の入った混雑通知を受信し、その通知を破棄する。
【0371】
混雑制御ノードB3は、許容出力割合の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR12を用いて混雑制御ノードB4に送信する。
【0372】
混雑制御ノードB3を出発した混雑通知は、混雑制御ノードB4・混雑制御ノードB1で受信・転送され、片方向リングR12を1周して混雑制御ノードB2に戻る。混雑制御ノードB2は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0373】
混雑制御ノードB3は、混雑通知を片方向リングR12から受信したこと、並びに混雑通知の発信元が混雑制御ノードB2であることから、片方向リングR11における混雑制御ノードB2の出力側で混雑が発生していると特定する。このことより、混雑制御ノードB1宛のフレームが、混雑リンクを通過するものと推定する。
【0374】
混雑制御ノードB3において、許容出力割合が0.9であったことから、現在の出力制限量である10M(bit/sec)に0.9を乗じ、9M(bit/sec)を許容出力量とする。混雑制御ノードB1へ流れるフロー数は1、混雑制御ノードB1へ流れるフロー数も1であることから、重み係数は1になる。その結果、ノードB1宛の送信バッファの出力を、許容出力量である9M(bit/sec)になるよう制限する。
【0375】
混雑制御ノードB3において、クライアント群C3からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードB1宛の送信キューを通過するので、このキューの出力が9M(bit/sec)に制限されることにより、クライアント群C3がクライアント群C1に向けて送信するフレームは、混雑制御ノードB2に9M(bit/sec)の速度で入力されるようになる。
【0376】
混雑制御ノードB2は、片方向リングR11より入力されるフレームの速度が9M(bit/sec)に減少したため、クライアント群C2から入力されるフレームを、1M(bit/sec)の速度で片方向リングR11に向けて送信することができるようになる。
【0377】
混雑制御ノードB2では、片方向リングR11より入力されるフレームの速度が9M(bit/sec)に減少したため、混雑制御ノードB2内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードB2は片方向リングR11の出力側における混雑検出を解除する。
【0378】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。混雑制御ノードB3は、9M(bit/sec)に制限されていた混雑制御ノードB1宛送信キューの出力を、徐々に増加させていく。
【0379】
以降、混雑が検知される度に、上記の処理が繰り返されていくが、使用帯域はB3からの出力が9M(bit/sec)、B2からの出力が1M(bit/sec)になるよう、徐々に収束していく。
【0380】
従来技術1では、混雑リンク直前に存在するノードの送信フレーム量をもとにして、混雑発生リンクに対して送信することのできるフレーム量を推定していた。このため、混雑リンク直前ノードの送信フレーム要求がもともと少ない場合、許容出力量が極端に小さくなり、他のノードにおける制限出力量が急激に制限された。
【0381】
本実施の形態では、混雑直前ノードにおける送信フレーム量が小さい場合、制限出力量を通知するのではなく、制限割合や平均値、及び規定値等を通知することで、急激な流量制限を避けることが可能になった。
【0382】
次に、本発明の第5の実施の形態について、図面を参照して詳細に説明する。
【0383】
本発明の第5の実施の形態は、第1の実施の形態において、リング状ネットワークを1つ追加した場合に対応する。
【0384】
図16を参照すると、本発明の第5の実施の形態は、図1に示された第1の実施の形態において、リング状ネットワークR1のほかにリング状ネットワークR2が追加され、リング状ネットワークR1とR2が接続ノードD1で接続され、クライアント群C5・C6が追加されてそれぞれ混雑制御ノードA5及び接続ノードD1に接続され、混雑制御ノードA3・A4・A5がリングR2上に存在し、双方向リンクL400及び片方向リンクL401〜408が追加されている点で異なる。
【0385】
また、第1の実施の形態では、リング内の宛先ノード数とフロー数が一致していたが、本実施の形態のように複数のリングが接続されている場合は、リング内の宛先ノード数とフロー数は必ずしも一致しなくなる。これは本実施の形態において、最終的な宛先ノードが異なる、リングをまたがるフローを、同一の混雑制御ノードから複数送信した場合に、送信ノードでは、これらのフローの最終的な宛先ノードが異なる場合でも、リング内の宛先ノードはすべて接続ノードD1とみなすことができるため、宛先ノード数は1だが、フロー数はそれ以上存在することになるからである。
【0386】
リング状ネットワークR2は、片方向のリングR21と、片方向リングR21とは逆方向に流れる片方向リングR22を含み、これら総称をリング状ネットワークR2と呼ぶ。リング状ネットワークR2は、混雑制御ノードA3〜A5及び接続ノードD1から送出されたフレームを、別の混雑制御ノードA3〜A5及び接続ノードD1に転送する機能を持つ。
【0387】
接続ノードD1は、図1における混雑制御ノードA1の機能に加え、以下に挙げる6つの機能を有する。
【0388】
(1)2つのリング状ネットワークR1及びR2を収容し、R1からR2、R2からR1など、リング間をまたがるフレームの転送を行なう。
【0389】
(2)クライアント群C6より双方向リンクL400を通じて入力されたフレームを、片方向リンクL402、L404、L406、L408を通じて、リング状ネットワークR1又はR2に転送する。
【0390】
(3)片方向リンクL401又はL403(すなわちリング状ネットワークR1)又は片方向リンクL405又はL407(すなわちリング状ネットワークR2)を流れるフレームを、必要に応じて双方向リンクL400を通じてクライアント群C6に転送する。
【0391】
(4)片方向リンクL406又はL408(すなわちリング状ネットワークR2)のフレーム混雑を検知して、混雑通知を片方向リンクL406又はL408を通じてリングR2上に存在する全ノードに向けて送出する。
【0392】
(5)片方向リンクL405又はL407(すなわちリング状ネットワークR2)より混雑通知を受信し、自ノードより片方向リンクL406又はL408(すなわちリング状ネットワークR2)に送出するフレーム量の調整する。
【0393】
(6)片方向リンクL405又はL407(リング状ネットワークR2)より受信した混雑通知フレームを、片方向リンクL406又はL408(すなわちリングR2)上に存在する隣接ノードに転送する。
【0394】
接続ノードD1において、混雑制御は、リング状ネットワークR1とリング状ネットワークR2について、独立して行われる。
【0395】
図17は、接続ノードD1の構成を詳細に示した図である。接続ノードD1は、転送方向決定部D11と、ルーティングテーブルD12と、混雑制御部A13と、別の混雑制御部A14〜A16とを含む。
【0396】
転送方向決定部D11は、クライアント群C6、混雑制御部A13、及び混雑制御部A14〜A16より入力されたフレームの宛先ノードを判別し、ルーティングテーブルD12の記述に従い、クライアント群C6、混雑制御部A13、及び混雑制御部A14〜A16に向けて転送する機能を持つ。
【0397】
ルーティングテーブルD12は、あて先混雑制御ノード毎に、そのノードまでのコストと送出先片方向リングIDを記憶しておく機能を有する。送出先片方向リングIDは、R11、R12、R21、R22のいずれかである。ルーティングテーブルD12の情報は、転送方向決定部D11及び混雑制御部A13〜A16において利用される。
【0398】
混雑制御部A13〜A16は、図2における混雑制御部A13と同様の機能を有する。
【0399】
双方向リンクL400は、クライアント群C6と接続ノードD1を結ぶ、双方向リンクである。
【0400】
片方向リンクL401は、混雑制御ノードA2から接続ノードD1に向かう、短方向のリンクである。このリンクは、短方向リングR11の一部であり、リング状ネットワークR1に含まれる。
【0401】
片方向リンクL402は、接続ノードD1から混雑制御ノードA1に向かう、短方向のリンクである。このリンクは、短方向リングR11の一部であり、リング状ネットワークR1に含まれる。
【0402】
片方向リンクL403は、混雑制御ノードA1から接続ノードD1に向かう、短方向のリンクである。このリンクは、短方向リングR12の一部であり、リング状ネットワークR1に含まれる。
【0403】
片方向リンクL404は、接続ノードD1から混雑制御ノードA2に向かう、短方向のリンクである。このリンクは、短方向リングR12の一部であり、リング状ネットワークR1に含まれる。
【0404】
片方向リンクL405は、混雑制御ノードA3から接続ノードD1に向かう、短方向のリンクである。このリンクは、短方向リングR21の一部であり、リング状ネットワークR2に含まれる。
【0405】
片方向リンクL406は、接続ノードD1から混雑制御ノードA5に向かう、短方向のリンクである。このリンクは、短方向リングR21の一部であり、リング状ネットワークR2に含まれる。
【0406】
片方向リンクL407は、混雑制御ノードA5から接続ノードD1に向かう、短方向のリンクである。このリンクは、短方向リングR22の一部であり、リング状ネットワークR2に含まれる。
【0407】
片方向リンクL408は、接続ノードD1から混雑制御ノードA3に向かう、短方向のリンクである。このリンクは、短方向リングR22の一部であり、リング状ネットワークR2に含まれる。
【0408】
図16を参照して、本実施の形態における第1の動作について、具体例を用いて詳細に説明する。
【0409】
本実施の形態における第1の動作は、リングをまたがるフローが存在し、かつ、当該ノードが属するリング内の宛先混雑制御ノード毎に送信キューを設けたとき、宛先ノードが属するリングにおいて混雑が発生した場合の混雑制御動作である。
【0410】
図16において、クライアント群C1と混雑制御ノードA1、クライアント群C2と混雑制御ノードA2、クライアント群C3と混雑制御ノードA3、クライアント群C4と混雑制御ノードA4、クライアント群C5と混雑制御ノードA5、クライアント群C6と接続ノードD1を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11・R12・R21・R22の速度を10M(bit/sec)とする。
【0411】
まず、クライアント群C1に属するクライアントが、4M(bit/sec)の速度で、クライアント群C4に属するクライアントに向けて、片方向リングR12、接続ノードD1、片方向リングR22を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR12及び片方向リングR22の帯域幅を下回っているので、混雑は発生しない。
【0412】
混雑制御ノードA1において、リング内に存在する宛先混雑制御ノード毎にキューを設置した場合、クライアント群C1からクライアント群C4に向けて送信されるフレームは、接続ノードD1宛にフレームを送信しているものと同じ扱いとなる。このため、クライアント群C4宛のフレームは、すべて接続ノードD1宛の送信バッファを通過する。
【0413】
次に、クライアント群C2に属するクライアントが、4M(bit/sec)の速度で、クライアント群C4に属するクライアントに向けて、片方向リングR11、接続ノードD1、片方向リングR22を経由してフレームを送信する。この状態でも、フレーム送信速度が片方向リングR11の帯域幅を下回っており、更に、クライアント群C1からクライアント群C4に流れるフローの速度の合計が、片方向リングR22の帯域幅を下回っているので、混雑は発生しない。
【0414】
混雑制御ノードA2において、リング内に存在する宛先混雑制御ノード毎にキューを設置した場合、クライアント群C2からクライアント群C4に向けて送信されるフレームは、接続ノードD1宛にフレームを送信しているものと同じ扱いとなる。このため、クライアント群C4宛のフレームは、すべて接続ノードD1宛の送信バッファを通過する。
【0415】
次に、クライアント群C3に属するクライアントが、4M(bit/sec)の速度で、クライアント群C4に属するクライアントに向けて、片方向リングR22を経由してフレームを送信する。
【0416】
混雑制御ノードA3において、リング内に存在する宛先混雑制御ノード毎にキューを設置した場合、クライアント群C3からクライアント群C4に向けて送信されるフレームは、すべて混雑制御ノードC4宛の送信バッファを通過する。
【0417】
混雑制御ノードA3において、片方向リングR22を流れるパケットが、利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C3から入力され片方向リングR22に出力されるフレームは、片方向リンクR22より入力されるフレームよりも、優先的に片方向リングR22に向けて転送される。
【0418】
片方向リングR22には、既にクライアント群C1及びC2より送信されるフレームが流れているため、混雑制御ノードA3における片方向リングR22への出力フレーム量が、片方向リングR22の帯域幅を上回り、混雑制御ノードA3における片方向リングR22への出力側で混雑が発生する。
【0419】
混雑制御ノードA3において、混雑制御ノードA3の転送バッファ利用量が下限値に達していない場合、クライアント群C3から送信されるフレームが、混雑制御ノードA3に片方向リングR22より入力されるフレームよりも優先されるため、混雑制御ノードA3に片方向リングR22より入力されるフレームは、混雑制御ノードA3の転送バッファに蓄積される。
【0420】
混雑制御ノードA3において、混雑制御ノードA3の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードA3に片方向リングR22より入力されるフレームが、クライアント群C3から送信されてリングR22に流れるフレームよりも優先されるようになる。
【0421】
混雑制御ノードA3において、混雑制御ノードA3への入力が過大である場合には、優先順位逆転による処理が間に合わず、混雑制御ノードA3における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードA3は片方向リングR22における混雑発生を検知する。
【0422】
混雑制御ノードA3は、クライアント群C3から入力され片方向リングR22に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR21を用いて接続ノードD1に送信する。ここでクライアント群C3から片方向リングR22に転送されるフレーム量が2M(bit/sec)であったとすると、宛先ノードはA4の1箇所だけであるので、2M(bit/sec)÷1=2M(bit/sec)を、許容出力量として送信する。
【0423】
混雑制御ノードA3は、片方向リングR22の出力側における混雑を検出している間、許容出力量を周期的に接続ノードD1に向けて発信する。
【0424】
混雑制御ノードA3は、片方向リングR21の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR22を用いて周期的にノードA4に向けて発信する。
【0425】
混雑制御ノードA4は、NULL情報の入った混雑通知を受信し、その通知を破棄する。
【0426】
接続ノードD1は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR21を用いて混雑制御ノードA5に送信する。
【0427】
接続ノードD1を出発した混雑通知は、混雑制御ノードA5・A4で受信・転送され、片方向リングR21を1周して混雑制御ノードA3に戻る。混雑制御ノードA3は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0428】
接続ノードD1は、混雑通知を片方向リングR21から受信したこと、並びに混雑通知の発信元が混雑制御ノードA3であることから、片方向リングR22における混雑制御ノードA3の出力側で混雑が発生していると特定する。このことより、混雑制御ノードA4宛のフレームが、混雑リンクを通過するものと推定する。
【0429】
接続ノードD1において、混雑制御ノードA4へ流れるフロー数は、混雑制御ノードA1より送信されるフローと、混雑制御ノードA2より送信されるフローの2本であるので、重み係数は2になる。その結果、ノードA1宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)×2=4M(bit/sec)になるよう制限する。
【0430】
接続ノードD1において、クライアント群C4に向けて送信されるフレームは、すべて混雑制御ノードA4宛の送信キューを通過するので、このキューの出力が4M(bit/sec)に制限されることにより、クライアント群C1及びクライアント群C2がクライアント群C4に向けて送信するフレームは、混雑制御ノードA3に4M(bit/sec)の速度で入力されるようになる。
【0431】
混雑制御ノードA3は、片方向リングR22より入力されるフレームの速度が4M(bit/sec)に減少したため、クライアント群C3から入力されるフレームを、4M(bit/sec)の速度で片方向リングR22に向けて送信することができるようになる。
【0432】
混雑制御ノードA3では、片方向リングR22より入力されるフレームの速度が4M(bit/sec)に減少したため、混雑制御ノードA3内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードA3は片方向リングR22の出力側における混雑検出を解除する。
【0433】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。接続ノードD1は、4M(bit/sec)に制限されていた混雑制御ノードA4宛送信キューの出力を、徐々に増加させていく。
【0434】
以降、混雑が検知される度に、上記の処理が繰り返され、クライアント群の動作に変化がない場合には、各フローの帯域は、混雑リングの帯域を3フローで分割した場合の平均値である約3.33M(bit/sec)に収束していく。
【0435】
次に図16を参照して、本実施の形態における第2の動作について、具体例を用いて詳細に説明する。
【0436】
本実施の形態における第2の動作は、リングをまたがるフローが存在し、かつ、当該ノードが属するリング内の宛先混雑制御ノード毎に送信キューを設けたとき、クライアント群が送信したフレームをリングに挿入するノード(送信ノードと呼ぶ)が属するリングにおいて混雑が発生した場合の混雑制御動作である。
【0437】
本実施の形態における第1の動作とは、混雑発生リングが、クライアント群が送信したフレームをリングに挿入するノード(送信ノードと呼ぶ)が属するリングになっている点で異なる。
【0438】
図16において、クライアント群C1と混雑制御ノードA1、クライアント群C2と混雑制御ノードA2、クライアント群C3と混雑制御ノードA3、クライアント群C4と混雑制御ノードA4、クライアント群C5と混雑制御ノードA5、クライアント群C6と接続ノードD1を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11・R12・R21・R22の速度を10M(bit/sec)とする。
【0439】
まず、クライアント群C4に属するクライアントが、4M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR21、接続のノードD1、片方向リングR11を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR21及び片方向リングR11の帯域幅を下回っているので、混雑は発生しない。
【0440】
混雑制御ノードA4において、リング内に存在する宛先混雑制御ノード毎にキューを設置した場合、クライアント群C4からクライアント群C1に向けて送信されるフレームは、接続ノードD1宛にフレームを送信しているものと同じ扱いとなる。このため、クライアント群C1宛のフレームは、すべて接続ノードD1宛の送信バッファを通過する。
【0441】
次に、クライアント群C4に属するクライアントが、4M(bit/sec)の速度で、クライアント群C2に属するクライアントに向けて、片方向リングR21、接続ノードD1、片方向リングR12を経由してフレームを送信する。この状態でも、フレーム送信速度が片方向リングR12の帯域幅を下回っており、更に、クライアント群C4からクライアント群C1に流れるフローの速度との合計が、片方向リングR21の帯域幅を下回っているので、混雑は発生しない。
【0442】
混雑制御ノードA4において、リング内に存在する宛先混雑制御ノード毎にキューを設置した場合、クライアント群C4からクライアント群C2に向けて送信されるフレームは、接続ノードD1宛にフレームを送信しているものと同じ扱いとなる。このため、クライアント群C2宛のフレームは、すべて接続ノードD1宛の送信バッファを通過する。
【0443】
次に、クライアント群C3に属するクライアントが、4M(bit/sec)の速度で、クライアント群C5に属するクライアントに向けて、片方向リングR21を経由してフレームを送信する。
【0444】
混雑制御ノードA3において、リング内に存在する宛先混雑制御ノード毎にキューを設置した場合、クライアント群C3からクライアント群C5に向けて送信されるフレームは、すべて混雑制御ノードC5宛の送信バッファを通過する。
【0445】
混雑制御ノードA3において、片方向リングR21を流れるパケットが、利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C3から入力され片方向リングR21に出力されるフレームは、片方向リンクR21より入力されるフレームよりも、優先的に片方向リングR21に向けて転送される。
【0446】
片方向リングR21には、既にクライアント群C4よりクライアント群C1及びC2へ送信されるフレームが流れているため、混雑制御ノードA3における片方向リングR21への出力フレーム量が、片方向リングR21の帯域幅を上回り、混雑制御ノードA3における片方向リングR21への出力側で混雑が発生する。
【0447】
混雑制御ノードA3において、混雑制御ノードA3の転送バッファ利用量が下限値に達していない場合、クライアント群C3から送信されるフレームが、混雑制御ノードA3に片方向リングR21より入力されるフレームよりも優先されるため、混雑制御ノードA3に片方向リングR21より入力されるフレームは、混雑制御ノードA3の転送バッファに蓄積される。
【0448】
混雑制御ノードA3において、混雑制御ノードA3の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードA3に片方向リングR21より入力されるフレームが、クライアント群C3から送信されてリングR21に流れるフレームよりも優先されるようになる。
【0449】
混雑制御ノードA3において、混雑制御ノードA3への入力が過大である場合には、優先順位逆転による処理が間に合わず、混雑制御ノードA3における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードA3は片方向リングR21における混雑発生を検知する。
【0450】
混雑制御ノードA3は、クライアント群C3から入力され片方向リングR21に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR22を用いて混雑制御ノードC4に送信する。ここでクライアント群C3から片方向リングR21に転送されるフレーム量が2M(bit/sec)であったとすると、宛先ノードはA5の1箇所だけであるので、2M(bit/sec)÷1=2M(bit/sec)を、許容出力量として送信する。
【0451】
混雑制御ノードA3は、片方向リングR21の出力側における混雑を検出している間、許容出力量を周期的に混雑制御ノードA4に向けて発信する。
【0452】
混雑制御ノードA3は、片方向リングR22の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR21を用いて周期的に接続ノードD1に向けて発信する。
【0453】
接続ノードD1は、NULL情報の入った混雑通知を受信し、その通知を破棄する。
【0454】
混雑制御ノードA4は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR22を用いて混雑制御ノードA5に送信する。
【0455】
混雑制御ノードA4を出発した混雑通知は、混雑制御ノードA5・接続ノードD1で受信・転送され、片方向リングR22を1周して混雑制御ノードA3に戻る。混雑制御ノードA3は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0456】
混雑制御ノードA4は、混雑通知を片方向リングR22から受信したこと、並びに混雑通知の発信元が混雑制御ノードA3であることから、片方向リングR21における混雑制御ノードA3の出力側で混雑が発生していると特定する。このことより、接続ノードD1宛のフレームが、混雑リンクを通過するものと推定する。
【0457】
混雑制御ノードA4において、接続ノードD1へ流れるフロー数は、混雑制御ノードA1へ送信されるフローと、混雑制御ノードA2へ送信されるフローの2本であるので、重み係数は2になる。その結果、接続ノードD1宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)×2=4M(bit/sec)になるよう制限する。
【0458】
混雑制御ノードA4において、接続ノードD1に向けて送信されるフレームは、すべて接続ノードD1宛の送信キューを通過するので、このキューの出力が4M(bit/sec)に制限されることにより、クライアント群C1及びクライアント群C2に向けてクライアント群C4が送信するフレームは、混雑制御ノードA3に合計4M(bit/sec)の速度で入力されるようになる。
【0459】
混雑制御ノードA3は、片方向リングR21より入力されるフレームの速度の合計が4M(bit/sec)に減少したため、クライアント群C3から入力されるフレームを、4M(bit/sec)の速度で片方向リングR21に向けて送信することができるようになる。
【0460】
混雑制御ノードA3では、片方向リングR21より入力されるフレームの速度が4M(bit/sec)に減少したため、混雑制御ノードA3内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードA3は片方向リングR21の出力側における混雑検出を解除する。
【0461】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。混雑制御ノードA4は、4M(bit/sec)に制限されていた接続ノードD1宛送信キューの出力を、徐々に増加させていく。
【0462】
以降、混雑が検知される度に、上記の処理が繰り返され、クライアント群の動作に変化がない場合には、各フローの帯域は、混雑リングの帯域を3フローで分割した場合の平均値である約3.33M(bit/sec)に収束していく。
【0463】
次に図16を参照して、本実施の形態における第3の動作について、具体例を用いて詳細に説明する。
【0464】
本実施の形態における第3の動作とは、リングをまたがるフローが存在する場合、かつ、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合の混雑制御動作である。
【0465】
本実施の形態における第2の動作とは、送信キューを、リング内に存在する宛先混雑制御ノード毎ではなく、全リングに存在する宛先混雑制御ノード毎に設置している点で異なる。本動作では、単一のリングしか存在しない場合と同様に、1つのフローと1つのキューが、1対1で対応付けできる。
【0466】
図16において、クライアント群C1と混雑制御ノードA1、クライアント群C2と混雑制御ノードA2、クライアント群C3と混雑制御ノードA3、クライアント群C4と混雑制御ノードA4、クライアント群C5と混雑制御ノードA5、クライアント群C6と接続ノードD1を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11・R12・R21・R22の速度を10M(bit/sec)とする。
【0467】
まず、クライアント群C4に属するクライアントが、4M(bit/sec)の速度で、クライアント群C1に属するクライアントに向けて、片方向リングR21、接続のノードD1、片方向リングR11を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR21及び片方向リングR11の帯域幅を下回っているので、混雑は発生しない。
【0468】
混雑制御ノードA4において、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、クライアント群C4からクライアント群C1に向けて送信されるフレームは、すべて混雑制御ノードA1宛の送信バッファを通過する。
【0469】
次に、クライアント群C4に属するクライアントが、4M(bit/sec)の速度で、クライアント群C2に属するクライアントに向けて、片方向リングR21、接続ノードD1、片方向リングR12を経由してフレームを送信する。この状態でも、フレーム送信速度が片方向リングR12の帯域幅を下回っており、更に、クライアント群C4からクライアント群C1に流れるフローの速度との合計が、片方向リングR21の帯域幅を下回っているので、混雑は発生しない。
【0470】
混雑制御ノードA4において、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、クライアント群C4からクライアント群C2に向けて送信されるフレームは、すべて混雑制御A2宛の送信バッファを通過する。
【0471】
次に、クライアント群C3に属するクライアントが、4M(bit/sec)の速度で、クライアント群C5に属するクライアントに向けて、片方向リングR21を経由してフレームを送信する。
【0472】
混雑制御ノードA3において、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、クライアント群C3からクライアント群C5に向けて送信されるフレームは、すべて混雑制御ノードC5宛の送信バッファを通過する。
【0473】
混雑制御ノードA3において、片方向リングR21を流れるパケットが、利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C3から入力され片方向リングR21に出力されるフレームは、片方向リンクR21より入力されるフレームよりも、優先的に片方向リングR21に向けて転送される。
【0474】
片方向リングR21には、既にクライアント群C4よりクライアント群C1及びC2へ送信されるフレームが流れているため、混雑制御ノードA3における片方向リングR21への出力フレーム量が、片方向リングR21の帯域幅を上回り、混雑制御ノードA3における片方向リングR21への出力側で混雑が発生する。
【0475】
混雑制御ノードA3において、混雑制御ノードA3の転送バッファ利用量が下限値に達していない場合、クライアント群C3から送信されるフレームが、混雑制御ノードA3に片方向リングR21より入力されるフレームよりも優先されるため、混雑制御ノードA3に片方向リングR21より入力されるフレームは、混雑制御ノードA3の転送バッファに蓄積される。
【0476】
混雑制御ノードA3において、混雑制御ノードA3の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードA3に片方向リングR21より入力されるフレームが、クライアント群C3から送信されてリングR21に流れるフレームよりも優先されるようになる。
【0477】
混雑制御ノードA3において、混雑制御ノードA3への入力が過大である場合には、優先順位逆転による処理が間に合わず、混雑制御ノードA3における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードA3は片方向リングR21における混雑発生を検知する。
【0478】
混雑制御ノードA3は、クライアント群C3から入力され片方向リングR21に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR22を用いて混雑制御ノードC4に送信する。ここでクライアント群C3から片方向リングR21に転送されるフレーム量が2M(bit/sec)であったとすると、宛先ノードはA5の1箇所だけであるので、2M(bit/sec)÷1=2M(bit/sec)を、許容出力量として送信する。
【0479】
混雑制御ノードA3は、片方向リングR21の出力側における混雑を検出している間、許容出力量を周期的に混雑制御ノードA4に向けて発信する。
【0480】
混雑制御ノードA3は、片方向リングR22の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR21を用いて周期的に接続ノードD1に向けて発信する。
【0481】
接続ノードD1は、NULL情報の入った混雑通知を受信し、その通知を破棄する。
【0482】
混雑制御ノードA4は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR22を用いて混雑制御ノードA5に送信する。
【0483】
混雑制御ノードA4を出発した混雑通知は、混雑制御ノードA5・接続ノードD1で受信・転送され、片方向リングR22を1周して混雑制御ノードA3に戻る。混雑制御ノードA3は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0484】
混雑制御ノードA4は、混雑通知を片方向リングR22から受信したこと、並びに混雑通知の発信元が混雑制御ノードA3であることから、片方向リングR21における混雑制御ノードA3の出力側で混雑が発生していると特定する。このことより、接続ノードD1及び、D1から先のリング宛のフレームが、混雑リンクを通過するものと推定する。
【0485】
混雑制御ノードA4において、混雑制御ノードA1宛の送信キューへ流れるフロー数は、混雑制御ノードA1へ送信されるフローのみであるので、重み係数は1になる。その結果、接続ノードD1宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)×1=2M(bit/sec)になるよう制限する。
【0486】
混雑制御ノードA4において、混雑制御ノードA2宛の送信キューへ流れるフロー数は、混雑制御ノードA2へ送信されるフローのみであるので、重み係数は1になる。その結果、接続ノードD1宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)×1=2M(bit/sec)になるよう制限する。
【0487】
混雑制御ノードA4において、混雑制御ノードA1及びA2に向けて送信されるフレームは、すべてそれぞれの混雑制御ノード宛の送信キューを通過するので、これらキューの出力が2M(bit/sec)に制限されることにより、クライアント群C1及びクライアント群C2に向けてクライアント群C4が送信するフレームは、混雑制御ノードA3にそれぞれ2M(bit/sec)の速度で入力されるようになる。
【0488】
混雑制御ノードA3は、片方向リングR21より入力されるフレームの速度の合計が4M(bit/sec)に減少したため、クライアント群C3から入力されるフレームを、4M(bit/sec)の速度で片方向リングR21に向けて送信することができるようになる。
【0489】
混雑制御ノードA3では、片方向リングR21より入力されるフレームの速度が4M(bit/sec)に減少したため、混雑制御ノードA3内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードA3は片方向リングR21の出力側における混雑検出を解除する。
【0490】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。混雑制御ノードA4は、2M(bit/sec)に制限されていた混雑制御ノードA1宛送信キューと、混雑制御ノードA2宛送信キューの出力を、徐々に増加させていく。
【0491】
以降、混雑が検知される度に、上記の処理が繰り返され、クライアント群の動作に変化がない場合には、各フローの帯域は、混雑リングの帯域を3フローで分割した場合の平均値である約3.33M(bit/sec)に収束していく。
【0492】
次に、本形態の実施の効果について説明する。
【0493】
本実施の形態では、混雑制御ノードA1において予め、そのノードが属するリング上の宛先ノード毎に区分された送信キューを備え、混雑通知を受信した場合は混雑に関係するキューを推定し、混雑に関係するキューの出力のみを制限の対象にする。これにより、リングをまたがるフローが存在する場合においても、混雑に関係のないフローのフレーム送信量が不当に制限されることがなくなり、リンク帯域の有効利用が可能になった。
【0494】
本実施の形態では更に、混雑制御ノードA1において予め、全リング上に存在する宛先ノード毎に区分された送信キューを備え、混雑通知を受信した場合は混雑に関係するキューを推定し、混雑に関係するキューの出力のみを制限の対象にした。これにより、リングをまたがるフローが存在する場合においても、混雑に関係のないフローのフレーム送信量が不当に制限されることがなくなり、リンク帯域の有効利用が可能になった。
【0495】
また、全リング上に存在する宛先ノード毎に送信キューを区分した場合、利用可能帯域を宛先ノード毎に設定できるため、フロー間における利用可能帯域の差がなくなり、フロー間での公平性を保つことが可能になった。
【0496】
次に、本発明の第6の実施の形態について、図面を参照して詳細に説明する。
【0497】
本発明の第6の実施の形態は、第5の実施の形態において、接続ノードにおける混雑制御を収容するリング状ネットワーク毎独立して行なうのではなく、あるリングの混雑状況を、別のリングにも伝達できる場合に対応する。
【0498】
ある任意のリングで発生した混雑を、他の任意のリングに伝達することを、リングをまたぐ混雑通知と呼ぶ。
【0499】
図18を参照すると、本発明の第6の実施の形態は、図16に示された第5の実施の形態に対して、接続ノードD1が接続ノードE1になっている点で異なる。
【0500】
接続ノードE1は、図16における接続ノードD1の機能のほか、各片方向リングに向かう送信キュー混雑を検知し、混雑通知を、混雑を検知したリング状ネットワークとは別のリング状ネットワークに存在する混雑制御ノードに向けて送信する。
【0501】
接続ノードE1において、混雑通知はリング状ネットワークR1とリング状ネットワークR2について独立して行われるが、混雑通知の到着により送信キューからの出力量が制限されて混雑が発生すると、混雑が発生したキューが属するネットワークとは別のリング状ネットワークに対して、混雑通知が送信される。
【0502】
図19は、接続ノードE1の構成を詳細に示した図である。接続ノードE1は、転送方向決定部D11と、ルーティングテーブルD12と、混雑制御部E13〜E16とを含む。
【0503】
混雑制御部E14〜E16は、混雑制御部E13と同様の機能を有する。今後は混雑制御部E13〜E16を代表し、混雑制御部E13を用いて記述を行なうが、混雑制御部E13についての記述は、特に断りのない限り混雑制御部E14〜E16にも同様に適用可能である。
【0504】
図20は、混雑制御部E13の構成を詳細に示した図である。
【0505】
図20を参照すると、本発明の第6の実施の形態は、図3に示された第5の実施の形態に対して、送信バッファ部A135が送信バッファ部E135になり、混雑通知送信部A137が混雑通知送信部E137になり、更に、送信バッファ使用量測定部E139が追加されている点で異なる。
【0506】
送信バッファ部E135は、図3に示された第1の実施の形態における送信バッファ部A135の機能のほか、送信バッファ使用量測定部E139からの要求により、送信バッファ部E135に存在するフレームの数、ビット数、バイト数等を、送信バッファ使用量測定部E139に通知する。
【0507】
混雑通知送信部E137は、図3に示された第1の実施の形態における送信バッファ部A137の機能のほか、送信バッファ使用量測定部E139から受けた混雑発生検知結果と、出力測定部A136で測定した送信フレーム量等を用いて混雑通知フレームを作成し、転送方向決定部A11を経由して、この混雑通知フレームを片方向リングR21及び片方向リングR22を用いて、リング状ネットワークR2に位置する混雑制御ノードに向けて送信する。
【0508】
混雑通知送信部E137において、混雑通知フレームは混雑要因となるホストが存在する方向すべてに向けて送信する。R21及びR22の両方から、混雑要因となるフローが流入する場合には、双方に通知を送信する。これら通知はR21もしくはR22を1周するが、本発明における実施の形態2を適用させれば、これら通知の転送を、通知が1周する前に停止させ、無駄な通知の転送を省くことができる。
【0509】
送信バッファ使用量測定部E139は、混雑通知送信部E137からの要求に応じ、送信バッファ部E135に対して、送信バッファ部E132に存在するフレームの数、ビット数、バイト数等を通知するように要求し、その結果より混雑が発生しているか否かを判断し、結果を混雑通知送信部A137に対して通知する。
【0510】
次に、図21を参照して、混雑通知送信部E137において送信キューにおける混雑検知機能が有効になっている場合の、混雑通知送信部E137における動作について詳細に説明する。
【0511】
混雑通知送信部E137は、定期的に送信バッファ使用量測定部E139に対して、混雑発生の有無を確認させる(ステップ401)。
【0512】
混雑通知送信部E137は、送信バッファ使用量測定部E139より混雑発生有無の通知を受け、混雑発生の場合はステップ403へ、混雑発生なしの場合は、ステップ406に処理を移す(ステップ402)。
【0513】
混雑通知送信部E137は、出力測定部A136に対して、しきい値を超えた送信キュー毎に、E135からA133に転送されるフレーム量U、及び宛先混雑制御ノード数Dの通知を要求する(ステップ403)。
【0514】
混雑通知送信部E137は、ステップ403で求められた送信フレーム量U及び宛先混雑制御ノード数Dを用い、リングR2内の各混雑制御ノードの各送信キューにおいて許容される、しきい値を超えた宛先混雑制御ノードへの最大のフレーム挿入量を決定する。これを許容出力量といい、U/Dより決定される(ステップ404)。
【0515】
混雑通知送信部E137は、ステップ404で決定した許容出力量を、片方向リングR21及びR22の内、混雑した送信キューを通過するフローの送信元となっているリングを用いて、リング状ネットワークR2に位置する混雑制御ノードに通知する。もし、混雑を検知した送信キューに対し、R21及びR22の双方からの入力フローがある場合には、R21及びR22の双方に混雑通知を送信する。この混雑通知には、許容出力量のほかに発信者IDも含まれるが、この発信者IDは接続ノードE1のIDではなく、混雑を検知した送信キューの宛先ノードIDとする。この動作を、リングをまたがる混雑通知という。(ステップ405)。
【0516】
混雑通知送信部E137は、ステップ402においてバッファ使用量測定部E137より混雑発生通知を受けなかった場合は、混雑は発生していないとみなし、混雑が発生していないキューに関する許容出力量をNULL値にリセットする(ステップ406)。
【0517】
次に図18を参照して、本実施の形態において、リングをまたがるフローが存在する場合、かつ、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、かつ、最終的な宛先ノードが存在するリングにおいて混雑が発生した場合の混雑制御動作について、具体例を用いて詳細に説明し、混雑通知が混雑に関係する送信ノードまで到達することを示す。
【0518】
図18において、クライアント群C1と混雑制御ノードA1、クライアント群C2と混雑制御ノードA2、クライアント群C3と混雑制御ノードA3、クライアント群C4と混雑制御ノードA4、クライアント群C5と混雑制御ノードA5、クライアント群C6と接続ノードE1を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11・R12・R21・R22の速度を10M(bit/sec)とする。
【0519】
まず、クライアント群C1に属するクライアントが、4M(bit/sec)の速度で、クライアント群C4に属するクライアントに向けて、片方向リングR12、接続のノードE1、片方向リングR22を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR12及び片方向リングR22の帯域幅を下回っているので、混雑は発生しない。
【0520】
混雑制御ノードA1において、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、クライアント群C1からクライアント群C4に向けて送信されるフレームは、すべて混雑制御ノードA4宛の送信バッファを通過する。
【0521】
次に、クライアント群C2に属するクライアントが、4M(bit/sec)の速度で、クライアント群C4に属するクライアントに向けて、片方向リングR11、接続ノードE1、片方向リングR22を経由してフレームを送信する。この状態でも、フレーム送信速度が片方向リングR11の帯域幅を下回っており、更に、クライアント群C1からクライアント群C4に流れるフローの速度の合計が、片方向リングR22の帯域幅を下回っているので、混雑は発生しない。
【0522】
混雑制御ノードA2において、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、クライアント群C2からクライアント群C4に向けて送信されるフレームは、すべて混雑制御ノードA4宛の送信バッファを通過する。
【0523】
次に、クライアント群C3に属するクライアントが、4M(bit/sec)の速度で、クライアント群C4に属するクライアントに向けて、片方向リングR22を経由してフレームを送信する。
【0524】
混雑制御ノードA3において、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、クライアント群C3からクライアント群C4に向けて送信されるフレームは、すべて混雑制御ノードC4宛の送信バッファを通過する。
【0525】
混雑制御ノードA3において、片方向リングR22を流れるパケットが、利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C3から入力され片方向リングR22に出力されるフレームは、片方向リンクR22より入力されるフレームよりも、優先的に片方向リングR22に向けて転送される。
【0526】
片方向リングR22には、既にクライアント群C1及びC2より送信されるフレームが流れているため、混雑制御ノードA3における片方向リングR22への出力フレーム量が、片方向リングR22の帯域幅を上回り、混雑制御ノードA3における片方向リングR22への出力側で混雑が発生する。
【0527】
混雑制御ノードA3において、混雑制御ノードA3の転送バッファ利用量が下限値に達していない場合、クライアント群C3から送信されるフレームが、混雑制御ノードA3に片方向リングR22より入力されるフレームよりも優先されるため、混雑制御ノードA3に片方向リングR22より入力されるフレームは、混雑制御ノードA3の転送バッファに蓄積される。
【0528】
混雑制御ノードA3において、混雑制御ノードA3の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードA3に片方向リングR22より入力されるフレームが、クライアント群C3から送信されてリングR22に流れるフレームよりも優先されるようになる。
【0529】
混雑制御ノードA3において、混雑制御ノードA3への入力が過大である場合には、優先順位逆転による処理が間に合わず、混雑制御ノードA3における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードA3は片方向リングR22における混雑発生を検知する。
【0530】
混雑制御ノードA3は、クライアント群C3から入力され片方向リングR22に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR21を用いて接続ノードE1に送信する。ここでクライアント群C3から片方向リングR22に転送されるフレーム量が2M(bit/sec)であったとすると、宛先ノードはA4の1箇所だけであるので、2M(bit/sec)÷1=2M(bit/sec)を、許容出力量として送信する。
【0531】
混雑制御ノードA3は、片方向リングR22の出力側における混雑を検出している間、許容出力量を周期的に接続ノードE1に向けて発信する。
【0532】
混雑制御ノードA3は、片方向リングR21の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR22を用いて周期的にノードA4に向けて発信する。
【0533】
混雑制御ノードA4は、NULL情報の入った混雑通知を受信し、その通知を破棄する。
【0534】
接続ノードE1は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR21を用いて混雑制御ノードA5に送信する。
【0535】
接続ノードE1を出発した混雑通知は、混雑制御ノードA5・A4で受信・転送され、片方向リングR21を1周して混雑制御ノードA3に戻る。混雑制御ノードA3は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。なお、ここは実施の形態2の動作を適用させずに述べた。
【0536】
接続ノードE1は、混雑通知を片方向リングR21から受信したこと、並びに混雑通知の発信元が混雑制御ノードA3であることから、片方向リングR22における混雑制御ノードA3の出力側で混雑が発生していると特定する。このことより、混雑制御ノードA4宛のフレームが、混雑リンクを通過するものと推定する。
【0537】
接続ノードE1において、混雑制御ノードA4へ流れるフロー数は、混雑制御ノードA1より送信されるフローと、混雑制御ノードA2より送信されるフローの2本であるので、重み係数は2になる。その結果、ノードA4宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)×2=4M(bit/sec)になるよう制限する。
【0538】
接続ノードE1において、クライアント群C4に向けて送信されるフレームは、すべて混雑制御ノードA4宛の送信キューを通過するので、このキューの出力が4M(bit/sec)に制限されることにより、クライアント群C1及びクライアント群C2がクライアント群C4に向けて送信するフレームは、混雑制御ノードA3に4M(bit/sec)の速度で入力されるようになる。
【0539】
混雑制御ノードA3は、片方向リングR22より入力されるフレームの速度が4M(bit/sec)に減少したため、クライアント群C3から入力されるフレームを、4M(bit/sec)の速度で片方向リングR22に向けて送信することができるようになる。
【0540】
接続ノードE1では、混雑制御ノードA4へのフローが制限されたため、混雑制御ノードA4宛の送信キューに蓄積されるフレームが増え、しきい値を超え、接続ノードE1は混雑制御ノードA4宛送信キューの混雑発生を検知する。
【0541】
接続ノードE1は、混雑制御ノードA4宛送信キューから片方向リングR22に転送されるフレームの、送信速度及び送信元ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR11及びR12を用いて混雑制御ノードA1及びA2に送信する。この動作を、リングをまたがる混雑通知という。
【0542】
接続ノードE1において、R21及びR22の両方から混雑要因となるフローが流入しているため、混雑通知フレームはR21及びR22の双方に送信される。
【0543】
ここで接続ノードE1において、混雑制御ノードA4への送信キューから片方向リングR22に転送されるフレーム量が4M(bit/sec)であり、その内訳として2本のフローがあり、混雑制御ノードA1から混雑制御ノードA4へ転送されるフレームが2.5M(bit/sec)、混雑制御ノードA2から混雑制御ノードA4へ転送されるフレームが1.5M(bit/sec)であるとすると、4M(bit/sec)÷2=2M(bit/sec)を、許容出力量として、片方向リンクR11及びR12を用いて混雑制御ノードA1及びA2の双方に送信する。
【0544】
混雑制御ノードA1は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR11を用いて混雑制御ノードA2に送信する。
【0545】
混雑制御ノードA1を出発した混雑通知は、混雑制御ノードA2で受信・転送され、片方向リングR11を1周して接続ノードE1に戻る。接続ノードE1は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0546】
混雑制御ノードA2も、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR12を用いて混雑制御ノードA1に送信する。
【0547】
混雑制御ノードA2を出発した混雑通知は、混雑制御ノードA1で受信・転送され、片方向リングR12を1周して接続ノードE1に戻る。接続ノードE1は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0548】
混雑制御ノードA1及び混雑制御ノードA2は、混雑通知の発信元が自ノードの属するリング状ネットワークR1に存在しないこと、並びに混雑通知の発信元が混雑制御ノードA4であることから、接続ノードにおける混雑制御ノードA4宛送信キューで混雑が発生していると特定する。
【0549】
混雑制御ノードA1及び混雑制御ノードA2において、混雑制御ノードA4へ流れるフロー数は、それぞれのノードにおいて1本だけであるので、重み係数は1になる。その結果、ノードA4宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)×1=2M(bit/sec)になるよう制限する。
【0550】
混雑制御ノードA1及び混雑制御ノードA2において、クライアント群C4に向けて送信されるフレームは、すべて混雑制御ノードA4宛の送信キューを通過するので、このキューの出力が2M(bit/sec)に制限されることにより、クライアント群C1及びクライアント群C2がクライアント群C4に向けて送信するフレームは、それぞれ2M(bit/sec)で接続ノードE1に入力されるようになる。
【0551】
接続ノードE1は、送信キューの混雑を検出している間、一定周期で混雑通知をリングR1に向けて送信する。
【0552】
混雑制御ノードA3では、片方向リングR22より入力されるフレームの速度が4M(bit/sec)に減少したため、混雑制御ノードA3内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードA3は片方向リングR22の出力側における混雑検出を解除する。
【0553】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。接続ノードE1は、4M(bit/sec)に制限されていた混雑制御ノードA4宛送信キューの出力を、徐々に増加させていく。また、混雑制御ノードA1及びA2も、2M(bit/sec)に制限されていた混雑制御ノードA4宛送信キューの出力を、徐々に増加させていく。
【0554】
以降、混雑が検知される度に、上記の処理が繰り返されていき、クライアント群の動作に変化がない場合には、各フローの帯域は、混雑リングの帯域を3フローで分割した場合の平均値である約3.33M(bit/sec)に収束していく。
【0555】
次に、本実施の形態の効果について説明する。
【0556】
従来技術3では混雑制御はリング毎に行われていたため、混雑のないリングR1から混雑の発生しているリングR21へパケットが流入する際に、フレームロスが生じてしまった。このため、混雑のないリングR1には、送信しても欠落してしまう余分なフレームが流れてしまった。
【0557】
本実施の形態では、任意の一方のリングで発生した混雑を、他のリングにも伝えることができる。更に、混雑が送信クライアントから何段も先のリング内で発生している場合においても、送信クライアントが接続されている混雑制御ノードにおいて、送信フレーム量の制限を行なうことができる。その結果、送信クライアントに近くのリングに、途中の接続ノードで廃棄される可能性の高い余計なフレームを流さずに済む。
【0558】
また、すべての混雑通知を、接続されている全てのリング状ネットワークに同報した場合、大量の混雑通知がリング状ネットワークを流れることになる。この混雑通知のほとんどは、伝達されても実際には利用されず、むしろ混雑要因となりネットワークを輻輳させる恐れがある。
【0559】
本実施の形態では、混雑通知は、混雑に関係する送信クライアント又は接続ノードが接続されているリングのみに通知される。そのため、余分な混雑通知が、混雑に関係するフローが通過しないリングに流れることがない。
【0560】
次に、本発明の第7の実施の形態について、図面を参照して詳細に説明する。
【0561】
本発明の第7の実施の形態は、第6の実施の形態において、リング状ネットワークを1つ追加した場合に対応する。
【0562】
図22を参照すると、本発明の第7の実施の形態は、図18に示された第6の実施の形態に対して、接続ノードE2及びリング状ネットワークR3が新たに追加され、混雑制御ノードA4及びA5がR3上に移り、混雑制御ノードA6がR3上に新たに追加されている点で異なる。
【0563】
第6の実施の形態では、リングをまたぐフローが存在し、送信ノードと宛先ノードが隣接するリングに存在する場合において、いずれかのリングで発生した混雑を、送信ノードに通知できることを示した。
【0564】
本実施の形態では、隣あわない3段以上の任意の段数のリングをまたぐフローが存在する場合に、そのフローの経路上の任意の場所で混雑が発生したとき、送信ノードに混雑発生を通知できる。
【0565】
本実施の形態及び、第1、第6の実施の形態より、1つ以上の任意の段数のリングをまたぐフローについて、任意の場所で発生した混雑を、送信ノード宛に通知できることが示される。
【0566】
接続ノードE2は、図18に示された第6の実施の形態における接続ノードE1と同様の機能を持つ。
【0567】
混雑制御ノードA6は、図18に示された第6の実施の形態における混雑制御ノードA1と同様の機能を持つ。
【0568】
クライアント群C7〜C8は、図18に示された第6の実施の形態におけるクライアント群C1と同様の機能を持つ。
【0569】
図22を参照して、本実施の形態において、複数のリングをまたがるフローが存在する場合、かつ、各ノードにおいて、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、かつ、リングをまたぐフローの送信ノードと最終的な宛先ノードが隣接するリング同士に存在しない場合の混雑制御動作について、具体例を用いて詳細に説明する。
【0570】
図22において、クライアント群C1と混雑制御ノードA1、クライアント群C2と混雑制御ノードA2、クライアント群C3と混雑制御ノードA3、クライアント群C4と混雑制御ノードA4、クライアント群C5と混雑制御ノードA5、クライアント群C6と混雑制御ノードA6、クライアント群C7と接続ノードE1、クライアント群C8と接続ノードE2を結ぶ各リンクの速度を100M(bit/sec)とし、片方向リングR11・R12・R21・R22・R31・R32の速度を10M(bit/sec)とする。
【0571】
まず、クライアント群C1に属するクライアントが、4M(bit/sec)の速度で、クライアント群C5に属するクライアントに向けて、片方向リングR12、接続ノードE1、片方向リングR21、接続ノードE2、片方向リングR32を経由してフレームを送信する。この状態では、フレーム送信速度が片方向リングR12、片方向リングR21、片方向リングR32の各帯域幅を下回っているので、混雑は発生しない。
【0572】
混雑制御ノードA1において、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、クライアント群C1からクライアント群C5に向けて送信されるフレームは、すべて混雑制御ノードA5宛の送信バッファを通過する。
【0573】
次に、クライアント群C2に属するクライアントが、4M(bit/sec)の速度で、クライアント群C5に属するクライアントに向けて、片方向リングR11、接続ノードE1、片方向リングR21、接続ノードE2、片方向リンクR32を経由してフレームを送信する。この状態でも、フレーム送信速度が片方向リングR11の帯域幅を下回っており、更に、片方向リングR21及びR32における、クライアント群C1からクライアント群C5に流れるフローの速度との合計が、片方向リンクR21及びR32の帯域幅を下回っているので、混雑は発生しない。
【0574】
混雑制御ノードA2において、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、クライアント群C2からクライアント群C5に向けて送信されるフレームは、すべて混雑制御ノードA5宛の送信バッファを通過する。
【0575】
次に、クライアント群C4に属するクライアントが、4M(bit/sec)の速度で、クライアント群C5に属するクライアントに向けて、片方向リングR32を経由してフレームを送信する。
【0576】
混雑制御ノードA4において、全リングに存在する宛先混雑制御ノード毎にキューを設けた場合、クライアント群C4からクライアント群C5に向けて送信されるフレームは、すべて混雑制御ノードC5宛の送信バッファを通過する。
【0577】
混雑制御ノードA4において、片方向リングR32を流れるパケットが、利用する転送バッファの使用量が下限値(ここでは5k(bit)とする)を超えない限り、クライアント群C4から入力され片方向リングR32に出力されるフレームは、片方向リンクR32より入力されるフレームよりも、優先的に片方向リングR32に向けて転送される。
【0578】
片方向リングR32には、既にクライアント群C1及びC2より送信されるフレームが流れているため、混雑制御ノードA4における片方向リングR32への出力フレーム量が、片方向リングR32の帯域幅を上回り、混雑制御ノードA4における片方向リングR32への出力側で混雑が発生する。
【0579】
混雑制御ノードA4において、混雑制御ノードA4の転送バッファ利用量が下限値に達していない場合、クライアント群C4から送信されるフレームが、混雑制御ノードA4に片方向リングR32より入力されるフレームよりも優先されるため、混雑制御ノードA4に片方向リングR32より入力されるフレームは、混雑制御ノードA4の転送バッファに蓄積される。
【0580】
混雑制御ノードA4において、混雑制御ノードA4の転送バッファ利用量が下限値を超えた場合、優先順位が逆転し、混雑制御ノードA4に片方向リングR32より入力されるフレームが、クライアント群C3から送信されてリングR32に流れるフレームよりも優先されるようになる。
【0581】
混雑制御ノードA4において、混雑制御ノードA4への入力が過大である場合には、優先順位逆転による処理が間に合わず、混雑制御ノードA4における転送バッファへの蓄積フレーム量が上限値(ここでは8k(bit)とする)を超える。この場合、混雑制御ノードA4は片方向リングR32における混雑発生を検知する。
【0582】
混雑制御ノードA4は、クライアント群C4から入力され片方向リングR32に転送されるフレームの、送信速度及び宛先ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR31を用いて接続ノードE2に送信する。ここでクライアント群C4から片方向リングR32に転送されるフレーム量が2M(bit/sec)であったとすると、宛先ノードはA5の1箇所だけであるので、2M(bit/sec)÷1=2M(bit/sec)を、許容出力量として送信する。
【0583】
混雑制御ノードA4は、片方向リングR32の出力側における混雑を検出している間、許容出力量を周期的に接続ノードE1に向けて発信する。
【0584】
混雑制御ノードA4は、片方向リングR31の出力側では混雑を検知していないため、混雑発生なし(NULL)という混雑通知を、片方向リングR32を用いて周期的にノードA5に向けて発信する。
【0585】
混雑制御ノードA5は、NULL情報の入った混雑通知を受信し、その通知を破棄する。
【0586】
接続ノードE2は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR31を用いて混雑制御ノードA6に送信する。
【0587】
接続ノードE2を出発した混雑通知は、混雑制御ノードA6・A5で受信・転送され、片方向リングR21を1周して混雑制御ノードA4に戻る。混雑制御ノードA4は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0588】
接続ノードE2は、混雑通知を片方向リングR31から受信したこと、並びに混雑通知の発信元が混雑制御ノードA4であることから、片方向リングR32における混雑制御ノードA4の出力側で混雑が発生していると特定する。このことより、混雑制御ノードA5宛のフレームが、混雑リンクを通過するものと推定する。
【0589】
接続ノードE1において、混雑制御ノードA5へ流れるフロー数は、混雑制御ノードA1より送信されるフローと、混雑制御ノードA2より送信されるフローの2本であるので、重み係数は2になる。その結果、ノードA5宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)×2=4M(bit/sec)になるよう制限する。
【0590】
接続ノードE2において、クライアント群C5に向けて送信されるフレームは、すべて混雑制御ノードA5宛の送信キューを通過するので、このキューの出力が4M(bit/sec)に制限されることにより、クライアント群C1及びクライアント群C2がクライアント群C5に向けて送信するフレームは、混雑制御ノードA4に4M(bit/sec)の速度で入力されるようになる。
【0591】
混雑制御ノードA4は、片方向リングR32より入力されるフレームの速度が4M(bit/sec)に減少したため、クライアント群C4から入力されるフレームを、4M(bit/sec)の速度で片方向リングR32に向けて送信することができるようになる。
【0592】
接続ノードE2では、混雑制御ノードA5へのフローが制限されたため、混雑制御ノードA5宛の送信キューに蓄積されるフレームが増え、しきい値を超え、接続ノードE2は混雑制御ノードA5宛送信キューの混雑発生を検知する。
【0593】
接続ノードE2は、混雑制御ノードA5宛送信キューから片方向リングR32に転送されるフレームの、送信速度及び送信元ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR21もしくはR22を用いて混雑制御ノードA1もしくはA2に送信する。
【0594】
接続ノードE2において、送信キューがあふれた場合の混雑通知は、混雑を検知した送信キューに対して、もっとも速い速度でフレームを送信している混雑制御ノードが存在する方向に送信される。
【0595】
ここで接続ノードE2において、混雑制御ノードA5への送信キューから片方向リングR32に転送されるフレーム量が4M(bit/sec)であり、その内訳として2本のフローがあり、混雑制御ノードA1から混雑制御ノードA4へ転送されるフレームが2.5M(bit/sec)、混雑制御ノードA2から混雑制御ノードA4へ転送されるフレームが1.5M(bit/sec)であるとすると、4M(bit/sec)÷2=2M(bit/sec)を、許容出力量として、片方向リンクR22を用いて混雑制御ノードE1に送信する。
【0596】
接続ノードE1は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR22を用いて接続ノードE2に送信する。
【0597】
接続ノードE1を出発した混雑通知は、片方向リングR22を1周して接続ノードE2に戻る。接続ノードE2は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0598】
接続ノードE1は、混雑通知の発信元が自ノードの属するリング状ネットワークR1及びR2に存在しないこと、並びに混雑通知の発信元が混雑制御ノードA5であることから、接続ノードにおける混雑制御ノードA5宛送信キューで混雑が発生していると特定する。
【0599】
接続ノードE1において、混雑制御ノードA5へ流れるフロー数は、混雑制御ノードA1及びA2から送信される2本であるので、重み係数は2になる。その結果、ノードA5宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)×2=4M(bit/sec)になるよう制限する。
【0600】
接続ノードE1において、クライアント群C5に向けて送信されるフレームは、すべて混雑制御ノードA5宛の送信キューを通過するので、このキューの出力が4M(bit/sec)に制限されることにより、接続ノードE1がクライアント群C5に向けて送信するフレームは、合計4M(bit/sec)で接続ノードE2に入力されるようになる。
【0601】
接続ノードE2は、送信キューの混雑を検出している間、一定周期で混雑通知をリングR2に向けて送信する。
【0602】
接続ノードE1では、混雑制御ノードA5へのフローが制限されたため、混雑制御ノードA5宛の送信キューに蓄積されるフレームが増え、しきい値を超え、接続ノードE1は混雑制御ノードA5宛送信キューの混雑発生を検知する。
【0603】
接続ノードE1は、混雑制御ノードA5宛送信キューから片方向リングR21に転送されるフレームの、送信速度及び送信元ノード数(すなわちフロー数)を測定する。そして、「送信速度÷フロー数」を許容出力量として、混雑通知を片方向リングR11もしくはR12を用いて混雑制御ノードA1もしくはA2に送信する。
【0604】
接続ノードE1において、送信キューがあふれた場合の混雑通知は、混雑を検知した送信キューに対して、もっとも速い速度でフレームを送信している混雑制御ノードが存在する方向に送信される。
【0605】
ここで接続ノードE1において、混雑制御ノードA5への送信キューから片方向リングR21に転送されるフレーム量が4M(bit/sec)であり、その内訳として2本のフローがあり、混雑制御ノードA1から混雑制御ノードA5へ転送されるフレームが2.5M(bit/sec)、混雑制御ノードA2から混雑制御ノードA5へ転送されるフレームが1.5M(bit/sec)であるとすると、4M(bit/sec)÷2=2M(bit/sec)を、許容出力量として、片方向リンクR11を用いて混雑制御ノードA1に送信する。
【0606】
混雑制御ノードA1は、許容出力量の入った混雑通知を受信し、混雑通知の発信元が自ノードでないことを確認し、また通知内容がNULLでないことを確認し、混雑通知を片方向リングR11を用いて混雑制御ノードA2に送信する。
【0607】
混雑制御ノードA1を出発した混雑通知は、混雑制御ノードA2で受信・転送され、片方向リングR11を1周して接続ノードE1に戻る。接続ノードE1は、自ノードが発信した混雑通知を受信すると、その通知を破棄して、混雑通知の転送を打ち切る。
【0608】
混雑制御ノードA1及び混雑制御ノードA2は、混雑通知の発信元が自ノードの属するリング状ネットワークR1に存在しないこと、並びに混雑通知の発信元が混雑制御ノードA5であることから、接続ノードにおける混雑制御ノードA5宛送信キューで混雑が発生していると特定する。
【0609】
混雑制御ノードA1及び混雑制御ノードA2において、混雑制御ノードA5へ流れるフロー数は、それぞれのノードにおいて1本だけであるので、重み係数は1になる。その結果、ノードA5宛の送信バッファの出力を、混雑通知で通知された許容出力量である2M(bit/sec)×1=2M(bit/sec)になるよう制限する。
【0610】
混雑制御ノードA1及び混雑制御ノードA2において、クライアント群C5に向けて送信されるフレームは、すべて混雑制御ノードA5宛の送信キューを通過するので、このキューの出力が2M(bit/sec)に制限されることにより、クライアント群C1及びクライアント群C2がクライアント群C5に向けて送信するフレームは、それぞれ2M(bit/sec)で接続ノードE1に入力されるようになる。
【0611】
接続ノードE1は、送信キューの混雑を検出している間、一定周期で混雑通知をリングR1に向けて送信する。
【0612】
混雑制御ノードA3では、片方向リングR22より入力されるフレームの速度が4M(bit/sec)に減少したため、混雑制御ノードA3内の転送バッファの使用量が低下していく。そして転送バッファ使用量が閾値以下になると、混雑制御ノードA3は片方向リングR22の出力側における混雑検出を解除する。
【0613】
すべてのノードは、許容出力量が指定された混雑通知を受信しない場合、周期的にバッファ出力量の制限を緩和させていく。接続ノードE1及びE2は、4M(bit/sec)に制限されていた混雑制御ノードA5宛送信キューの出力を、徐々に増加させていく。また、混雑制御ノードA1及びA2も、2M(bit/sec)に制限されていた混雑制御ノードA5宛送信キューの出力を、徐々に増加させていく。
【0614】
以降、混雑が検知される度に、上記の処理が繰り返されていき、クライアント群の動作に変化がない場合には、各フローの帯域は、混雑リングの帯域を3フローで分割した場合の平均値である約3.33M(bit/sec)に収束していく。
【0615】
次に、本実施の形態の効果について説明する。
【0616】
本実施の形態では、任意の一方のリングで発生した混雑を、複数段先の他のリングにも伝えることができる。更に、混雑が送信クライアントから何段も先のリング内で発生している場合においても、送信クライアントが接続されている混雑制御ノードにおいて、送信フレーム量の制限を行なうことができる。その結果、送信クライアント近くのリングに、途中の接続ノードで廃棄される可能性の高い余計なフレームを流さずに済む。
【0617】
また本実施の形態では、混雑通知は、混雑に関係する送信クライアント又は接続ノードが接続されているリングのみに通知される。そのため、余分な混雑通知が、混雑に関係するフローが通過しないリングに流れることがない。
【0618】
なお、上記各実施の形態の混雑制御システムは、混雑制御ノード(や混雑制御ノードである接続ノード、送信ノード)における混雑制御部の、混雑通知受信転送部、混雑通知送信部、入力分類部、出力調整部、障害処理部の機能や、その他の機能をハードウェア的に実現することは勿論として、各機能を備えるコンピュータプログラムである混雑制御プログラムA90、F90、B90、D90、E90を、コンピュータ処理装置のメモリにロードされることで実現することができる。この混雑制御プログラムA90、F90、B90、D90、E90は、磁気ディスク、半導体メモリその他の記録媒体に格納される。そして、その記録媒体からコンピュータ処理装置にロードされ、コンピュータ処理装置の動作を制御することにより、上述した各機能を実現する。
【0619】
以上好ましい実施の形態及び実施例をあげて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施例に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。
【0620】
【発明の効果】
以上説明したように本発明によれば、以下のような効果が達成される。
【0621】
第1に、混雑に影響するフローのみの送信フレーム量を制限することができる。その理由は、宛先ノード毎等に区分された送信キューを備え、混雑通知を受信した場合は、リングの特性を利用して混雑に関係するキューを推定し、混雑に関係するキューの出力のみを制限の対象にするからである。
【0622】
第2に、単一リングで宛先ノード毎にキューを設置した場合、フロー間の公平性を保つことができる。その理由は、利用可能帯域を宛先ノード毎に推定・設定できるため、混雑リンクにおいては、フロー間における利用可能帯域の不公平がなくなるからである。
【0623】
第3に、混雑通知フレームの発信回数を減らすことができる。その理由は、フロー毎の通知を行なうことなく、混雑発生を検知したノード毎に混雑通知を送信するだけで、各フローの使用リンク帯域の公平性を保つことができるからである。
【0624】
第4に、混雑通知フレームの転送回数を減らすことができる。その理由は、混雑制御ノードにおいて、混雑通知をこれ以上転送しても効果が得られないと判断できた場合には、混雑通知がリングを1周する前に通知の転送を停止することができるからである。
【0625】
第5に、リンク障害時においても混雑制御ができる。その理由は、リングの特性とルーティングテーブルを組み合わせて活用することで、障害時においても混雑発生リンクを推定できるからである。
【0626】
第6に、リンク障害時においても、混雑通知フレームの転送回数を減らすことができる。その理由は、混雑通知が障害区間で欠落しても、混雑制御には影響が及ばないため、結果的に混雑通知フレームの転送回数が減るからである。
【0627】
第7に、急激な流量制限を避けられる。その理由は、混雑直前ノードにおける送信フレーム量が小さい場合などに、状況に応じて、制限出力量を通知するのではなく、制限割合や平均値、及び規定値等を通知することができるからである。
【0628】
第8に、送信クライアントが接続されているノードにおいて、途中の接続ノードで廃棄される可能性の高い余計なフレームを制限することができる。その理由は、任意の一方のリングで発生した混雑を、他のリングにも伝えることができ、混雑が送信クライアントから何段も先のリング内で発生している場合においても、送信クライアントが接続されている混雑制御ノードにおいて、リングに入る前に、過大入力のフレームを制限することができるためである。
【0629】
第9に、余分な混雑通知を、混雑に関係するフローが通過しないリングに流さずに済む。その理由は、リングをまたがる混雑通知は、混雑に関係する送信クライアント、又は、混雑に関係する接続ノードが接続されているリングのみに通知されるからである。
【0630】
第10に、混雑検出ノードの処理負荷を軽減できる。その理由は、混雑通知受信ノードにおいて、混雑関係フローの抽出などの処理を行なうためである。
【0631】
第11に、混雑通知等の制御フレームの転送を、確実に行える。その理由は、混雑通知を受信したノードが、混雑通知を転送することによって効果が得られるかどうかを、リングの特性より判断し、効果が期待できる場合は、通知の転送を継続するからである。
【図面の簡単な説明】
【図1】 本発明の第1の実施の形態による混雑制御システムの構成を示すブロック図である。
【図2】 本発明の第1の実施の形態の混雑制御ノードの構成を示すブロック図である。
【図3】 本発明の第1の実施の形態の混雑制御部の構成を示すブロック図である。
【図4】 本発明の第1の実施の形態の送信バッファ部の構成を示すブロック図である。
【図5】 本発明の第1の実施の形態の送信バッファ部の構成を示すブロック図である。
【図6】 本発明の第1の実施の形態の送信バッファ部の構成を示すブロック図である。
【図7】 本発明の第1の実施の形態の混雑通知送信時の動作を示す流れ図である。
【図8】 本発明の第1の実施の形態の混雑通知受信時の動作を示す流れ図である。
【図9】 本発明の第2の実施の形態の混雑通知受信時の動作を示す流れ図である。
【図10】 本発明の第3の実施の形態による混雑制御システムの構成を示すプロック図である。
【図11】 本発明の第3の実施の形態による障害検出機能付き混雑制御ノードの構成を示すプロック図である。
【図12】 本発明の第4の実施の形態による混雑制御システムの構成を示すブロック図である。
【図13】 本発明の第4の実施の形態による混雑制御ノードの構成を示すブロック図である。
【図14】 本発明の第4の実施の形態の混雑制御部の構成を示すブロック図である。
【図15】 本発明の第4の実施の形態の混雑通知送信時の動作を示す流れ図である。
【図16】 本発明の第5の実施の形態の混雑制御システムの構成を示すプロック図である。
【図17】 本発明の第5の実施の形態による2つの双方向リングを収容可能な混雑制御ノードの構成を示すプロック図である。
【図18】 本発明の第6の実施の形態による混雑制御システムの構成を示すブロック図である。
【図19】 本発明の第6の実施の形態による送信バッファ使用量測定機能付き混雑制御ノードの構成を示すブロック図である。
【図20】 本発明の第6の実施の形態の混雑制御部の構成を示すブロック図である。
【図21】 本発明の第6の実施の形態の混雑通知送信時の動作を示す流れ図である。
【図22】 本発明の第7の実施の形態による混雑制御システムの構成を示すプロック図である。
【符号の説明】
A1〜A6 混雑制御ノード
A11 転送方向決定部
A12 ルーティングテーブル
A13〜A14 混雑制御部
A131 受信決定部
A132 転送バッファ部
A133 出力ミキサ部
A134 混雑通知受信転送部
341 転送処理部
342 推定部
343 重み付加部
344 制限部
A135 送信バッファ部
351 入力分類部
351−1 分類処理部
351−2 リング識別部
351−3 フロー数測定部
352 送信キュー部(宛先混雑制御ノード毎のキュー)
353 出力調整部
354 入力分類部
354−1 分類処理部
354−2 リング識別部
354−3 フロー数測定部
355 送信キュー部(2つのキュー)
356 入力分類部
356−1 分類処理部
356−2 リング識別部
356−3 フロー数測定部
357 送信キュー部(宛先クライアント毎のキュー)
A136 出力測定部
A137 混雑通知送信部
A138 バッファ使用量測定部
B1〜B4 混雑制御ノード
B13〜B14 混雑制御部
B131 転送バッファ部
B132 転送出力測定部
B133 混雑通知送信部
C1〜C8 クライアント
D1 2つの双方向リングを収容可能な混雑制御ノード(接続ノード)
D11 転送方向決定部
D12 ルーティングテーブル
E1〜E2 送信バッファ使用量測定機能付き混雑制御ノード
E13〜E16 混雑制御部
E135 送信バッファ部
E137 混雑通知送信部
E139 送信バッファ使用量測定部
F1〜F4 障害検出機能付き混雑制御ノード
F17〜F18 障害検出部
F19 障害処理部
L100 双方向リンク
L101〜L104 片方向リンク
L105〜L106 双方向リンク
L107〜L109 片方向リンク
L110〜L111 片方向リンク群
L201 双方向リンク
L400 双方向リンク
L401〜L408 片方向リンク
M101〜M104 通知
M201〜M203 通知
R1〜R3 双方向リング状ネットワーク
R11 片方向リング(時計方向)
R12 片方向リング(反時計方向)
R21 片方向リング(時計方向)
R22 片方向リング(反時計方向)
R31 片方向リング(時計方向)
R32 片方向リング(反時計方向)
A90、F90、B90、D90、E90 混雑制御プログラム

Claims (41)

  1. ネットワーク上の通信を混雑制御する混雑制御システムにおいて、
    ネットワーク上において複数備えられる、送信又は中継する通信データを混雑制御する混雑制御ノードが、
    当該混雑制御ノードにおける通信の混雑の度合いを検知する混雑検知手段と、
    混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他の前記混雑制御ノードへ通知する混雑通知手段と、
    他の前記混雑制御ノードから前記混雑の情報を受信する手段と、
    前記混雑の情報と、通信先への転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路上において前記混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、
    前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、
    前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする混雑制御システム。
  2. ネットワーク上の通信を混雑制御する混雑制御システムにおいて、
    ネットワーク上において複数備えられる、送信又は中継する通信データを混雑制御する混雑制御ノードが、
    当該混雑制御ノードにおける通信の混雑の度合いを検知する混雑検知手段と、
    混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他の前記混雑制御ノードへ通知する混雑通知手段と、
    他の前記混雑制御ノードから前記混雑の情報を受信する手段と、
    前記混雑の情報と、通信先への転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路上において前記混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、
    前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、
    各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする混雑制御システム。
  3. ネットワーク上の通信を混雑制御する混雑制御システムにおいて、
    ネットワーク上において複数備えられる、送信又は中継する通信データを混雑制御する混雑制御ノードが、
    当該混雑制御ノードにおける通信の混雑の度合いを検知する混雑検知手段と、
    混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他の前記混雑制御ノードへ通知する混雑通知手段と、
    他の前記混雑制御ノードから前記混雑の情報を受信する手段と、
    前記混雑の情報と、通信先への転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路上において前記混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、
    前記ネットワーク上の隣接するノードとの間における前記通信データの転送のために使用する転送バッファと、
    通信データを送信可能時まで保持する送信バッファと、
    前記送信バッファから出力される前記通信データの量を測定する出力測定手段を備え、
    各前記混雑制御ノードの前記混雑検知手段は、
    前記通信の混雑の度合いを検知する処理を、前記転送バッファの使用量に基づいて行ない、
    各前記混雑制御ノードの前記混雑通知手段は、
    前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定手段が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他の混雑制御ノードに対して通信の制限を指示する制御命令を生成する手段と、
    前記制御命令を前記混雑の情報に付加して前記ネットワーク上の他の混雑制御ノードに対して送信する手段と、
    前記ネットワーク上の他の混雑制御ノードから、前記制御命令の付加された前記混雑の情報を受信する手段と、
    受信した前記制御命令を実行する手段を備えることを特徴とする混雑制御システム。
  4. 各前記混雑制御ノードは、
    前記混雑フロー推定手段により前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める手段と、
    各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整手段を備えることを特徴とする請求項3に記載の混雑制御システム。
  5. 各前記混雑制御ノードは、
    前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、
    前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする請求項3に記載の混雑制御システム。
  6. 各前記混雑制御ノードは、
    前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、
    各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする請求項3に記載の混雑制御システム。
  7. ネットワーク上の通信を混雑制御する混雑制御システムにおいて、
    ネットワーク上において複数備えられる、送信又は中継する通信データを混雑制御する混雑制御ノードが、
    当該混雑制御ノードにおける通信の混雑の度合いを検知する混雑検知手段と、
    混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他の前記混雑制御ノードへ通知する混雑通知手段と、
    他の前記混雑制御ノードから前記混雑の情報を受信する手段と、
    前記混雑の情報と、通信先への転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路上において前記混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、
    前記ネットワーク上の隣接するノードとの間における前記通信データの転送のために使用する転送バッファと、
    前記ネットワーク上における通信ができない障害を検出する障害検出手段と、
    前記障害検出手段により検出された前記障害の発生した前記ネットワーク上の区間の情報を障害通知として、前記ネットワーク上の他の混雑制御ノードに通知する手段を備え、
    各前記混雑制御ノードの前記混雑検知手段は、
    前記通信の混雑の度合いを検知する処理を、前記転送バッファの使用量に基づいて行なうことを特徴とする混雑制御システム。
  8. 各前記混雑制御ノードは、
    前記混雑フロー推定手段により前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める手段と、
    各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整手段を備えることを特徴とする請求項7に記載の混雑制御システム
  9. 各前記混雑制御ノードは、
    前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、
    前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする請求項7に記載の混雑制御システム。
  10. 各前記混雑制御ノードは、
    前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、
    各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする請求項7に記載の混雑制御システム。
  11. 各前記混雑制御ノードは、
    通信データを送信可能時まで保持する送信バッファと、
    前記送信バッファから出力される前記通信データの量を測定する出力測定手段を備え、
    各前記混雑制御ノードの前記混雑通知手段は、
    前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定手段が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他の混雑制御ノードに対して通信の制限を指示する制御命令を生成する手段と、
    前記制御命令を前記混雑の情報に付加して前記ネットワーク上の他の混雑制御ノードに対して送信する手段と、
    前記ネットワーク上の他の混雑制御ノードから、前記制御命令の付加された前記混雑の情報を受信する手段と、
    受信した前記制御命令を実行する手段を備えることを特徴とする請求項7から請求項10のいずれか1つに記載の混雑制御システム。
  12. 各前記混雑制御ノードは、
    前記ネットワーク上の他の混雑制御ノードから前記障害通知を受信する手段と、
    受信した前記障害通知に基づいてルーティングテーブルを変更し、前記ネットワーク上における障害の検出された区間を転送経路から回避させる障害処理手段を備えることを特徴とする請求項7から請求項11のいずれか1つに記載の混雑制御システム。
  13. 各前記混雑制御ノードは、
    前記ネットワーク上の他の混雑制御ノードに対し、当該混雑制御ノードへの転送経路に前記障害が発生している場合には、前記ネットワーク上において転送される前記障害通知の当該混雑制御ノードに対する転送を破棄する手段を備えることを特徴とする請求項12に記載の混雑制御システム。
  14. ネットワーク上の通信を混雑制御する混雑制御ノードにおいて、
    前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する手段と、
    前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、
    前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、
    前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする混雑制御ノード
  15. ネットワーク上の通信を混雑制御する混雑制御ノードにおいて、
    前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する手段と、
    前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、
    前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、
    各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする混雑制御ノード。
  16. ネットワーク上の通信を混雑制御する混雑制御ノードにおいて、
    前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する手段と、
    前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上で あるフローを推定する混雑フロー推定手段と、
    通信の混雑の度合いを検知する混雑検知手段と、
    混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他のノードに通知する混雑通知手段と、
    前記ネットワーク上の隣接する前記ノードとの間における前記通信データの転送のために使用する転送バッファと、
    通信データを送信可能時まで保持する送信バッファと、
    前記送信バッファから出力される前記通信データの量を測定する出力測定手段を備え、
    前記混雑検知手段は、
    前記通信の混雑の度合いを検知する処理を、前記転送バッファの使用量に基づいて行ない、
    前記混雑通知手段は、
    前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定手段が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他のノードに対して通信の制限を指示する制御命令を生成する手段を備え、
    前記制御命令を前記混雑の情報に含めて前記ネットワーク上の他のノードに対して送信することを特徴とする混雑制御ノード。
  17. 前記混雑フロー推定手段により前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める手段と、
    各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整手段を備えることを特徴とする請求項16に記載の混雑制御ノード。
  18. 前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、
    前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする請求項16に記載の混雑制御ノード。
  19. 前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、
    各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする請求項16に記載の混雑制御ノード。
  20. ネットワーク上の通信を混雑制御する混雑制御ノードにおいて、
    前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する手段と、
    前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定手段と、
    通信の混雑の度合いを検知する混雑検知手段と、
    混雑検知手段が検知した混雑の情報を、前記ネットワーク上の他のノードに通知する混雑通知手段と、
    前記ネットワーク上における通信ができない障害を検出する障害検出手段と、
    前記障害検出手段により検出された前記障害の発生した前記ネットワーク上の区間の情報を障害通知として、前記ネットワーク上のノードに通知する手段を備えることを特徴とする混雑制御ノード。
  21. 前記混雑フロー推定手段により前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める手段と、
    各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整手段を備えることを特徴とする請求項20に記載の混雑制御ノード。
  22. 前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理手段と、
    前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記制限対象フロー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする請求項20に記載の混雑制御ノード。
  23. 前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理手段と、
    各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定手段と、
    前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加手段と、
    各前記キュー毎に、前記混雑フロー推定手段の推定結果と前記重み付加手段の重み付け結果に基づいて送信量を制限する出力調整手段を備えることを特徴とする請求項20に記載の混雑制御ノード。
  24. 前記ネットワーク上の隣接する前記ノードとの間における前記通信データの転送のために使用する転送バッファを備え、
    前記混雑検知手段は、
    前記通信の混雑の度合いを検知する処理を、前記転送バッファの使用量に基づいて行なうことを特徴とする請求項20から請求項23のいずれか1つに記載の混雑制御ノード。
  25. 通信データを送信可能時まで保持する送信バッファと、
    前記送信バッファから出力される前記通信データの量を測定する出力測定手段を備え、
    前記混雑通知手段は、
    前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定手段が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他のノードに対して通信の制限を指示する制御命令を生成する手段を備え、
    前記制御命令を前記混雑の情報に含めて前記ネットワーク上の他のノードに対して送信することを特徴とする請求項24に記載の混雑制御ノード。
  26. 前記ネットワーク上の他のノードから前記障害通知を受信する手段と、
    受信した前記障害通知に基づいてルーティングテーブルを変更し、前記ネットワーク上における障害の検出された区間を転送経路から回避させる障害処理手段を備えることを特徴とする請求項20から請求項25のいずれか1つに記載の混雑制御ノード。
  27. 前記ネットワーク上の他のノードに対し、当該ノードへの転送経路に前記障害が発生している場合には、前記ネットワーク上において転送される前記障害通知の当該ノードに対する転送を破棄する手段を備えることを特徴とする請求項26に記載の混雑制御ノード。
  28. コンピュータを制御することにより、ネットワークと接続しクライアントによる通信を中継する混雑制御ノードにおける通信の混雑を制御する混雑制御プログラムにおいて、
    前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する機能と、
    前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定機能と、
    前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理機能と、
    前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定機能と、
    前記フロー数測定機能の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加機能と、
    各前記制限対象フロー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする混雑制御プログラム
  29. コンピュータを制御することにより、ネットワークと接続しクライアントによる通信を中継する混雑制御ノードにおける通信の混雑を制御する混雑制御プログラムにおいて、
    前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する機能と、
    前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定機能と、
    前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理機能と、
    各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定機能と、
    前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加機能と、
    各前記キュー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする混雑制御プログラム
  30. コンピュータを制御することにより、ネットワークと接続しクライアントによる通信を中継する混雑制御ノードにおける通信の混雑を制御する混雑制御プログラムにおいて、
    前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する機能と、
    前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定機能と、
    通信の混雑の度合いを検知する混雑検知機能と、
    混雑検知機能が検知した混雑の情報を、前記ネットワーク上の他のノードに通知する混雑通知機能と、
    通信データを送信可能時まで保持する送信バッファから出力される前記通信データの量を測定する出力測定機能を備え、
    前記混雑検知機能において、前記ネットワーク上の隣接する前記ノードとの間における前記通信データの転送のために使用する転送バッファの使用量に基づいて、前記通信の混雑の度合いを検知する処理を実行し、
    前記混雑通知機能にて、
    前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定機能が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他のノードに対して通信の制限を指示する制御命令を生成する機能と、
    前記制御命令を前記混雑の情報に含めて前記ネットワーク上の他のノードに対して送信する機能を備えることを特徴とする混雑制御プログラム
  31. 前記混雑フロー推定機能により前記前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める機能と、
    各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整機能を備えることを特徴とする請求項30に記載の混雑制御プログラム
  32. 前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理機能と、
    前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定機能と、
    前記フロー数測定機能の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加機能と、
    各前記制限対象フロー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする請求項30に記載の混雑制御プログラム
  33. 前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理機能と、
    各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定機能と、
    前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加機能と、
    各前記キュー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする請求項30に記載の混雑制御プログラム
  34. コンピュータを制御することにより、ネットワークと接続しクライアントによる通信を中継する混雑制御ノードにおける通信の混雑を制御する混雑制御プログラムにおいて、
    前記ネットワーク上の他のノードから、当該ノードにおいて発生した通信の混雑の情報を受信する機能と、
    前記混雑の情報と、通信先への通信データの転送経路を指定するルーティングテーブルを参照して、前記通信先への転送経路のノードにおいて混雑の度合いが定められた以上であるフローを推定する混雑フロー推定機能と、
    通信の混雑の度合いを検知する混雑検知機能と、
    混雑検知機能が検知した混雑の情報を、前記ネットワーク上の他のノードに通知する混雑通知機能と、
    前記ネットワーク上における通信ができない障害を検出する障害検出機能と、
    前記障害検出機能により検出された前記障害の発生した前記ネットワーク上の区間の情報を障害通知として、前記ネットワーク上のノードに通知する機能を備えることを特徴とする混雑制御プログラム。
  35. 前記混雑フロー推定機能により前記前記混雑の度合いが定められた以上であると推定された前記フローを、送信量を制限する制限対象フローと定める機能と、
    各前記制限対象フロー毎に、当該制限対象フローのデータの送信量の制限を行なう出力調整機能を備えることを特徴とする請求項34に記載の混雑制御プログラム。
  36. 前記ネットワーク上の前記フローを、送信量を制限する制限対象フロー又は送信量を制限しない非制限対象フローとに分類する分類処理機能と、
    前記制限対象フロー及び前記非制限対象フローの本数を測定するフロー数測定機能と、
    前記フロー数測定機能の測定結果に基づいて、前記制限対象フローに対する送信量の制限の重み付けを決定する重み付加機能と、
    各前記制限対象フロー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする請求項34に記載の混雑制御プログラム。
  37. 前記ネットワーク上の前記フローを分類しキューと関連付ける分類処理機能と、
    各前記キュー毎に、当該キューを通過する前記フローの本数を測定するフロー数測定機能と、
    前記フロー数測定手段の測定結果に基づいて、各前記キュー毎に当該キューを通過する前記フローに対する送信量の制限の重み付けを決定する重み付加機能と、
    各前記キュー毎に、前記混雑フロー推定機能の推定結果と前記重み付加機能の重み付け結果に基づいて送信量を制限する出力調整機能を備えることを特徴とする請求項34に記載の混雑制御プログラム。
  38. 前記混雑検知機能において、前記ネットワーク上の隣接する前記ノードとの間における前記通信データの転送のために使用する転送バッファの使用量に基づいて、前記通信の混雑の度合いを検知する処理を実行することを特徴とする請求項34から請求項37のいずれか1つに記載の混雑制御プログラム。
  39. 通信データを送信可能時まで保持する送信バッファから出力される前記通信データの量を測定する出力測定機能を備え、
    前記混雑通知機能にて、
    前記転送バッファの使用量、当該転送バッファから出力されるデータ量、及び前記出力測定機能が測定した前記送信バッファから出力される前記通信データの量とに基づいて、前記ネットワーク上の他のノードに対して通信の制限を指示する制御命令を生成する機能と、
    前記制御命令を前記混雑の情報に含めて前記ネットワーク上の他のノードに対して送信する機能を備えることを特徴とする請求項38に記載の混雑制御プログラム。
  40. 前記ネットワーク上の他のノードから前記障害通知を受信する機能と、
    受信した前記障害通知に基づいてルーティングテーブルを変更し、前記ネットワーク上 における障害の検出された区間を転送経路から回避させる障害処理機能を備えることを特徴とする請求項34から請求項39のいずれか1つに記載の混雑制御プログラム。
  41. 前記ネットワーク上の他のノードに対し、当該ノードへの転送経路に前記障害が発生している場合には、前記ネットワーク上において転送される前記障害通知の当該ノードに対する転送を破棄する機能を備えることを特徴とする請求項40に記載の混雑制御プログラム。
JP2001320723A 2001-10-18 2001-10-18 ネットワークの混雑制御システムと混雑制御ノード、及び混雑制御プログラム Expired - Fee Related JP4041944B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2001320723A JP4041944B2 (ja) 2001-10-18 2001-10-18 ネットワークの混雑制御システムと混雑制御ノード、及び混雑制御プログラム
EP20020023611 EP1304839A3 (en) 2001-10-18 2002-10-17 Congestion control for communications network
US10/272,943 US7468945B2 (en) 2001-10-18 2002-10-18 Congestion control for communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001320723A JP4041944B2 (ja) 2001-10-18 2001-10-18 ネットワークの混雑制御システムと混雑制御ノード、及び混雑制御プログラム

Publications (2)

Publication Number Publication Date
JP2003124954A JP2003124954A (ja) 2003-04-25
JP4041944B2 true JP4041944B2 (ja) 2008-02-06

Family

ID=19138067

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001320723A Expired - Fee Related JP4041944B2 (ja) 2001-10-18 2001-10-18 ネットワークの混雑制御システムと混雑制御ノード、及び混雑制御プログラム

Country Status (3)

Country Link
US (1) US7468945B2 (ja)
EP (1) EP1304839A3 (ja)
JP (1) JP4041944B2 (ja)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2373211A1 (en) * 2002-02-22 2003-08-22 Catena Networks Canada Inc. Fault notification filtering
JP3808824B2 (ja) * 2002-11-20 2006-08-16 株式会社日立製作所 情報伝送システム及び情報伝送方法
KR100493234B1 (ko) * 2002-11-25 2005-06-02 한국전자통신연구원 노드 시스템, 이를 이용한 이중링 통신 시스템 및 그 통신방법
US7774506B2 (en) * 2003-08-19 2010-08-10 Cisco Technology, Inc. Systems and methods for alleviating client over-subscription in ring networks
US20050060423A1 (en) * 2003-09-15 2005-03-17 Sachin Garg Congestion management in telecommunications networks
US20050060424A1 (en) * 2003-09-15 2005-03-17 Sachin Garg Congestion management in telecommunications networks
US20050122973A1 (en) * 2003-12-09 2005-06-09 Samsung Electronics Co., Ltd. Network node capable of restricting a packet receiving activity during packet congestion and method thereof
US20050135385A1 (en) * 2003-12-17 2005-06-23 Tellabs Operations, Inc. Method and apparatus for digital cross connect
US7693051B2 (en) * 2004-12-17 2010-04-06 Meshnetworks, Inc. System and method for controlling congestion in multihopping wireless networks
US7912032B2 (en) * 2004-12-17 2011-03-22 Motorola, Inc. System and method for communicating within a wireless communication network
US20060146875A1 (en) * 2005-01-04 2006-07-06 Yang Luiyang L Media access controller and methods for distributed hop-by-hop flow control in wireless mesh networks
CN1809051A (zh) * 2005-01-19 2006-07-26 华为技术有限公司 一种ip电信网中应对设备过载的处理方法
US8201205B2 (en) 2005-03-16 2012-06-12 Tvworks, Llc Upstream bandwidth management methods and apparatus
US9185036B2 (en) * 2005-03-23 2015-11-10 Alcatel Lucent Method and apparatus for flow control of data in a network
JP2006345339A (ja) * 2005-06-10 2006-12-21 Fujitsu Ltd リングネットワークを構成するノード装置およびデータフレーム制御方法
US8045473B2 (en) * 2005-11-28 2011-10-25 Cisco Technology, Inc. Tailored relief for congestion on application servers for real time communications
KR100715677B1 (ko) * 2005-12-02 2007-05-09 한국전자통신연구원 폭주제어 액세스 게이트웨이 시스템 및 그 시스템에서의폭주제어 방법
US8023479B2 (en) 2006-03-02 2011-09-20 Tango Networks, Inc. Mobile application gateway for connecting devices on a cellular network with individual enterprise and data networks
US7903635B2 (en) 2006-03-02 2011-03-08 Tango Networks, Inc. System and method for enabling DTMF detection in a VoIP network
US11405846B2 (en) 2006-03-02 2022-08-02 Tango Networks, Inc. Call flow system and method for use in a legacy telecommunication system
US7890096B2 (en) 2006-03-02 2011-02-15 Tango Networks, Inc. System and method for enabling call originations using SMS and hotline capabilities
US7952997B2 (en) * 2006-05-18 2011-05-31 Mcdata Corporation Congestion management groups
KR100792836B1 (ko) * 2006-06-02 2008-01-14 에스케이 텔레콤주식회사 온라인 서비스의 트래픽 처리 방법 및 서버
JP5076581B2 (ja) * 2007-03-23 2012-11-21 日本電気株式会社 光通信システムおよびノード装置およびサービスクラス設定方法
CA2975567A1 (en) 2007-10-03 2009-04-09 Genesis Technical Systems Corp. Dynamic, asymmetric rings
JP2009159024A (ja) * 2007-12-25 2009-07-16 Nec Corp 通信システム、通信規制方法、信号処理サーバ装置、およびプログラム
US8085667B2 (en) * 2008-05-15 2011-12-27 Panasonic Corporation Wireless relay apparatus and wireless relay method
US10185646B2 (en) * 2008-12-16 2019-01-22 Red Hat, Inc. Getting performance saturation point of an event driven system
JP5406558B2 (ja) * 2009-02-24 2014-02-05 キヤノン株式会社 データ処理装置、データ処理方法およびプログラム
US8300535B2 (en) * 2009-02-24 2012-10-30 Canon Kabushiki Kaisha Information processing apparatus, method thereof, and storage medium
JP5417971B2 (ja) * 2009-04-30 2014-02-19 日本電気株式会社 ネットワークシステム、ネットワークシステムの通信方法、及びネットワークシステムのノード装置
JP5534711B2 (ja) * 2009-05-01 2014-07-02 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
JP5590849B2 (ja) * 2009-10-08 2014-09-17 キヤノン株式会社 複数の処理モジュールを有する並列処理回路を備えるデータ処理装置、その制御装置、およびその制御方法、プログラム
JP2011154449A (ja) * 2010-01-26 2011-08-11 Sanyo Electric Co Ltd 混雑度測定装置
WO2011099365A1 (ja) * 2010-02-12 2011-08-18 日本電気株式会社 ネットワークシステム及び輻輳制御方法
US20110282980A1 (en) * 2010-05-11 2011-11-17 Udaya Kumar Dynamic protection of a resource during sudden surges in traffic
JP2014507828A (ja) * 2010-12-22 2014-03-27 コーニンクレッカ フィリップス エヌ ヴェ 通信ネットワークの少なくとも1つのアプリケーションのデータ通信を制御するためのコンポーネント、システム、及び方法
US11323337B2 (en) 2011-09-27 2022-05-03 Comcast Cable Communications, Llc Resource measurement and management
US8953458B2 (en) * 2011-09-30 2015-02-10 Gigamon Inc. Systems and methods for implementing a traffic visibility network
JP2013197888A (ja) * 2012-03-19 2013-09-30 Fujitsu Ltd 情報伝送装置、情報伝送システム及び情報伝送方法
US9285865B2 (en) 2012-06-29 2016-03-15 Oracle International Corporation Dynamic link scaling based on bandwidth utilization
US20140040526A1 (en) * 2012-07-31 2014-02-06 Bruce J. Chang Coherent data forwarding when link congestion occurs in a multi-node coherent system
US9106557B2 (en) * 2013-03-13 2015-08-11 Comcast Cable Communications, Llc Scheduled transmission of data
DE102014109060B3 (de) * 2014-06-27 2015-09-24 Beckhoff Automation Gmbh Netzwerk, Kopf-Teilnehmer und Datenübertragungsverfahren
US20150381737A1 (en) * 2014-06-30 2015-12-31 Davra Networks Limited Gateway device and a gateway system for an internet-of-things environment
US10225761B2 (en) 2014-11-06 2019-03-05 At&T Intellectual Property I, L.P. Enhanced network congestion application programming interface
US20160294658A1 (en) * 2015-03-30 2016-10-06 Ca, Inc. Discovering and aggregating data from hubs
EP3136663A1 (en) * 2015-08-26 2017-03-01 Alcatel Lucent Network congestion notification in communication networks
JP6962294B2 (ja) * 2018-08-16 2021-11-05 日本電信電話株式会社 通信制御装置、および、通信制御方法
CN111182581B (zh) * 2019-02-14 2023-12-01 维沃移动通信有限公司 流控方法、目标节点、节点及施主节点
US11575609B2 (en) * 2019-07-19 2023-02-07 Intel Corporation Techniques for congestion management in a network

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06311172A (ja) 1993-04-26 1994-11-04 Mitsubishi Electric Corp アクセス制御装置
JPH07250088A (ja) 1994-03-09 1995-09-26 Nippon Telegr & Teleph Corp <Ntt> 仮想パス容量管理方式および装置
JP3231941B2 (ja) 1994-05-06 2001-11-26 日本電信電話株式会社 輻輳防止方法およびパケット通信システム
JP3137834B2 (ja) 1994-06-01 2001-02-26 三菱電機株式会社 リング型atmノードのアクセス制御装置
GB9521831D0 (en) * 1995-10-25 1996-01-03 Newbridge Networks Corp Crankback and loop detection in ATM SVC routing
JPH11261643A (ja) 1998-03-13 1999-09-24 Nippon Telegr & Teleph Corp <Ntt> 輻輳領域検出方法及び装置及び輻輳領域検出プログラムを格納した記憶媒体
JPH11298530A (ja) 1998-04-10 1999-10-29 Hitachi Ltd パケット交換システムおよびその輻輳制御方式
JP3464149B2 (ja) 1998-07-28 2003-11-05 日本電信電話株式会社 Atm通信装置および輻輳回避方法
JP3558908B2 (ja) 1999-01-14 2004-08-25 日本電信電話株式会社 アクセスポイント選択接続システム及びそのプログラムを記録した記憶媒体
JP2000278305A (ja) 1999-03-25 2000-10-06 Nec Corp ルータ及びルータノードの障害回避方法
US6614805B1 (en) * 1999-05-27 2003-09-02 Nortel Networks Limited Method and apparatus for media access control for packet transmission over a buffer insertion ring
US6977899B1 (en) * 2000-01-20 2005-12-20 Lucent Technologies Inc. Method and apparatus for message-based overload control in a distributed call-processor communication system
US7792023B2 (en) * 2000-06-30 2010-09-07 Arris Group Per-flow rate control for an asynchronous metro packet transport ring
US7158480B1 (en) * 2001-07-30 2007-01-02 Nortel Networks Limited Feedback output queuing system, apparatus, and method

Also Published As

Publication number Publication date
US20030076781A1 (en) 2003-04-24
US7468945B2 (en) 2008-12-23
EP1304839A2 (en) 2003-04-23
JP2003124954A (ja) 2003-04-25
EP1304839A3 (en) 2007-02-21

Similar Documents

Publication Publication Date Title
JP4041944B2 (ja) ネットワークの混雑制御システムと混雑制御ノード、及び混雑制御プログラム
US7539133B2 (en) Method and apparatus for preventing congestion in load-balancing networks
US6304552B1 (en) Memory and apparatus for input based control of discards in a lossy packet network
US6058113A (en) Method for enhancing resource reservation communication
US7903552B2 (en) Directional and priority based flow control mechanism between nodes
US6628609B2 (en) Method and apparatus for simple IP-layer bandwidth allocation using ingress control of egress bandwidth
EP2068511B1 (en) Controlling congestion in a packet switched data network
US8451742B2 (en) Apparatus and method for controlling data communication
US5457687A (en) Method and apparatus for backward explicit congestion notification (BECN) in an ATM network
US7046665B1 (en) Provisional IP-aware virtual paths over networks
EP1489792B1 (en) Method of quality of service-based flow control within a distributed switch fabric network
US9667570B2 (en) Fabric extra traffic
US7231471B2 (en) System using fairness logic for mediating between traffic associated with transit and transmit buffers based on threshold values of transit buffer
CN102014075B (zh) 流量监管方法和装置
US20210250301A1 (en) Scalable deterministic services in packet networks
JP2000059377A (ja) 通信装置
EP1056244A2 (en) Method and apparatus for media access control for packet transmission over a buffer insertion ring
CN113767597B (zh) 用于基于周期的负载均衡的网络设备、系统和方法
WO2011030799A1 (ja) 通信ネットワーク、通信ノード、及び予備帯域制御方式
Vutukury et al. SMART: a scalable multipath architecture for intra-domain QoS provisioning
JP3586766B2 (ja) Ip網における処理放棄型ローカル輻輳制御方法および方式
JPH0779253A (ja) パケット交換機
Davik et al. Paper I
JP2005005921A (ja) ルータおよびそのルータに用いるパケットルーティング方法
babu Kommu et al. Active Queue Management for Flow Congestion Control in wireless network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040914

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070507

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071017

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071030

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101122

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111122

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111122

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121122

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121122

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131122

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees