JP2002344500A - ノード装置 - Google Patents

ノード装置

Info

Publication number
JP2002344500A
JP2002344500A JP2001146028A JP2001146028A JP2002344500A JP 2002344500 A JP2002344500 A JP 2002344500A JP 2001146028 A JP2001146028 A JP 2001146028A JP 2001146028 A JP2001146028 A JP 2001146028A JP 2002344500 A JP2002344500 A JP 2002344500A
Authority
JP
Japan
Prior art keywords
flow
queue
packet
bandwidth
flows
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.)
Granted
Application number
JP2001146028A
Other languages
English (en)
Other versions
JP3755420B2 (ja
Inventor
Hideyuki Shimonishi
英之 下西
Kazunoshin Maki
一之進 牧
Masayuki Murata
村田  正幸
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 JP2001146028A priority Critical patent/JP3755420B2/ja
Publication of JP2002344500A publication Critical patent/JP2002344500A/ja
Application granted granted Critical
Publication of JP3755420B2 publication Critical patent/JP3755420B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 広帯域網においても、フロー間で公平に帯域
を利用できるようにする。 【解決手段】 到着したパケットを格納するキューを決
定するフロー識別部101、キュー毎に収容するフロー
数を推定する複数のフロー数推定部103、フロー数推
定部103と対の複数のキュー104、割り当て帯域や
キュー長等のスケジューリングに必要な情報を保持する
キュー情報管理部102、キュー情報管理部102の情
報をもとに各キューからのパケット出力を制御するスケ
ジューラ105を備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、広帯域網におい
て、フローあるいはコネクション間の公平性を実現する
ルータあるいはスイッチ等からなるノード装置に関す
る。
【0002】
【従来の技術】品質保障を行わないトラヒック(いわゆ
るBest effortトラヒック)においては、ユーザは帯域
や遅延等の品質に関する保障を受けることはできない
が、網との契約を行わずに自由な帯域でデータを送信す
ることができる。このようなトラヒックに対しては、各
ユーザのフローやコネクションが各々公平に帯域を使用
できることが重要であり、特定のユーザが網帯域を占有
することで他のユーザが帯域を使用できなくなる事態は
避けるべきである。
【0003】このため、ルータあるいはスイッチ等のノ
ードにおいては、以下のような方式を用いることによっ
て公平性を実現することが提案されている。なお、以
下、簡単のため、”ルータあるいはスイッチ”を単に”
ノード装置”と示し、”フローおよびコネクション”を
単に”フロー”と示し、”パケットおよびセル”を単
に”パケット”と示す。
【0004】第一の方式は、文献1に示されているよう
に、ネットワーク内の全ノード装置においてフロー毎に
キューを割り当てる方式である(文献1:M. Katavenis
他,"Weighted Round-Robin Cell Multiplexing in a Ge
neral-Purpose ATM SwitchChip", IEEE Journals on Sa
lectec Areas in Communication, Col.9, No.8, 1991や
M. Shreedher他, "Efficient fair queueing using def
icit round-robin",IEEE/ACM Transactions on Network
ing, vol.4, no.3, pp.375-385, 1996等)。
【0005】この方式のスケジューリングアルゴリズム
では、各キュー対して明示的に品質を保障することが可
能であり、また各キュー間で公平に帯域を共用させるこ
とも可能である。従って、これらのスケジューリングア
ルゴリズムを用いて各キューからのパケット出力制御を
行うことにより、各フローに対して公平に帯域を割り当
てることが可能である。本方式の一例として、文献2
(特開平11−215142号公報)において、各AT
Mコネクション毎にキュー(セルバッファ)を用意する
ことで、各コネクション毎に公平に帯域を分配する方式
が示されている。
【0006】第二の方式は、ノード装置において入力回
線毎や、出力回線毎、サービスクラス毎等の集約された
単位毎にキューを用意し、各キュー内には複数のフロー
を収容するが、フロー毎にパケットの廃棄制御を行うこ
とによって公平性を実現する方式である。第二の方式の
一例として、文献3(特開平11−88343号公報)
において、最低保証帯域以上のコネクションでかつ共用
帯域に余裕がないコネクションのセルをパケット単位で
通過阻止して廃棄することにより、コネクション毎の公
平性を実現する方式が示されている。
【0007】第三の方式は、網の入り口の比較的低速な
ノード装置(以下エッジノード)において、各フローの
使用帯域に応じてパケットの廃棄優先度をヘッダに書き
込み、網内部の高速なノード装置(以下コアノード)に
おいては、ヘッダに書き込まれている廃棄優先度の情報
に基づいてパケットの廃棄制御を行う方式である。網内
部のノード装置においては、輻輳が発生すると廃棄優先
度の高いパケットを優先して廃棄することにより公平性
を実現する。
【0008】この第三の方式の一例として、文献4に示
される方式では、エッジノードにおいて設定帯域以上の
帯域を使用しているフローに関しては、このフローのパ
ケットのうち設定帯域以上に相当する個数のパケットの
廃棄優先度を高優先に設定し、コアノードにおいては高
優先に設定されたパケットを優先的に廃棄する(文献
4:S. Blake他, "An Architecture for Diffentiated
Services" (IETF RFC-2475, 1998))。
【0009】第四の方式は、第三の方式とほぼ同様であ
るが、エッジノードにおいてパケットの優先度をヘッダ
に書き込むのではなく、このパケットが属するフローの
使用帯域をパケットのヘッダに書き込む点が異なる。本
方式の一例として、文献5に示される方式では、エッジ
ノードにおいて各フローが使用している帯域をパケット
のヘッダに書き込み、コアノードではフロー1本あたり
の公平な使用帯域量を計算し、前記帯域量を超えている
パケットに対しては超えている帯域量に応じて確率的に
パケットを廃棄する(文献5:I. Stoica他, "Core-sta
teless Fair Queueing: Achieving Approximately Fair
Bandwidth Allocations in High SpeedNetworks" (SIG
COMM'98, 1998))。
【0010】
【発明が解決しようとする課題】第一の問題点は、前記
第一の方式を広帯域網に適用することが難しいことであ
る。広帯域網においては回線速度が非常に高速であり、
また収容するフロー数も膨大であるため、第一の方式で
は多くのキューを高速にスケジューリングする必要があ
る。しかしながら、現在のハードウエア技術ではLSI
外部の大容量なメモリは高速に動作させることができ
ず、またLSI内蔵の高速なメモリはこの容量が限定さ
れるため、第一の方式に必要な大規模かつ高速な記憶資
源を実現することが困難な状況である。
【0011】第二の問題点は、前述した第二の方式を広
帯域網に適用することが難しいことである。第二の方式
においては、管理するキューの数が少ないためこれらの
キューを高速に実現することは可能であるが、廃棄制御
に関してはフロー毎に管理する必要がある。このため、
やはり大規模かつ高速な記憶資源が必要であり、第一の
方式と同様に広帯域網に対応することは難しい。
【0012】第三の問題点は、前記第三の方式では正確
な公平性を実現できないことである。第三の方式では、
廃棄優先と非優先の2種類の情報しかパケットが持たな
い。このため、第三の方式では、廃棄優先度を決める閾
値以上のフローと閾値以下のフローの公平性は向上して
も、閾値以上のフロー間の公平性や、閾値以下のフロー
間の公平性は向上しない。
【0013】また、エッジノードでは、網内部の輻輳と
は無関係に廃棄優先度が決められるため、エッジノード
での輻輳度とネットワーク内部での輻輳度が大きく異な
れば公平性は大きく劣化する。例えば、エッジノードに
比べて網内部が遥かに輻輳している場合、エッジノード
では殆どのパケットの廃棄優先度が低く設定され、コア
ノードでは廃棄優先度の低いパケットが多数廃棄され
る。このため、第三の方式では、わずかしか帯域を使用
していないフローのパケットでも、廃棄されることにな
る。
【0014】第四の問題点は、前記第四の方式ではパケ
ットヘッダ内に帯域情報を持たせるため、プロトコルの
変更が必要であることである。第四の方式を実装してい
ないルータでは、拡張されたパケットヘッダを扱うこと
ができないため、網内の全てのノードを更新する必要が
ある。
【0015】以上をまとめると、第一および第二の問題
点は、ノード装置においてフロー毎の情報を持たなけれ
ばならない点である。高速性を要求されるノード装置に
おいては、多くの情報を保持することは難しい。また第
三および第四の問題点は、パケット自身にフローの関す
る情報を保持させる点にある。パケット自身に詳細な情
報を持たせるためには、プロトコル変更が必要であり実
現性に乏しい。また、より実現しやすくするため、パケ
ットに持たせる情報を廃棄優先度に限定してプロトコル
変更を最小限とした場合、網帯域使用の公平性が劣化す
る。
【0016】本発明は、以上のような問題点を解消する
ためになされたものであり、広帯域網においても、フロ
ー間で公平に帯域を利用できるようにすることを目的と
する。
【0017】
【課題を解決するための手段】本発明のノード装置は、
入力したパケットを、このパケットの属性情報に基づい
て複数のキューのいずれかに格納し、キューからスケジ
ューラを用いてパケットを出力回線に出力するノード装
置において、入力パケットのヘッダ情報,入力回線の識
別子,波長を含む属性情報を用いて格納するキューを決
定するフロー識別部と、キューに対する割り当て帯域の
スケジューリングに必要な情報を保持するキュー情報管
理部と、キューからのパケット出力を制御するスケジュ
ーラと、キュー各々に対応してキューに収容しているフ
ローの数を推定し、収容するフロー数に応じて対応する
キューに対して割り当てる帯域を変更する複数のフロー
数推定部とを備えたものである。この発明によれば、各
キューに対応してこのキューのフロー数が推定され、各
キューにおいて推定されたフロー数によって、各キュー
へ割り当てられる帯域が変更される。
【0018】上記発明において、スケジューラからの出
力回線上の余剰帯域を求める余剰帯域計算部と、この余
剰帯域に基づいて割り当て帯域を再計算してキュー情報
管理部における情報を変更する割り当て帯域計算部とを
新たに備え、フロー数推定部は、出力回線上に余剰帯域
がある場合は、対応するキューの収容フロー数に応じて
余剰帯域を各キューに再度割り当てるようにしてもよ
い。
【0019】本発明の他の形態のノード装置は、入力し
たパケットを複数のポリサを用いて廃棄制御を行い、廃
棄を行わなかった場合にはパケットをFIFOキューに
格納し、このFIFOキューからパケットを出力回線に
出力するノード装置において、入力パケットのヘッダ情
報,入力回線の識別子,波長を含む属性情報を用いて適
用するポリサを決定するフロー識別部と、ポリサに対す
る割り当て帯域を含むポリシングに必要な情報を保持す
るポリシング情報管理部と、入力したパケットを格納す
るFIFOキューと、ポリサに対応してこのポリサに収
容されているフローの数を推定し、収容されているフロ
ーの数に応じて各々のポリサに対して割り当てる帯域を
変更するフロー数推定部と、出力回線上の余剰帯域を求
める余剰帯域計算部と、この余剰帯域計算部が求めた余
剰帯域に基づいて割り当て帯域を再計算する割り当て帯
域計算部とを備えたものであり、フロー数推定部は、出
力回線上に余剰帯域がある場合にはポリサの収容フロー
数に応じて余剰帯域をポリサに再度割り当てる。
【0020】上記発明において、フロー数推定部は、過
去に到着したフローの履歴を格納する到着フロー履歴記
憶部を備え、パケット入力時に入力パケットのフロー識
別子を用いて履歴を検索することによってフロー数を推
定する。また、上記発明において、フロー数推定部は、
過去に到着したフローの履歴を格納する到着フロー履歴
記憶部を備え、自身に入力した全てのパケットの合計帯
域を計測し、パケット入力時にこのパケットのフロー識
別子を用いて履歴を検索することによってパケットが属
するフローの使用帯域を推定する帯域推定を複数回行っ
て自身で扱う全フローの平均帯域を推定し、自身への全
入力パケットの合計帯域と平均帯域を用いてフロー数を
推定する。
【0021】上記発明において、フロー数推定部は、過
去に到着したフローの履歴を格納する到着フロー履歴記
憶部を備え、この到着フロー履歴記憶部に記憶された履
歴の各エントリが、フロー識別子,エントリが登録され
た時刻、入力パケットによってエントリが参照された回
数,エントリを参照した入力パケットのパケット長合計
を含む履歴情報のうちの少なくとも1つを備える。
【0022】上記発明において、フロー数推定部は、過
去に到着したフローの履歴をエントリとして格納し、格
納されている格納エントリにフロー識別子を登録する到
着フロー履歴記憶部と、入力パケットのフロー識別子
と、到着フロー履歴記憶部に格納されている中から選ん
だエントリに登録されているフロー識別子とが一致する
一致確率を保存する一致確率保存部と、一致確率から推
定フロー数を計算するフロー数計算部とを備え、フロー
数推定部は、パケット入力時に入力パケットのフロー識
別子と到着フロー履歴から選んだ選択エントリに登録さ
れているフロー識別子とを比較して一致確率を求め、求
めた一致確率の平均を一致確率保存部に保存し、比較が
不一致であれば、ある確率で選択エントリに入力パケッ
トのフロー識別子を登録し、フロー数計算部は、一致確
率から算出した値を推定フロー数とする。
【0023】上記発明において、フロー数推定部は、各
エントリにフロー識別子,ヒット数,パケット長合計を
エントリとして登録する到着フロー履歴記憶部と、全フ
ローの平均レートの推定値である推定平均レートを保存
する推定平均レート保存部と、対応するキューに到着す
るトラヒックを計測する入力トラヒック計測部と、推定
平均レートと入力トラヒック計測部が計測した入力トラ
ヒックとからフロー数を計算するフロー数計算部とを備
え、フロー数推定部は、パケット入力時に、入力した入
力パケットのフロー識別子と到着フロー履歴記憶部に登
録された中からランダムに選んだ選択エントリに登録さ
れているフロー識別子とを比較し、この比較が一致した
場合には、ヒット回数およびパケット長合計を更新し、
比較が不一致である場合は、所定の確率で選択エントリ
に入力パケットのフロー識別子を登録し、ヒット数およ
びパケット長合計を1および入力パケットのバイト数へ
と設定し、入力パケットが属するフローが使用している
帯域をヒット数およびパケット長合計をもとにして推定
して推定帯域を求め、推定帯域をもとに自身に収容され
ている全フローの平均帯域の推定値を更新し、自身への
全パケットの合計帯域と平均帯域を用いてフロー数を推
定する。
【0024】上記発明において、到着したフローの履歴
を用いてパケット制御を行う廃棄制御部を備え、この廃
棄制御部は、特定パケットが到着した時に、到着したフ
ローの履歴のヒット数またはパケット長合計が所定の閾
値を超えた場合には、キュー情報管理部における特定パ
ケットの廃棄優先度を高くするようにしてもよい。
【0025】上記発明において、1本あたりのフローに
与えるべき帯域を計算する目標帯域計算部と、この目標
帯域計算部が算出した目標帯域と到着フロー履歴を用い
てパケット廃棄の制御を行う廃棄制御部とを備え、目標
帯域計算部は、出力回線の容量と全フロー数推定部にお
ける推定フロー数を用いて目標帯域を計算し、特定パケ
ットが到着した時に特定パケットが属するフローの帯域
を計算した際、この計算した帯域が目標帯域を超えた場
合には、キュー情報管理部における特定パケットの廃棄
優先度を高くするようにしてもよい。
【0026】上記発明において、パケットのヘッダに廃
棄優先度の書き込みを行う廃棄優先度設定部を備え、到
着したフローの履歴におけるヒット数およびパケット長
合計がある閾値を超えている場合、または、入力した入
力パケットの属するフローの推定帯域が予め設定されて
いる目標帯域を超えている場合において、対応するキュ
ーのキュー長がある閾値を超えていなければ、入力パケ
ットの廃棄を行わず、キュー情報管理部における入力パ
ケットの廃棄優先度を高くし、キュー情報管理部におい
て入力パケットが高廃棄率に設定されてあり、かつ入力
パケットを格納するキューのキュー長が、予め定められ
た閾値を超えている場合には、入力パケットを廃棄する
ようにしてもよい。
【0027】上記発明において、キューに到着するフロ
ー数が、キューに用意された到着フロー履歴数以下にな
ったことを検出する手段と、キューに到着するフロー数
が、キューに用意された到着フロー履歴数よりも多くな
ったことを検出する手段とを備え、キューに到着するフ
ロー数が、キューに用意された到着フロー履歴数以下の
場合には、到着フロー履歴に登録されているフロー数か
ら推定フロー数を求めるようにしてもよい。
【0028】上記発明において、キューに到着するフロ
ー数が、キューに用意された到着フロー履歴数以下にな
ったことを検出する手段と、キューに到着するフロー数
が、キューに用意された到着フロー履歴数よりも多くな
ったことを検出する手段とを備え、キューに到着するフ
ロー数がキューに用意された到着フロー履歴数以下にな
った場合には、到着フロー履歴を削減し、キューに到着
するフロー数がキューに用意された到着フロー履歴数よ
りも多くなった場合には、到着フロー履歴を増加するよ
うにしてもよい。
【0029】
【発明の実施の形態】以下、本発明の実施の形態につい
て図を参照して説明する。 <実施の形態1>図1は本発明の実施の形態におけるノ
ード装置の構成を示す構成図である。このノード装置
は、到着したパケットを格納するキューを決定するフロ
ー識別部101、キュー毎に収容するフロー数を推定す
る複数のフロー数推定部103、フロー数推定部103
と対の複数のキュー104、割り当て帯域やキュー長等
のスケジューリングに必要な情報を保持するキュー情報
管理部102、キュー情報管理部102の情報をもとに
各キューからのパケット出力を制御するスケジューラ1
05を備える。
【0030】フロー識別部101は、入力パケットが属
するフローの識別子と、このフローが属する品質クラス
と、入力回線番号等のフロー毎に一意である情報とを用
い、入力したパケットを格納すべきキューを選択する。
なお、フローの識別子とは、「IP version
4」を例に説明すると、送信元IPアドレス,送信先I
Pアドレス,第四層プロトコル番号,送信元ポート番
号,送信先ボート番号の組である。また、品質クラス
は、「IP version4」を例に説明すると、I
Pヘッダ中のTOSフィールドとなる。
【0031】キュー選択に関しては、同一のフローに属
するパケットは同一のキューへと格納するという条件さ
え満たしていればよい。従って、キューを選択する際に
は、上述したフローの識別子全ての情報を用いる必要は
無い。例えば、キュー数が少ない場合には、入力ポート
番号のみでキューを選択しても良く、またキュー数が多
い場合には、全ての情報を用いてキューを選択しても良
い。また、上述した情報からキューを選択する際のアル
ゴリズムも任意であり、例えば、上述した情報の値の合
計をキュー数で割った剰余をキューの識別子として用い
たり、また情報をビット列として羅列しこれをCRC−
xで割った剰余をキューの識別子として用いても良い。
【0032】スケジューラ105はキュー情報管理部1
02において設定された各キューの割り当て帯域に従っ
てってパケット出力が可能なスケジューリングアルゴリ
ズムを採用していれば、この構成は任意である。ただ
し、本実施の形態においては出力回線に余剰帯域がある
場合、この余剰帯域を各キューに対して公平に分配する
機構を備えているとする。このようなスケジューリング
アルゴリズムとしては、WRRやDRRなどが挙げられ
る。
【0033】キュー情報管理部102の構成例を図2に
示す。キュー情報管理部102はスケジューリングを行
う際に必要な情報を格納するテーブルであり、例えば図
2のように、各キューの割り当て帯域およびキュー長等
を格納する。各キューへの割り当て帯域はこのキューに
対応するフロー数推定部103において推定フロー数が
更新される毎に動的に変更される。
【0034】フロー数推定部103は対応するキュー1
04内に収容されているフローの数を推定する。フロー
数推定部においてフロー毎の情報が管理できればフロー
数を正確に推定することができるが、フロー数に比例し
ない情報量を実現することが本発明の目的であるため、
フロー数推定のアルゴリズムとしてはフロー数に比例し
ない固定量の記憶資源のみを用いて推定を行わなければ
ならない。条件を満たすアルゴリズムとして文献6に紹
介されている方式があり、本実施の形態ではこの方式を
参考にフロー数推定を行う(文献6:T. J. Ott他, "SR
ED: StabilizedRED", IEEE INFOCOM'96)。
【0035】図3は、本実施の形態におけるフロー数推
定部103の構成を示す構成図である。フロー数推定部
103は、複数のフロー識別子を保持する到着フロー履
歴記憶部106、一致確率保存部107、フロー数計算
部108を備える。文献6に示された方式では、回線全
体のフロー数を推定するため到着フロー履歴は1つであ
るが、本実施の形態においては、キュー毎にフロー数を
推定するため、到着フロー履歴を各フロー数推定部毎に
用いる。すなわち、本実施の形態では、各フロー数推定
部103毎に、到着フロー履歴記憶部106を備えるよ
うにした。
【0036】以下、フロー数推定部103の動作につい
て、図4のフローチャートを用いて説明する。図1に示
すノード装置にパケットが到着したとき、フロー識別部
101において到着したパケットが属するフローの識別
子や品質クラス,入力回線番号などを用い、到着したパ
ケットを格納するキュー104を決定する。次いで、格
納先のキュー104に対応するフロー数推定部103に
おいて、キュー104内の推定フロー数を以下の様に更
新する。
【0037】まず、ステップS401で、フロー数推定
部103のフロー数計算部108は、到着フロー履歴記
憶部106に記憶されている到着フロー履歴から、1つ
のエントリ(履歴エントリ)をランダムに選択する。次
いで、ステップS402で、フロー数計算部108は、
ランダムに選択した履歴エントリに書かれているフロー
識別子と入力したパケットのフロー識別子を比較する。
この比較の結果、2つが一致しなければ、ステップS4
03に進み、一致確率保存部107に保存されている一
致確率の時間平均に(1−α)を乗じて新たな一致確率
とする。なお、αは、予め設定されている規定値であ
る。次いで、フロー数計算部108は、任意の確率q
(ステップS404)によって、エントリのフロー識別
子を入力したパケットのフロー識別子に更新する(ステ
ップS405)。
【0038】一方、ステップS402の比較で一致した
場合、ステップS406に進み、フロー数計算部108
は、一致確率保存部107に保存されている一致確率の
時間平均に(1−α)を乗じ、かつαを加算して新たな
一致確率とする。この後、ステップS407で、フロー
数計算部108は、更新された新たな一致確率の逆数を
求め、これを推定フロー数とする。
【0039】以上のように推定フロー数が更新された
後、フロー数推定部103は、更新された推定フロー数
に定数を乗じた値を割り当て帯域としてキュー情報管理
部102に書き込む。最後に、フロー数推定部103
は、入力パケットを適切なキュー104に格納して処理
を終了する。なお、本実施の形態においては、余剰帯域
が生じた場合スケジューラ105が、これを公平に分配
する機構を備えているとしているため、割り当て帯域の
総合計がリンク容量以下となってもよい。一方、パケッ
ト出力時には、キュー情報管理部102に書き込まれた
割り当て帯域に従ってい、スケジューラ105が、各キ
ュー104からのパケット出力を行う。
【0040】<実施の形態2>つぎに、本発明の他の形
態について説明する。図5は、本発明の他の形態におけ
るノード装置の構成を示す構成図である。本実施の形態
のノード装置は、前述した実施の形態の構成に加え、出
力回線上の余剰帯域を求める余剰帯域計算部206と、
割り当て帯域計算部207とを新たに備えるようにした
ものである。割り当て帯域計算部207は、回線容量を
全キューの推定フロー数の合計で割ることにより、フロ
ー1本あたりの割り当て帯域を計算し、これに各キュー
の推定フロー数を乗じて各キューの割り当て帯域を計算
する。
【0041】本実施の形態において、スケジューラ10
5は、割り当て帯域と等しい帯域でのみパケット出力を
行い、出力回線上に余剰帯域が生じてもこの余剰帯域を
各キューに再配分しない。他の構成は、図1に示したノ
ード装置と同様である。
【0042】つぎに、図5を参照して本実施の形態にお
けるノード装置の動作について説明する。図5のノード
装置にパケットが到着したとき、フロー識別部101に
おいて、到着したパケットが属するフローの識別子や品
質クラス,入力回線番号などを用い、到着したパケット
の格納先のキュー104を決定する。また、この決定さ
れたキュー104に対応するフロー数推定部103が、
前述の実施の形態でも説明したように、このキュー10
4内の推定フロー数を更新する。
【0043】つぎに割り当て帯域計算部207におい
て、全てのキュー104の推定フロー数を合計して出力
回線上の全フロー数を推定し、出力回線の容量を推定し
た全フロー数で割ることで、フロー1本あたりの帯域を
求める。次いで、求めた帯域に推定フロー数を乗ずるこ
とで割り当てる帯域を計算し、これをキュー情報管理部
102に書き込む。最後に、入力パケットを適切なキュ
ー104に格納して処理を終了する。パケット出力時の
処理については、前述した実施の形態と同様である。さ
らに、本実施の形態では、余剰帯域計算部206によっ
て余剰帯域が検出された場合、余剰帯域量に応じて各キ
ュー104の割り当て帯域を増加させる。
【0044】<実施の形態3>つぎに、本発明の他の形
態について説明する。図6は、本発明の他の形態におけ
るノード装置の構成を示す構成図である。図6のノード
装置は、まず、前述した実施の形態と同様に、フロー識
別部101,フロー数推定部103,余剰帯域計算部2
06,割り当て帯域計算部207を備える。加えて、本
実施の形態では、ノード装置に、設定された割り当て帯
域以上のパケットを廃棄する複数のポリサ304を設け
るようにした。また、割り当て帯域等のポリサ304毎
のパラメータを保持するポリシング情報管理部302
と、FIFOキュー305を備えるようにした。
【0045】ポリシング情報管理部302は、各ポリサ
304がポリシングを行うために必要な割り当て帯域等
の情報を保持し、ポリサ304は、ポリシング情報管理
部302の情報に従ってってポリシングを行う。図6の
ノード装置では、キューはFIFOキュー305のみで
あり、全てのフローのパケットは、FIFOキュー30
5に格納され、この先頭から出力される。
【0046】つぎに、図6のノード装置の動作について
説明する。図6のノード装置にパケットが到着したと
き、フロー識別部101が、到着したパケットのフロー
の識別子や品質クラス,また入力回線番号などを用い、
到着したパケットを通過させるポリサ304を決定す
る。また、決定したポリサ304に対応するフロー数推
定部103が、このポリサ304を通過している推定フ
ロー数を更新する。
【0047】つぎに、割り当て帯域計算部207が、全
ポリサ304の推定フロー数を合計して出力回線上の全
フロー数を推定し、出力回線の容量を全フロー数で割る
ことによってフロー1本あたりの帯域を求める。次い
で、求めた帯域に推定フロー数を乗ずることで上記ポリ
サ304に割り当てる帯域を計算し、これをポリシング
情報管理部302に記憶させる。つぎに、上記ポリサ3
04を用いて入力パケットを廃棄するか否かを決定し、
廃棄しないと判断した場合には、入力したパケットをF
IFOキュー305に格納する。
【0048】なお、パケット出力時の処理は、FIFO
キュー305の先頭からパケットを取り出して、これを
出力回線に出力するだけである。さらに、本実施の形態
では、余剰帯域計算部206によって余剰帯域が検出さ
れた場合、余剰帯域量に応じて各ポリサ304の割り当
て帯域を増加させる。またFIFOキュー305内のキ
ュー長に応じて割り当て帯域を増減させる処理も行う。
【0049】<実施の形態4>つぎに、本発明の他の形
態について説明する。本実施の形態では、図1に示した
ノード装置のフロー数推定部103を、図7に示すよう
に構成されたフロー数推定部103aとしたものであ
る。従って、本実施の形態のノード装置は、図1に示し
たノード装置に比較して、フロー数推定部103aの構
成および動作が異なるのみであり、以下では他の構成に
関する説明は省略する。
【0050】本実施の形態のフロー数推定部103a
は、キュー104(図1)内の各フローが使用している
帯域を推定し、帯域を推定したキュー104に収容され
ている全てのフローの平均帯域を推定し、このキュー1
04への全入力帯域を平均帯域で割ることによって各キ
ュー104に収容されているフロー数を推定する。な
お、以下本実施の形態ではパケット長が一定であると仮
定している。
【0051】本実施の形態におけるフロー数推定部10
3aは、図7に示すように、フロー識別子とヒット回数
をエントリとして持つ到着フロー履歴記憶部106a
と、キュー104に収容されている全フローの平均帯域
を保持する推定平均帯域保存部707と、フロー数計算
部108aと、キュー104へのパケット到着率を計測
する入力トラヒック計測部709とを備える。到着フロ
ー履歴記憶部106aが記憶しているヒット回数とは、
入力パケットのフロー識別子が、ランダムに選ばれたエ
ントリのフロー識別子と一致した回数である。
【0052】以下、フロー数推定部103aの動作につ
いて図8のフローチャートを用いて説明する。図1に示
したノード装置のフロー数推定部103と同様に、パケ
ットが到着すると、まず到着フロー履歴からランダムに
エントリを選択し(ステップS801)、選択したエン
トリに保存されているフロー識別子と入力パケットのフ
ロー識別子を比較する(ステップS802)。ステップ
S802の比較の結果、2つのフロー識別子が等しい場
合、選択したエントリのヒット回数に1を加える(ステ
ップS803)。
【0053】一方、ステップS802の比較の結果、2
つのフロー識別子が等しくなければ、確率q(ステップ
S804)で、ステップS805〜ステップS808に
示す推定フロー数の更新およびエントリの置き換えを行
う。まず、ステップS805で、ランダムに選択したエ
ントリのヒット回数より推定帯域を計算し、ステップS
806で、推定平均帯域保存部707に保存されている
推定平均帯域を更新する。次いで、ステップS807
で、推定フロー数を算出し、ステップS808で、エン
トリのヒット回数を0に戻し、また、フロー識別子を入
力パケットの識別子で置き換える。
【0054】推定フロー数の算出について説明すると、
上述のようにエントリが置き替えられる場合、置き換え
前のヒット回数は、このエントリに対するヒット回数の
最大値となり、この値は置き換え前に上記エントリ登録
されていたフローの帯域と相関関係を持つ。従って、入
力パケットが属するフローの帯域は、以下の様に推定で
き、推定フロー数を更新することができる。
【0055】ヒット回数の最大値は、対応するフローの
帯域に対して増加関数であり、この最大値を用いて対応
するフローの帯域を推定することができる。この帯域推
定のための関数としては、例えば、いずれかのキュー1
04へのパケット到着率を用いてつぎのように計算でき
る。「推定帯域=キュー104へのパケット到着率の合
計×{q×ヒット回数の最大値/(1+q×ヒット回数
の最大値)}」。つぎに、得られた推定帯域から、キュ
ー104へ到着する全フローの帯域の平均を求める。
【0056】ここで、k回目の帯域推定で得られた推定
帯域R(k)とすると、推定平均帯域は「{Σ(1<=
k<=N)R(k)}/N 」と求めることができる。
実際には、帯域の高いフローのパケットは到着回数が多
く、多くの回数の帯域推定が行われていることを考慮す
ると、推定平均帯域は、つぎに示すように、推定帯域の
逆数で重み付けして求めることが望ましい。推定平均帯
域={Σ(1<=k<=N)(R(k)/R(k))}
/{Σ(1<=k<=N)(1/R(k))}。 フロー数計算部108aは、入力トラヒック計測部70
9が計測したキュー104へのパケット到着率を、上述
のことにより算出した推定平均帯域で割ることで、推定
フロー数を算出する。
【0057】<実施の形態5>つぎに、本発明の他の形
態について説明する。本実施の形態においては、図1に
示したノード装置のフロー数推定部103を、図9に示
すように構成されたフロー数推定部103bとしたもの
である。従って、本実施の形態のノード装置は、図1に
示したノード装置に比較して、フロー数推定部103b
の構成および動作が異なるのみであり、以下では他の構
成に関する説明は省略する。本実施の形態の特徴は、上
述した図7に示すフロー数推定部103aを用いたノー
ド装置に比較して、可変長パケットに対応できるよう変
更した点である。
【0058】フロー数推定部103bは、図9に示すよ
うに、フロー識別子とヒット回数と入力パケットのパケ
ット長の合計などの履歴情報をエントリとして持つ到着
フロー履歴記憶部106bと、キュー103(図1)に
収容されている全フローの平均帯域を保持する推定平均
帯域保存部707と、フロー数計算部108bと、キュ
ー104へのパケット到着率,全入力パケットの合計帯
域および全入力パケットの平均パケット長を計測する入
力トラヒック計測部909を備える。
【0059】以下、本実施の形態のフロー数推定部10
3の動作について、図10のフローチャートを用いて説
明する。図1に示したノード装置のフロー数推定部10
3と同様に、パケットが到着すると、まず到着フロー履
歴からランダムにエントリを選択し(ステップS100
1)、選択したエントリに保存されているフロー識別子
と入力パケットのフロー識別子を比較する(ステップS
1002)。ステップS1002の比較の結果、2つの
フロー識別子が等しい場合、到着フロー履歴記憶部10
6bの選択したエントリのヒット回数に1を加え、か
つ、パケット長合計に入力パケット長を加える(ステッ
プS1003)。
【0060】一方、ステップS1002の比較で2つの
フロー識別子が等しくなければ、確率q(ステップS1
004)で、ステップS1005〜ステップS1008
に示すように推定フロー数の更新およびエントリの置き
換えを行う。まず、ステップS1005で、ランダムに
選択したエントリのヒット回数より推定帯域を計算し、
ステップS1006で、推定平均帯域保存部707に保
存されている推定平均帯域を更新する。次いで、ステッ
プS1007で、推定フロー数を算出し、ステップS8
09で、エントリのヒット回数を0に戻し、エントリの
パケット長合計を入力パケット長にし、エントリのフロ
ー識別子を入力パケットのフロー識別子とする。
【0061】エントリの置き換えは、以下に示すように
帯域推定を行い、キュー104のフロー数の更新する。
本実施の形態においても、ヒット回数の最大値は、対応
するフローの帯域に対して増加関数とし、この最大値を
用いてフローの帯域を推定する。この帯域推定のための
関数としては、例えば、キュー104へのパケット到着
率と平均パケット長を用いてつぎに示すように計算す
る。
【0062】推定帯域=キュー104へのパケット到着
率×{q×ヒット回数最大値/(1+q×ヒット回数最
大値)}×{当該フロー上での平均パケット長/キュー
104全体での平均パケット長}ここで、上記フロー上
の平均パケット長は、「平均パケット長=当該エントリ
のパケット長合計/(当該エントリのヒット回数+
1)」と推定できる。
【0063】つぎに、得られた推定帯域から、キュー1
04へ到着する全フローの帯域の平均を求める。本実施
の形態においても、平均推定帯域は、推定帯域の逆数で
重み付けして求めることが望ましく、k回目の帯域推定
で得られた推定帯域R(k)とすると、平均推定帯域
は、つぎに示すように求める。推定平均帯域={Σ(1
<=k<=N)(R(k)/R(k))}/{Σ(1<
=k<=N)(1/R(k))}。最後に、フロー数計
算部108bは、入力トラヒック計測部909で得たキ
ュー104への到着するパケットの全帯域を、以上のこ
とにより求めた推定平均帯域で割ることで、推定フロー
数を求める。
【0064】<実施の形態6>つぎに、本発明の他の形
態について説明する。図11は本発明におけるノード装
置の他の形態を示す構成図である。図11に示すノード
装置は、到着したパケットを格納するキューを決定する
フロー識別部101、キュー毎に収容するフロー数を推
定する複数のフロー数推定部103b、複数のキュー1
03、割り当て帯域やキュー長等のキュー毎のパラメー
タを保持するキュー情報管理部102、キュー情報管理
部102の情報をもとに各キュー103からのパケット
出力を制御するスケジューラ105、各フローに与える
べき帯域を計算する目標帯域計算部1106、目標帯域
と各フローの推定帯域を比較してパケットの廃棄を行う
複数の廃棄制御部1107で構成される。
【0065】なお、図11のノード装置において、フロ
ー識別部101、フロー数推定部103b、キュー10
4、キュー情報管理部102、スケジューラ105の動
作は、上述した図10のフローチャートに示す動作をす
る実施の形態と同様である。本実施の形態は、上述した
実施の形態に比較し、目標帯域計算部1106と廃棄制
御部1107によって入力パケットの廃棄制御を行う点
が異なる。
【0066】以下、図11のノード装置の動作について
説明する。図11のノード装置は、ランダムに選択した
到着フロー履歴のエントリのフロー識別子と、入力パケ
ットが属するフローの識別子が一致した場合、図10の
フローチャートに動作を示した上述の実施の形態と同様
の処理に加え、以下のような処理を行う。まず、目標帯
域計算部1106において各フローに与えるべき目標帯
域を求める。目標帯域計算部1106では、各フロー数
推定部103において計算された推定フロー数を合計
し、出力回線の容量を推定フロー数の合計で割り、これ
を目標帯域とする。
【0067】廃棄制御部1107では、フロー数推定部
103が計算した推定帯域と、目標帯域計算部1106
が計算した目標帯域を比較する。この比較で、推定帯域
が目標帯域を上回っており、かつ、入力パケットを格納
するキュー104のキュー長が、予め設定されている閾
値を上回っている場合、廃棄制御部1107は、入力パ
ケットをキュー104に格納せずに廃棄する。一方、上
記比較で、推定帯域が目標帯域を下回っている場合、廃
棄制御部1107は、入力したパケットの廃棄は行わな
い。
【0068】<実施の形態7>つぎに、本発明の他の形
態について説明する。図12は本発明におけるノード装
置の他の形態を示す構成図である。本実施の形態では、
図12に示すように、前述の実施の形態のノード装置
に、廃棄制御部1107aに対応して複数の廃棄優先度
設定部1208を設けるようにした。本実施の形態で
は、廃棄優先度設定部1208を設けることで、パケッ
トのヘッダに廃棄優先度を示すビットを設け、このビッ
トを用いて廃棄判断を行う。
【0069】廃棄優先度設定部1208は、廃棄制御部
1107で推定帯域が目標均帯域を超えていながらキュ
ー長が閾値以下であったため廃棄されなかったパケット
に対し、このパケットのヘッダ中の廃棄優先度ビットを
高優先に設定する。一方、廃棄制御部1107では、前
述したようにパケット廃棄を行うとともに入力パケット
のヘッダの廃棄優先度ビットが高優先に設定され、かつ
入力パケットを格納するキューのキュー長が予め設定さ
れた閾値以上であれば、入力パケットを廃棄する。この
結果、本実施の形態によれば、次段以降のノード装置が
輻輳している場合には、上記パケットが廃棄されやすい
ものとなる。
【0070】<実施の形態8>つぎに、本発明の他の形
態について説明する。図13は、本発明の他の形態にお
けるノード装置の構成を示す構成図である。本実施の形
態では、図13に示すように、図1に示したノード装置
に複数の廃棄制御部1107bを備えるようにした。な
お、フロー数推定部103は、図9に示す構成である。
図13のノード装置の廃棄制御部1107bは、フロー
数推定部103の到着フロー履歴をもとに、パケットの
廃棄を行う。
【0071】本実施の形態の廃棄制御部1107bは、
入力パケットを格納するキュー104のキュー長が、予
め定められた閾値を超えており、かつエントリのヒット
回数もしくはパケット長合計が、予め設定された閾値を
超えておれば、パケットを廃棄するようにした。なお、
このパケットの廃棄は、パケットが到着したことにより
フロー数推定部103がランダムに選択した到着フロー
履歴のエントリのフロー識別子と、到着したパケット
(入力パケット)が属するフローの識別子が一致した場
合に行う。
【0072】<実施の形態9>つぎに、本発明の他の形
態について説明する。本実施の形態では、図1に示した
ノード装置のフロー数推定部103を、図14に示すよ
うに構成されたフロー数推定部103cとしたものであ
る。従って、本実施の形態のノード装置は、図1に示し
たノード装置に比較して、フロー数推定部103cの構
成および動作が異なるのみであり、以下では他の構成に
関する説明は省略する。フロー数推定部103cは、到
着フロー履歴から1つのエントリをランダムに選択する
のではなく、全エントリを参照するようにしたものであ
る。
【0073】図14に示すように、本実施の形態におけ
るフロー数推定部103cは、複数のフロー識別子を保
持する到着フロー履歴記憶部106、一致確率保存部1
07、フロー数計算部108c、置き換えられたフロー
識別子を保持しておく予備フロー識別子保存部1407
を備える。
【0074】以下、図15のフローチャートを参照して
フロー数推定部103cの動作について説明する。パケ
ットが到着した際、フロー数推定部103cは、到着フ
ロー履歴記憶部106に記憶されている到着フロー履歴
を全て参照し、入力パケットと同じフロー識別子を持つ
フロー履歴のエントリを探す(ステップS1501)。
次いで、ステップS1502で、一致確率保存部107
に一致するエントリの存在を判定する。
【0075】ステップS1502の判定で一致するエン
トリが見つからない場合、ステップS1503で、新た
な一致確率「古い一致確率×(1−α)」を一致確率保
存部107に保存する。次いで、予備フロー識別子保存
部1407の保存されているフロー識別子と入力したパ
ケットのフロー識別子とが異なり、かつ現在のエントリ
数が当初のエントリ数より小さい場合(ステップS15
04)、エントリを1つ追加し(ステップS150
5)、追加したエントリのフロー識別子を入力したパケ
ットのフロー識別子とする(ステップS1506)。こ
の後、ステップS1507に進む。
【0076】一方、予備フロー識別子保存部1407に
保存されているフロー識別子と入力したパケットのフロ
ー識別子とが等しい、または、現在のエントリ数が当初
のエントリ数より大きい場合(ステップS1504)、
到着フロー履歴からランダムに1つのエントリを選択し
(ステップS1508)、任意の確率qによって(ステ
ップS1509)、予備フロー識別子保存部1407
に、エントリのフロー識別子を保存し(ステップS15
10)、エントリのフロー識別子を入力パケットのフロ
ー識別子とする(ステップS1511)。なお、ステッ
プS1509において、確率qにはずれた場合、予備フ
ロー識別子保存部1407に、入力パケットのフロー識
別子を保存する(ステップS1512)。この後、ステ
ップS1507に進む。
【0077】また、ステップS1502の判定で、一致
するエントリが存在した場合、ステップS1513で、
新たな一致確率「古い一致確率×(1−α)+α」を一
致確率保存部107に保存する。ここで、新たな一致確
率が、1に近いある定数βを超えている場合(ステップ
S1514)、まず、到着フロー履歴のエントリ数を1
つ削減する(ステップS1515)。次いで、削減され
たエントリに書かれているフロー識別子を予備フロー識
別子保存部1407に保存し(ステップS1516)、
ステップS1507に移行する。フロー数が到着フロー
履歴のエントリ数より少ない場合、一致確率は常に1と
なるため、正しくフロー数を推定できない。このため、
上述したステップS1514〜S1516を行う。
【0078】ステップS1507に移行したら、現在の
エントリ数と当初のエントリ数とを比較し、これらが等
しい場合、フロー数計算部108cは、エントリ数を一
致確率で除したものを推定フロー数とする(ステップS
1517)。一方、現在のエントリ数と当初のエントリ
数とが異なっている場合、フロー数計算部108cは、
現在のエントリ数に1を加えて推定フロー数とする(ス
テップS1518)。
【0079】<実施の形態10>つぎに、本発明の他の
形態におけるノード装置について説明する。本実施の形
態では、図1に示したノード装置のフロー数推定部10
3を、図16に示すように構成されたフロー数推定部1
03dとしたものである。従って、本実施の形態のノー
ド装置は、図1に示したノード装置に比較して、フロー
数推定部103dの構成および動作が異なるのみであ
り、以下では他の構成に関する説明は省略する。
【0080】本実施の形態では、キュー104内の各フ
ローが使用している帯域を推定し、キュー104に収容
されている全てのフローの平均帯域を推定し、キュー1
04への全入力帯域を推定した平均帯域で割ることによ
って、キュー104に収容されているフロー数を推定す
る。また、本実施の形態でも、上述の実施の形態と同様
に、到着フロー履歴記憶部106から1つのエントリを
ランダムに選択するのではなく、全エントリを参照す
る。
【0081】本実施の形態では、図16に示すように、
フロー数推定部103dが、フロー識別子とヒット回数
をエントリとして持つ到着フロー履歴記憶部106と、
キュー104に収容されている全フローの平均帯域を保
持する推定平均帯域保存部707と、フロー数計算部1
08dと、キュー104へのパケット到着率を計測する
入力トラヒック計測部909と、置き換えられたフロー
識別子を保持しておく予備フロー識別子保存部1407
とを備える。
【0082】以下、本実施の形態のノード装置のフロー
数推定動作について、図17のフローチャートを用いて
説明する。まず、パケットが到着した際、フロー数推定
部103dは、到着フロー履歴を全て参照し、入力パケ
ットと同じフロー識別子を持つフロー履歴のエントリを
探す(ステップS1701)。次いで、ステップS17
02で、一致確率保存部107に一致するエントリの存
在を判定する。
【0083】ステップS1702の判定で一致するエン
トリが見つからない場合、ステップS1703で、新た
な一致確率「古い一致確率×(1−α)」を一致確率保
存部107に保存する。次いで、予備フロー識別子保存
部1407の保存されているフロー識別子と入力したパ
ケットのフロー識別子とが異なり、かつ現在のエントリ
数が当初のエントリ数より小さい場合(ステップS17
04)、まず、エントリを1つ追加し、追加したエント
リのヒット回数を0とする(ステップS1705)。次
いで、追加したエントリのフロー識別子を入力したパケ
ットのフロー識別子とする(ステップS1706)。こ
の後、ステップS1707に進む。
【0084】一方、予備フロー識別子保存部1407に
保存されているフロー識別子と入力したパケットのフロ
ー識別子とが等しい、または、現在のエントリ数が当初
のエントリ数より大きい場合(ステップS1704)、
到着フロー履歴からランダムに1つのエントリを選択し
(ステップS1708)、任意の確率qによって(ステ
ップS1709)、まず、エントリのヒット数と一致確
率とにより推定帯域を計算する(ステップS171
0)。
【0085】推定帯域の計算は、例えば、「推定帯域=
(1-各エントリに登録されているフローの推定帯域の
合計)×q/エントリ数×ヒット回数最大値」のような
式を用いて置き換えられるフローの推定帯域を計算し、
これをもとにして推定帯域を導出する。なお、各エント
リに登録されているフローの推定帯域の合計の導出は困
難であるので、「推定帯域=(1-一致確率)×q/エ
ントリ数×ヒット回数最大値」のような近似式でも構わ
ない。
【0086】次いで、推定帯域を計算したら、以下のよ
うにして推定平均帯域を求め、推定帯域保存部707に
保存されている推定平均帯域を更新する(ステップS1
711)。推定平均帯域は、キュー104へ到着する全
フローの帯域の平均であり、例えば、帯域の高いフロー
では帯域推定の回数が多いとして重み付けを行い、「推
定平均帯域=(1-β(ヒット回数最大値+1)/推定
帯域)×前回の推定平均帯域+β(ヒット回数最大値+
1)/推定レート×推定帯域」のように推定平均帯域
(移動時間平均)を計算する。キュー104への入力帯
域を、計算した推定平均帯域で除したものを、推定フロ
ー数とする(ステップS1712)。
【0087】次いで、予備フロー識別子保存部1407
に、エントリのフロー識別子を保存し(ステップS17
13)、エントリのフロー識別子を入力パケットのフロ
ー識別子とする(ステップS1714)。なお、ステッ
プS1709において、確率qにはずれた場合、予備フ
ロー識別子保存部1407に、入力パケットのフロー識
別子を保存する(ステップS1715)。この後、ステ
ップS1707に進む。
【0088】また、ステップS1702の判定で、一致
するエントリが存在した場合、ステップS1716で、
新たな一致確率「古い一致確率×(1−α)+α」を一
致確率保存部107に保存し、ステップS1711で、
エントリのヒット回数に1を加算する。ここで、新たな
一致確率が、1に近いある定数βを超えている場合(ス
テップS1718)、まず、到着フロー履歴のエントリ
数を1つ削減する(ステップS1719)。次いで、削
減されたエントリに書かれているフロー識別子を予備フ
ロー識別子保存部1407に保存し(ステップS172
0)、ステップS1707に移行する。フロー数が到着
フロー履歴のエントリ数より少ない場合、一致確率は常
に1となるため、正しくフロー数を推定できない。この
ため、上述したステップS1714〜S1716を行
う。
【0089】ステップS1707に移行したら、現在の
エントリ数と当初のエントリ数とを比較し、これらが異
なっている場合、フロー数計算部108cは、現在のエ
ントリ数に1を加えて推定フロー数とする(ステップS
1721)。
【0090】
【発明の効果】以上説明したように、本発明によれば、
各キューに対応してこのキューのフロー数が推定され、
各キューにおいて推定されたフロー数によって、各キュ
ーへ割り当てられる帯域が変更されるようにしたので、
広帯域網においても、フロー間で公平に帯域を利用でき
るようになるというすぐれた効果が得られる。
【図面の簡単な説明】
【図1】 本発明の実施の形態におけるノード装置の構
成を示す構成図である。
【図2】 キュー情報管理部102の構成例を示す説明
図である。
【図3】 図1のフロー数推定部103の構成を示す構
成図である。
【図4】 フロー数推定部103の動作を説明するため
のフローチャートである。
【図5】 本発明の他の形態におけるノード装置の構成
を示す構成図である。
【図6】 本発明の他の形態におけるノード装置の構成
を示す構成図である。
【図7】 本発明の他の形態におけるノード装置の一部
構成を示す構成図である。
【図8】 図7のフロー数推定部103aの動作を説明
するためのフローチャートである。
【図9】 本発明の他の形態におけるノード装置の一部
構成を示す構成図である。
【図10】 図9のフロー数推定部103bの動作を説
明するためのフローチャートである。
【図11】 本発明の他の形態におけるノード装置の構
成を示す構成図である。
【図12】 本発明の他の形態におけるノード装置の構
成を示す構成図である。
【図13】 本発明の他の形態におけるノード装置の構
成を示す構成図である。
【図14】 本発明の他の形態におけるノード装置の一
部構成を示す構成図である。
【図15】 図14のフロー数推定部103cの動作を
説明するためのフローチャートである。
【図16】 本発明の他の形態におけるノード装置の一
部構成を示す構成図である。
【図17】 図16のフロー数推定部103dの動作を
説明するためのフローチャートである。
【符号の説明】
101…フロー識別部、102…キュー情報管理部、1
03…フロー数推定部、104…キュー、105…スケ
ジューラ。

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 入力したパケットを、このパケットの属
    性情報に基づいて複数のキューのいずれかに格納し、前
    記キューからスケジューラを用いてパケットを出力回線
    に出力するノード装置において、 入力パケットのヘッダ情報,入力回線の識別子,波長を
    含む属性情報を用いて格納するキューを決定するフロー
    識別部と、 前記キューに対する割り当て帯域のスケジューリングに
    必要な情報を保持するキュー情報管理部と、 前記キューからのパケット出力を制御するスケジューラ
    と、 前記キュー各々に対応して前記キューに収容しているフ
    ローの数を推定し、収容するフロー数に応じて対応する
    前記キューに対して割り当てる帯域を変更する複数のフ
    ロー数推定部とを備えたことを特徴とするノード装置。
  2. 【請求項2】 請求項1記載のノード装置において、 前記スケジューラからの出力回線上の余剰帯域を求める
    余剰帯域計算部と、 この余剰帯域に基づいて割り当て帯域を再計算して前記
    キュー情報管理部における情報を変更する割り当て帯域
    計算部とを新たに備え、 前記フロー数推定部は、前記出力回線上に余剰帯域があ
    る場合は、対応するキューの収容フロー数に応じて前記
    余剰帯域を各キューに再度割り当てることを特徴とする
    ノード装置。
  3. 【請求項3】 入力したパケットを複数のポリサを用い
    て廃棄制御を行い、廃棄を行わなかった場合には前記パ
    ケットをFIFOキューに格納し、このFIFOキュー
    からパケットを出力回線に出力するノード装置におい
    て、 入力パケットのヘッダ情報,入力回線の識別子,波長を
    含む属性情報を用いて適用するポリサを決定するフロー
    識別部と、 前記ポリサに対する割り当て帯域を含むポリシングに必
    要な情報を保持するポリシング情報管理部と、 入力したパケットを格納するFIFOキューと、 前記ポリサに対応してこのポリサに収容されているフロ
    ーの数を推定し、収容されているフローの数に応じて各
    々のポリサに対して割り当てる帯域を変更するフロー数
    推定部と、 前記出力回線上の余剰帯域を求める余剰帯域計算部と、 この余剰帯域計算部が求めた余剰帯域に基づいて割り当
    て帯域を再計算する割り当て帯域計算部とを備え、 前記フロー数推定部は、前記出力回線上に余剰帯域があ
    る場合には前記ポリサの収容フロー数に応じて前記余剰
    帯域を前記ポリサに再度割り当てることを特徴とするノ
    ード装置。
  4. 【請求項4】 請求項1〜3いずれか1項に記載のノー
    ド装置において、 前記フロー数推定部は、過去に到着したフローの履歴を
    格納する到着フロー履歴記憶部を備え、パケット入力時
    に入力パケットのフロー識別子を用いて前記履歴を検索
    することによってフロー数を推定することを特徴とする
    ノード装置。
  5. 【請求項5】 請求項1〜3いずれか1項に記載のノー
    ド装置において、 前記フロー数推定部は、 過去に到着したフローの履歴を格納する到着フロー履歴
    記憶部を備え、 自身に入力した全てのパケットの合計帯域を計測し、パ
    ケット入力時にこのパケットのフロー識別子を用いて前
    記履歴を検索することによって前記パケットが属するフ
    ローの使用帯域を推定する帯域推定を複数回行って自身
    で扱う全フローの平均帯域を推定し、自身への全入力パ
    ケットの合計帯域と前記平均帯域を用いてフロー数を推
    定することを特徴とするノード装置。
  6. 【請求項6】 請求項4または5記載のノード装置にお
    いて、 前記フロー数推定部は、 過去に到着したフローの履歴を格納する到着フロー履歴
    記憶部を備え、 この到着フロー履歴記憶部に記憶された履歴の各エント
    リが、フロー識別子,エントリが登録された時刻、入力
    パケットによって前記エントリが参照された回数,前記
    エントリを参照した入力パケットのパケット長合計を含
    む履歴情報のうちの少なくとも1つを備えることを特徴
    とするノード装置。
  7. 【請求項7】 請求項4または6記載のノード装置にお
    いて、 前記フロー数推定部が、 過去に到着したフローの履歴をエントリとして格納し、
    格納されている格納エントリにフロー識別子を登録する
    到着フロー履歴記憶部と、 入力パケットのフロー識別子と、前記到着フロー履歴記
    憶部に格納されている中から選んだエントリに登録され
    ているフロー識別子とが一致する一致確率を保存する一
    致確率保存部と、 前記一致確率から推定フロー数を計算するフロー数計算
    部とを備え、 前記フロー数推定部は、パケット入力時に入力パケット
    のフロー識別子と到着フロー履歴から選んだ選択エント
    リに登録されているフロー識別子とを比較して一致確率
    を求め、求めた一致確率の平均を前記一致確率保存部に
    保存し、前記比較が不一致であれば、ある確率で前記選
    択エントリに入力パケットのフロー識別子を登録し、 前記フロー数計算部は、前記一致確率から算出した値を
    推定フロー数とすることを特徴とするノード装置。
  8. 【請求項8】 請求項5または6記載のノード装置にお
    いて、 前記フロー数推定部は、 各エントリにフロー識別子,ヒット数,パケット長合計
    をエントリとして登録する到着フロー履歴記憶部と、 全フローの平均レートの推定値である推定平均レートを
    保存する推定平均レート保存部と、 対応するキューに到着するトラヒックを計測する入力ト
    ラヒック計測部と、 前記推定平均レートと前記入力トラヒック計測部が計測
    した入力トラヒックとからフロー数を計算するフロー数
    計算部とを備え、 前記フロー数推定部は、 パケット入力時に、入力した入力パケットのフロー識別
    子と到着フロー履歴記憶部に登録された中からランダム
    に選んだ選択エントリに登録されているフロー識別子と
    を比較し、 この比較が一致した場合には、ヒット回数およびパケッ
    ト長合計を更新し、 前記比較が不一致である場合は、所定の確率で前記選択
    エントリに入力パケットのフロー識別子を登録し、ヒッ
    ト数およびパケット長合計を1および入力パケットのバ
    イト数へと設定し、 前記入力パケットが属するフローが使用している帯域を
    前記ヒット数およびパケット長合計をもとにして推定し
    て推定帯域を求め、 前記推定帯域をもとに自身に収容されている全フローの
    平均帯域の推定値を更新し、自身への全パケットの合計
    帯域と前記平均帯域を用いてフロー数を推定することを
    特徴とするノード装置。
  9. 【請求項9】 請求項4〜8いずれか1項記載のノード
    装置において、 到着したフローの履歴を用いてパケット制御を行う廃棄
    制御部を備え、 この廃棄制御部は、 特定パケットが到着した時に、到着したフローの履歴の
    ヒット数またはパケット長合計が所定の閾値を超えた場
    合には、前記キュー情報管理部における前記特定パケッ
    トの廃棄優先度を高くすることを特徴とするノード装
    置。
  10. 【請求項10】 請求項5,6,および8記載のノード
    装置において、 1本あたりのフローに与えるべき帯域を計算する目標帯
    域計算部と、 この目標帯域計算部が算出した目標帯域と到着フロー履
    歴を用いてパケット廃棄の制御を行う廃棄制御部とを備
    え、 前記目標帯域計算部は、 出力回線の容量と全フロー数推定部における推定フロー
    数を用いて目標帯域を計算し、 特定パケットが到着した時に前記特定パケットが属する
    フローの帯域を計算した際、この計算した帯域が目標帯
    域を超えた場合には、 前記キュー情報管理部における前記特定パケットの廃棄
    優先度を高くすることを特徴とするノード装置。
  11. 【請求項11】 請求項9または10記載のノード装置
    において、 パケットのヘッダに廃棄優先度の書き込みを行う廃棄優
    先度設定部を備え、 到着したフローの履歴におけるヒット数およびパケット
    長合計がある閾値を超えている場合、または、入力した
    入力パケットの属するフローの推定帯域が予め設定され
    ている目標帯域を超えている場合において、 対応するキューのキュー長がある閾値を超えていなけれ
    ば、前記入力パケットの廃棄を行わず、前記キュー情報
    管理部における前記入力パケットの廃棄優先度を高く
    し、 前記キュー情報管理部において前記入力パケットが高廃
    棄率に設定されてあり、かつ前記入力パケットを格納す
    るキューのキュー長が、予め定められた閾値を超えてい
    る場合には、前記入力パケットを廃棄することを特徴と
    するノード装置。
  12. 【請求項12】 請求項4〜8のいずれか1項に記載の
    ノード装置において、 前記キューに到着するフロー数が、前記キューに用意さ
    れた到着フロー履歴数以下になったことを検出する手段
    と、 前記キューに到着するフロー数が、前記キューに用意さ
    れた到着フロー履歴数よりも多くなったことを検出する
    手段とを備え、 前記キューに到着するフロー数が、前記キューに用意さ
    れた到着フロー履歴数以下の場合には、前記到着フロー
    履歴に登録されているフロー数から推定フロー数を求め
    ることを特徴とするノード装置。
  13. 【請求項13】 請求項4〜8いずれか1項に記載のノ
    ード装置において、前記キューに到着するフロー数が、
    前記キューに用意された到着フロー履歴数以下になった
    ことを検出する手段と、 前記キューに到着するフロー数が、前記キューに用意さ
    れた到着フロー履歴数よりも多くなったことを検出する
    手段とを備え、 前記キューに到着するフロー数が前記キューに用意され
    た到着フロー履歴数以下になった場合には、前記到着フ
    ロー履歴を削減し、 前記キューに到着するフロー数が前記キューに用意され
    た到着フロー履歴数よりも多くなった場合には、前記到
    着フロー履歴を増加することを特徴とするノード装置。
JP2001146028A 2001-05-16 2001-05-16 ノード装置 Expired - Fee Related JP3755420B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001146028A JP3755420B2 (ja) 2001-05-16 2001-05-16 ノード装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001146028A JP3755420B2 (ja) 2001-05-16 2001-05-16 ノード装置

Publications (2)

Publication Number Publication Date
JP2002344500A true JP2002344500A (ja) 2002-11-29
JP3755420B2 JP3755420B2 (ja) 2006-03-15

Family

ID=18991747

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001146028A Expired - Fee Related JP3755420B2 (ja) 2001-05-16 2001-05-16 ノード装置

Country Status (1)

Country Link
JP (1) JP3755420B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005020523A1 (ja) * 2003-08-20 2005-03-03 Nec Corporation セッション中継装置及び中継方法
KR100603584B1 (ko) * 2004-11-16 2006-07-24 삼성전자주식회사 라우터 및 이를 이용한 패킷의 큐 관리 방법
JP2008085692A (ja) * 2006-09-28 2008-04-10 Fujitsu Ltd ベストエフォート帯域の割り当て方法及び装置
JP2009194705A (ja) * 2008-02-15 2009-08-27 Fujitsu Ltd ポリサ装置および帯域制御プログラム
WO2010026767A1 (ja) 2008-09-04 2010-03-11 日本電気株式会社 ノード装置における帯域制御方法および帯域制御装置
JP2019033392A (ja) * 2017-08-08 2019-02-28 日本電信電話株式会社 通信装置及び通信方法
WO2021250762A1 (ja) * 2020-06-08 2021-12-16 日本電信電話株式会社 輻輳制御方法、輻輳制御装置、及び輻輳制御プログラム

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005020523A1 (ja) * 2003-08-20 2005-03-03 Nec Corporation セッション中継装置及び中継方法
US7675898B2 (en) 2003-08-20 2010-03-09 Nec Corporation Session relay apparatus for relaying data, and a data relaying method
KR100603584B1 (ko) * 2004-11-16 2006-07-24 삼성전자주식회사 라우터 및 이를 이용한 패킷의 큐 관리 방법
JP2008085692A (ja) * 2006-09-28 2008-04-10 Fujitsu Ltd ベストエフォート帯域の割り当て方法及び装置
US7911951B2 (en) 2006-09-28 2011-03-22 Fujitsu Limited Best-effort bandwidth allocating method and device
JP4705542B2 (ja) * 2006-09-28 2011-06-22 富士通株式会社 ベストエフォート帯域の割り当て方法及び装置
JP2009194705A (ja) * 2008-02-15 2009-08-27 Fujitsu Ltd ポリサ装置および帯域制御プログラム
WO2010026767A1 (ja) 2008-09-04 2010-03-11 日本電気株式会社 ノード装置における帯域制御方法および帯域制御装置
JP2019033392A (ja) * 2017-08-08 2019-02-28 日本電信電話株式会社 通信装置及び通信方法
WO2021250762A1 (ja) * 2020-06-08 2021-12-16 日本電信電話株式会社 輻輳制御方法、輻輳制御装置、及び輻輳制御プログラム

Also Published As

Publication number Publication date
JP3755420B2 (ja) 2006-03-15

Similar Documents

Publication Publication Date Title
US6519595B1 (en) Admission control, queue management, and shaping/scheduling for flows
US8331242B2 (en) Policing device
US6594268B1 (en) Adaptive routing system and method for QOS packet networks
US8230110B2 (en) Work-conserving packet scheduling in network devices
CA2429151C (en) Congestion management in computer networks
JP4547341B2 (ja) 通信品質制御機能を備えるパケット中継装置
US6757249B1 (en) Method and apparatus for output rate regulation and control associated with a packet pipeline
US7613199B1 (en) Systems and methods for permitting queues to oversubscribe
JPH08331154A (ja) 最大−最小公平割当を行うパケット交換ネットワーク用混雑制御システムおよび方法
US20070121505A1 (en) Providing Proportionally Fair Bandwidth Allocation in Communication Systems
US6985442B1 (en) Technique for bandwidth sharing in internet and other router networks without per flow state record keeping
US8155003B2 (en) Aggregate policing applying max-min fairness for each data source based on probabilistic filtering
US7787469B2 (en) System and method for provisioning a quality of service within a switch fabric
US8929216B2 (en) Packet scheduling method and apparatus based on fair bandwidth allocation
WO2002003612A2 (en) Technique for assigning schedule resources to multiple ports in correct proportions
JP3830937B2 (ja) 高速パケット網のためのパケットスケジューリングシステム及び方法
JP3755420B2 (ja) ノード装置
KR100425061B1 (ko) 에뮬레이티드 가중치화 공평 큐 기술을 이용하는 대역공유 방법 및 장치
JP2001077856A (ja) 通信装置および通信方法、並びに記録媒体
JP3783628B2 (ja) 通信システムにおけるノード装置及びその動作制御方法
US20120127858A1 (en) Method and apparatus for providing per-subscriber-aware-flow qos
JPH10322392A (ja) パケットネットワークシステム及び通信制御装置
JP4118824B2 (ja) 優先パケットの遅延を最小化するシェーピング装置
US20070133561A1 (en) Apparatus and method for performing packet scheduling using adaptation round robin
Zhai et al. Queue Length based Fair Queueing in core-stateless networks

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050301

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050412

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: 20051129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051212

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: 20100106

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110106

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120106

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130106

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130106

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees