JP2004032157A - Packet transmitting method, traffic conditioner, and priority control mechanism - Google Patents

Packet transmitting method, traffic conditioner, and priority control mechanism Download PDF

Info

Publication number
JP2004032157A
JP2004032157A JP2002182737A JP2002182737A JP2004032157A JP 2004032157 A JP2004032157 A JP 2004032157A JP 2002182737 A JP2002182737 A JP 2002182737A JP 2002182737 A JP2002182737 A JP 2002182737A JP 2004032157 A JP2004032157 A JP 2004032157A
Authority
JP
Japan
Prior art keywords
flow
packet
priority
flows
management unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002182737A
Other languages
Japanese (ja)
Inventor
Mikio Shimazu
島津 幹夫
Masayuki Kumazawa
熊澤 雅之
Makoto Matsuoka
松岡 誠
Hiroki Goto
後藤 博喜
Akira Sakai
酒井 章
Ikuji Shimizu
志水 郁二
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2002182737A priority Critical patent/JP2004032157A/en
Priority to US10/600,765 priority patent/US20040125815A1/en
Priority to KR1020030040544A priority patent/KR20040000336A/en
Publication of JP2004032157A publication Critical patent/JP2004032157A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a packet transmission method which avoids deterioration at the same time. <P>SOLUTION: If the sum of the bands of a plurality of flows composed of packets with the same priority level exceeds an assured band shared by these flows, higher priority levels are given to packets belonging to flows having older communication start times than those belonging to newer communication start times in the order of arrival with respect to the communication start time of the flow. A classifier controls token thresholds and a priority control mechanism controls discarding thresholds every flow to utilize them for determining conditions. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、QoS(Quality of Service:サービス品質)保証を行うパケット伝送方法及びその関連技術に関するものである。
【0002】
【従来の技術】
IPネットワークにおける、従来のQoS技術として、IETF(Internet Engineering Task Force)において規定されるDiffServ(RFC2475)がある。
【0003】
次に、図8を用いて、DiffServのアーキテクチャを説明する。ここで、DiffServでは、EF(仮想専用線)クラス、AF(最低帯域保証)クラス、BE(ベストエフォート)クラスという、QoSクラスが、標準として規定されている。
【0004】
また、DiffServでは、品質保証に関する同じルールを適用できる範囲を「DSドメイン」1と呼ぶ。このDSドメイン1は、例えば、ISP(Internet Service Provider)網や企業網等として利用される。
【0005】
そして、DSドメイン1の境界に位置するパケット伝送装置(ルータ、スイッチ、ゲートウェイ等)は、「エッジノード」2、3、4と呼ばれ、DSドメイン1の内部に位置する、パケット伝送装置は、「コアノード」5、6と呼ばれる。
【0006】
エッジノード2、3、4の入力インターフェイスには、DSドメイン1に流入してくるパケット11を監視する、トラフィックコンディショナ(Traffic Conditioner)10が設けられる(図9参照)。
【0007】
このトラフィックコンディショナ10は、MF(Multi−Field)クラシファイア12を持つ。MFクラシファイア12は、流入してくるパケット11のヘッダ情報を見て、どのQoSクラスのパケットか分類し、QoSクラス毎に使用帯域を計測する。
【0008】
そして、MFクラシファイア12は、契約違反の有無に応じて、流入してくるパケット11のDSCP(DiffServ Code Point:優先度に相当)フィールドに、値を設定する。
【0009】
また、コアノード5、6は、図10に示すように、BA(Behavior Aggregate)クラシファイア21を備えた、優先制御機構を持つ。このクラシファイア21は、エッジノード2、3、4で設定された、DSCPの値のみを参照して分類を行い、DSCPの値に応じて、パケット11の転送処理(優先制御)を行う。
【0010】
【発明が解決しようとする課題】
(問題点1)トラフィックコンディショナの関連
従来のDiffServでは、トークンバケツと言う機構を用いて、トラッフィクの計測やDSCPのマーキング(優先度の設定)、パケットの廃棄を行っている。
【0011】
以下、簡単のために、AFクラス(高優先度)とAFクラス以外(低優先度)との、二つのクラスがある場合を例にとり、図9を用いて説明する。
【0012】
図9は、従来のトラフィックコンディショナのブロック図である。このトラフィックコンディショナ10は、エッジノード2、3、4の入力インターフェイスとして使用され、パケット11の監視を行う。
【0013】
ここで、AFクラスでは、契約帯域として最低保証帯域が決められており、MFクラシファイア12は、パケット11がAFクラスのパケットか否かをチェックする。
【0014】
パケット11がAFクラス以外であれば、MFクラシファイア12は、このパケット11に、AFクラス以外のクラスの優先度のマーク(DSCP3)を設定し、トラフィックコンディショナ10の外部へ出力する。
【0015】
パケット11がAFクラスであれば、MFクラシファイア12は、パケット11をトークンバケツ機構を持つ計測優先度設定部13へ出力する。
【0016】
計測優先度設定部13は、所定レートrでトークン15が蓄積される、トークンバッファ14を持つ。計測優先度設定部13は、パケット11を入力すると、そのパケット長と入力時にトークンバッファ14に蓄積されているトークン量を比較する。
【0017】
ここで、トークン量≧パケット長ならば、計測優先度設定部13は、保証帯域内であると判定し、パケット11に高優先度のマーク(DSCP1)を設定し、パケット11をトラフィックコンディショナ10の外部へ出力する。このとき、トークンバッファ14内のトークンは、パケット11のパケット長分、減らされる。
【0018】
一方、トークン量<パケット長ならば、計測優先度設定部13は、保証帯域を超えていると判定し、パケット11に低優先度のマーク(DSCP2)を設定し、パケット11をトラフィックコンディショナ10の外部へ出力する。
【0019】
このように、従来のトラフィックコンディショナ10では、AFクラスのフローが複数ある場合にも、これらのフローを区別することなく、同一の計測優先度設定部13で計測し、同一優先度のフローの合計帯域が、保証帯域内であるか、あるいは、保証帯域をオーバーしているかを、チェックしている。
【0020】
ここで、同一優先度のフローの合計帯域が、保証帯域を超えた場合、複数のAFクラス(高優先度)のフローのうち、保証帯域を超えた分のパケットが、フローの区別なく、DSCP2(低優先度)とマークされてしまう。
【0021】
DSCP2のパケットは、帯域保証されないから、輻輳が発生すると、破棄されてしまう。即ち、どのAFクラスのフローも、区別なく一様に廃棄されるおそれがある。
【0022】
これを現象的に説明すると、つぎのようになる。即ち、複数のユーザが、AFクラスのパケット通信を使用して、映像を受信し、これを見ているような場合、輻輳が発生すると、全てのユーザが見ている映像が、同時に乱れてしまうことになる。
【0023】
(問題点2)優先制御機構の関連
図10は、従来の優先制御機構のブロック図である。図8に示す、コアノード5、6やエッジノード2、3、4の出力インターフェイスとして、図10に示す優先制御機構20が使用される。
【0024】
優先制御機構20は、エッジノード2、3、4でマークされたDSCPによって、パケット11を分類し、DSCPに応じた転送処理(キューイング、スケジューリング)を行う。なお以下、簡単のため、2クラスの場合を説明する。
【0025】
クラシファイア21は、DSCPに基づいて、パケット11が、どのQoSクラスに属するか分類する。
【0026】
クラシファイア21は、クラス1のパケットをキュー22に挿入し、クラス2のパケットを、キュー23へ挿入する。但し、キュー22、23が、パケットで一杯の場合は、パケットは、キュー22、23に挿入されず廃棄される。
【0027】
スケジューラ24は、これらのキュー22、23に関し、PQ(Priority Queuing)やWRR(Weighted Round Robin)等のアルゴリズムに従って、取り出すキューと、送出するパケット量を決定する。そして、この決定に従い、キュー22またはキュー23から、パケットが優先制御機構20の外部へ出力される。
【0028】
ここで、AF(最低帯域保証)クラスのような場合には、輻輳時と非輻輳時とで、スケジューラ24によりサービスされる、パケットレート、即ち、使用可能な帯域が異なる。
【0029】
もし、輻輳時に、契約帯域を超えてしまうと、本来優先されるべき、DSCP2のパケットが、廃棄される事態が発生する。
【0030】
また、パケットの計測と優先度設定(DSCP1やDSCP2等の)は、DSドメインへのパケット入力時に行われ、パケットの発信者に依存している。
【0031】
しかしながら、DSドメイン1を出て行くパケットに関し、受信者の利用帯域に応じた帯域保証を行いたい場合もある。このような場合、発信者のベースでは、DSCP1(高優先度)とマークされたパケットであっても、その総計が受信者の保証帯域を超えると、破棄されてしまう事態が発生する。
【0032】
そこで本発明は、輻輳が発生し、使用可能帯域が減少した場合でも、全てのフローの通信品質が、同時に劣化することを回避できるパケット伝送方法及びその関連技術を提供することを目的とする。
【0033】
【課題を解決するための手段】
請求項1記載のパケット伝送方法では、同一優先度のパケットから構成される、複数のフローが、保証帯域を共用する場合、これらのフローのうち、少なくとも1つのフローに属するパケットの優先度と、これらのフローのうち、この1つのフローとは異なるフローに属するパケットの優先度とに、差を付けて取り扱う。
【0034】
この構成により、フローの優先度に差が付けられるため、相対的に有利になるフローに属するパケットは、廃棄を免れることになり、このフローの通信品質は維持される。その結果、輻輳が発生し、使用可能帯域が減少した場合でも、全てのフローの通信品質が、同時に劣化する事態を回避できる
【0035】
請求項2記載のパケット伝送方法では、フローの通信開始時刻による先着順に従って、優先度に差を付ける。
【0036】
請求項3記載のパケット伝送方法では、同一優先度のパケットから構成される、複数のフローの帯域の和が、これらのフローが共有する保証帯域を超えた場合、フローの通信開始時刻による先着順に従って、通信開始時刻がより古いフローに属するパケットの優先度が、通信開始時刻がより新しいフローに属するパケットの優先度よりも、高い優先度となるように、取り扱う。
【0037】
請求項4記載のパケット伝送方法では、同一優先度のパケットから構成される、複数のフローの帯域の和が、これらのフローが共有する保証帯域を超えた場合、フローの通信開始時刻による先着順に従って、通信開始時刻がより古いフローに属するパケットに、通信開始時刻がより新しいフローに属するパケットよりも、高い優先度を付与する。
【0038】
請求項5記載のパケット伝送方法では、同一優先度のパケットから構成される、複数のフローの帯域の和が、これらのフローが共有する保証帯域を超えた場合、フローの通信開始時刻による先着順に従って、通信開始時刻がより新しいフローに属するパケットを、通信開始時刻がより古いフローに属するパケットよりも、先に廃棄する。
【0039】
これらの構成により、通信開始時刻が早いフローは、有利に扱われることになり、新参のフローにより、古参のフローの品質が劣化することがなく、合理的な通信制御を行える。
【0040】
【発明の実施の形態】
以下、図面を参照しながら、本発明の実施の形態を説明する。
(実施の形態1)
本形態は、エッジノードの入力インターフェイスとして使用され、DSドメインに流入してくるパケットを監視する、トラフィックコンディショナに関する。
【0041】
以下、簡単のために、AFクラス(高優先度)とAFクラス以外(低優先度)との、2つのクラスがある場合を例にとり説明するが、本形態は、3つ以上のクラスがある場合にも、同様に適用できる。
【0042】
図1は、本発明の実施の形態1におけるトラフィックコンディショナのブロック図である。図1に示すように、このトラフィックコンディショナ30は、次の要素を有する。
【0043】
まず、計測優先度設定部32は、トークンを計測し、パケット11の優先度を設定するものであり、所定レートrでトークン35が蓄積される、トークンバッファ34を持つ。
【0044】
MFクラシファイア31は、パケット11を入力し、高優先度のパケット(AFクラス)を、計測優先度設定部32へ出力し、低優先度のパケット(AFクラス以外)を、トラフィックコンディショナ30の外部へ出力する。
【0045】
フロー管理部33は、図2に示すように、フロー毎にトークンパラメータを保持する、フロー管理テーブル40と、このテーブル40から所定のデータを検索したり、このテーブル40に所定のデータを登録したりする、フロー検索登録部41とを有する。
【0046】
本形態では、このテーブル40は、フローNo.、ヘッダ情報、トークン閾値の、3つのフィールドを持ち、フロー毎にデータを管理する。このトークン閾値は、トークンパラメータに相当する値である。トークンパラメータとしては、他に、トークン量に乗ずる係数などがある。
【0047】
図1に示すように、MFクラシファイア31は、パケット11を入力すると、そのヘッダ情報を、フロー情報として、フロー管理部33に出力する。
【0048】
フロー管理部33は、MFクラシファイア33からヘッダ情報を入力すると、フロー検索登録部41とフロー管理テーブル40を用いて、このヘッダ情報に対応するフローの、トークン閾値Aを、計測優先度設定部32へ出力する。
【0049】
計測優先度設定部32は、MFクラシファイア31から、パケット11(AFパケット)を入力すると、そのパケット長と入力時にトークンバッファ14に蓄積されているトークン量を比較する。
【0050】
計測優先度設定部32は、トークンバッファ34のトークン量からフロー管理部33から得た、トークン閾値Aを引いた値(トークンを、フロー管理部33から入力するトークンパラメータにより修正したもの)と、パケット11のパケット長とを、大小比較する。
【0051】
すなわち、(トークンバッファ34の現在のトークン量−トークン閾値A)≧パケット長の場合は、計測優先度設定部32は、保証帯域内として、このパケット11に高優先度のマーク(DSCP1)を付与して出力する。
【0052】
逆に、(トークンバッファ34の現在のトークン量−トークン閾値A)<パケット長の場合は、計測優先度設定部32は、保証帯域をオーバーしているとして、このパケット11に低優先度のマーク(DSCP2)を付与して出力する。
【0053】
なお、(トークンバッファ34の現在のトークン量−トークン閾値A)=パケット長の場合は、上記によらず、保証帯域をオーバーしているとして、低優先度のマーク(DSCP2)を付与して、パケット11を出力するようにしてもよい。
【0054】
ここで、フロー管理部33は、図2に例示しているように、先に開始されたフローから順に小さなトークン閾値を付与する。
【0055】
例えば、フローA、フローB、フローCの順で、3つのフローが、通信開始された場合、フロー管理部33では、これらのフローに対するトークン閾値Ta、Tb、TcがTa<Tb<Tcになるように値を割り当てる。
【0056】
図2の例では、フローNo.1、No.2、No.3の順に通信が開始されているため、これらのトークン閾値は、この順に「0」、「3000」、「6000」となっている。
【0057】
また、フロー管理部33は、一定時間以上パケットが到着しないフローに関しては、フロー管理テーブル40からエントリを削除する。
【0058】
こうすることにより、先に始まったフローほどトークンを獲得しやすくなり、先に始まったフローから優先的にDSCP1(高優先のマーク)が付与される。
【0059】
これにより、ネットワークの輻輳時にDSCP2のパケットが廃棄されるような状況においても、先に始まったフローで、かつ、保証帯域内に収まっているフローに関してはパケットの廃棄が発生せず、輻輳時の全フローにわたるパケット廃棄を防止でき、映像通信の場合での全映像の同時劣化を抑制できる。
【0060】
以上のように、本形態のトラフィックコンディショナによれば、次のようなパケット伝送が実現できる。
【0061】
即ち、QoS保証を行うネットワークにおいて、複数のフロー(同一優先度のパケットからなる)が、保証帯域を共用する場合、あるフローに属するパケットの優先度と、別のフローに属するパケットの優先度とに、差が付けられる。
【0062】
より具体的には、フローの通信開始時刻による先着順に従って、通信開始時刻がより古いフローに属するパケットに、通信開始時刻がより新しいフローに属するパケットよりも、高い優先度が付与される。
【0063】
したがって、通信開始時刻がより新しいフローに属するパケットは、通信開始時刻がより古いフローに属するパケットよりも、先に廃棄されることになる。
【0064】
なお、図1に示すように、計測優先度設定部32は、複数のフローについて、共用されている。ここで、計測優先度設定部32を、フローの数だけ設けることも考えられる。しかし、こうすると、システムリソースの負担が大きい。
【0065】
本形態では、この点を考慮し、トークン閾値という値だけを、図2に示すように、フロー毎に区別して持つことにより、フロー毎に処理を異ならしめることと、システムリソースの負担を軽くすることを、一度に実現している。
【0066】
(実施の形態2)
本形態は、コアノードやエッジノードの出力インターフェイスとして使用される、優先制御機構に関する。この優先制御機構は、エッジノードでマークされたDSCPによって、パケット11を分類し、DSCPに応じた転送処理(キューイング、スケジューリング)を行う。
なお以下、簡単のため、実施の形態1と同様に、2クラスの場合を説明するが、本形態は、3以上のクラスが存在する場合にも、キューの数を増やすなどして、同様に適用できる。
【0067】
図3は、本発明の実施の形態2における優先制御機構のブロック図である。図3に示すように、この優先制御機構50は、次の要素を有する。
【0068】
まず、優先制御機構50は、パケット11の優先度のクラス毎(本例では2クラス)に設けられる複数のキュー53、54を有する。キュー53には、クラス1のパケットが挿入され、キュー54には、クラス2のパケットが挿入される。勿論、後述する廃棄条件が満たされる場合は、パケットはいずれのキューにも挿入されず廃棄される。
【0069】
クラシファイア51は、パケット11を入力し、優先度に従って、クラス1とクラス2とに、パケットを分類する。
【0070】
キュー管理部52は、クラシファイア51が分類したパケットを入力し、パケットに係る廃棄条件が満たされない限り、パケットを、キュー53、54のいずれかに挿入する。
【0071】
スケジューラ55は、PQやWRR等のアルゴリズムに従って、キュー53、54から順次パケットを取り出して、優先制御機構50の外部へ出力する。
【0072】
フロー管理部56は、実施の形態1のフロー管理部33とよく似た構成を持つ。即ち、図4に示すように、フロー管理部56は、フロー管理テーブル57、58と、これらのテーブル57、58から所定のデータを検索したり、これらのテーブル57、58に所定のデータを登録したりする、フロー検索登録部59とを有する。これらのテーブル57、58は、フロー毎に廃棄閾値を、保持する、
【0073】
ここで、本形態では、フロー管理テーブル57、58を、クラス毎に設けたが、情報が交錯しないように留意すれば、1つのテーブルで構成しても良い。
【0074】
また、本形態では、これらのテーブル57、58は、フローNo.、ヘッダ情報、廃棄閾値の、3つのフィールドを持ち、フロー毎にデータを管理する。この廃棄閾値は、廃棄パラメータに相当する値である。廃棄パラメータとしては、他に、キュー長に乗ずる係数などがある。
【0075】
フロー管理部56は、クラシファイア51からヘッダ情報(フロー情報に相当)を入力すると、フロー検索登録部59とフロー管理テーブル57、58を用いて、このヘッダ情報に対応するフローの、廃棄閾値を、キュー管理部52へ出力する。
【0076】
キュー管理部52は、クラシファイア51から受け取ったパケットに対応するクラスの、現在のキュー長と、フロー管理部56から受け取った廃棄閾値とを用いて、次の廃棄条件により、パケットをキューに挿入するか、あるいは、廃棄するかの判定を行う。
【0077】
すなわち、(現在のキュー長+パケット長)>廃棄閾値の場合は該パケットを廃棄し、(現在のキュー長+パケット長)≦廃棄閾値の場合は、該パケットを該当するクラスのキューに挿入する。
【0078】
ここで、フロー管理部56は、図4に例示しているように、早く開始されたフローから順に大きな廃棄閾値を付与する。
【0079】
例えば、フローX、フローY、フローZの順で、3つのフローの通信が、開始された場合、フロー管理部では、これらのフローに対する廃棄閾値がTx、Ty、TzがTx>Ty>Tzになるように値を割り当てある。
【0080】
因みに、図4の例では、クラス1を管理するフロー管理テーブル57につき、フローNo.1が最も先に通信を開始しており、以下、フローNo.2、フローNo.3の順になっている。このため、この順で、廃棄閾値が、「60000」、「55000」、「50000」というように、順に小さくなっている。
【0081】
また、フロー管理部56は、一定時間以上パケットが到着しないフローに関しては、フロー管理テーブル57、58からそのエントリを削除する。
【0082】
こうすることにより、先に始まったフローほど廃棄されにくくなり、先に始まったフローから優先的にキューに挿入され、スケジューラによるサービスを受けられる。
【0083】
これにより、ネットワークの輻輳時にスケジューラでサービスされるレートが減少し、キューにパケットが蓄積していく場合でも、先に始まったフローで、かつ、保証帯域内に収まっているフローのパケットに関しては優先的にキューに挿入され、パケットの廃棄が発生しない。
【0084】
このようにしたので、輻輳時の全フローにわたるパケット廃棄を防止でき、映像通信の場合での全映像の同時劣化を抑制できる。
【0085】
なお、図3に示すように、キュー管理部52は、複数のフローについて、共用されている。ここで、キュー管理部52を、フローの数だけ設けることも考えられる。しかし、こうすると、システムリソースの負担が大きい。
【0086】
本形態では、この点を考慮し、廃棄閾値という値だけを、図4に示すように、フロー毎に区別して持つことにより、フロー毎に処理を異ならしめることと、システムリソースの負担を軽くすることを、一度に実現している。
【0087】
(変形例1)
次に、実施の形態1及び2の変形例を説明する。以下の変形例1〜3は、実施の形態1における図2のフロー管理部33及び実施の形態2におけるフロー管理部56を変形したものであり、実施の形態1における「トークン閾値」を、実施の形態2における「廃棄閾値」と読み替えれば、同様に適用できる。
【0088】
したがって、以下、説明の重複を避けるため、実施の形態1に沿ってのみ説明し、実施の形態2に沿う説明は省略する。
【0089】
図5に示すように、変形例1に係る、フロー管理部60は、一定時間以上通信が継続しているフローのトークン閾値(実施の形態2では廃棄閾値)を、このフローが不利になるように変更する。
【0090】
即ち、フロー管理部60におけるフロー管理テーブル62に、新たに「継続時間」のフィールドを追加し、該当フローが開始されてからの継続時間をフロー管理部60において計測する。
【0091】
継続時間がある一定の時間を超えたフローに関しては、最初に設定されたトークン閾値を、現在フロー管理テーブル62にある一番大きなトークン閾値よりもさらに大きな値に変更する。この結果、このフローは、不利な取り扱いを受けることになる。
【0092】
例えば、図5のフローNo.1は、継続時間が長いので、そのトークン閾値を、現在の値「0」から一番大きなトークン閾値よりも大きな値(例えば、「9000」など)とするものである。
【0093】
これにより、一定時間を経過したフローのパケットは、最もDSCP2(低優先)のマークを設定される可能性が高くなり、先着順で優先的に保護されているフローが、長時間、帯域を占領しつづけることを防止できる。
【0094】
(変形例2)
本例は、変形例1の「継続時間」を、「累積使用量」に変えたものである。
【0095】
図6に示すように、変形例2に係る、フロー管理部70は、累積使用量が一定値以上となるフローのトークン閾値(実施の形態2では廃棄閾値)を、このフローが不利になるように変更する。
【0096】
即ち、フロー管理部70におけるフロー管理テーブル72に、新たに「累積使用量」のフィールドを追加し、該当フローが開始されてからの累積使用量をフロー管理部70において計測する。
【0097】
累積使用量がある一定値を超えたフローに関しては、最初に設定されたトークン閾値を、現在フロー管理テーブル72にある一番大きなトークン閾値よりもさらに大きな値に変更する。この結果、このフローは、不利な取り扱いを受けることになる。
【0098】
例えば、図5のフローNo.1は、累積使用量が多いで、そのトークン閾値を、現在の値「0」から一番大きなトークン閾値よりも大きな値(例えば、「9000」など)とするものである。
【0099】
これにより、累積使用量が一定値を超えたフローのパケットは、最もDSCP2(低優先)のマークを設定される可能性が高くなり、先着順で優先的に保護されているフローが、長時間、帯域を占領しつづけることを防止できる。
【0100】
このように、量で制限することにより、大きな帯域を必要とするフローほど短い時間で制限を受けることになる。
【0101】
(変形例3)
本例は、図7に示すように、フロー毎にタイマーを設け、終了判定する方式に比べて、ハードウェアリソースが少なくて済み、ハードウェアでの実現が容易となるように、フロー管理部80の構成に工夫したものである。
【0102】
即ち、本例による、フロー管理部80は、フロー検索登録部81、フロー管理テーブル82の他に、カウンタ1、2、3を有する。これらのカウンタ1、2、3は、パケットカウンタとして動作する。
【0103】
フロー検索登録部81は、パケットが到着したら該パケットの属するフローのパケットカウンタを0にし、かつ、その他のフローのパケットカウンタを1インクリメントする。
【0104】
これにより、パケットが継続的に到着しているフローに係るカウンタは、パケット到着の都度、0リセットされるが、パケットが全然到着しないフローのカウンタ値は、増加していく。
【0105】
そして、フロー検索登録部81は、パケットカウンタが一定の値になったフローについて、終了したものと判定し、フロー管理テーブル82からそのエントリを削除する。
【0106】
ここで、フロー管理をソフトウェアで行う場合は、フロー毎にタイマーを持ち、一定時間以上パケットの到着がなかったフローに関してはフローが終了したものとして、フロー管理テーブルから削除すれば良い。
【0107】
しかしながら、このようにすると、ハードウエア化しにくい。なぜなら、フローの数は、場合によって、かなり大きなものになる可能性もあり、システムリソースの限界から、多量のタイマーを設けるのは、困難だからである。
【0108】
本形態では、上述のようなカウンタを設けることにより、システムリソースの負担が軽く、しかも、多量のタイマーを設けたのと同等の処理を実現できる。
【0109】
【発明の効果】
本発明によれば、次の効果がある。
輻輳時において、使用可能帯域が減少した場合でも、全フローのパケットが一様に廃棄されることを防止でき、全フローへの通信品質劣化を抑制できる。
【0110】
DiffServ方式の通信品質保証ネットワークにおける最低帯域保証サービスを用いて、複数の映像通信を行うような場合に、輻輳が発生し、使用可能帯域が減少した時でも、全映像の同時画質劣化を防止できる。
【0111】
DiffServ方式をとるか否かに関わらず、一般的な通信品質保証方式において、サービス可能な帯域が変動するようなサービスを用いて、複数の映像通信を行うような場合に、輻輳が発生し、使用可能帯域が減少した時でも、全映像の同時画質劣化を防止できる。
【0112】
先着順で優先的に保護されているフローが、長時間帯域を使用しつづけることを防止することが可能となる。
【0113】
先着順で優先的に保護されているフローが、大きな帯域を使用しつづけることを防止することが可能となる。
【0114】
量で制限をもうけることにより大きな帯域を必要とするフローほど短い時間で制限を受けることになる。
【0115】
フロー毎にタイマーを設け、終了判定する方式に比べて、ハードウェアリソースが少なくて済み、ハードウェアでの実現が容易となる。
【図面の簡単な説明】
【図1】本発明の実施の形態1におけるトラフィックコンディショナのブロック図
【図2】同フロー管理部のブロック図
【図3】本発明の実施の形態2における優先制御機構のブロック図
【図4】同フロー管理部のブロック図
【図5】本発明の変形例1におけるフロー管理部のブロック図
【図6】本発明の変形例2におけるフロー管理部のブロック図
【図7】本発明の変形例3におけるフロー管理部のブロック図
【図8】DiffServアーキテクチャの説明図
【図9】従来のトラフィックコンディショナのブロック図
【図10】従来の優先制御機構のブロック図
【符号の説明】
11 パケット
30 トラフィックコンディショナ
31 MFクラシファイア
32 計測優先度設定部
33、56、60、70、80 フロー管理部
34 トークンバッファ
35 トークン
40、57、58、62、72、82 フロー管理テーブル
41、59、61、71、81 フロー検索登録部
50 優先制御機構
51 クラシファイア
52 キュー管理部
53、54 キュー
55 スケジューラ
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a packet transmission method for guaranteeing quality of service (QoS) and related technology.
[0002]
[Prior art]
As a conventional QoS technology in an IP network, there is DiffServ (RFC2475) defined in the IETF (Internet Engineering Task Force).
[0003]
Next, the architecture of DiffServ will be described with reference to FIG. In DiffServ, QoS classes such as an EF (virtual leased line) class, an AF (minimum bandwidth guarantee) class, and a BE (best effort) class are defined as standards.
[0004]
In DiffServ, a range to which the same rule regarding quality assurance can be applied is referred to as “DS domain” 1. The DS domain 1 is used, for example, as an ISP (Internet Service Provider) network, a corporate network, or the like.
[0005]
The packet transmission devices (routers, switches, gateways, etc.) located at the boundary of DS domain 1 are called “edge nodes” 2, 3, and 4. The packet transmission devices located inside DS domain 1 are: Called "core nodes" 5,6.
[0006]
At the input interfaces of the edge nodes 2, 3, and 4, a traffic conditioner (Traffic Conditioner) 10 that monitors a packet 11 flowing into the DS domain 1 is provided (see FIG. 9).
[0007]
The traffic conditioner 10 has an MF (Multi-Field) classifier 12. The MF classifier 12 looks at the header information of the incoming packet 11, classifies which QoS class the packet belongs to, and measures the used bandwidth for each QoS class.
[0008]
Then, the MF classifier 12 sets a value in a DSCP (DiffServ Code Point: corresponding to priority) field of the incoming packet 11 according to the presence or absence of a contract breach.
[0009]
Also, as shown in FIG. 10, the core nodes 5 and 6 have a priority control mechanism including a BA (Behavior Aggregate) classifier 21. The classifier 21 performs classification by referring to only the DSCP value set by the edge nodes 2, 3, and 4, and performs a transfer process (priority control) of the packet 11 according to the DSCP value.
[0010]
[Problems to be solved by the invention]
(Issue 1) Traffic conditioner related
In the conventional DiffServ, traffic measurement, DSCP marking (priority setting), and packet discarding are performed using a mechanism called a token bucket.
[0011]
Hereinafter, for simplicity, a case where there are two classes, an AF class (high priority) and a class other than the AF class (low priority), will be described with reference to FIG.
[0012]
FIG. 9 is a block diagram of a conventional traffic conditioner. The traffic conditioner 10 is used as an input interface of the edge nodes 2, 3, and 4, and monitors the packet 11.
[0013]
Here, in the AF class, the minimum guaranteed band is determined as the contract band, and the MF classifier 12 checks whether the packet 11 is an AF class packet.
[0014]
If the packet 11 is other than the AF class, the MF classifier 12 sets a priority mark (DSCP3) of a class other than the AF class in the packet 11 and outputs the packet to the outside of the traffic conditioner 10.
[0015]
If the packet 11 is of the AF class, the MF classifier 12 outputs the packet 11 to the measurement priority setting unit 13 having a token bucket mechanism.
[0016]
The measurement priority setting unit 13 has a token buffer 14 in which tokens 15 are stored at a predetermined rate r. Upon input of the packet 11, the measurement priority setting unit 13 compares the packet length with the token amount stored in the token buffer 14 at the time of input.
[0017]
Here, if token amount ≧ packet length, the measurement priority setting unit 13 determines that the packet is within the guaranteed bandwidth, sets a high priority mark (DSCP1) on the packet 11, and sets the packet 11 to the traffic conditioner 10. Output to the outside of. At this time, the token in the token buffer 14 is reduced by the packet length of the packet 11.
[0018]
On the other hand, if the token amount <the packet length, the measurement priority setting unit 13 determines that the bandwidth exceeds the guaranteed bandwidth, sets a low priority mark (DSCP2) on the packet 11, and sets the packet 11 to the traffic conditioner 10. Output to the outside of.
[0019]
As described above, in the conventional traffic conditioner 10, even when there are a plurality of flows of the AF class, these flows are measured by the same measurement priority setting unit 13 without discrimination, and the flows of the flows having the same priority are measured. It is checked whether the total bandwidth is within the guaranteed bandwidth or exceeds the guaranteed bandwidth.
[0020]
Here, when the total bandwidth of the flows of the same priority exceeds the guaranteed bandwidth, the packets exceeding the guaranteed bandwidth among the flows of a plurality of AF classes (high-priority) are distinguished by the DSCP2 without discrimination between the flows. (Low priority).
[0021]
Since DSCP2 packets are not guaranteed for bandwidth, when congestion occurs, they are discarded. That is, there is a possibility that any AF class flow is uniformly discarded without distinction.
[0022]
This can be described phenomenally as follows. That is, when a plurality of users receive and view an image using packet communication of the AF class, if congestion occurs, the images viewed by all users are simultaneously disturbed. Will be.
[0023]
(Issue 2) Related to priority control mechanism
FIG. 10 is a block diagram of a conventional priority control mechanism. The priority control mechanism 20 shown in FIG. 10 is used as an output interface of the core nodes 5 and 6 and the edge nodes 2, 3 and 4 shown in FIG.
[0024]
The priority control mechanism 20 classifies the packet 11 based on the DSCP marked by the edge nodes 2, 3, and 4, and performs transfer processing (queuing and scheduling) according to the DSCP. Hereinafter, the case of two classes will be described for simplicity.
[0025]
The classifier 21 classifies which QoS class the packet 11 belongs to based on the DSCP.
[0026]
The classifier 21 inserts class 1 packets into the queue 22 and class 2 packets into the queue 23. However, when the queues 22 and 23 are full of packets, the packets are discarded without being inserted into the queues 22 and 23.
[0027]
The scheduler 24 determines the queues to be extracted and the amount of packets to be transmitted in accordance with an algorithm such as PQ (Priority Queueing) or WRR (Weighted Round Robin) for these queues 22 and 23. Then, in accordance with this determination, the packet is output to the outside of the priority control mechanism 20 from the queue 22 or the queue 23.
[0028]
Here, in the case of the AF (minimum bandwidth guarantee) class, the packet rate, that is, the usable bandwidth, which is serviced by the scheduler 24 differs between congestion and non-congestion.
[0029]
If the contracted bandwidth is exceeded at the time of congestion, DSCP2 packets, which should be given priority, may be discarded.
[0030]
The measurement of the packet and the setting of the priority (such as DSCP1 and DSCP2) are performed at the time of inputting the packet to the DS domain, and depend on the sender of the packet.
[0031]
However, there may be a case where it is desired to guarantee a band according to a band used by a receiver for a packet going out of the DS domain 1. In such a case, at the sender's base, even if a packet is marked as DSCP1 (high priority), if the sum of the packets exceeds the guaranteed bandwidth of the receiver, a situation occurs in which the packet is discarded.
[0032]
Therefore, an object of the present invention is to provide a packet transmission method and a related technique that can prevent the communication quality of all flows from being simultaneously degraded even when congestion occurs and the available bandwidth decreases.
[0033]
[Means for Solving the Problems]
In the packet transmission method according to the first aspect, when a plurality of flows composed of packets having the same priority share a guaranteed bandwidth, a priority of a packet belonging to at least one of the flows is determined; Among these flows, the priority of a packet belonging to a flow different from this one flow is handled with a difference.
[0034]
According to this configuration, the priority of the flow is made different, so that packets belonging to a flow that becomes relatively advantageous are not discarded, and the communication quality of this flow is maintained. As a result, even when congestion occurs and the available bandwidth decreases, it is possible to avoid a situation in which the communication quality of all flows is simultaneously degraded.
[0035]
In the packet transmission method according to the second aspect, the priority is made different according to the first-come-first-served order based on the communication start time of the flow.
[0036]
In the packet transmission method according to the third aspect, when the sum of the bandwidths of a plurality of flows composed of packets of the same priority exceeds the guaranteed bandwidth shared by these flows, the first-come-first-served basis based on the communication start time of the flows. Is handled so that the priority of the packet belonging to the flow whose communication start time is older is higher than the priority of the packet belonging to the flow whose communication start time is newer.
[0037]
In the packet transmission method according to claim 4, when the sum of the bandwidths of a plurality of flows composed of packets of the same priority exceeds the guaranteed bandwidth shared by these flows, the first-come-first-served basis based on the communication start time of the flows. , A higher priority is given to a packet belonging to a flow whose communication start time is older than a packet belonging to a flow whose communication start time is newer.
[0038]
In the packet transmission method according to the fifth aspect, when the sum of the bandwidths of a plurality of flows composed of packets having the same priority exceeds the guaranteed bandwidth shared by these flows, the first-come-first-served basis based on the communication start time of the flows. , Packets belonging to a flow whose communication start time is newer are discarded before packets belonging to a flow whose communication start time is older.
[0039]
With these configurations, a flow with an earlier communication start time can be advantageously handled, and the new flow can perform reasonable communication control without deteriorating the quality of the old flow.
[0040]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
(Embodiment 1)
The present embodiment relates to a traffic conditioner that is used as an input interface of an edge node and monitors a packet flowing into a DS domain.
[0041]
Hereinafter, for simplicity, a case where there are two classes, an AF class (high priority) and a class other than the AF class (low priority), will be described as an example. In this embodiment, there are three or more classes. The same can be applied to the case.
[0042]
FIG. 1 is a block diagram of a traffic conditioner according to Embodiment 1 of the present invention. As shown in FIG. 1, the traffic conditioner 30 has the following elements.
[0043]
First, the measurement priority setting unit 32 measures a token and sets the priority of the packet 11, and has a token buffer 34 in which tokens 35 are accumulated at a predetermined rate r.
[0044]
The MF classifier 31 receives the packet 11, outputs a high-priority packet (AF class) to the measurement priority setting unit 32, and outputs a low-priority packet (other than the AF class) to the outside of the traffic conditioner 30. Output to
[0045]
As shown in FIG. 2, the flow management unit 33 stores a token parameter for each flow, a flow management table 40, searches for predetermined data from the table 40, and registers predetermined data in the table 40. And a flow search registration unit 41.
[0046]
In the present embodiment, this table 40 stores the flow No. , Header information, and token threshold, and manages data for each flow. This token threshold is a value corresponding to the token parameter. Other examples of the token parameter include a coefficient for multiplying the token amount.
[0047]
As shown in FIG. 1, when the MF classifier 31 receives the packet 11, the MF classifier 31 outputs the header information to the flow management unit 33 as flow information.
[0048]
When the header information is input from the MF classifier 33, the flow management unit 33 uses the flow search registration unit 41 and the flow management table 40 to set the token threshold A of the flow corresponding to the header information to the measurement priority setting unit 32. Output to
[0049]
When the packet 11 (AF packet) is input from the MF classifier 31, the measurement priority setting unit 32 compares the packet length with the token amount stored in the token buffer 14 at the time of input.
[0050]
The measurement priority setting unit 32 calculates a value obtained by subtracting the token threshold A obtained from the flow management unit 33 from the token amount in the token buffer 34 (the token is corrected by the token parameter input from the flow management unit 33), The packet length of the packet 11 is compared in size.
[0051]
That is, if (current token amount of token buffer 34−token threshold A) ≧ packet length, the measurement priority setting unit 32 assigns a high-priority mark (DSCP1) to this packet 11 within the guaranteed band. And output.
[0052]
Conversely, if (current token amount of token buffer 34-token threshold A) <packet length, the measurement priority setting unit 32 determines that the guaranteed bandwidth is exceeded and marks the packet 11 with a low priority. (DSCP2) and output.
[0053]
If (current token amount of token buffer 34-token threshold A) = packet length, regardless of the above, it is determined that the guaranteed bandwidth is exceeded, and a low priority mark (DSCP2) is added. The packet 11 may be output.
[0054]
Here, as illustrated in FIG. 2, the flow management unit 33 assigns a small token threshold in order from the flow started first.
[0055]
For example, when three flows are started in the order of flow A, flow B, and flow C, the flow management unit 33 sets the token thresholds Ta, Tb, and Tc for these flows to Ta <Tb <Tc. Assign values as follows.
[0056]
In the example of FIG. 1, No. 2, No. Since the communication is started in the order of 3, the token thresholds are “0”, “3000”, and “6000” in this order.
[0057]
In addition, the flow management unit 33 deletes an entry from the flow management table 40 for a flow in which a packet does not arrive for a predetermined time or more.
[0058]
By doing so, a token that is more likely to be acquired as the flow starts earlier is assigned DSCP1 (high-priority mark) preferentially from the flow that started earlier.
[0059]
As a result, even in a situation in which DSCP2 packets are discarded during network congestion, packet discard does not occur for flows that have started earlier and that fall within the guaranteed bandwidth, and packet congestion does not occur. Packet discarding over all flows can be prevented, and simultaneous degradation of all images in video communication can be suppressed.
[0060]
As described above, according to the traffic conditioner of the present embodiment, the following packet transmission can be realized.
[0061]
That is, in a network that guarantees QoS, when a plurality of flows (consisting of packets having the same priority) share a guaranteed bandwidth, the priority of a packet belonging to a certain flow and the priority of a packet belonging to another flow are determined. Is given a difference.
[0062]
More specifically, according to the first-come-first-served order based on the communication start time of a flow, a higher priority is given to a packet belonging to a flow whose communication start time is older than a packet belonging to a flow whose communication start time is newer.
[0063]
Therefore, a packet belonging to a flow whose communication start time is newer is discarded before a packet belonging to a flow whose communication start time is older.
[0064]
As shown in FIG. 1, the measurement priority setting unit 32 is shared for a plurality of flows. Here, it is conceivable to provide the measurement priority setting units 32 by the number of flows. However, this imposes a heavy burden on system resources.
[0065]
In this embodiment, in consideration of this point, only the value of the token threshold is separately provided for each flow as shown in FIG. 2, so that processing is different for each flow and the load on system resources is reduced. That is achieved at once.
[0066]
(Embodiment 2)
The present embodiment relates to a priority control mechanism used as an output interface of a core node or an edge node. This priority control mechanism classifies the packet 11 based on the DSCP marked by the edge node, and performs transfer processing (queuing and scheduling) according to the DSCP.
Hereinafter, for simplicity, a case of two classes will be described as in the first embodiment. However, in the present embodiment, even when there are three or more classes, the number of queues is increased and the like. Applicable.
[0067]
FIG. 3 is a block diagram of a priority control mechanism according to Embodiment 2 of the present invention. As shown in FIG. 3, the priority control mechanism 50 has the following elements.
[0068]
First, the priority control mechanism 50 has a plurality of queues 53 and 54 provided for each priority class (two classes in this example) of the packet 11. A class 1 packet is inserted into the queue 53, and a class 2 packet is inserted into the queue 54. Of course, if the discard condition described later is satisfied, the packet is discarded without being inserted into any queue.
[0069]
The classifier 51 receives the packet 11 and classifies the packet into class 1 and class 2 according to the priority.
[0070]
The queue management unit 52 inputs the packet classified by the classifier 51, and inserts the packet into one of the queues 53 and 54 unless the discard condition relating to the packet is satisfied.
[0071]
The scheduler 55 sequentially takes out packets from the queues 53 and 54 according to an algorithm such as PQ or WRR and outputs the packets to the outside of the priority control mechanism 50.
[0072]
The flow management unit 56 has a configuration very similar to the flow management unit 33 of the first embodiment. That is, as shown in FIG. 4, the flow management unit 56 searches the flow management tables 57 and 58 and predetermined data from these tables 57 and 58, and registers predetermined data in these tables 57 and 58. And a flow search registration unit 59. These tables 57 and 58 hold a discard threshold for each flow.
[0073]
Here, in the present embodiment, the flow management tables 57 and 58 are provided for each class. However, if care is taken so that information is not mixed, a single table may be used.
[0074]
In the present embodiment, these tables 57 and 58 store the flow No. , Header information, and a discard threshold, and manages data for each flow. This discard threshold is a value corresponding to the discard parameter. Other discard parameters include a coefficient by which the queue length is multiplied.
[0075]
When the header information (corresponding to the flow information) is input from the classifier 51, the flow management unit 56 uses the flow search / registration unit 59 and the flow management tables 57 and 58 to set the discard threshold of the flow corresponding to the header information, Output to the queue management unit 52.
[0076]
Using the current queue length of the class corresponding to the packet received from the classifier 51 and the discard threshold received from the flow manager 56, the queue management unit 52 inserts the packet into the queue under the following discard condition. Or discard it.
[0077]
That is, if (current queue length + packet length)> discard threshold, the packet is discarded, and if (current queue length + packet length) ≦ discard threshold, the packet is inserted into the queue of the corresponding class. .
[0078]
Here, as illustrated in FIG. 4, the flow management unit 56 assigns a large discard threshold in order from the flow started earlier.
[0079]
For example, when communication of three flows is started in the order of flow X, flow Y, and flow Z, the flow management unit sets the discard thresholds for these flows to Tx, Ty, and Tz such that Tx>Ty> Tz. There is a value to be assigned.
[0080]
Incidentally, in the example of FIG. 4, the flow No. 1 is the first to start the communication. 2, flow No. The order is 3. Therefore, in this order, the discard thresholds are sequentially reduced, such as “60000”, “55000”, and “50000”.
[0081]
In addition, the flow management unit 56 deletes the entry from the flow management tables 57 and 58 for a flow in which a packet does not arrive for a predetermined time or more.
[0082]
By doing so, the flow that started earlier is less likely to be discarded, and the flow that started earlier is preferentially inserted into the queue and can be serviced by the scheduler.
[0083]
As a result, the rate serviced by the scheduler during network congestion decreases, and even if packets accumulate in the queue, priority is given to packets of flows that started earlier and fall within the guaranteed bandwidth. The packet is inserted into the queue and the packet is not dropped.
[0084]
With this configuration, it is possible to prevent packet discarding over all flows at the time of congestion, and to suppress simultaneous deterioration of all images in the case of video communication.
[0085]
Note that, as shown in FIG. 3, the queue management unit 52 is shared by a plurality of flows. Here, it is conceivable to provide as many queue management units 52 as the number of flows. However, this imposes a heavy burden on system resources.
[0086]
In the present embodiment, taking this point into account, as shown in FIG. 4, only the value of the discard threshold is separately provided for each flow, so that processing is different for each flow and the load on system resources is reduced. That is achieved at once.
[0087]
(Modification 1)
Next, modifications of the first and second embodiments will be described. Modifications 1 to 3 below are modifications of the flow management unit 33 of FIG. 2 according to the first embodiment and the flow management unit 56 of the second embodiment. The same applies if the term is replaced with “discard threshold” in the second embodiment.
[0088]
Therefore, in order to avoid repetition, the following description will be made only along the first embodiment, and the description along the second embodiment will be omitted.
[0089]
As illustrated in FIG. 5, the flow management unit 60 according to the first modification sets the token threshold (discard threshold in the second embodiment) of a flow in which communication has continued for a certain period of time or more such that the flow is disadvantageous. Change to
[0090]
That is, a new “duration” field is added to the flow management table 62 in the flow management unit 60, and the duration from the start of the flow is measured by the flow management unit 60.
[0091]
For the flow whose duration exceeds a certain time, the token threshold set first is changed to a value larger than the largest token threshold in the current flow management table 62. As a result, this flow is disadvantageously treated.
[0092]
For example, the flow No. in FIG. The value 1 indicates that the token threshold is changed from the current value “0” to a value larger than the largest token threshold (eg, “9000”) because the duration is long.
[0093]
As a result, a packet of a flow after a lapse of a certain time is most likely to be marked as DSCP2 (low priority), and a flow protected preferentially on a first-come-first-served basis occupies a band for a long time. It can be prevented from continuing.
[0094]
(Modification 2)
In this example, the “duration” of the first modification is changed to “cumulative usage”.
[0095]
As illustrated in FIG. 6, the flow management unit 70 according to the second modification sets a token threshold (discard threshold in the second embodiment) of a flow in which the accumulated usage is equal to or more than a certain value so that the flow becomes disadvantageous. Change to
[0096]
That is, a field of “cumulative usage” is newly added to the flow management table 72 in the flow management unit 70, and the flow management unit 70 measures the cumulative usage since the start of the corresponding flow.
[0097]
For a flow in which the accumulated usage exceeds a certain value, the token threshold set first is changed to a value larger than the largest token threshold in the current flow management table 72. As a result, this flow is disadvantageously treated.
[0098]
For example, the flow No. in FIG. The value 1 indicates that the accumulated threshold value is large, and the token threshold is changed from the current value “0” to a value larger than the largest token threshold (eg, “9000”).
[0099]
As a result, a packet of a flow whose accumulated usage exceeds a certain value is more likely to be marked with the DSCP2 (low priority) mark, and a flow that is preferentially protected on a first-come, first-served basis for a long time. , It is possible to prevent the band from being continuously occupied.
[0100]
In this way, by limiting the amount, a flow requiring a larger bandwidth is limited in a shorter time.
[0101]
(Modification 3)
In this example, as shown in FIG. 7, a timer is provided for each flow, and compared with a method of determining the end, a smaller amount of hardware resources are required, and the flow management unit 80 can be easily implemented by hardware. Is devised in the configuration of FIG.
[0102]
That is, the flow management unit 80 according to the present example has counters 1, 2, and 3 in addition to the flow search and registration unit 81 and the flow management table 82. These counters 1, 2, and 3 operate as packet counters.
[0103]
When a packet arrives, the flow search registration unit 81 sets the packet counter of the flow to which the packet belongs to 0, and increments the packet counters of the other flows by one.
[0104]
As a result, the counter relating to the flow in which packets continuously arrive is reset to 0 each time a packet arrives, but the counter value of the flow in which no packet arrives increases.
[0105]
Then, the flow search registration unit 81 determines that the flow for which the packet counter has reached a certain value has been completed, and deletes the entry from the flow management table 82.
[0106]
Here, when the flow management is performed by software, a timer is provided for each flow, and a flow in which a packet has not arrived for a certain period of time or more may be deleted from the flow management table assuming that the flow has ended.
[0107]
However, this makes it difficult to implement hardware. This is because the number of flows can be quite large in some cases, and it is difficult to provide a large number of timers due to system resource limitations.
[0108]
In this embodiment, by providing the above-described counter, the load on the system resources is reduced, and processing equivalent to providing a large number of timers can be realized.
[0109]
【The invention's effect】
According to the present invention, the following effects can be obtained.
At the time of congestion, even if the usable bandwidth decreases, it is possible to prevent packets of all flows from being uniformly discarded, and to suppress deterioration of communication quality for all flows.
[0110]
Simultaneous image quality degradation of all images can be prevented even when congestion occurs and available bandwidth decreases when performing a plurality of video communications using a minimum bandwidth guarantee service in a DiffServ communication quality assurance network. .
[0111]
Regardless of whether the DiffServ method is used or not, in a general communication quality assurance method, when performing a plurality of video communications using a service in which a serviceable band fluctuates, congestion occurs. Even when the usable bandwidth is reduced, it is possible to prevent simultaneous image quality deterioration of all images.
[0112]
It is possible to prevent a flow that is preferentially protected on a first-come-first-served basis from continuously using a band for a long time.
[0113]
It is possible to prevent flows that are protected with priority on a first-come-first-served basis from continuing to use a large band.
[0114]
By limiting the amount, a flow requiring a larger bandwidth is limited in a shorter time.
[0115]
Compared with a method in which a timer is provided for each flow and the termination is determined, the number of hardware resources is reduced, and realization with hardware becomes easy.
[Brief description of the drawings]
FIG. 1 is a block diagram of a traffic conditioner according to Embodiment 1 of the present invention.
FIG. 2 is a block diagram of the flow management unit.
FIG. 3 is a block diagram of a priority control mechanism according to a second embodiment of the present invention;
FIG. 4 is a block diagram of the flow management unit.
FIG. 5 is a block diagram of a flow management unit according to a first modification of the present invention.
FIG. 6 is a block diagram of a flow management unit according to a second modification of the present invention.
FIG. 7 is a block diagram of a flow management unit according to a third modification of the present invention.
FIG. 8 is an explanatory diagram of a DiffServ architecture.
FIG. 9 is a block diagram of a conventional traffic conditioner.
FIG. 10 is a block diagram of a conventional priority control mechanism.
[Explanation of symbols]
11 packets
30 Traffic Conditioner
31 MF Classifier
32 Measurement priority setting section
33, 56, 60, 70, 80 Flow management unit
34 token buffer
35 tokens
40, 57, 58, 62, 72, 82 Flow management table
41, 59, 61, 71, 81 Flow search registration unit
50 Priority control mechanism
51 Classifier
52 Queue Management Unit
53, 54 queue
55 scheduler

