(57)【要約】【課題】本発明は大規模な制御装置を設けることなく網内経路を把握するとともに、パケットのヘッダ情報量を過大にすることなく網レベルで有効なパケット品質制御が可能なパケット転送制御方法を提供することを目的とする。【解決手段】パケットのヘッダ内にアプリケーションの種別を表す種別情報を格納し、前記パケットが通信網上の各経由地点を通過する際に、既に通過した網内の経路を反映した経路情報を前記パケットのヘッダ内に書き込み、通信品質の制御のために通過する前記パケットの優先度を決定する際に、前記パケットのヘッダ内に保持されている前記種別情報と前記経路情報とに基づいてパケット毎に優先度を決定するとともに、複数種類の関数を予め用意しておき、当該パケットの前記種別情報に応じて１つの関数を選択し、選択された関数に前記経路情報を代入して優先度を決定する。【選択図】　　　図１
2004104571.tif 000002
【特許請求の範囲】
【請求項１】
優先度に応じた通信品質を実現する通信品質制御機能を含む任意の通信網を介して送信端末から受信端末にパケットを転送するためのパケット転送制御方法において、
パケットのヘッダ内に、当該パケットを利用しているアプリケーションの種別を表す種別情報を格納し、
前記パケットが通信網上の各経由地点を通過する際に、既に通過した網内の経路を反映した経路情報を前記パケットのヘッダ内に書き込み、
通信品質の制御のために通過する前記パケットの優先度を決定する際に、前記パケットのヘッダ内に保持されている前記種別情報と前記経路情報とに基づいてパケット毎に優先度を決定するとともに、複数種類の関数を予め用意しておき、当該パケットの前記種別情報に応じて１つの関数を選択し、選択された関数に前記経路情報を代入して優先度を決定する
ことを特徴とするパケット転送制御方法。
【請求項２】
請求項１のパケット転送制御方法において、優先度の算出に利用される前記関数として、単調非減少の多項式で表現される関数を用いることを特徴とするパケット転送制御方法。
【請求項３】
請求項１又は請求項２のパケット転送制御方法において、前記パケットが通信網上の各経由地点を通過する際に、既に通過した網内の経路の経由地点数に相当する整数値を経路情報として前記パケットのヘッダ内に書き込むことを特徴とするパケット転送制御方法。
【請求項４】
請求項１又は請求項２のパケット転送制御方法において、
前記パケットが通信網上の各経由地点を通過する際に、前記パケットの種別情報が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、前記パケットの経路情報の値を予め定めた値だけ更新し、既に通過した網内の経路の経由地点数を反映した整数値を前記経路情報とする
ことを特徴とするパケット転送制御方法。
【請求項５】
請求項１又は請求項２のパケット転送制御方法において、
前記パケットが通信網上の各経由地点を通過する際に、パケット毎に生成した乱数を適用し、前記パケットの種別情報に応じて決定される閾値と前記乱数とを比較し、比較の結果が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、前記パケットの経路情報の値を予め定めた値だけ更新し、既に通過した網内の経路の経由地点数を反映した整数値を前記経路情報とする
ことを特徴とするパケット転送制御方法。
【請求項６】
請求項１又は請求項２のパケット転送制御方法において、
前記パケットが通信網上の各経由地点を通過する際に、パケット毎にそのヘッダ情報とハッシュ関数とを用いてハッシュ値を算出し、前記パケットの種別情報に応じて決定される閾値と前記ハッシュ値とを比較し、比較の結果が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、前記パケットの経路情報の値を予め定めた値だけ更新し、既に通過した網内の経路の経由地点数を反映した整数値を前記経路情報とする
ことを特徴とするパケット転送制御方法。
【請求項７】
請求項６のパケット転送制御方法において、同一の呼が利用する全てのパケットに共通の情報を前記パケットのヘッダから抽出して前記ハッシュ値の算出の際に利用することを特徴とするパケット転送制御方法。
【請求項８】
請求項１，請求項２，請求項３，請求項４，請求項５，請求項６及び請求項７のいずれかのパケット転送制御方法において、
パケットが通過する経由地点からの出力方路が複数存在する場合に、各出力方路に向かうパケットに対する優先度を算出する際に、出力方路の違いに応じて互いに異なる計算を行う
ことを特徴とするパケット転送制御方法。
【請求項９】
請求項１，請求項２，請求項３，請求項４，請求項５，請求項６及び請求項７のいずれかのパケット転送制御方法において、
パケットが通過する経由地点からの出力方路が複数存在する場合に、各出力方路に向かうパケットの経路情報を更新する際に、出力方路の違いに応じて互いに異なる更新条件を適用する
ことを特徴とするパケット転送制御方法。
【請求項１０】
任意の通信網上の経由地点で、入力されるパケットを優先度に応じて処理し出力するパケット転送制御装置において、
入力されたパケットが既に通過した網内の経路を反映した経路情報を前記パケットのヘッダ内に書き込む経路情報生成手段と、
予め用意された複数種類の関数を保持する関数保持手段と、
パケットのヘッダ内に、当該パケットを利用しているアプリケーションの種別を表す種別情報が含まれている場合に、前記パケットの種別情報と、前記経路情報とに基づいてパケット毎に優先度を決定するとともに、当該パケットの前記種別情報に応じて１つの関数を選択し、選択された関数に前記経路情報を代入して優先度を決定する優先度算出手段と
を設けたことを特徴とするパケット転送制御装置。
【請求項１１】
請求項１０のパケット転送制御装置において、
前記経路情報生成手段は、通過するパケットのヘッダ内に書き込まれている経路情報の値を１単位だけ更新する
ことを特徴とするパケット転送制御装置。
【請求項１２】
請求項１０のパケット転送制御装置において、
前記経路情報生成手段は、前記パケットの種別情報が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、通過するパケットのヘッダ内に書き込まれている経路情報の値を１単位だけ更新する
ことを特徴とするパケット転送制御装置。
【請求項１３】
請求項１０のパケット転送制御装置において、
前記経路情報生成手段は、通過するパケット毎に生成した乱数を適用し、前記パケットの種別情報に応じて決定される閾値と前記乱数とを比較し、比較の結果が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、通過するパケットのヘッダ内に書き込まれている経路情報の値を１単位だけ更新する
ことを特徴とするパケット転送制御装置。
【請求項１４】
請求項１０のパケット転送制御装置において、
前記経路情報生成手段は、通過するパケット毎にそのヘッダ情報とハッシュ関数とを用いてハッシュ値を算出し、前記パケットの種別情報に応じて決定される閾値と前記ハッシュ値とを比較し、比較の結果が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、通過するパケットのヘッダ内に書き込まれている経路情報の値を１単位だけ更新する
ことを特徴とするパケット転送制御装置。
【請求項１５】
請求項１４のパケット転送制御装置において、
前記経路情報生成手段は、同一の呼が利用する全てのパケットに共通の情報を前記パケットのヘッダから抽出して前記ハッシュ値の算出の際に利用する
ことを特徴とするパケット転送制御装置。
【請求項１６】
請求項１０のパケット転送制御装置において、
前記優先度算出手段は、パケットの出力方路が複数存在する場合に、各出力方路に向かうパケットに対する優先度を算出する際に、出力方路の違いに応じて互いに異なる計算を行う
ことを特徴とするパケット転送制御装置。
【請求項１７】
請求項１０のパケット転送制御装置において、
前記経路情報生成手段は、パケットの出力方路が複数存在する場合に、各出力方路に向かうパケットの経路情報を更新する際に、出力方路の違いに応じて互いに異なる更新条件を適用する
ことを特徴とするパケット転送制御装置。
【請求項１８】
任意の通信網上の経由地点で、入力されるパケットを優先度に応じて処理し出力する装置のコンピュータを制御するためのソフトウェアにおいて、
入力されたパケットが既に通過した網内の経路を反映した経路情報を前記パケットのヘッダ内に書き込む経路情報生成手順と、
予め用意された複数種類の関数の情報と、
パケットのヘッダ内に、当該パケットを利用しているアプリケーションの種別を表す種別情報が含まれている場合に、前記パケットの種別情報と、前記経路情報とに基づいてパケット毎に優先度を決定するとともに、当該パケットの前記種別情報に応じて１つの関数を選択し、選択された関数に前記経路情報を代入して優先度を決定する優先度算出手順と
を設けたことを特徴とするソフトウェア。
【請求項１９】
請求項１８のソフトウェアにおいて、
前記経路情報生成手順では、通過するパケットのヘッダ内に書き込まれている経路情報の値を、無条件に、もしくは所定の条件を満たす場合に限り、１単位だけ更新する
ことを特徴とするソフトウェア。
【請求項２０】
請求項１８又は請求項１９のソフトウェアを記録したコンピュータで読みとり可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パケット転送制御方法及び装置並びにソフトウェアに関し、例えばマルチメディア通信網上でパケットを転送する際に呼の通信品質を制御するために利用される。
【０００２】
【従来の技術】
ＩＰ網に代表されるパケット転送型の通信網においては、それぞれの呼が利用できる通信の品質、すなわち伝送帯域や遅延時間を保証しない、いわゆるベストエフォート型のサービスが最近では主流になっている。
ベストエフォート型のサービスにおいては、伝送帯域を全ての呼が共有するため、同時に接続している呼の数が少なければ１呼あたりの利用可能な帯域は大きくなるが、逆に同時に接続している呼の数が多ければ、１呼あたりの利用可能な帯域は小さくなる。
【０００３】
そのため、ベストエフォート型のサービスは通信の品質という意味では安定しているとはいえないが、電話網に代表されるような、それぞれの呼に帯域を固定的に割り当てる回線交換型の通信網に比べて伝送帯域の有効利用が図れるため、結果として通信料金を引き下げることができるというメリットを持っていた。
【０００４】
しかしながら、インターネット通信の隆盛に伴い、パケット転送型の通信網で扱うサービスも、従来の単純なデータ転送に留まらず、音声や映像を含むリアルタイム型アプリケーションや、オンラインショッピングのためのクレジットカード番号に代表されるようなセキュリティを必要とする通信など多様化しているのが実状である。従って、それぞれの通信サービスには個別に満たすべき品質要求が存在する場合も多い。
【０００５】
このような状況に対応するため、近年のパケット転送型の通信網では、それぞれの呼が利用するアプリケーションや要求品質に関する情報を利用し、網内の各ノード装置においてそれらの情報に基いたパケット制御を行うことが提案されている。
最も基本的な制御方式としては、パケットのヘッダ内にそのパケットが受けたいサービスのクラスを記述しておき、網内の各ノード装置がそのクラス情報を読み出し、クラス毎の優先順位に基いてパケットを処理する方式があり、具体的な例としては、Ｄｉｆｆｅｒｅｎｃｉａｔｅｄ　Ｓｅｒｖｉｃｅ（ＤｉｆｆＳｅｒｖ、非特許文献１）がある。
【０００６】
ＤｉｆｆＳｅｒｖでは、網の入り口においてヘッダ内のＤＳ（ＤｉｆｆｅｒｅｎｃｉａｔｅｄＳｅｒｖｉｃｅｓ）フィールドにクラス情報を書き込み、網内の各ノードではこのＤＳフィールド情報に応じてパケットの処理方法を決定する。
このような方法は、ノード装置での処理は比較的軽負荷で済むため、スケーラビリティの面で有利である。しかしながら、パケットに与えられるクラス情報は固定的な場合がほとんどであり、優先順位の高いパケットが大量にノードに入力され続けた場合には、より優先順位の低いパケットはいつまでたってもサービスを受けられず、結果として要求品質を満足できなくなる場合がある。
【０００７】
上記のような、優先順位の低いパケットの品質劣化を回避する手段として、ダイナミックプライオリティと呼ばれる優先順位の制御方法が提案されている。
例えば、Ｋｌｅｉｎｒｏｃｋ（非特許文献２）は、パケットがノードに到着してからの経過時間Ｔと、そのパケットのアプリケーションによって定められる定数Ａの積（Ｔ×Ａ）をそのパケットの緊急度と定義し、緊急度の値が大きいもの（＝優先順位の高いもの）から順番に処理する方法を提案した。
【０００８】
また、Ｃｈａｕｄｈｒｙら（非特許文献３）は更に、アプリケーション毎に定められた第２の定数Ｂを導入し、（Ｂ−Ｔ×Ａ）の値が小さいパケットを優先する方法を提案している。
また、Ｌｉｍら（非特許文献４）は、ノードにおいて許容できる遅延時間に基いてパケットをクラス分けし、クラスが上位のパケットから順番に処理するＨＯＬ（Ｈｅａｄ−Ｏｆ−Ｌｉｎｅ）方式のサービス規律を改良し、一定の待ちを経験したパケットは上位クラスに変更できるＨＯＬ−ＰＪ（ＨＯＬ　ｗｉｔｈ　Ｐｒｉｏｒｉｔｙ　Ｊｕｍｐｓ）方法を提案した。
【０００９】
これらの方法では、パケットのあるノードにおける滞在時間が長くなると、そのパケットの優先度が上がり、結果として早めに処理されやすくなるという特徴をもっている。
従って、優先順位が元々低く定められているパケットであっても、ある程度の時間が経過すればサービスが保証される。これらダイナミックプライオリティによりパケットの優先順位を動的に制御する方法を用いる場合、１つ１つのノード装置での滞在時間についての保証が得られる。
【００１０】
しかしながら、通信を利用する呼にとっては、１箇所のノード装置における品質よりも網レベル（網全体）での品質の方が重要である。
網レベルの品質を意識した制御としては、（非特許文献５）の技術が知られている。すなわち、Ｃｈｅｎらはパケットに網内での総滞在時間を記憶させ、総滞在時間が長いものから各ノード装置で優先的に処理する方法（ＯＣＦ，Ｏｌｄｅｓｔ　Ｃｕｓｔｍｅｒ　Ｆｉｒｓｔ）を提案している。
【００１１】
また、Ｋａｎｄｈｌｕｒら（非特許文献６）やＷａｎｇら（非特許文献７）は、Ｅｎｄ−ｔｏ−Ｅｎｄの許容遅延時間を、網内の経由ノードにそれぞれ配分し、各ノードでは配分された許容遅延時間が短いパケットから優先的に処理する方法を提案している。
また、Ｓｉｒｉｗｏｎｇら（非特許文献８）は同一の技術を更に押し進め、既に経由したノードで経験した待ち時間の値を反映して、次段以降のノード装置での配分値を補正できるように改良している。
【非特許文献１】
Ｓ．　Ｂｌａｋｅ　ｅｔ　ａｌ，　“Ａｎ　ａｒｃｈｉｔｅｃｔｕｒｅ　ｆｏｒ　ｄｉｆｆｅｒｅｎｔｉａｔｅｄ　ｓｅｒｖｉｃｅｓ，”ＩＥＴＦ　ＲＦＣ２４７５，　１９９８．
【非特許文献２】
Ｌ．　Ｋｌｅｉｎｒｏｃｋ，　“Ｑｕｅｕｅｉｎｇ　ｓｙｓｔｅｍｓ，”ｖｏｌ．２ｍ　Ｎｅｗ　Ｙｏｒｋ，　Ｗｉｌｅｙ，　１９７５．
【非特許文献３】
Ｓ．　Ｃｈａｕｄｈｒｙ　ａｎｄ　Ａ．　Ｃｈｏｕｄｈａｒｙ，“Ｔｉｍｅ　ｄｅｐｅｎｄｅｎｔ　ｐｒｉｏｒｉｔｙ　ｓｃｈｅｄｕｌｉｎｇ　ｆｏｒ　ｇｕａｒａｎｔｅｅｄ　ＱｏＳ　ｓｙｓｔｅｍｓ，”Ｐｒｏｃｅｅｄｉｎｇｓ．，　Ｓｉｘｔｈ　Ｉｎｔｅｒｎａｔｉｏｎａｌ　Ｃｏｎｆｅｒｅｎｃｅ　ｏｎ　Ｃｏｍｐｕｔｅｒ　Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ　ａｎｄ　Ｎｅｔｗｏｒｋｓ，　ｐｐ．　２３６−２４１，　１９９７．
【非特許文献４】
Ｙ．　Ｌｉｍ　ａｎｄ　Ｌ．　Ｅ．　Ｋｏｂｚａ，“Ａｎａｌｙｓｉｓ　ｏｆ　ａ　ｄｅｌａｙ−ｄｅｐｅｎｄｅｎｔ　ｐｒｉｏｒｉｔｙ　ｄｉｓｃｉｐｌｉｎｅ　ｉｎ　ａｎ　ｉｎｔｅｇｒａｔｅｄ　ｍｕｌｔｉｃｌａｓｓ　ｔｒａｆｆｉｃ　ｆａｓｔ　ｐａｃｋｅｔ　ｓｗｉｔｃｈ，”ＩＥＥＥ　Ｔｒａｎｓａｃｔｉｏｎｓ　ｏｎ　Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ，　Ｖｏｌ．３８，　Ｎｏ．　５．　ｐｐ．６５９−６６５，　Ｍａｙ　１９００．
【非特許文献５】
Ｔ．　Ｍ．　Ｃｈｅｎ，　Ｊ．　Ｗａｌｒａｎｄ　ａｎｄ　Ｄ．　Ｇ．　Ｍｅｓｓｅｒｓｃｈｍｉｔｔ，“Ｄｙｎａｍｉｃ　ｐｒｉｏｒｉｔｙ　ｐｒｏｔｏｃｏｌｓ　ｆｏｒ　ｐａｃｋｅｔ　ｖｏｉｃｅ，”ＩＥＥＥ　Ｊｏｕｒｎａｌ　ｏｎ　Ｓｅｌｅｃｔｅｄ　Ａｒｅａｓ　ｉｎ　Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ，Ｖｏｌ．７，　Ｎｏ．　５，　ｐｐ．１０４４−１０５６，　Ｏｃｔ．１９９４．
【非特許文献６】
Ｄ．　Ｄ．　Ｋａｎｄｈｌｕｒ，　Ｈ．　Ｇ．　Ｓｈｉｎ　ａｎｄ　Ｄ．　Ｆｅｒｒａｒｉ，　“Ｒｅａｌ−ｔｉｍｅ　ｃｏｍｍｕｎｉｃａｔｉｏｎ　ｉｎ　ｍｕｌｔｉｈｏｐ　ｎｅｔｗｏｒｋｓ，”ＩＥＥＥ　Ｔｒａｎｓａｔｉｏｎｓ　ｏｎ　Ｐａｒａｌｌｅｌ　ａｎｄ　Ｄｉｓｔｒｉｂｕｔｅｄ　Ｓｙｓｔｅｍｓ，　Ｖｏｌ．５，　Ｎｏ．１０，　ｐｐ．　１０４４−１０５６，　Ｏｃｔ．　１９９４．
【非特許文献７】
Ｓ．　Ｗａｎｇ，　Ｄ．　Ｘｕａｎ，　Ｒ．　Ｂｅｔｔａｔｉ　ａｎｄ　Ｗ．　Ｚｈａｏ，“Ｐｒｏｖｉｄｉｎｇ　ａｂｓｏｌｕｔｅ　ｄｉｆｆｅｒｅｎｔｉａｔｅｄ　ｓｅｒｖｉｃｅｓ　ｆｏｒ　ｒｅａｌ−ｔｉｍｅ　ａｐｐｌｉｃａｔｉｏｎｓ　ｉｎ　ｓｔａｔｉｃ−ｐｒｉｏｒｉｔｙ　ｓｃｈｅｄｕｌｉｎｇ　ｎｅｔｗｏｒｋｓ，”ＩＥＥＥ　ＩＮＦＯＣＯＭ　２００１，　Ｖｏｌ．２，　ｐｐ．　６６９−６７８，　２００１．
【非特許文献８】
Ｋ．　Ｓｉｒｉｗｏｎｇ　ａｎｄ　Ｒ．　Ａｍｍａｒ，　“ＱｏＳ　ｕｓｉｎｇ　ｄｅｌａｙ−ｓｙｎｃｈｒｏｎｉｚｅｄ　ｄｙｎａｍｉｃ　ｐｒｉｏｒｉｔｙ　ｓｃｈｅｄｕｌｉｎｇ，”Ｐｒｏｃｅｅｄｉｎｇｓ．　Ｓｉｘｔｈ　ＩＥＥＥ　Ｓｙｍｐｏｓｉｕｍ　ｏｎ　Ｃｏｍｐｕｔｅｒｓ　ａｎｄ　Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ　２００１，　ｐｐ．　２７６−２８１，　２００１．
【００１２】
【発明が解決しようとする課題】
従来技術における１つの問題は、事前にパケットが転送される網内経路を把握できることを前提としている点である。
【００１３】
例えば、（非特許文献６〜８）においては、網内経路情報は既知であるとし、その情報に基づいて各ノードでの品質配分を決定している。しかしながら、一般にパケット通信網では、通信開始時点では必ずしも経路が確定できないため、パケットが経由していくノード装置の数を把握することは容易ではない。従って、あるアプリケーションの網レベル品質に関する要求条件を１ノード当たりの品質要求条件に変換することは困難である。
【００１４】
また、このような網内経路の把握、及び各ノードヘの品質配分の手続きを行うためには、通信の開始前に呼が通過する網内の経路全体を把握できるような大規模な制御装置の存在が必要になるが、これはスケーラビリティの観点から必ずしも現実的ではない。
もう１つの問題は、パケットヘッダに記録する情報の量にある。前述の方法のうち、（非特許文献５，８）においては、網内での滞在時間をパケットに記憶しておく必要がある。
【００１５】
しかし、アプリケーションの実効速度を確保するためにはヘッダに含める情報の量は少ないことが望ましい。
例えば、各パケットがミリ秒単位の粒度で最大１秒まで滞在時間を管理するならば、１０ビットを越える情報量が必要になり、ヘッダ情報量が大きくなりすぎてしまうと考えられる。
【００１６】
本発明は、大規模な制御装置を設けることなく網内経路を把握するとともに、パケットのヘッダ情報量を過大にすることなく網レベルで有効なパケット品質制御が可能なパケット転送制御方法及び装置並びにソフトウェアを提供することを目的とする。
【００１７】
【課題を解決するための手段】
請求項１は、優先度に応じた通信品質を実現する通信品質制御機能を含む任意の通信網を介して送信端末から受信端末にパケットを転送するためのパケット転送制御方法において、パケットのヘッダ内に、当該パケットを利用しているアプリケーションの種別を表す種別情報を格納し、前記パケットが通信網上の各経由地点を通過する際に、既に通過した網内の経路を反映した経路情報を前記パケットのヘッダ内に書き込み、通信品質の制御のために通過する前記パケットの優先度を決定する際に、前記パケットのヘッダ内に保持されている前記種別情報と前記経路情報とに基づいてパケット毎に優先度を決定するとともに、複数種類の関数を予め用意しておき、当該パケットの前記種別情報に応じて１つの関数を選択し、選択された関数に前記経路情報を代入して優先度を決定することを特徴とする。
【００１８】
請求項１においては、パケットが既に通過した網内の経路を反映した情報（例えば経由地点数）を経路情報として用いている。そのため、パケットが通過する経路の情報を予め用意する必要がない。また、パケットの各経由地点（例えば中継局やルータ）でそれぞれ経路情報を更新することにより、網全体に渡る経路の状況を反映した優先度制御を行い、品質を制御することができる。
【００１９】
また、優先度はそのパケットを利用しているアプリケーションの種別と経路情報とに基づいて決定されるが、アプリケーション毎に異なる関数を用いて優先度を算出するので、各アプリケーションが要求する品質とそれまで通過した経路とを反映するように適切な優先度を求めることができる。
例えば、同一アプリケーションのパケットに対しては、経由ノード数や網内遅延が増大するにつれて優先度を上げることにより、エンドーエンド間の遅延や損失が大きくなるのを防止できる。
【００２０】
この際、平均的には、要求品質の厳しいものほど経由ノード数の増加や品質の劣化に対する優先度の上げ方を急激にすることで、エンドーエンド品質をより厳格に保てるようになる。
請求項２は、請求項１のパケット転送制御方法において、優先度の算出に利用される前記関数として、単調非減少の多項式で表現される関数を用いることを特徴とする。
【００２１】
例えば、ｎ種類のアプリケーションに対応する複数の関数として、次のｍ次元配列
（（ａ０，１，ａ１，１，・・・，ａｍ，１），（ａ０，２，ａ１，２，・・・，ａｍ，２），・・・，（ａ０，ｎ，ａ１，ｎ，・・・，ａｍ，ｎ））
を保持する場合には、パケットの経由ノード数がｒ、パケットのアプリケーション種別がｉで表される場合に、優先度ｐを前記ｍ次元配列に基づき次の関数から求めることができる。
【００２２】
ｐ＝ａ０，ｉ＋Σｍｋ＝１ｒｋａｋ，ｉ　　　・・・（１）
但し、例えばｒ１＜ｒ２ならば（Σｍｋ＝０ｒ１ｋａｋ，ｉ≦Σｍｋ＝０ｒ２ｋａｋ，ｉ）が成り立つように、各配列（ａ０，ｉ，ａ１，ｉ，・・・，ａｍ，ｉ）については、（Σｍｋ＝０ｒｋａｋ，ｉ）がｒに関して単調非減少関数になるように定める。
これにより、同じアプリケーションのパケットを処理する場合には、経由ノード数ｒが大きくなるに従い、優先度が高くなる。従って、ネットワーク上の経路が長くなる場合でも遅延時間などの増大を防止し、品質を保証することが可能になる。
【００２３】
請求項３は、請求項１又は請求項２のパケット転送制御方法において、前記パケットが通信網上の各経由地点を通過する際に、既に通過した網内の経路の経由地点数に相当する整数値を経路情報として前記パケットのヘッダ内に書き込むことを特徴とする。
請求項３においては、経路情報として既に通過した網内の経路の経由地点数に相当する整数値を用いるので、小さいビット数で経路情報を表現でき、パケットヘッダに格納される情報量の増大を抑制できる。
【００２４】
請求項４は、請求項１又は請求項２のパケット転送制御方法において、前記パケットが通信網上の各経由地点を通過する際に、前記パケットの種別情報が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、前記パケットの経路情報の値を予め定めた値だけ更新し、既に通過した網内の経路の経由地点数を反映した整数値を前記経路情報とすることを特徴とする。
【００２５】
請求項４においては、経路情報として既に通過した網内の経路の経由地点数を反映した整数値を用いるので、小さいビット数で経路情報を表現でき、パケットヘッダに格納される情報量の増大を抑制できる。
また、パケットの種別情報がある条件を満たすか否かを識別し、その結果を経路情報の更新に反映することができる。
【００２６】
請求項５は、請求項１又は請求項２のパケット転送制御方法において、前記パケットが通信網上の各経由地点を通過する際に、パケット毎に生成した乱数を適用し、前記パケットの種別情報に応じて決定される閾値と前記乱数とを比較し、比較の結果が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、前記パケットの経路情報の値を予め定めた値だけ更新し、既に通過した網内の経路の経由地点数を反映した整数値を前記経路情報とすることを特徴とする。
【００２７】
請求項５においては、経路情報として既に通過した網内の経路の経由地点数を反映した整数値を用いるので、小さいビット数で経路情報を表現でき、パケットヘッダに格納される情報量の増大を抑制できる。
また、パケットの種別情報がある条件を満たすか否かを識別し、その結果を経路情報の更新に反映することができる。
【００２８】
請求項６は、請求項１又は請求項２のパケット転送制御方法において、前記パケットが通信網上の各経由地点を通過する際に、パケット毎にそのヘッダ情報とハッシュ関数とを用いてハッシュ値を算出し、前記パケットの種別情報に応じて決定される閾値と前記ハッシュ値とを比較し、比較の結果が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、前記パケットの経路情報の値を予め定めた値だけ更新し、既に通過した網内の経路の経由地点数を反映した整数値を前記経路情報とすることを特徴とする。
【００２９】
請求項６においては、経路情報として既に通過した網内の経路の経由地点数を反映した整数値を用いるので、小さいビット数で経路情報を表現でき、パケットヘッダに格納される情報量の増大を抑制できる。
また、パケットの種別情報がある条件を満たすか否かを識別し、その結果を経路情報の更新に反映することができる。
【００３０】
請求項７は、請求項６のパケット転送制御方法において、同一の呼が利用する全てのパケットに共通の情報を前記パケットのヘッダから抽出して前記ハッシュ値の算出の際に利用することを特徴とする。
請求項７においては、同じ呼に属する複数パケット間で処理順序の逆転が生じるのを防止できる。
【００３１】
請求項８は、請求項１，請求項２，請求項３，請求項４，請求項５，請求項６及び請求項７のいずれかのパケット転送制御方法において、パケットが通過する経由地点からの出力方路が複数存在する場合に、各出力方路に向かうパケットに対する優先度を算出する際に、出力方路の違いに応じて互いに異なる計算を行うことを特徴とする。
【００３２】
請求項８においては、ある経由地点で出力方路が複数に分岐する場合に、その経由地点より先の経路における経由地点数などの違いが予め予測できる場合には、出力方路の違いを優先度に反映し、品質制御に役立てることができる。
請求項９は、請求項１，請求項２，請求項３，請求項４，請求項５，請求項６及び請求項７のいずれかのパケット転送制御方法において、パケットが通過する経由地点からの出力方路が複数存在する場合に、各出力方路に向かうパケットの経路情報を更新する際に、出力方路の違いに応じて互いに異なる更新条件を適用することを特徴とする。
【００３３】
請求項９においては、ある経由地点で出力方路が複数に分岐する場合に、その経由地点より先の経路における経由地点数などの違いが予め予測できる場合には、出力方路の違いを経路情報に反映し、適切な優先度を各パケットに割り当てることができる。
請求項１０は、任意の通信網上の経由地点で、入力されるパケットを優先度に応じて処理し出力するパケット転送制御装置において、入力されたパケットが既に通過した網内の経路を反映した経路情報を前記パケットのヘッダ内に書き込む経路情報生成手段と、予め用意された複数種類の関数を保持する関数保持手段と、パケットのヘッダ内に、当該パケットを利用しているアプリケーションの種別を表す種別情報が含まれている場合に、前記パケットの種別情報と、前記経路情報とに基づいてパケット毎に優先度を決定するとともに、当該パケットの前記種別情報に応じて１つの関数を選択し、選択された関数に前記経路情報を代入して優先度を決定する優先度算出手段とを設けたことを特徴とする。
【００３４】
請求項１０のパケット転送制御装置を網内に配置することにより、請求項１と同様な制御が実現する。
請求項１１は、請求項１０のパケット転送制御装置において、前記経路情報生成手段は、通過するパケットのヘッダ内に書き込まれている経路情報の値を１単位だけ更新することを特徴とする。
【００３５】
請求項１１のパケット転送制御装置を網内に配置することにより、請求項３と同様な制御が実現する。
請求項１２は、請求項１０のパケット転送制御装置において、前記経路情報生成手段は、前記パケットの種別情報が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、通過するパケットのヘッダ内に書き込まれている経路情報の値を１単位だけ更新することを特徴とする。
【００３６】
請求項１２のパケット転送制御装置を網内に配置することにより、請求項４と同様な制御が実現する。
請求項１３は、請求項１０のパケット転送制御装置において、前記経路情報生成手段は、通過するパケット毎に生成した乱数を適用し、前記パケットの種別情報に応じて決定される閾値と前記乱数とを比較し、比較の結果が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、通過するパケットのヘッダ内に書き込まれている経路情報の値を１単位だけ更新することを特徴とする。
【００３７】
請求項１３のパケット転送制御装置を網内に配置することにより、請求項５と同様な制御が実現する。
請求項１４は、請求項１０のパケット転送制御装置において、前記経路情報生成手段は、通過するパケット毎にそのヘッダ情報とハッシュ関数とを用いてハッシュ値を算出し、前記パケットの種別情報に応じて決定される閾値と前記ハッシュ値とを比較し、比較の結果が特定の条件を満たすか否かを識別し、条件を満たす場合に限り、通過するパケットのヘッダ内に書き込まれている経路情報の値を１単位だけ更新することを特徴とする。
【００３８】
請求項１４のパケット転送制御装置を網内に配置することにより、請求項６と同様な制御が実現する。
請求項１５は、請求項１４のパケット転送制御装置において、前記経路情報生成手段は、同一の呼が利用する全てのパケットに共通の情報を前記パケットのヘッダから抽出して前記ハッシュ値の算出の際に利用することを特徴とする。
【００３９】
請求項１５のパケット転送制御装置を網内に配置することにより、請求項７と同様な制御が実現する。
請求項１６は、請求項１０のパケット転送制御装置において、前記優先度算出手段は、パケットの出力方路が複数存在する場合に、各出力方路に向かうパケットに対する優先度を算出する際に、出力方路の違いに応じて互いに異なる計算を行うことを特徴とする。
【００４０】
請求項１６のパケット転送制御装置を網内に配置することにより、請求項８と同様な制御が実現する。
請求項１７は、請求項１０のパケット転送制御装置において、前記経路情報生成手段は、パケットの出力方路が複数存在する場合に、各出力方路に向かうパケットの経路情報を更新する際に、出力方路の違いに応じて互いに異なる更新条件を適用することを特徴とする。
【００４１】
請求項１７のパケット転送制御装置を網内に配置することにより、請求項９と同様な制御が実現する。
請求項１８は、任意の通信網上の経由地点で、入力されるパケットを優先度に応じて処理し出力する装置のコンピュータを制御するためのソフトウェアにおいて、入力されたパケットが既に通過した網内の経路を反映した経路情報を前記パケットのヘッダ内に書き込む経路情報生成手順と、予め用意された複数種類の関数の情報と、パケットのヘッダ内に、当該パケットを利用しているアプリケーションの種別を表す種別情報が含まれている場合に、前記パケットの種別情報と、前記経路情報とに基づいてパケット毎に優先度を決定するとともに、当該パケットの前記種別情報に応じて１つの関数を選択し、選択された関数に前記経路情報を代入して優先度を決定する優先度算出手順とを設けたことを特徴とする。
【００４２】
請求項１８のソフトウェアを通信網上の各経由地点に配置される装置のコンピュータで実行することにより、請求項１と同様な制御が実現する。
請求項１９は、請求項１８のソフトウェアにおいて、前記経路情報生成手順では、通過するパケットのヘッダ内に書き込まれている経路情報の値を、無条件に、もしくは所定の条件を満たす場合に限り、１単位だけ更新することを特徴とする。
【００４３】
請求項１９のソフトウェアを通信網上の各経由地点に配置される装置のコンピュータで実行することにより、請求項３と同様な制御が実現する。
請求項２０は、請求項１８又は請求項１９のソフトウェアを記録した記録媒体である。
請求項２０の記録媒体に記録されたソフトウェアを通信網上の各経由地点に配置される装置のコンピュータで実行することにより、請求項１と同様な制御が実現する。
【００４４】
【発明の実施の形態】
（第１の実施の形態）
本発明のパケット転送制御方法及び装置並びにソフトウェア及び記録媒体の１つの実施の形態について、図１〜図６を参照して説明する。この形態は、請求項１〜請求項３，請求項１０，請求項１１及び請求項１８〜請求項２０に対応する。
【００４５】
図１はネットワーク上に配置されるノード装置の構成例を示すブロック図である。図２はパケットの構成例を示す模式図である。図３は各アプリケーションの種別の割り当て例を示す模式図である。図４は関数テーブルの具体例を示す模式図である。図５は通信ネットワークの構成例を示すブロック図である。図６は優先度の算出例（１）を示す模式図である。
【００４６】
この形態では、請求項１０の経路情報生成手段，関数保持手段及び優先度算出手段は、それぞれ経路情報更新部２２４，関数テーブル２２５及び優先度算出部２２２に対応する。
【００４７】
この形態では、例えば図５に示すような構成の通信ネットワークを介してパケットが転送される場合を想定している。すなわち、図示しない送信端末から送出されるパケットは、物理回線２３０を介してこの通信ネットワークに入力され、例えば図５に示すルート（Ａ）の経路で物理回線２３６まで転送され、物理回線２３６を介して図示しない受信端末まで転送される。
【００４８】
また、この通信ネットワークでは、様々な通信品質を要求する様々な種類のアプリケーションプログラムからのパケットが同時に転送されるマルチメディアネットワークを想定している。
図５の例では、ネットワーク上に４つのノード装置２００〜２０３とそれらの間を接続する物理回線２３１〜２３５が設けてある。なお、各ノード装置２００〜２０３としてはルータなどの装置を想定すればよい。従って、この通信ネットワーク上を転送される各パケットは、複数種類の経路（ルート（Ａ，Ｂ，Ｃ））を通る可能性がある。
【００４９】
図１に示すように、ノード装置２００はパケット収容部２２０，ヘッダ読取部２２１，優先度算出部２２２，パケット優先処理部２２３，経路情報更新部２２４及び関数テーブル２２５を備えている。他のノード装置２０１〜２０３も同様である。
ところで、図５に示す通信ネットワーク上を転送される各パケットは、図２に示すようにヘッダとペイロードとで構成されている。また、ヘッダにはアプリケーション種別情報１０１を格納するためのフィールド（１〜数ビット程度）と、経路情報１０２を格納するためのフィールド（１〜数ビット程度）とが含まれている。
【００５０】
アプリケーション種別情報１０１としては、呼が利用しているアプリケーション種別を認識できるような情報（例えば、低遅延を要求するＶｏＩＰサービスか、ベストエフォートクラスか等）が用いられる。
【００５１】
経路情報１０２としては、当該パケットがそれまでに経由してきた経路についての情報が用いられる。具体的には、この形態では通過ノード数を経路情報１０２として用いている。
経路情報１０２については、パケットの送信元、すなわち送信端末で初期化され、各々のノード装置２００〜２０３を通過するときに更新される。
【００５２】
図１の例では、パケット２１０は入側通信路である物理回線２３０を経由してノード装置２００内のパケット収容部２２０に到着する。
ヘッダ読取部２２１は、パケット収容部２２０に到着したパケット２１０からヘッダ内のアプリケーション種別情報１０１及び経路情報１０２を読み取る。
優先度算出部２２２は、ヘッダ読取部２２１がパケット２１０から読み取ったアプリケーション種別情報１０１及び経路情報１０２に基づいて、パケット毎に優先度ｐを数値として算出する。
【００５３】
パケット優先処理部２２３は、パケット収容部２２０内で処理を待つ全てのパケット２１０について、優先度算出部２２２が算出した優先度ｐを管理し、各パケット２１０の優先度ｐに基づいてパケット２１０の処理順序を管理する。
パケット優先処理部２２３の指示によって処理が終了したパケット２１０は、パケット収容部２２０から出力される前に、経路情報更新部２２４によってヘッダ内の経路情報１０２の更新処理を受ける。経路情報１０２の更新処理が終了したパケット２１０は、出側通信路である物理回線２３１を通って次のノード装置に転送される。
【００５４】
経路情報更新部２２４は、経路情報１０２の値ｒを（ｒ＋１）に更新する。すなわち、ノードを通過する度に、パケット２１０の経路情報１０２の値ｒは１だけ増加する。従って、この経路情報１０２の値は、そのパケット２１０が既に通過した経路の経由ノード数を表す。
【００５５】
なお、各ノード装置は、パケットの優先度ｐの値が最も大きいもののうち、最初にそのノードに到着したパケットを最優先のパケットとみなして処理する。
一方、優先度算出部２２２に接続された関数テーブル２２５には、ｎ種類のアプリケーションに対応する複数の関数として、ｍ次元配列（（ａ０，１，ａ１，１，・・・，ａｍ，１），（ａ０，２，ａ１，２，・・・，ａｍ，２），・・・，（ａ０，ｎ，ａ１，ｎ，・・・，ａｍ，ｎ））のデータが保持されている。
【００５６】
また、例えばｒ１＜ｒ２ならば（Σｍｋ＝０ｒ１ｋａｋ，ｉ≦Σｍｋ＝０ｒ２ｋａｋ，ｉ）が成り立つようにｉ番目の各配列（ａ０，ｉ，ａ１，ｉ，・・・，ａｍ，ｉ）については、（Σｍｋ＝０ｒｋａｋ，ｉ）がｒ（経由ノード数）に関して単調非減少関数になるように定めてある。
優先度算出部２２２は、処理対象のパケット２１０におけるアプリケーション種別情報１０１の値（ｉ）に応じて、関数テーブル２２５からｉ番目の配列（ａ０，ｉ，ａ１，ｉ，・・・，ａｍ，ｉ）のデータを取り出し、このデータから次の第（２）式の関数を取得する。
【００５７】
ｐ＝ａ０，ｉ＋Σｍｋ＝１ｒｋａｋ，ｉ　　　・・・（２）
そして、優先度算出部２２２は、処理対象のパケット２１０における経路情報１０２の値（ｒ）を前記第（２）式の関数に代入し、優先度ｐを算出する。
更なる具体例について次に説明する。この例では、パケット２１０を使用する呼のアプリケーション種別が、図３に示すように３種類（ｎ＝３）に分類されている場合を想定する。
【００５８】
すなわち、品質要求が厳しく最も優先度の高い高優先クラス（クラス１）と、品質要求がクラス１ほど厳しくない低優先クラス（クラス２）と、ベストエフォートクラス（クラス３）の３種類に分類する。
また、これらのアプリケーション種別（ｉ）に対応して、関数テーブル２２５には図４に示すような２次元配列（ｍ＝２）のデータが保持されている場合を想定する。
【００５９】
更に、それぞれのクラスに分類された呼に対応するパケットは、図５に示すネットワーク上をノード装置２００，２０３の順に経由する場合（ルートＡ）と、ノード装置２００，２０１，２０３の順に経由する場合（ルートＢ）と、ノード装置２００，２０１，２０２，２０３の順に経由する場合（ルートＣ）とに分類されているものとする。
【００６０】
このような条件においては、各ノードの各種別のパケットについて、それぞれ図６に示すような結果が得られる。すなわち、経路情報１０２の値ｒ及び算出される優先度ｐの値は、ルートの違い及びアプリケーション種別（ｉ）に応じて変化することが分かる。
この形態では、同一のルートを経由する場合は、同一種別のパケットの優先度は全て同一となり、また（（種別（１）のパケットの優先度）＞（種別（２）のパケットの優先度））の関係が保たれるが、ノード装置２０３では、同一種別のパケットの優先度に関しては（（ルートＡのパケット）≦（ルートＢのパケット）≦（ルートＣのパケット））となり、異なるルートによりノード装置の経由地点数が異なった場合には、同一種別のパケットならば経由地点数の多いほうが優先度は高くなる。
【００６１】
また、（（ルートＡの種別（１）のパケットの優先度）≦（ルートＢの種別（２）のパケットの優先度））などのように、経由地点数の少ない高優先クラスのパケットよりも、経由地点数の多い低優先パケットに対して、より高品質なサービスを提供できる。
なお、図１に示すノード装置の各機能については、専用のハードウェアで実現することもできるし、コンピュータとソフトウェアとの組み合わせで実現することもできる。ソフトウェアについては、ＣＤ−ＲＯＭのような記録媒体からコンピュータに読み込んでも良いし、オンラインで転送してコンピュータに読み込んでも良い。
【００６２】
（第２の実施の形態）
本発明のパケット転送制御方法及び装置並びにソフトウェア及び記録媒体の１つの実施の形態について、図７及び図８を参照して説明する。この形態は請求項４及び請求項１２に対応する。
図７は経路情報更新条件テーブルの構成例を示す模式図である。図８は優先度の算出例（２）を示す模式図である。
【００６３】
この形態は、第１の実施の形態の変形例である。第１の実施の形態と異なる部分について以下に説明する。同じ部分については説明を省略する。
この形態では、各ノード装置の経路情報更新部２２４（図１参照）における動作が変更されている。すなわち、この形態の経路情報更新部２２４は、経路情報１０２の値ｒをある条件に適合する場合だけ更新する。
【００６４】
この条件に適合するか否かを識別するために、この例では図７に示すような経路情報更新条件テーブルを経路情報更新部２２４に設けてある。この例では、経路情報更新条件テーブルの内容はノード装置毎に独立している。
また、経路情報更新条件テーブルにはアプリケーション種別（ｉ）に応じた値ｂｉを配列として保持している。
【００６５】
経路情報更新部２２４は、経路情報更新条件テーブルの値ｂｉを用いて、経路情報１０２の値ｒを（ｒ＋ｂｉ）に更新する。値ｂｉは０又は１であるため、値ｂｉが０の場合にはｒの値は更新されず、値ｂｉが１の場合に限りｒの値が１だけ増加する。
従って、図７に示す経路情報更新条件テーブルを各ノード装置２００〜２０３が用いる場合には、アプリケーション種別（ｉ）とは無関係にノード装置２００，２０１は経路情報１０２を更新しないが、ノード装置２０２は、（ｉ＝１及びｉ＝２）のパケットについては経路情報１０２の値を１だけ増大させる。
【００６６】
従って、図５に示すような通信ネットワークを想定すると、各ノード装置における経路情報１０２の値ｒ及び優先度ｐは、図８のようになる。
すなわち、ルート（Ａ）及び（Ｂ）を経由したパケットについては優先度ｐは変化しないが、最も遠回りなルート（Ｃ）を経由したパケットは、ノード装置２０２において経路情報１０２の値ｒが更新されるので、ノード装置２０３で他ルート経由のパケットに比べて優先度ｐが高くなり、より高品質なサービスを受けることが期待できる。
【００６７】
（第３の実施の形態）
本発明のパケット転送制御方法及び装置並びにソフトウェア及び記録媒体の１つの実施の形態について、図９〜図１１を参照して説明する。この形態は請求項５及び請求項１３に対応する。
図９は経路情報更新条件テーブルの構成例を示す模式図である。図１０は経路情報更新に関する動作例を示すフローチャートである。図１１は優先度の算出例（３）を示す模式図である。
【００６８】
この形態は、第１の実施の形態の変形例である。第１の実施の形態と異なる部分について以下に説明する。同じ部分については説明を省略する。
この形態では、各ノード装置の経路情報更新部２２４は、図９に示すような経路情報更新条件テーブルを備えている。この経路情報更新条件テーブルは、アプリケーション種別（ｉ）に応じた値ｃｉを配列として保持している。また、この形態の経路情報更新部２２４は乱数発生機能を備えている。
【００６９】
経路情報更新に関する動作について、図１０を参照しながら説明する。ステップＳ３１では入力された１つのパケットを取り出し、次のステップＳ３２でパケットのヘッダから種別ｉの情報を取得する。更に、ステップＳ３３では経路情報更新条件テーブル（図９）から閾値ｃｉを取得する。
ステップＳ３４では、パケット毎に異なる乱数ｘ（０〜１の範囲内）を生成する。そして、この乱数ｘとステップＳ３３で取得した閾値ｃｉとを次のステップＳ３５で比較する。
【００７０】
（ｘ＜ｃｉ）の条件を満たす場合には、ステップＳ３５からＳ３６に進むため、経路情報１０２の値ｒが（ｒ＋１）に更新される。しかし、条件を満たさない場合にはステップＳ３６を実行しないのでパケットがノードを通過しても経路情報１０２の値ｒは変化しない。
図９に示す経路情報更新条件テーブルを用いる場合には、アプリケーション種別（１）のパケットは確率１／２、アプリケーション種別（２）のパケットは確率１／５でそれぞれ経路情報１０２の値ｒが更新されるが、アプリケーション種別（３）のパケットについては経路情報１０２の値ｒは更新されない。
【００７１】
図５に示す通信ネットワークにおいて、図９に示す経路情報更新条件テーブルを用いる場合には、図１１に示すような結果が得られる。
この形態の方法では、各ノード装置の経路情報更新部２２４においてパケット毎に乱数が与えられるため、同一の呼が生成する各々のパケットに与えられる優先度ｐが変化する可能性がある。
【００７２】
例えば、ある呼がアプリケーション種別（２）でルート（Ｃ）の経路で通信を行う場合、ノード装置２０２では、この呼が生成する全てのパケットのうち４％のパケットが優先度５、３２％のパケットが優先度３、６４％のパケットが優先度１をそれぞれ割り当てられる。
従って、もしノード装置２０２が重度の輻輳状態にあり、この呼の複数の通信パケットがノード装置２０２で処理待ち状態になった場合には、先に到着した優先度１又は優先度３のパケットよりも後に到着した優先度５のパケットが優先的に処理され、結果としてパケットの順序が逆転してしまう可能性もある。
【００７３】
（第４の実施の形態）
本発明のパケット転送制御方法及び装置並びにソフトウェア及び記録媒体の１つの実施の形態について、図１２及び図１３を参照して説明する。この形態は請求項６，請求項７，請求項１４及び請求項１５に対応する。
【００７４】
図１２は経路情報更新条件テーブルの構成例を示す模式図である。図１３は経路情報更新に関する動作例を示すフローチャートである。
この形態は、第１の実施の形態の変形例である。第１の実施の形態と異なる部分について以下に説明する。同じ部分については説明を省略する。
この形態では、各ノード装置の経路情報更新部２２４は、図１２に示すような経路情報更新条件テーブルを備えている。この経路情報更新条件テーブルは、アプリケーション種別（ｉ）に応じた値ｄｉを配列として保持している。また、この形態の経路情報更新部２２４はハッシュ関数を計算する機能を備えている。
【００７５】
経路情報更新に関する動作について、図１３を参照しながら説明する。ステップＳ４１では入力された１つのパケットを取り出し、次のステップＳ４２でパケットのヘッダから種別ｉの情報及び共通情報ｙを取得する。
ここで、共通情報ｙとは例えば発着対地情報のように、同一呼のパケットが共通に所有している情報を意味している。
【００７６】
次のステップＳ４３では、経路情報更新条件テーブル（図１２）から閾値ｄｉを取得する。
次のステップＳ４４では、ステップＳ４２でパケットから取得した共通情報ｙに基づいてハッシュ関数を計算し、ハッシュ値ｈを算出する。
次のステップＳ４５では、ハッシュ値ｈと閾値ｄｉとを比較する。そして、（ｈ＜ｄｉ）の条件が成立する場合には、次のステップＳ４６に進み、経路情報１０２の値ｒを（ｒ＋１）に更新する。（ｈ＜ｄｉ）の条件を満たさない場合には経路情報１０２の値ｒは更新しない。
【００７７】
この例では、ハッシュ値ｈとして得られる値が、［０，１］の間に一様に分布する場合を想定している。すなわち、この形態では、第３の実施の形態と同様に、アプリケーション種別（１）のパケットは確率１／２、アプリケーション種別（２）のパケットは確率１／５でそれぞれ経路情報１０２の値ｒが更新され、アプリケーション種別（３）のパケットについては経路情報１０２は更新されない。
【００７８】
従って、図５に示す通信ネットワークにおいて、図１２に示す経路情報更新条件テーブルを用いる場合には、図１１に示すような結果が得られる。
但し、この形態では、同一呼のパケットには常に同じ値のハッシュ値が割り当てられるため、ある呼がアプリケーション種別（２）でルート（Ｃ）を用いて通信を行う場合、この呼が生成する全てのパケットが、ノード装置２０２では４％の確率で優先度５、３２％の確率で優先度３、６４％の確率で優先度１をそれぞれ割り当てられる。従って、第３の実施の形態の場合のようなパケット順序の逆転は発生しない。
【００７９】
（第５の実施の形態）
本発明のパケット転送制御方法及び装置並びにソフトウェア及び記録媒体の１つの実施の形態について説明する。この形態は請求項８，請求項９，請求項１６及び請求項１７に対応する。
この形態は第１の実施の形態〜第４の実施の形態の変形例である。前述の実施の形態と異なる部分について以下に説明する。同じ部分については説明を省略する。
【００８０】
図５に示す通信ネットワークにおいて、例えばノード装置２００の出力方路は物理回線２３１に向かう方路と物理回線２３２に向かう方路との２つがある。前述の第１の実施の形態では、各パケットについて、出力方路の違いとは無関係に優先度ｐの算出及び経路情報１０２の更新処理を行っている。
しかし、出力方路の違いによって、出力側の物理回線の帯域が異なる可能性もある。また、出力方路が直接加入者側ノードと接続されている場合や中継側ノードと接続されている場合が考えられる。すなわち、各ノード装置の出力側におけるパケットの経路（経由地点数など）や帯域は出力方路の違いに応じて変化する可能性が高い。
【００８１】
そこで、この形態では、優先度ｐの算出をパケットの出力方路毎（すなわち出力リンク毎）に個別に行う。更に、経路情報更新部２２４が経路情報１０２の値ｒを更新する条件についても、パケットの出力方路毎に個別に定める。これにより、より精密に各パケットの優先度を制御することができる。
以上説明した各実施の形態の制御においては、遅延を保証するためにパケットの優先度を決定してもよいし、損失率を保証するためにパケットの優先度を決定してもよい。
【００８２】
また、前述の実施の形態では簡素化のため、優先度算出の方法を、全ノード共通に定めたが、実際の装置においてはノード装置毎に優先度の算出機能を変更してもよい。
更に、前述の実施の形態ではノード装置内において、優先度算出の後で経路情報を更新しているが、逆に経路情報を更新した後で優先度の算出を行うこともできる。
【００８３】
【発明の効果】
網レベルでのパケット優先制御を行う場合、従来の方法ではパケットヘッダに格納する情報量が非常に多いか、あるいは呼の通信経路を全て把握する必要があるという点で運用及び費用の面から実装が難しかったが、本発明はパケット優先制御の有効性を保持しつつ、パケットヘッダの情報量を最小限度に抑えることができ、しかも網制御装置を必要とせずに通信経路の情報を取得できるので実現性が高い。
【００８４】
また、パケットが実際に通過した経路上のノード数を反映した値を経路情報として利用する場合には、経由ノード数が多い、すなわち遠距離を経由したパケットの優先度を高くすることで網レベルでの通信品質を制御できる。
【図面の簡単な説明】
【図１】ネットワーク上に配置されるノード装置の構成例を示すブロック図である。
【図２】パケットの構成例を示す模式図である。
【図３】各アプリケーションの種別の割り当て例を示す模式図である。
【図４】関数テーブルの具体例を示す模式図である。
【図５】通信ネットワークの構成例を示すブロック図である。
【図６】優先度の算出例（１）を示す模式図である。
【図７】経路情報更新条件テーブルの構成例を示す模式図である。
【図８】優先度の算出例（２）を示す模式図である。
【図９】経路情報更新条件テーブルの構成例を示す模式図である。
【図１０】経路情報更新に関する動作例を示すフローチャートである。
【図１１】優先度の算出例（３）を示す模式図である。
【図１２】経路情報更新条件テーブルの構成例を示す模式図である。
【図１３】経路情報更新に関する動作例を示すフローチャートである。
【符号の説明】
１０１　アプリケーション種別情報
１０２　経路情報
２００，２０１，２０２，２０３　ノード装置
２１０　パケット
２２０　パケット収容部
２２１　ヘッダ読取部
２２２　優先度算出部
２２３　パケット優先処理部
２２４　経路情報更新部
２２５　関数テーブル
２３０，２３１，２３２，２３３，２３４，２３５，２３６　物理回線
【図１】
2004104571.tif 000003
【図２】
2004104571.tif 000004
【図３】
2004104571.tif 000005
【図４】
2004104571.tif 000006
【図５】
2004104571.tif 000007
【図６】
2004104571.tif 000008
【図７】
2004104571.tif 000009
【図８】
2004104571.tif 000010
【図９】
2004104571.tif 000011
【図１０】
2004104571.tif 000012
【図１１】
2004104571.tif 000013
【図１２】
2004104571.tif 000014
【図１３】
2004104571.tif 000015