(57)【特許請求の範囲】
【請求項１】
転送するパケットを蓄積した送信バッファの平均キュー長を求め、該平均キュー長に対応して予め設定されたパケット廃棄率に従って、受信したパケットの破棄制御を行い、パケットの転送量を制御するパケット転送制御システムであって、
求めた平均キュー長と予め設定された目標範囲の下限値および上限値と比較し、上記平均キュー長が上記下限値より小さければ上記パケット廃棄率を減少させ、上記平均キュー長が上記上限値より大きければ上記パケット廃棄率を増加させる第１の手段と、
上記平均キュー長に対して予め設定された目標値から、該目標値と上記平均キュー長との誤差、および、該誤差の変化分を求め、求めた目標値と誤差および変化分を入力としたファジィ推論により、上記第１の手段による上記パケット廃棄率の増減量を算出する第２の手段と、
該第２の手段でのファジィ推論に用いるルールの制御パラメータを、上記目標値と誤差および変化分を入力、上記パケット廃棄率の増減量を出力とするニューラルネットワークにおける重みとして該ニューラルネットワークの学習により求める第３の手段と
を有することを特徴とするパケット転送制御システム。
【請求項２】
転送するパケットを蓄積した送信バッファの平均キュー長を求め、該平均キュー長に対応して予め設定されたパケット廃棄率に従って、受信したパケットの破棄制御を行い、パケットの転送量を制御するパケット転送制御システムであって、
求めた平均キュー長と予め設定された目標範囲の下限値および上限値と比較し、上記平均キュー長が上記下限値より小さければ上記パケットの最大廃棄率を減少させ、上記平均キュー長が上記上限値より大きければ上記パケットの最大廃棄率を増加させる第１の手段と、
上記平均キュー長に対して予め設定された目標値から、該目標値と上記平均キュー長との誤差、および、該誤差の変化分を求め、上記目標値と誤差および変化分を入力としたファジィ推論により、上記第１の手段による上記パケットの最大廃棄率の増減量を算出する第２の手段と、
該第２の手段でのファジィ推論に用いるルールの制御パラメータを、上記目標値と誤差および変化分を入力、上記増減量を出力とするニューラルネットワークにおける重みとして該ニューラルネットワークの学習により求める第３の手段と
を有することを特徴とするパケット転送制御システム。
【請求項３】
転送するパケットを蓄積した送信バッファの平均キュー長を求め、該平均キュー長に対応して予め設定されたパケット廃棄率に従って、受信したパケットの破棄制御を行う手順を有し、パケットの転送量を制御するシステムのパケット転送制御方法であって、
求めた平均キュー長と予め設定された目標範囲の下限値および上限値と比較する手順と、
上記平均キュー長が上記下限値より小さければ上記パケット廃棄率を減少させる手順と、
上記平均キュー長が上記上限値より大きければ上記パケット廃棄率を増加させる手順と、
上記平均キュー長に対して予め設定された目標値から、該目標値と上記平均キュー長との誤差、および、該誤差の変化分を求める手順と、
求めた目標値と誤差および変化分を入力としたファジィ推論により、上記パケット廃棄率の増減量を算出する手順と、
上記ファジィ推論に用いるルールの制御パラメータを、上記目標値と誤差および変化分を入力、上記パケット廃棄率の増減量を出力とするニューラルネットワークにおける重みとして該ニューラルネットワークの学習により求める手順と
を有することを特徴とするパケット転送制御方法。
【請求項４】
転送するパケットを蓄積した送信バッファの平均キュー長を求め、該平均キュー長に対応して予め設定されたパケット廃棄率に従って、受信したパケットの破棄制御を行う手順を有し、パケットの転送量を制御するシステムのパケット転送制御方法であって、
求めた平均キュー長と予め設定された目標範囲の下限値および上限値と比較する手順と、
上記平均キュー長が上記下限値より小さければ上記パケットの最大廃棄率を減少させる手順と、
上記平均キュー長が上記上限値より大きければ上記パケットの最大廃棄率を増加させる手順と、
上記平均キュー長に対して予め設定された目標値から、該目標値と上記平均キュー長との誤差、および、該誤差の変化分を求める手順と、
上記目標値と誤差および変化分を入力としたファジィ推論により、上記パケットの最大廃棄率の増減量を算出する手順と、
上記ファジィ推論に用いるルールの制御パラメータを、上記目標値と誤差および変化分を入力、上記増減量を出力とするニューラルネットワークにおける重みとして該ニューラルネットワークの学習により求める手順と
を有することを特徴とするパケット転送制御方法。
【請求項５】
コンピュータに、請求項３もしくは請求項４のいずれかに記載のパケット転送制御方法における各手順を実行させるためのプログラム。
【請求項６】
コンピュータに、請求項３もしくは請求項４のいずれかに記載のパケット転送制御方法における各手順を実行させるためのプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項７】
請求項３もしくは請求項４のいずれかに記載のパケット転送制御方法における各手順を実行するコンピュータを具備し、該コンピュータの処理に基づき、転送するパケットの量を制御することを特徴とする通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パケットの転送制御技術に係わり、特に、ネットワークの輻輳制御を、トラフィック特性の動的変動に対応して効率的に行うのに好適な技術に関するものである。
【０００２】
【従来の技術】
インターネット等、パケット転送を行うネットワークの輻輳制御およびパケット転送制御技術に関する従来の技術としては、例えば、「S.Floyd, V.Jacobson : Random early detection gateways for congestion avoidance. IEEE/ACM Transaction on Networking vol.1, no.4, Aug-93」に記載のＲＥＤ（Random Early Detection）がある。以下、このＲＥＤを用いた輻輳制御技術およびパケット転送制御技術について説明する。
【０００３】
図１４は、従来のＲＥＤを用いた輻輳制御およびパケット転送制御を行うシステムの構成例を示すブロック図であり、図１５は、図１４のシステムで参照する平均キュー長とパケット廃棄率との関係例を示す説明図、図１６は、図１４のシステムにおけるＲＥＤキューマネージャーの動作概要を示す説明図である。
【０００４】
図１４において、ゲートウェイ（Gateway）の出力ポートに送信元（Forwarder）からのパケットが到着すると（Packet Incoming）、ＲＥＤキューマネージャー（ＲＥＤ-Queue Manager）は、送信バッファ（FIFO-Queue）のキュー長Ｑから加重平均キュー長ｑを計算し、その平均キュー長ｑと予め決められた「平均キュー長の最小闘値minth」および「平均キュー長の最大闘値maxth」との比較によって以下のケース毎に動作を行う。
【０００５】
まず、「ｑ＜minth」の場合、到着したパケットを送信バッファ（FIFO-Queue）のキューに収容し、「minth≦ｑ≦maxth」の場合、パケットの廃棄確率Ｐａを計算し、この廃棄確率Ｐａで、到着したパケットを廃棄し、そして、「maxth＜ｑ」の場合、全ての到着したパケットを廃棄する。
【０００６】
すなわち、図１６に示すように、ＲＥＤキューマネージャーは、パケット到着毎に、まず、▲１▼平均キュー長ｑを計算する。例えば、キューが空きでないとき、「ｑ＝（１−ωｑ）ｑ＋ωｑＱ」（ωｑ：ｑ推定用ローパスフィルタの重み係数）の式に基づき、また、キューが空のとき、「ｑ＝（１−ωｑ）ｍｑ」（ｍ：キューが最後に空になってから現在までの経過時間）の式に基づき、平均キュー長ｑを計算する。
【０００７】
この計算の結果、▲２▼「minth≦ｑ≦maxth」の場合、まず、「Ｐｂ＝Ｐmax（ｑ−minth）／（maxth−minth）」（Ｐmax：Ｐｂの最大値）の「Ｐｂ」を求め、次に、この「Ｐｂ」を用いて「Ｐａ＝Ｐｂ／（１−count×Ｐｂ）」（count：最後に廃棄を行ってからキューに収容されたパケット数）の式に基づき、パケット廃棄率Ｐａを求め、このパケット廃棄率Ｐａで到着パケットを廃棄する。尚、上述の式から「Ｐmax」（Ｐｂの最大値）はＰａの最大値でもある。
【０００８】
また、▲３▼「maxth＜ｑ」の場合、全ての到着パケットを廃棄する。尚、▲２▼において計算して求められるパケット廃棄率Ｐａと平均キュー長ｑとは、図１５で示されるような関係となる。
【０００９】
このパケット転送制御動作により、送信バッファ（FIFO-Queue）の平均キュー長ｑを一定範囲内に保ち、バッファ輻輳を事前に回避することができる。
【００１０】
しかし、このように、ＲＥＤを用いてキュー制御を効率的に運用するためには、制御パラメータを適切な値に設定する必要があるが、そのチューン・アップ技術が理論的に確立されておらず困難である。
【００１１】
また、たとえチューン・アップが成功して平均キュー長ｑがほぼ一定のままである平衡状態にあっても、同一リンク上でアクティブ・フロー数が増大したりあるいは減少して急激にトラフィック特性が変動すると、この平均キュー長ｑを一定範囲のパケット・ランダム廃棄区間（minth〜maxth）内に維持できず、望ましいスループットや接続遅延を得られなくなる。
【００１２】
このような問題に対処するための従来技術として、例えば、「S.Floyd, G.Gummadi, and S.Shenker. Adaptive RED : An Algorithm for Increasing the Robustness of RED. Technical Report, to appear, 2001」に記載のように、最大パケット廃棄率Ｐmaxを一定のままにせず、ｑの急激な増減量に応じて、最大パケット廃棄率Ｐmaxを可変にする（操作する）技術が提案されている。
【００１３】
この最大パケット廃棄率Ｐmaxの操作ポリシーは，「ｑ＜minthの場合、Ｐmaxを減少させる（＝キュー長を増加させ、パケットの転送量を増加させる）」、「minth≦ｑ≦maxthの場合、Ｐmaxを一定とする」、「maxth＜ｑの場合、Ｐmaxを増加させる（＝キュー長を減少させ、パケットの転送量を減少させる）」となる。
【００１４】
尚、最大パケット廃棄率Ｐmaxを減少させると、上述の式からも明らかなように、図１５に示すグラフの傾きが小さくなり、最大パケット廃棄率Ｐmaxを増加させると、図１５に示すグラフの傾きが大きくなり、それぞれの平均キュー長ｑに対するパケット廃棄確率Ｐａが変化する。
【００１５】
しかし、この技術では、様々なトラフィック状況において平均キュー長ｑの変化量に対する最大パケット廃棄率Ｐmaxの操作量ΔＰmaxを如何に決定するかという問題が解決されていない。
【００１６】
【発明が解決しようとする課題】
解決しようとする問題点は、従来の技術では、トラフィック特性の変動に対応して、最大パケット廃棄率Ｐmaxを適切に調整することができない点である。
【００１７】
本発明の目的は、これら従来技術の課題を解決し、トラフィック特性の急激な変動が発生しても適切な輻輳制御を可能とし、ネットワークの信頼性を向上させることである。
【００１８】
【課題を解決するための手段】
上記目的を達成するため、本発明は、例えば、インターネット上のゲートウェイにおいて、トラフィック特性の変動に係わらず、送信バッファのＦＩＦＯキューの平均キュー長ｑを一定範囲内に保つためにパケット廃棄を制御して、送信バッファの輻輳を制御するものであり、特に、送信バッファＦＩＦＯキューの平均キュー長ｑを監視し、この平均キュー長ｑの監視結果に基づき、予め記憶したトラフィック特性適応可否判定条件を参照して、送信バッファに対する制御動作が現状のトラフィック特性に適応しているか否かを判定し、非適応と判定した場合には、最大パケット廃棄率Ｐmaxを調整してバッファ内のパケットを廃棄する割合を増加、あるいは減少させ、平均キュー長ｑの急激な増加、あるいは急激な減少を抑制する。この抑制のために、最大パケット廃棄率Ｐmaxの制御ルールをファジィ（Fuzzy）関係として記述し、ファジィ推論により操作量ΔＰmaxを算出する。また、この操作量ΔＰmaxをニューラルネットワーク（Neural Network）の学習機能によって修正していく。
【００１９】
【発明の実施の形態】
以下、本発明の実施の形態を、図面により詳細に説明する。
【００２０】
図１は、本発明に係わるパケット転送制御システムの構成例を示すブロック図であり、図２は、図１におけるトラフィック制御装置の構成例を示すブロック図、図３は、図１における制御パラメータ補正装置の構成例を示すブロック図、図４は、図２における適合制御条件記憶部に記憶される制御適合判定条件例を示す説明図、図５は、図１におけるトラフィック制御装置で用いられるファジィ制御ルールの第１の構成例を示す説明図、図６は、図１におけるトラフィック制御装置で用いられるファジィ制御ルールの第２の構成例を示す説明図、図７は、図３における制御パラメータ補正条件記憶部に記憶される収束条件例を示す説明図、図８は、図３における制御パラメータ補正条件記憶部に記憶される制御ルール生成条件例を示す説明図、図９は、図１における制御パラメータ補正装置のニューラルネットワークの構成・動作例を示す説明図、図１０は、図９におけるニューラルネットワークの具体的な動作例を示す説明図、図１１は、図１における制御パラメータ補正装置の処理動作例を示す説明図、図１２は、図３における最大推定誤差領域選択部の処理動作例を示す説明図、図１３は、図３における制御ルール生成部の処理動作例を示す説明図である。
【００２１】
図１においては、本例のパケット転送制御システムは、インターネット等でのパケット転送を行う通信装置としてのゲートウェイ（図中「Gateway」と記載）１に設けられており、このゲートウェイ１は、ＣＰＵ（Central Processing Unit）や主メモリ、表示装置、入力装置、外部記憶装置等からなるコンピュータ構成を有し、光ディスク駆動装置等を介してＣＤ−ＲＯＭ等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みＣＰＵで処理することにより、本発明に係わる各処理部の機能を実行する。
【００２２】
すなわち、ゲートウェイ１内には、転送するパケットを蓄積する送信バッファ（図中「FIFO-QUEUE」と記載）２と、この送信バッファ２における平均キュー長を求め、この平均キュー長に対応して予め設定されたパケット廃棄率Ｐａに従って、送信元（Forwarder）から受信したパケット（Packet Incoming）の破棄制御を行うＲＥＤキューマネージャ（図中「RED-Queue Manager」と記載）３が設けられ、パケットの転送量を制御する。
【００２３】
さらに、本例のゲートウェイ１には、このＲＥＤキューマネージャ３によるパケット破棄制御をコントロールして、送信バッファ２における平均キュー長を制御することにより、送信バッファ２における輻輳を防止するための適応調整型トラフィック輻輳システム４が設けられている。
【００２４】
さらに、この適応調整型トラフィック輻輳システム４には、ファジィ推論部（図中「Fuzzy Controller」と記載）４１ａを具備したトラフィック制御装置４１と、ニューラルネットワーク（図中「Neural Network」と記載）４２ａを具備した制御パラメータ補正装置４２が設けられている。
【００２５】
この適応調整型トラフィック輻輳システム４とＲＥＤキューマネージャ３とで、本発明に係わるパケット転送制御システムが構成され、ネットワーク上のトラフィック特性の変動に係わらず、送信バッファ２のＦＩＦＯキューの平均キュー長ｑを一定範囲内に保つためにパケット廃棄を制御して、送信バッファ３の輻輳を制御する。
【００２６】
すなわち、ＲＥＤキューマネージャ３において、送信バッファ２のＦＩＦＯキューの平均キュー長ｑを監視し、この平均キュー長ｑの監視結果に基づき、適応調整型トラフィック輻輳システム４において、予め記憶したトラフィック特性適応可否判定条件を参照して、送信バッファ３に対する制御動作が現状のトラフィック特性に適応しているか否かを判定し、非適応と判定した場合には、パケット廃棄率（ここでは最大パケット廃棄率Ｐmax）を調整して送信バッファ３内のパケットを廃棄する割合を増加、あるいは減少させ、平均キュー長ｑの急激な増加、あるいは急激な減少を抑制する。
【００２７】
この抑制を行うために、トラフィック制御装置４１において、最大パケット廃棄率Ｐmaxの制御ルールをファジィ（Fuzzy）関係として記述し、ファジィ推論部４１ａにより操作量ΔＰmaxを算出する。さらに、この操作量ΔＰmaxを、制御パラメータ補正装置４２のニューラルネットワーク４２ａにおいて、その学習機能によって修正していく。
【００２８】
具体的には、ＲＥＤキューマネージャ３は、求めた平均キュー長ｑと予め設定された目標範囲の下限値αおよび上限値βと比較し、平均キュー長ｑが下限値αより小さければパケット廃棄率（最大パケット廃棄率Ｐmax）を減少させ、平均キュー長が上限値βより大きければパケット廃棄率（最大パケット廃棄率Ｐmax）を増加させるが、このＲＥＤキューマネージャ３によるパケット廃棄率（最大パケット廃棄率Ｐmax）の増減量ΔＰmaxを、トラフィック制御装置４１のファジィ推論部４１ａにおいてファジィ推論により算出する。
【００２９】
さらに、このトラフィック制御装置４１のファジィ推論部４１ａにおけるファジィ推論で用いるルールの制御パラメータを、制御パラメータ補正装置４２のニューラルネットワーク４２ａにおいて、そのニューラルネットワークの重みとして学習機能により算出する。
【００３０】
ファジィ推論部４１ａを具備したトラフィック制御装置４１、および、ニューラルネットワーク４２ａを具備した制御パラメータ補正装置４２は、それぞれ、図２および図３に示すような構成となっており、以下、図２，図３を用いて、トラフィック制御装置４１および制御パラメータ補正装置４２の詳細を説明する。
【００３１】
図２のトラフィック制御装置４１において、４１１は適合制御条件入出力部、４１２は適合制御条件記憶部、４１３は制御パラメータ入出力部、４１４は監視データ受信部、４１５は制御適合判定部、４１６は入力値算出部、４１７は制御解析部、４１８は出力値算出部、４１９は制御値送信部である。
【００３２】
このような構成により、トラフィック制御装置４１は、送信バッファ２のＦＩＦＯキューの平均キュー長ｑを監視し、平均キュー長ｑが予め定めた閾値maxthを超過した場合、トラフィック特性が変動して平均トラフィック量が増加したことによって、制御動作が現状のトラフィック特性に非適合であると判定し、最大パケット廃棄率Ｐmaxを操作量（ΔＰmax）だけ高くして廃棄パケット数を増やす。
【００３３】
また、反対に平均キュー長ｑが闘値minthを下回った場合、トラフィック特性が変動して平均トラフィック量が減少したことによって、制御動作が現状のトラフィック特性に非適合であると判定し、最大パケット廃棄率Ｐmaxを操作量（ΔＰmax）だけ小さくして廃棄パケット数を減らす。但し、平均キュー長ｑが２つの閥値minth〜maxth間に留まっている場合は、制御動作が現状のトラフィック特性に適合であると判定し、最大パケット廃棄率Ｐmaxは一定のままにする。
【００３４】
図３の制御パラメータ補正装置４２において、４２１は制御パラメータ入力部、４２２は制御パラメータ補正条件入出力部、４２３は制御パラメータ補正条件記憶部、４２４は学習データ入出力部、４２５は学習データ記憶部、４２６は出力推定値算出部、４２７は収束条件判定部、４２８は制御ルール生成条件判定部、４２９は制御パラメータ更新処理部、４２１０は最大推定誤差領域選択部、４２１１は制御ルール生成部、４２１２は制御パラメータ出力部である。
【００３５】
このような構成により、制御パラメータ補正装置４２は、予め定めた平均キュー長の目標値ｒ（minth≦ｒ≦maxth）と実際の平均キュー長ｑとの誤差ｅ（＝ｒ−ｑ）と誤差の変化分Δｅ（＝ｅｔ−ｅｔ−１）を入力とし、また、最大パケット廃棄率Ｐmaxの操作量ΔＰmaxを出力とするニューラルネットワーク４２ａを用いて、トラフィック制御装置４１のファジィ推論部４１ａで操作量（ΔＰmax）の算出時に用いるルールの制御パラメータを補正する。
【００３６】
すなわち、学習データとして任意の入出力データが与えられた時に、入力データから推定された出力と実際の出力との誤差をフィードバックして、ニューラルネットワーク４２ａ上の結合加重パラメータ値を更新していく。
【００３７】
このニューラルネットワーク４２ａ上の結合加重パラメータ値の更新処理は、学習データごとに逐次実施し、出力誤差が、ある一定の闘値（δ１）以下になるまで続行する。これにより、送信バッファ２における平均キュー長ｑの変化量に応じた適切な操作量（最大パケット廃棄率Ｐmaxに対する増減量ΔＰmax）を決定していく。
【００３８】
以下、このようなトラフィック制御装置４１と制御パラメータ補正装置４２の各処理部による動作について説明する。
【００３９】
まず、図２，３と共に、図４から図８を用いて、図２におけるシステム端末４３からの設定指示操作に基づき、各種条件情報等の設定・登録処理（１）〜（５）について説明する。
【００４０】
（１）制御適合判定条件の設定（図２における符号（ａ）、（ｂ）を参照）について説明する。
【００４１】
図２におけるシステム端末４３からの設定指示操作により、「制御適合判定条件」が、トラフィック制御装置４１に入力され（ａ）、適応制御条件入出力部４１１を介して適合制御条件記憶部４１２に記憶され、設定される（ｂ）。
【００４２】
この「制御適合判定条件」とは、制御適合判定部４１５において、ＲＥＤシーケンスマネージャ３の制御動作が現状のトラフィック特性に適合して送信バッファ２のＦＩＦＯキューの平均キュー長を平衡状態に保つことができているかどうかを判定するための条件を示すもので、その内容は図４に示す。
【００４３】
図４に示す例の「制御適合判定条件４１」では、送信バッファ２のＦＩＦＯキューの平均キュー長ｑが、予め設定されたターゲット区間α〜β（minth≦α≦β≦maxth）内であれば（α≦ｑ≦β）、ＲＥＤシーケンスマネージャ３の制御動作が現状のトラフィック特性に「適合」していると判定し、予め設定されたターゲット区間α〜β外であれば（ｑ＜α  ｏｒ  β＜ｑ）、ＲＥＤシーケンスマネージャ３の制御動作が現状のトラフィック特性に「非適合」であると判定するように設定されている。
【００４４】
（２）次に、送信バッファ２のＦＩＦＯキューの平均キュー長ｑの目標値ｒの設定（図２における符号（ｃ）〜（ｅ）を参照）について説明する。
【００４５】
システム端末４３からの設定指示操作に基づき、目標値ｒがトラフィック制御装置４１に入力され（ｃ）、適応制御条件入出力部４１１を介して適合制御条件記憶部４１２に記憶され、設定される（ｄ）。また同時に、制御パラメータ入出力部４１３および制御パラメータ入力部４２１を介して、制御パラメータ補正装置４２の出力推論値算出部４２６にも目標値ｒが設定される（ｅ）。
【００４６】
ここで、「目標値ｒ」とは、送信バッファのＦＩＦＯキューの平均キュー長ｑを一定長に保つ様に制御する時の指標であり、入力算出部４１６において、制御解析部４１７への入力値を計算する時の基準値を示す。
【００４７】
（３）次に、制御ルールの設定（図２における符号（ｆ）〜（ｈ）を参照）について説明する。
【００４８】
システム端末４３からの設定指示操作に基づき、制御ルールが、シトラフィック制御装置４１に入力され（ｆ）、適応制御条件入出力部４１１を介して適応制御条件記憶部４１２に記憶され、設定される（ｇ）。また、ニューラルネットワーク４２ａの学習機能によるパラメータ調整の対象となる制御パラメータの初期値が、制御パラメータ入出力部４１３および制御パラメータ入力部４２１を介して、制御パラメータ補正装置４２の出力推論値算出部４２６に設定される（ｈ）。
【００４９】
ここで、「制御ルール」とは、制御解析部４１７において制御適合判定結果が非適合となった場合に、トラフィック制御装置４１のファジィ推論部４１ａにおいて、トラフィック特性の変動に応じて最大パケット廃棄率を決定するための制御ルールを示す。
【００５０】
以下、この制御ルールをファジィ（Fuzzy）制御ルールとして表すために、平均キュー長ｑと目標値ｒとの誤差ｅ（＝ｒ−ｑ）、誤差の変化分Δｅ（＝ｅｔ−ｅｔ−１（ｔ：時間変数））を入力（ｘ１、ｘ２）とし、最大パケット廃棄率Ｐmaxの操作量ΔＰmaxを出力（ｙ）とする。
【００５１】
また、各入力に対する前件部のメンバーシップ関数（Ａｊ１、Ａｋ２）は初期値として３種類（ｊ＝１〜３、ｋ＝１〜３））、後件部は簡略化ファジィ推論を用いるために定数とする。これらにより記述することができるファジィ（Fuzzy）制御ルールの内容を図５と図６に例示する。
【００５２】
すなわち、図５に示すファジィ（Fuzzy）制御ルール５１は、「if 〜 then」形式でなり、入力を「x1（＝ｅ）、x2（＝Δｅ）」、出力を「y（＝ΔＰmax）」とすると、ｉ番目のファジィ制御ルール（Ｒｉ）は、「if x1 is Aj1, x2 is Ak2 」の前件部と「then y=ωbi」の後件部（ｉ＝１…９，  ｊ＝１…３，  ｋ＝１…３）からなる。
【００５３】
前件部におけるメンバーシップ関数（Aj1、Ak2）はシグモイド（sigmoid）関数ｆを内部関数として持ち、初期値として各々３種類ずつを有し、また、ファジィ制御ルール５１の後件部は、通常、「y=ｃ1ｘ1＋ｃ２ｘ２＋ωb」（ｃ1、ｃ２、ωb：定数）と表せるが、本例では、簡略化ファジィ推論を用いるので、「ｃ1＝ｃ２＝０」として「ｙ＝ωb」を用いる。尚、この後件部におけるωbおよびメンバーシップ関数における傾きωｇと中心ωｃがファジィ制御ルール５１の制御パラメータとなる。
【００５４】
図６に具体的に示すように、本例のファジィ制御ルール５１，６１では、それぞれの入力「x1（＝ｅ）、x2（＝Δｅ）」の組み合わせに対応して、▲１▼〜▲９▼の出力（ルール）が得られる。
【００５５】
例えば、入力「x1」が「A１1」で「ｑ＞ｒ」、入力「x2」が「A１２」で「Δｅ＞０」であれば、ルール▲３▼（ｙ＝操作量ΔＰmax）を大きく増加させる」が出力され、入力「x1」が「A１1」で「ｑ＞ｒ」、入力「x2」が「A３２」で「Δｅ＜０」であれば、ルール▲１▼（ｙ＝操作量ΔＰmax）を小さく増加させる」が出力され、また、入力「x1」が「A３1」で「ｑ＜ｒ」、入力「x2」が「A１２」で「Δｅ＞０」であれば、ルール▲９▼（ｙ＝操作量ΔＰmax）を大きく減少させる」が出力される内容となっている。
【００５６】
（４）次に、収束条件の設定（図３における符号（ｉ）、（ｊ）を参照）について説明する。
【００５７】
システム端末４３からの設定指示操作に基づき、ニューラルネットワーク４２ａにおける収束条件が、制御パラメータ補正装置４２に入力され（ｉ）、制御パラメータ補正条件入出力部４２２を介して制御パラメータ補正条件記憶部４２３に記憶され、設定される（ｊ）。
【００５８】
ここで、「収束条件」とは、学習データに基づくニューラルネットワーク４２ａによる制御パラメータの更新処理ルーチングを終了させるための条件を示すもので、図７に例示するものである。
【００５９】
図７に示す収束条件７１では、入力データ「x1」と「x2」から推定された出力ｙ＊と実際の出力ｙとの誤差Ｅを「（ｙ−ｙ＊）２／２」とし、この出力誤差Ｅが予め設定された閾値（δ１）以下になった場合（「Ｅ＝（ｙ−ｙ＊）２／２≦δ１」）に、この学習による制御パラメータの更新処理を終了させる内容となっている。
【００６０】
（５）次に、制御ルール生成条件の設定（図３における符号（ｋ）、（ｌ）を参照）について説明する。
【００６１】
システム端末４３からの設定指示操作に基づき、制御ルール生成条件が、図３の制御パラメータ補正装置４２に入力され（ｋ）、制御パラメータ補正条件入出力部４２２を介して制御パラメータ補正条件記憶部４２３に記憶され、設定される（ｌ）。
【００６２】
ここで、「制御ルール生成条件」とは、学習データに基づくニューラルネットワーク４２ａによる制御パラメータの調整を行っても推定誤差が減少しなくなった場合に制御ルールを自動的に生成するトリガ条件を示すものであり、その制御ルール生成条件の内容を図８に例示する。
【００６３】
図８に示す制御ルール生成条件８１では、ニューラルネットワーク４２ａでの学習により制御パラメータの調整を行っても、推定誤差Ｅが減少しなくなった場合、すなわち、推定誤差Ｅの変化量ΔＥ（＝Ｅｐ−Ｅｐ−１…ｐ：学習回数）が予め設定された閾値（δ２）以下になった場合に（「ΔＥ＝Ｅｐ−Ｅｐ−１≦δ２」））、新たな制御ルールを自動生成させる内容となっている。
【００６４】
以上の（１）〜（５）における各条件の設定・登録と同様に、システム端末４３からの設定指示操作に基づき、ニューラルネットワーク４２ａで用いる学習データが、制御パラメータ補正装置４２に入力され（図３における（ｍ））、学習データ入出力部４２４を介して学習データ記憶部４２５に記憶され、設定される（図３における（ｎ））。
【００６５】
このように設定された学習データによる制御パラメータの補正動作について、以下、説明する（図３の符号（ｏ）〜（ｘ）を参照）。
【００６６】
図３における制御パラメータ補正装置４２の出力推定値算出部４２６は、学習データ記憶部４２５に記憶されている学習データを１セット毎に読み出すと共に（ｏ）、そのデータのｘ１（＝ｅ）、ｘ２（＝Δｅ）を入力として、出力推定値ｙ＊（＝ΔＰmax）を算出する（ｐ）。
【００６７】
この最大パケット廃棄率Ｐmaxの操作量ΔＰmaxの推定値の算出は、図９および図１０に示すアルゴリズムに基づき行われる。すなわち、図９（ａ）に示すニューラルネットワーク構成の前件部（Ａ）〜（Ｄ）と後件部（Ｅ），（Ｆ）において、図９（ｂ）に示す内容の計算アルゴリズムに基づき、出力（操作量ｙ＝ΔＰmaxの推論値に関する処理を行う。
【００６８】
例えば、まず、前件部（Ａ）において、ｘ１（＝ｅ）、ｘ２（＝Δｅ）を入力し、前件部（Ｂ）において、ｘ１（＝ｅ）、ｘ２（＝Δｅ）と、一定値「１」を出力するバイヤスユニットからの出力に対して付加される重み付け（ωｃ１１〜ωｃｊ２）とに基づき、シグモイド関数ｆ（ｘ）の入力値ＯＢを計算する（ＯＢ＝ωｇ（ｘｊ＋ωｃ）、または、ＯＢ＝−ωｇ（ｘｊ＋ωｃ））。
【００６９】
図１０で示す例、すなわち、「Rule2：if x１is A２１, x２is A２２   then y=ωｂ２」の場合、「i２＝ωｇ２１（ｘｊ＋ωｃ２１）」、「-i２＝ωｇ２１（ｘｊ＋ωｃ２１）」を計算する。
【００７０】
次に、前件部（Ｃ）において、シグモイド関数ｆ（ｘ）の出力値ＯＣを計算し（ＯＣ＝１÷（１＋ｅｘｐ［−ωｇ（ｘｊ＋ωｃ）］）、または、ＯＣ＝１÷（１＋ｅｘｐ［ωｇ（ｘｊ＋ωｃ）］））、さらに、前件部（Ｄ）において、メンバーシップ関数Ａ（ｘ）の出力値ＯＤを計算する（ＯＤ＝ｆ（ｘ）、または、ＯＤ＝ｆ（ｘ）−ｆ（−ｘ））。
【００７１】
図１０で示す例では、「ｆ（i２）…（ｘ１≦ωｃ）」と、「ｆ（i２）−ｆ（−i２）…（ωｃ＜ｘ１）」を計算する。
【００７２】
そして、後件部（Ｅ）において、ファジィ制御ルールの前件部の適合度（各メンバーシップ関数のグレード積）μを計算し（μｉ＝Ａｉ１（ｘ１）Ａｊ２（ｘ２））、（Ｅ）層の全ユニットで得られる前件部適合度の総和で規格化した値Ｍを出力し（Ｍｉ＝μｉ÷Σμｋ）、後件部（Ｆ）において、前件部適合度の規格値（Ｍ）と後件部定数（結合加重）ωｂの積を計算し、全ユニットの総和を出力推論値ｙ＊とする（ｙ＊＝ΣＭ・ωｂ）。
【００７３】
図１０で示す例では、後件部（Ｅ）において、「μ２＝Ａ２１（ｘ１）×Ａ２２（ｘ２）」を計算し、（Ｅ）層の全ユニットで得られる前件部適合度の総和で規格化した値「Ｍ２＝μ２÷Σμｉ」Ｍを出力し、後件部（Ｆ）において、前件部適合度の規格値（Ｍ）と後件部定数（結合加重）ωｂの積を計算し「ｙ２＝Ｍ２・ωｂ」、全ユニットの総和「出力推論値ｙ＊＝ｙ１＋ｙ２＋…＋ｙ９」が得られる。
【００７４】
出力推定値算出部４２６は、このようにして計算した推定値ｙ＊を収束条件判定部４２７に通知する（ｑ）。収束条件判定部４２７では、学習を開始する前に制御パラメータ補正条件記憶部４２３から読み取っておいた収束条件に基づいて（ｒ）、通知された推定値ｙ＊と学習データの出力ｙとの誤差Ｅが一定の闘値δ１以下かどうかをチエックする（ｓ）。
【００７５】
この判定の結果、収束条件をクリアしていない場合、収束条件判定部４２７は、その推定誤差Ｅを制御ルール生成条件判定部４２８に通知する（ｔ）。制御ルール生成条件判定部４２８では、学習処理を開始する前に制御パラメータ補正条件記憶部４２３から読み取った制御ルール生成条件に基づいて（ｕ）、通知された推定誤差Ｅｐ（ｐ：学習回数）と前回の推定誤Ｅｐ−１の差分ΔＥが一定の闘値δ２以下になったかどうかをチェックする（ｖ）。尚、ｐ＝１の場合、推定誤差を記憶するだけで判定処理は実施しない。
【００７６】
この判定の結果、ΔＥ＞δ２の場合、制御ルール生成条件判定部４２８は、現状の制御ルールのままで学習による制御パラメータの補正処理が必要であると判断して、推定誤差Ｅｐを制御パラメータ更新処理部４２９に通知する（ｗ）。
【００７７】
制御パラメータ更新処理部４２９では、学習アルゴリズムとして誤差逆伝播（「BackPropagation」）法を用いて、通知された推定誤差Ｅｐを制御パラメータである前件部のメンバシップ関数の内部関数であるsigmoid関数の傾きωｇと中心ωｃ、および後件部の定数ωｂにフィードバックしてパラメータ値を更新していく（ｘ）。このような制御パラメータを補正する処理動作は図１１に示すようにして行われる。
【００７８】
すなわち、図１１（ａ）および図１１（ｂ）に示すように、誤差逆伝播（「BackPropagation」）法により、入出力データｄｐ＝（ｘ１ｐ、ｘ２ｐ、ｙｐ）（Ｐ＝１…Ｎ：データ個数）が与えられてときに（ステップ１１０１）、入力データ、ｘ１ｐ、ｘ２ｐから推定された出力ｙｐと（ステップ１１０２）、実際の出力ｙとの誤差をフィードバックして、ファジィ制御器モデルのパラメータωｇと中心ωｃ、および後件部の定数ωｂの値を更新していく（ステップ１１０３〜１１０５）。
【００７９】
そして、データ毎に逐次更新を行い、出力誤差Ｅｐが予め設定された閾値（δ１）以下になった場合（ステップ１１０３）、この学習手続を終了させる。
【００８０】
制御パラメータ更新処理部４２９は、このようにして補正したパラメータ更新値を制御パラメータ補正条件記憶部４２３に記憶する（ｙ）。
【００８１】
そして、出力推定値算出部４２６は、制御パラメータ補正条件記憶部４２３から更新された制御パラメータを設定した後、学習データ記憶部４２５から次の学習データを読み出して新たな出力推定値を算出する。
【００８２】
以上、推定誤差が収束条件（δ１）を満たすまで、学習による制御パラメータの補正処理を繰り返す。
【００８３】
しかし、このような学習によりパラメータ調整を行っても推定誤差Ｅが減少しなくなった場合、すなわち、図１１（ｂ）に示すフローにおけるステップ１１０４の処理で、推定誤差Ｅの変化量ΔＥ＝Ｅｐ―Ｅｐ−１が一定の闘値δ２以下になった場合に、図３の制御ルール生成条件判定部４２８において、現状の制御ルールのままで学習による制御パラメータの補正処理では不十分であると判断して、新たな制御ルールを自動生成させる。
【００８４】
以下、このような場合に、新たな制御ルールを自動生成する処理動作を説明する（図３における符号（ｚ）〜（ｈ２）を参照）。
【００８５】
制御ルール生成条件判定部４２８は、新たな制御ルールを自動生成させるために、最大推定誤差選択部４２１０に対して制御ルール生成領域を選択するように指示する（ｚ）。
【００８６】
この指示を受けた最大推定誤差選択部４２１０による、制御ルール生成領域の選択動作は以下のようになる。
【００８７】
最大推定誤差選択部４２１０では、ファジィ制御ルールの前件部のメンバーシップ関数によってｘ１−ｘ２平面が分割される全ての領域の中から、他の領域と比べて稚定誤差の最も大きい領域を新たな制御ルールを生成する領域として選択する（ｂ２）。この動作を、図１２の例を用いて具体的に説明する。
【００８８】
図１２において、入力変数（ｘ１、ｘ２）毎に見て隣り合う２つのメンバーシップ関数の中心ωｃによって分割される領域をＳｊとする。例えば入力ｘ１のＡ１１の中心ωｃ１１とＡ２１の中心ωｃ２１によって分割される領域Ｓ１は、図６で示したファジィ制御ルール▲１▼、▲３▼、▲６▼、▲４▼、すなわち図１１中の１、３、６、４で囲まれた長方形である。
【００８９】
この他に、ｘ１、ｘ２のメンバーシップ関数によって分割される領域はＳ２＝（４，６，９，７）、Ｓ３（１，２，８，７）、Ｓ４＝（２，３，９，８）の３つである。
【００９０】
次に、各領域Ｓｊ毎に、そこに含まれる全ての学習データの平均推定誤差Ｄｓｊを計算し、平均推定誤差Ｄｓｊの中で最大値を有する領域Ｓmaxについて、制御の精度を高めるために新たに制御ルールを設定すべき領域として選択する。
【００９１】
このようにして選択した領域を構成する２つのメンバーシップ関数の中心ωｃを、最大推定誤差領域選択部４２１０から、制御ルール生成部４２１１に通知する（ｃ２）。通知を受けた制御ルール生成部４２１１は、次のようにして、新規制御ルールの生成を行う。
【００９２】
すなわち、制御ルール生成部４２１１では、最大推定誤差領域選択部４２１０で選択された領域を構成する２つのメンバーシップ関数の中心間の中点を新たな中心とするメンバーシップ関数を新たに生成する（ｄ２）。
【００９３】
図１２の領域Ｓ１が選択された場合のメンバーシップ関数の生成例を図１３に示し、図１３（ａ）における３つの「黒丸点（１２，１１，１０）」が、新たに生成されるルールを示す。すなわち、領域Ｓ１に新規のメンバシップ関数Ａ４１（ｘ１）を生成すると、新規ルール１０，１１，１２が生成される。
【００９４】
図１３（ｂ）に示すように、前件部の新規メンバシップ関数Ａ４１（ｘ１）の生成において（図３における符号（ｅ２））、中心ωｃ４１は、メンバシップ関数Ａ１１（ｘ１）の中心ωｃ１１とメンバシップ関数Ａ２１（ｘ１）の中心ωｃ２１の中点（ωｃ４１＝（ωｃ１１＋ωｃ２１）／２）、傾きωｇ４１は、メンバシップ関数Ａ１１（ｘ１）とメンバシップ関数Ａ２１（ｘ１）との各交差点が０．５となるよう設定する。
【００９５】
また、後件部の実数の生成は（図３における符号（ｆ２，ｇ２））、生成前後で推定誤差の増減が無いように新規メンバシップ関数の中心に対する生成前ルールによる推進出力を新しい後件部の実数値とする（ωｂ１ｋ＝ｙｏｌｄ（ωｃ４１＋ωｃｋ２）…（ｋ＝０，１，２））。
【００９６】
このように、新たに生成されたルールの後件部の定数は、ルールの生成前後で推定誤差を増加させないために、新規ルールの前件部のメンバーシップ関数の中心の値に対する更新前のルールによるファジィ推論による出力とし、新規ルールＲ１ｋは、「Ｒ１ｋ：if x１ is A４１, x２ is Aｋ２ then y=ωｂ１ｋ」として生成される。
【００９７】
制御ルール生成部４２１１は、この様に生成した新規ルール（「Ｒ１ｋ：if x１ is A４１, x２ is Aｋ２ then y=ωｂ１ｋ」）を制御パラメータ補正条件記憶部４２３に記憶する（ｈ２）。
【００９８】
以下、図３における符号（ｉ２），（ｊ２）に示されるようにして、学習による制御パラメータの調整完了処理を行う。
【００９９】
すなわち、収束条件判定部４２７は、出力推定値算出部４２６が計算した推定値ｙ＊と学習データの出力との推定誤差が一定の闘値δ１以下になった時、収束条件が満たされたものと判断して、学習による制御パラメータの補正処理を終了し、出力推論値算出部４２６に更新終了を通知する（ｉ２）。
【０１００】
通知を受けた出力推論値算出部４２６は、終了時点の制御ルールを、制御パラメータ出力部４２１２および制御パラメータ入出力部４１３を介して、トラフィック制御装置４１の適応制御条件記憶部４１２に記憶する（ｊ２）。
【０１０１】
次に、図２に示す構成のトラフィック制御装置４１による平均キュー長の監視動作と制御適合判定動作（図２における符号（ｋ２）〜（ｍ２）を参照）、および、適合制御動作（図２における符号（ｎ２）〜（ｗ２）を参照）を説明する。
【０１０２】
トラフィック制御装置４１は、パケットが到着する度にＲＥＤキューマネージヤー３で算出される送信バッファ２のＦＩＦＯキューの平均キュー長ｑを監視データ受信部４１４を介して受信し、制御適合判定部４１５により監視し（ｌ２）、現状のＲＥＤによるアクティブ・キュー制御動作がトラフィック特性に適応しているかどうかを適合制御条件記憶部４１２から読み出した（ｋ２）制御適合判定条件に基づいて判定する（ｍ２）。
【０１０３】
この判定の結果で、「非適合」と判定した場合、適合判定部４１５は、非適合発生イベントを入力値算出部４１６に通知する（ｏ２）と共に、平均キュー長を、入力値を算出するために合わせて受け渡す。
【０１０４】
通知を受けた入力値算出部４１６は、受け取った平均キュー長ｑと適合制御条件記憶部４１２から読み出した（ｎ２）目標値ｒに基づいて、誤差ｅと誤差変化分Δｅを算出し（ｐ２）、これらを次の制御解析部４１７に入力する（ｒ２）。
【０１０５】
制御解析部４１７では、適合制御条件記憶部４１２から読み出した（ｑ２）制御ルールに基づき、入力された誤差ｅと誤差変化分Δｅに応じて、次に設定すべき最大パケット廃棄率Ｐmaxの操作量ΔＰmaxを決定する（ｓ２）。決定後、制御解析部４１７は、決定された操作量ΔＰmaxを出力値算出部４１８に入力する（ｔ２）。
【０１０６】
出力値算出部４１８では、入力された操作量ΔＰmaxと制御適合判定前の最大パケット廃棄率Ｐmaxから現状のトラフィック特性に適応する最大パケット廃棄率Ｐmaxを算出する（ｕ２）。そして、算出した最大パケット廃棄率Ｐmaxを、制御値送信部４１９を介してＲＥＤキューマネージャー３に再設定する（ｖ２）。
【０１０７】
制御適合判定部４１５にて平均キュー長が適合判定条件を満たすまで現状のトラフィック特性に対する最大パケット廃棄率Ｐmaxの適合調整を繰り返す。
【０１０８】
制御適合判定部４１５において平均キュー長が適合判定条件を満たした場合、ＲＥＤキューマネージャー３によるアクティブ・キュー制御動作が現状のトラフィック特性に対して「適合」したと判定し、適合調整の完了報告を制御解析部４１７に通知する（ｗ２）。
【０１０９】
以上、図１〜図１３を用いて説明したように、本例では、転送するパケットを蓄積した送信バッファ２の平均キュー長ｑを求め、この平均キュー長ｑに対応して予め設定されたパケット廃棄率に従って、受信したパケットの破棄制御を行い、パケットの転送量を制御する際に、求めた平均キュー長ｑと予め設定された目標範囲の下限値αおよび上限値βと比較し、平均キュー長ｑが下限値αより小さければパケット廃棄率を減少させ、平均キュー長ｑが上限値βより大きければパケット廃棄率を増加させるが、このパケット廃棄率の増減量を、ファジィ推論により算出すると共に、このファジィ推論で用いるルールの制御パラメータをニューラルネットワークの重みとして学習機能により求める。
【０１１０】
詳細には、インターネット上のゲートウェイ１において、トラフィック特性の変動に係わらず、送信バッファ２のＦＩＦＯキューの平均キュー長ｑを一定範囲内に保つためにパケット廃棄を制御して、送信バッファ２の輻輳を制御する際に、送信バッファ２のＦＩＦＯキューの平均キュー長ｑを監視するトラフィック制御装置４１において、システム端末４３より事前に設定されたトラフィック特性適応可否判定条件を適合制御条件記憶部４１２に記憶し、この適応可否判定条件に基づいて、送信バッファ２に対する制御動作が現状のトラフィック特性に適応しているか否かを判定し、判定の結果、非適応と判定した場合、最大パケット廃棄率Ｐmaxを調整して送信バッファ２内のパケットを廃棄する割合を増加、あるいは減少させ、キュー長の急激な増加、あるいは急激な減少を抑制するために、最大パケット廃棄率Ｐmaxを制御するルールをファジィ関係として記述し、ファジィ推論により最大パケット廃棄率Ｐmaxの操作量ΔＰmaxを算出する。また、制御パラメータ補正装置４２において、システム端末４３より事前に設定された制御パラメータ補正条件を制御パラメータ補正条件記憶部４２３に記憶し、非適応との判定結果の場合、平均キュー長ｑの変化量に応じて最大パケット廃棄率Ｐmaxを適切に調整するために、適正な操作量ΔＰmaxをニューラルネットワークの学習機能によって修正していく。
【０１１１】
このように、本例では、ＲＥＤキューマネージヤー３における最大パケット廃棄率Ｐmaxの操作量ΔＰmaxの適応調整について、制御規則をファジィモデル化してファジィ推論を行い、かつ、このファジィ推論で用いるルールの制御パラメータを、ニューラルネットワークの重みとして学習機能を用いて調整することにより、理論的な解析モデルを用いなくても、トラフィック特性の変動に応じたＲＥＤキューマネージヤー３における最大パケット廃棄率Ｐmaxの操作量ΔＰmaxの適応調整を自動的に安定して行うことができ、インターネット上のゲートウェイ１等において、トラフィック特性の変動に係わらず、送信バッファのＦＩＦＯキューの平均キュー長をある一定範囲内に維持することでバッファ輻輳を制御することができる。
【０１１２】
尚、本発明は、図１〜図１３を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、インターネット上のゲートウェイ１における構成および動作で説明したが、他のパケット転送を行うネットワーク上の通信装置にも適用することができる。
【０１１３】
また、本例では、ＲＥＤキューマネージヤー３における最大パケット廃棄率Ｐmaxの操作量ΔＰmaxを例に説明しているが、この最大パケット廃棄率Ｐmaxの操作量ΔＰmax適応調整に伴い、中間のパケット廃棄率Ｐａの操作量についても適応調整されるものである。
【０１１４】
また、本例では、ファジィ推論として、簡略化ファジィ推論（直接法）を用いているが、間接法のファジィ推論を用いることでも良い。
【０１１５】
また、本例でのゲートウェイ１のコンピュータ構成としては、キーボードや光ディスクの駆動装置の無い構成としても良い。また、本例では、光ディスクを記録媒体として用いているが、ＦＤ（Flexible Disk）等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
【０１１６】
【発明の効果】
本発明によれば、トラフィック特性の変動に応じたＲＥＤキューマネージヤーにおけるパケット廃棄率の制御量を、ファジィ推論により求め、かつ、このファジィ推論で用いるルールのパラメータを、ニューラルネットワークの重みとして学習機能を用いて調整するので、トラフィック特性に変動が起こっても、送信バッファにおけるキュー長を自動的に安定して一定範囲に保つことができ、送信バッファの輻輳を効率的に制御することができ、ネットワークの信頼性を向上させることができる。
【図面の簡単な説明】
【図１】本発明に係わるパケット転送制御システムの構成例を示すブロック図である。
【図２】図１におけるトラフィック制御装置の構成例を示すブロック図である。
【図３】図１における制御パラメータ補正装置の構成例を示すブロック図である。
【図４】図２における適合制御条件記憶部に記憶される制御適合判定条件例を示す説明図である。
【図５】図１におけるトラフィック制御装置で用いられるファジィ制御ルールの第１の構成例を示す説明図である。
【図６】図１におけるトラフィック制御装置で用いられるファジィ制御ルールの第２の構成例を示す説明図である。
【図７】図３における制御パラメータ補正条件記憶部に記憶される収束条件例を示す説明図である。
【図８】図３における制御パラメータ補正条件記憶部に記憶される制御ルール生成条件例を示す説明図である。
【図９】図１における制御パラメータ補正装置のニューラルネットワークの構成・動作例を示す説明図である。
【図１０】図９におけるニューラルネットワークの具体的な動作例を示す説明図である。
【図１１】図１における制御パラメータ補正装置の処理動作例を示す説明図である。
【図１２】図３における最大推定誤差領域選択部の処理動作例を示す説明図である。
【図１３】図３における制御ルール生成部の処理動作例を示す説明図である。
【図１４】従来のＲＥＤを用いた輻輳制御およびパケット転送制御を行うシステムの構成例を示すブロック図である。
【図１５】図１４のシステムで参照する平均キュー長とパケット廃棄率との関係例を示す説明図である。
【図１６】図１４のシステムにおけるＲＥＤキューマネージャーの動作概要を示す説明図である。
【符号の説明】
１：ゲートウェイ（「Gateway：通信装置」）、２：送信バッファ（「FIFO-QUEUE」）、３：ＲＥＤキューマネージャー（「RED-Queue Manager」）、４：適応調整型トラフィック輻輳制御システム、４１：トラフィック制御装置、４１ａ：ファジィ推論部（「Fuzzy Controller」）、４２：制御パラメータ補正装置、４２ａ：ニューラルネットワーク（「Neural Network」）、４３：システム端末、５０：制御適合判定条件、５１，６１：ファジィ制御ルール（「Fuzzy制御Rule」）、７１：収束条件、８１：制御ルール生成条件、４１１：適合制御条件入出力部、４１２：適合制御条件記憶部、４１３：制御パラメータ入出力部、４１４：監視データ受信部、４１５：制御適合判定部、４１６：入力値算出部、４１７：制御解析部、４１８：出力値算出部、４１９：制御値送信部、４２１：制御パラメータ入力部、４２２：制御パラメータ補正条件入出力部、４２３：制御パラメータ補正条件記憶部、４２４：学習データ入出力部、４２５：学習データ記憶部、４２６：出力推定値算出部、４２７：収束条件判定部、４２８：制御ルール生成条件判定部、４２９：制御パラメータ更新処理部、４２１０：最大推定誤差領域選択部、４２１１：制御ルール生成部、４２１２：制御パラメータ出力部。
【図１】
0003712196.tif 000002
【図２】
0003712196.tif 000003
【図３】
0003712196.tif 000004
【図４】
0003712196.tif 000005
【図５】
0003712196.tif 000006
【図６】
0003712196.tif 000007
【図７】
0003712196.tif 000008
【図８】
0003712196.tif 000009
【図９】
0003712196.tif 000010
【図１０】
0003712196.tif 000011
【図１１】
0003712196.tif 000012
【図１２】
0003712196.tif 000013
【図１３】
0003712196.tif 000014
【図１４】
0003712196.tif 000015
【図１５】
0003712196.tif 000016
【図１６】
0003712196.tif 000017