Claims (19)

QoS保証を行うパケット伝送方法であって、
同一優先度のパケットから構成される、複数のフローが、保証帯域を共用する場合、これらのフローのうち、少なくとも1つのフローに属するパケットの優先度と、これらのフローのうち、この1つのフローとは異なるフローに属するパケットの優先度とに、差を付けて取り扱う、パケット伝送方法。
A packet transmission method for QoS guarantee,
When a plurality of flows composed of packets of the same priority share the guaranteed bandwidth, the priority of packets belonging to at least one of the flows and the one of the flows A packet transmission method that handles packets with different priorities belonging to flows different from the above.
フローの通信開始時刻による先着順に従って、優先度に差を付ける、請求項1記載のパケット伝送方法。2. The packet transmission method according to claim 1, wherein the priority is made different according to a first-come-first-served order based on a communication start time of the flow. 同一優先度のパケットから構成される、複数のフローの帯域の和が、これらのフローが共有する保証帯域を超えた場合、フローの通信開始時刻による先着順に従って、通信開始時刻がより古いフローに属するパケットの優先度が、通信開始時刻がより新しいフローに属するパケットの優先度よりも、高い優先度となるように、取り扱う、請求項1から2記載のパケット伝送方法。If the sum of the bandwidths of a plurality of flows composed of packets of the same priority exceeds the guaranteed bandwidth shared by these flows, the flow whose communication start time is older according to the first-come-first-served order based on the flow communication start time The packet transmission method according to claim 1, wherein the priority of the packet to which the packet belongs is set to be higher than the priority of the packet belonging to the flow whose communication start time is newer. 同一優先度のパケットから構成される、複数のフローの帯域の和が、これらのフローが共有する保証帯域を超えた場合、フローの通信開始時刻による先着順に従って、通信開始時刻がより古いフローに属するパケットに、通信開始時刻がより新しいフローに属するパケットよりも、高い優先度を付与する、請求項1から3記載のパケット伝送方法。When the sum of the bandwidths of a plurality of flows composed of packets of the same priority exceeds the guaranteed bandwidth shared by these flows, the flow whose communication start time is older according to the first-come-first-served order based on the communication start time of the flow. 4. The packet transmission method according to claim 1, wherein a higher priority is given to a packet belonging to the packet than to a packet belonging to a flow having a newer communication start time. 同一優先度のパケットから構成される、複数のフローの帯域の和が、これらのフローが共有する保証帯域を超えた場合、フローの通信開始時刻による先着順に従って、通信開始時刻がより新しいフローに属するパケットを、通信開始時刻がより古いフローに属するパケットよりも、先に廃棄する、請求項1から4記載のパケット伝送方法。If the sum of the bandwidths of a plurality of flows composed of packets of the same priority exceeds the guaranteed bandwidth shared by these flows, the flow whose communication start time is newer according to the first-come-first-served order based on the flow's communication start time. The packet transmission method according to claim 1, wherein the belonging packet is discarded earlier than the packet belonging to the flow whose communication start time is older. トークンを計測し、パケットの優先度を設定する計測優先度設定部と、
パケットを入力し、高優先度のパケットを前記計測優先度設定部へ出力し、低優先度のパケットを外部へ出力するMFクラシファイアと、
フロー毎にトークンパラメータを保持するフロー管理部とを備え、
前記フロー管理部は、前記MFクラシファイアからパケットのフロー情報を入力し、このフロー情報に対応するトークンパラメータを前記計測優先度設定部へ出力し、
前記計測優先度設定部は、トークンを、前記フロー管理部から入力するトークンパラメータにより修正したものと、パケットのパケット長とを、大小比較し、比較結果に従って、パケットの優先度を設定する、トラフィックコンディショナ。
A measurement priority setting unit that measures the token and sets the priority of the packet;
An MF classifier that inputs a packet, outputs a high-priority packet to the measurement priority setting unit, and outputs a low-priority packet to the outside;
A flow management unit that holds a token parameter for each flow,
The flow management unit inputs flow information of a packet from the MF classifier, and outputs a token parameter corresponding to the flow information to the measurement priority setting unit;
The measurement priority setting unit compares the size of a token corrected by a token parameter input from the flow management unit with the packet length of a packet, and sets the priority of the packet according to the comparison result. Conditioner.
前記計測優先度設定部は、複数のフローについて、共用される、請求項6記載のトラフィックコンディショナ。The traffic conditioner according to claim 6, wherein the measurement priority setting unit is shared for a plurality of flows. トークンパラメータは、前記計測優先度設定部の修正において、トークンから差し引かれるトークン閾値であり、フロー情報は、パケットのヘッダ情報である請求項6から7記載のトラフィックコンディショナ。The traffic conditioner according to claim 6, wherein the token parameter is a token threshold value subtracted from the token in the modification of the measurement priority setting unit, and the flow information is packet header information. 前記フロー管理部は、フローの通信開始時刻による先着順に従い、より早く通信が開始されたフローが有利になるように、トークンパラメータを設定する、請求項6から8記載のトラフィックコンディショナ。9. The traffic conditioner according to claim 6, wherein the flow management unit sets a token parameter in accordance with a first-come-first-served order based on a communication start time of a flow so that a flow whose communication has started earlier has an advantage. 前記フロー管理部は、一定時間以上通信が継続しているフローのトークンパラメータを、このフローが不利になるように変更する請求項6から9記載のトラフィックコンディショナ。The traffic conditioner according to claim 6, wherein the flow management unit changes a token parameter of a flow for which communication has continued for a predetermined time or more so that the flow is disadvantageous. 前記フロー管理部は、累積使用量が一定量を超えたフローのトークンパラメータを、このフローが不利になるように変更する請求項6から9記載のトラフィックコンディショナ。The traffic conditioner according to claim 6, wherein the flow management unit changes a token parameter of a flow whose accumulated usage exceeds a predetermined amount so that the flow is disadvantageous. 前記フロー管理部は、フロー毎にパケットカウンタを有し、パケット到着毎に該当フローのパケットカウンタをゼロにし、それ以外のフローのパケットカウンタを1インクリメントし、パケットカウンタが一定の値を越えたフローについて、管理を終了する請求項6から11記載のトラフィックコンディショナ。The flow management unit has a packet counter for each flow, sets the packet counter of the corresponding flow to zero each time a packet arrives, increments the packet counter of the other flows by one, and sets the packet counter of a flow exceeding a certain value. 12. The traffic conditioner according to claim 6, wherein the management of the traffic conditioner is ended. パケットの優先度のクラス毎に設けられる複数のキューと、
パケットを入力し、優先度に従ってパケットを分類するクラシファイアと、
前記クラシファイアが分類したパケットを入力し、パケットに係る廃棄条件が満たされない限り、パケットを、前記複数のキューのいずれかに挿入するキュー管理部と、
フロー毎に廃棄パラメータを保持するフロー管理部とを備え、
前記フロー管理部は、前記クラシファイアからパケットのフロー情報を入力し、このフロー情報に対応する廃棄パラメータを前記キュー管理部へ出力し、
廃棄条件は、パケットのパケット長と、このパケットに係るキューのキュー長と、このパケットに係るフローの廃棄パラメータとに基づいて定められる、優先制御機構。
A plurality of queues provided for each class of packet priority;
A classifier that enters packets and classifies them according to priority;
A queue management unit that inputs a packet classified by the classifier and inserts the packet into any of the plurality of queues, unless a discard condition relating to the packet is satisfied.
A flow management unit that holds a discard parameter for each flow,
The flow management unit inputs flow information of a packet from the classifier, outputs a discard parameter corresponding to the flow information to the queue management unit,
A priority control mechanism, wherein the discard condition is determined based on a packet length of the packet, a queue length of a queue related to the packet, and a discard parameter of a flow related to the packet.
廃棄条件は、パケットのパケット長と、このパケットに係るキューのキュー長との和が、廃棄パラメータより大であるとき、このパケットを廃棄することを示すものである、請求項13記載の優先制御機構。14. The priority control according to claim 13, wherein the discard condition indicates that when the sum of the packet length of the packet and the queue length of the queue related to the packet is larger than the discard parameter, the packet is discarded. mechanism. 前記キュー管理部は、複数のフローについて、共用される、請求項13から14記載の優先制御機構。15. The priority control mechanism according to claim 13, wherein the queue management unit is shared for a plurality of flows. 前記フロー管理部は、フローの通信開始時刻による先着順に従い、より早く通信が開始されたフローが有利になるように、廃棄パラメータを設定する、請求項13から15記載の優先制御機構。16. The priority control mechanism according to claim 13, wherein the flow management unit sets a discard parameter in accordance with a first-come-first-served basis based on a communication start time of a flow so that a flow whose communication has started earlier has an advantage. 前記フロー管理部は、一定時間以上通信が継続しているフローの廃棄パラメータを、このフローが不利になるように変更する請求項13から16記載の優先制御機構。17. The priority control mechanism according to claim 13, wherein the flow management unit changes a discard parameter of a flow for which communication has been continued for a predetermined time or more so that the flow is disadvantageous. 前記フロー管理部は、累積使用量が一定量を超えたフローの廃棄パラメータを、このフローが不利になるように変更する請求項13から17記載の優先制御機構。18. The priority control mechanism according to claim 13, wherein the flow management unit changes a discard parameter of a flow whose accumulated usage exceeds a certain amount so that the flow is disadvantageous. 前記フロー管理部は、フロー毎にパケットカウンタを有し、パケット到着毎に該当フローのパケットカウンタをゼロにし、それ以外のフローのパケットカウンタを1インクリメントし、パケットカウンタが一定の値を越えたフローについて、管理を終了する請求項13から18記載の優先制御機構。The flow management unit has a packet counter for each flow, sets the packet counter of the corresponding flow to zero each time a packet arrives, increments the packet counter of the other flows by one, and sets the packet counter of a flow exceeding a certain value. 19. The priority control mechanism according to claim 13, wherein management of the priority control is terminated.
JP2002182737A 2002-06-24 2002-06-24 Packet transmitting method, traffic conditioner, and priority control mechanism Pending JP2004032157A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2002182737A JP2004032157A (en) 2002-06-24 2002-06-24 Packet transmitting method, traffic conditioner, and priority control mechanism
US10/600,765 US20040125815A1 (en) 2002-06-24 2003-06-23 Packet transmission apparatus and method thereof, traffic conditioner, priority control mechanism and packet shaper
KR1020030040544A KR20040000336A (en) 2002-06-24 2003-06-23 Packet transmitting apparatus, packet transmitting method, traffic conditioner, priority controlling mechanism, and packet shaper

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002182737A JP2004032157A (en) 2002-06-24 2002-06-24 Packet transmitting method, traffic conditioner, and priority control mechanism

Publications (1)

Publication Number Publication Date
JP2004032157A true JP2004032157A (en) 2004-01-29

Family

ID=31179152

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002182737A Pending JP2004032157A (en) 2002-06-24 2002-06-24 Packet transmitting method, traffic conditioner, and priority control mechanism

Country Status (1)

Country Link
JP (1) JP2004032157A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008520141A (en) * 2004-11-15 2008-06-12 フランス テレコム Method and apparatus for ordering packets for routing in a network with indirect determination of packets to be treated with priority
JP2015002481A (en) * 2013-06-17 2015-01-05 富士通株式会社 Packet transmitter, packet transmission method, and packet transmission program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008520141A (en) * 2004-11-15 2008-06-12 フランス テレコム Method and apparatus for ordering packets for routing in a network with indirect determination of packets to be treated with priority
JP4762996B2 (en) * 2004-11-15 2011-08-31 フランス・テレコム Method and apparatus for ordering packets for routing in a network with indirect determination of packets to be treated with priority
JP2015002481A (en) * 2013-06-17 2015-01-05 富士通株式会社 Packet transmitter, packet transmission method, and packet transmission program

Similar Documents

Publication Publication Date Title
EP1249103B1 (en) Domain based congestion management
US20040125815A1 (en) Packet transmission apparatus and method thereof, traffic conditioner, priority control mechanism and packet shaper
EP2823610B1 (en) Signalling congestion
US6826147B1 (en) Method and apparatus for aggregate flow control in a differentiated services network
Parris et al. Lightweight active router-queue management for multimedia networking
KR20060064661A (en) Flexible admission control for different traffic classes in a communication network
EP2575303A1 (en) Determining congestion measures
WO2007126627A1 (en) Differentiated services using weighted quality of service (qos)
Andelman et al. Competitive management of non-preemptive queues with multiple values
KR20020079904A (en) Unified algorithm for frame scheduling and buffer management in differentiated services networks
Bechler et al. Traffic shaping in end systems attached to QoS-supporting networks
Lakkakorpi et al. Adaptive connection admission control for differentiated services access networks
JP2004032157A (en) Packet transmitting method, traffic conditioner, and priority control mechanism
Chaudhuri et al. Validation of a DiffServ based QoS model implementation for real-time traffic in a test bed
Koucheryavy et al. A top-down approach to VoD traffic transmission over DiffServ domain using AF PHB class
Giacomazzi et al. Transport of TCP/IP traffic over assured forwarding IP-differentiated services
Bodamer A scheduling algorithm for relative delay differentiation
Nakayama et al. N Rate ${\rm N}+ 1$ Color Marking: Per-Flow Fairness in Ring Aggregation Networks
KR100475783B1 (en) Hierarchical prioritized round robin(hprr) scheduling
Coelho Implementation of Advanced Mechanisms for Cross-Protect Router
Lipu et al. Quality of service model selection criteria and traffic controlling algorithm of a native IP Network for telecommunication services
JP2004166080A (en) Packet shaper and packet relaying device
Chimento Tutorial on QoS support for IP
JP3583711B2 (en) Bandwidth control device and method
Sato et al. Configuration rule and performance evaluation for DiffServ parameters