(57)【要約】    【課題】      ネットワークの構成、輻輳状態及び隣接するルータ装置に関する情報を与えることなく、隣接するルータ装置の輻輳状態を回避して高品質なパケット伝送を行うこと。    【解決手段】  モニタパケット生成部３１９は、隣接ルータ装置の輻輳状態をモニタするためのモニタパケットを生成する。モニタパケット挿入送出部３２４は、前記モニタパケットを前記隣接ルータ装置に送出する。遅延時間タイムアウト判定部３２１は、モニタパケット挿入送出部３２４から送出され前記隣接ルータ装置から折り返し送出されてくる前記モニタパケットを受信して当該モニタパケットの遅延時間を求める。スケジューラ３２２は、前記遅延時間に基づいて前記隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて複数の優先度別のキュー３１７−１〜３１７−ｎからの前記ＩＰパケットの優先度別の読み出し及び読み出し量を制御する。  【選択図】      図３
2004282705.tif 000002
【特許請求の範囲】
【請求項１】
ＩＰパケットを転送するＩＰネットワークに接続され、異なるサブネット間にて自身に設定された経路データベースに基づいて前記ＩＰパケットを転送するルータ装置であって、入力される前記ＩＰパケットを優先度別に振り分けて蓄積するための複数の優先度別バッファと、同一の前記サブネット宛の前記ＩＰパケットを予め設定された条件ごとに複数の前記優先度別バッファに振り分ける優先度別パケット振分手段と、複数の前記優先度別バッファに蓄積された前記ＩＰパケットを予め設定された順序及びタイミングに基づいて読み出すＩＰパケット読出手段と、前記ルータ装置に隣接する隣接ルータ装置の輻輳状態をモニタするためのモニタパケットを生成するモニタパケット生成手段と、前記モニタパケット生成手段により生成された前記モニタパケットを前記隣接ルータ装置に送出するモニタパケット挿入送出手段と、前記モニタパケット挿入送出手段から送出され前記隣接ルータ装置から折り返し送出されてくる前記モニタパケットを受信して当該モニタパケットの遅延時間を求める遅延時間算出手段と、前記遅延時間算出手段により求められた前記遅延時間に基づいて前記隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて複数の前記優先度別バッファからの前記ＩＰパケットの優先度別の読み出し及び読み出し量を制御するＩＰパケット読出制御手段と、を具備するルータ装置。
【請求項２】
前記モニタパケット挿入送出手段は、転送する前記ＩＰパケットに所定の間隔をおいて前記モニタパケットを挿入して前記隣接ルータ装置に送出する請求項１に記載のルータ装置。
【請求項３】
前記モニタパケット挿入送出手段は、転送する前記ＩＰパケットがないタイミングで前記モニタパケットを前記隣接ルータ装置に送出する請求項１に記載のルータ装置。
【請求項４】
ＩＰパケットを転送するＩＰネットワークに接続され、異なるサブネット間にて自身に設定された経路データベースに基づいて前記ＩＰパケットを転送するルータ装置であって、入力される前記ＩＰパケットを優先度別に振り分けて蓄積するための複数の優先度別バッファと、同一の前記サブネット宛の前記ＩＰパケットを予め設定された条件ごとに複数の前記優先度別バッファに振り分ける優先度別パケット振分手段と、複数の前記優先度別バッファに蓄積された前記ＩＰパケットを予め設定された順序及びタイミングに基づいて読み出すＩＰパケット読出手段と、前記ルータ装置に隣接する隣接ルータ装置の輻輳状態をモニタするためのモニタパケットを生成するモニタパケット生成手段と、前記モニタパケット生成手段により生成された前記モニタパケットにシーケンス番号を付与するとともに前記シーケンス番号の付与後の前記モニタパケットを前記隣接ルータ装置に向けて送出するタイミングでタイマを起動するタイマシーケンス番号付与手段と、前記隣接ルータ装置に転送する一連の前記ＩＰパケットに前記モニタパケットを挿入して送出するモニタパケット挿入送出手段と、前記隣接ルータ装置から前記モニタパケットが折り返されてきた時に当該モニタパケットに付与された前記シーケンス番号を解析して解析した前記シーケンス番号に対応するタイマ値を取得して当該モニタパケットの送出から戻ってくるまでの前記モニタパケットの遅延時間を計測して当該計測結果を前記ＩＰパケット読出手段に通知する遅延時間タイムアウト判定手段と、を具備し、前記ＩＰパケット読出手段は、優先度の最も高い前記ＩＰパケットを蓄積した前記優先度別バッファから順に前記ＩＰパケットの読み出しを行うとともに、その読み出しにおいて、前記タイマ値の制限値内で前記モニタパケットの遅延時間が長くなるに従って前記ＩＰパケットの読み出し量を減少させるルータ装置。
【請求項５】
前記モニタパケットの遅延時間が長くなるに従って値を大きくした複数の閾値を設定する閾値設定手段を具備し、前記ＩＰパケット読出手段は、複数の前記閾値の値が大きくなるに従って複数の前記優先度別バッファからの前記ＩＰパケットの読み出し量を減少させ、前記タイマ値の制限値内で、前記モニタパケットの遅延時間より長くかつ当該遅延時間に最も近い値の閾値に対応する読み出し量で複数の前記優先度別バッファから前記ＩＰパケットの読み出しを行い、前記タイマ値の制限値を超える場合には当該タイマ値の制限値の直前における前記閾値での読み出し量よりも更に少ない量で前記ＩＰパケットの読み出しを行う請求項４に記載のルータ装置。
【請求項６】
前記遅延時間タイムアウト判定手段は、前回に使用された前記閾値を中心値とした一定範囲の値である閾範囲を設定し、前記遅延時間算出手段が新たに算出した前記モニタパケットの遅延時間が前記閾範囲内であるか否かを判定し閾範囲内判定結果を生成して前記ＩＰパケット読出手段に通知し、前記ＩＰパケット読出手段は、前記遅延時間算出手段が新たに算出した前記モニタパケットの遅延時間が前記閾範囲内である時に前記ＩＰパケットの読み出し量を変更しない請求項５に記載のルータ装置。
【請求項７】
ＲＦＣ７９２にて規定されるＩＣＭＰ（Internet Control Message Protocol）エコー要求メッセージの送信及びエコー応答メッセージの受信を行うピング（Ｐｉｎｇ：Packet InterNetwork Groper）コマンドを実装し当該ピングコマンドをデフォルトゲートウェイ設定にて予め与えられている前記隣接ルータ装置のＩＰアドレスを用いて前記モニタパケットに関する送受信処理を行う請求項１から請求項６のいずれかに記載のルータ装置。
【請求項８】
前記遅延時間算出手段は、前記モニタパケットの遅延時間の複数回の算出値の平均値を算出して当該平均値を前記モニタパケットの遅延時間として用いる請求項１から請求項７のいずれかに記載のルータ装置。
【請求項９】
ＩＰパケットを転送するＩＰネットワークに接続され、異なるサブネット間にて自身に設定された経路データベースに基づいて前記ＩＰパケットを転送するルータ装置の前記ＩＰパケットの転送を実行するＩＰパケット転送方法であって、同一の前記サブネット宛の前記ＩＰパケットを予め設定された条件ごとに複数の優先度別バッファに振り分ける優先度別パケット振分ステップと、複数の前記優先度別バッファに蓄積された前記ＩＰパケットを予め設定された順序及びタイミングに基づいて読み出すＩＰパケット読出ステップと、前記ルータ装置に隣接する隣接ルータ装置の輻輳状態をモニタするためのモニタパケットを生成するモニタパケット生成ステップと、前記モニタパケット生成ステップにおいて生成された前記モニタパケットを前記隣接ルータ装置に送出するモニタパケット挿入送出ステップと、前記モニタパケット挿入送出ステップにおいて送出され前記隣接ルータ装置から折り返し送出されてくる前記モニタパケットを受信して当該モニタパケットの遅延時間を求める遅延時間算出ステップと、前記遅延時間に基づいて前記隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて複数の前記優先度別バッファからの前記ＩＰパケットの優先度別の読み出し及び読み出し量を制御するＩＰパケット読出制御ステップと、を具備するＩＰパケット転送方法。
【請求項１０】
ＩＰパケットを転送するＩＰネットワークに接続され、異なるサブネット間にて自身に設定された経路データベースに基づいて前記ＩＰパケットを転送するルータ装置の前記ＩＰパケットの転送をコンピュータに実行させるＩＰパケット転送プログラムであって、同一の前記サブネット宛の前記ＩＰパケットを予め設定された条件ごとに複数の優先度別バッファに振り分ける優先度別パケット振分ステップと、複数の前記優先度別バッファに蓄積された前記ＩＰパケットを予め設定された順序及びタイミングに基づいて読み出すＩＰパケット読出ステップと、前記ルータ装置に隣接する隣接ルータ装置の輻輳状態をモニタするためのモニタパケットを生成するモニタパケット生成ステップと、前記モニタパケット生成ステップにおいて生成された前記モニタパケットを前記隣接ルータ装置に送出するモニタパケット挿入送出ステップと、前記モニタパケット挿入送出ステップにおいて送出され前記隣接ルータ装置から折り返し送出されてくる前記モニタパケットを受信して当該モニタパケットの遅延時間を求める遅延時間算出ステップと、前記遅延時間に基づいて前記隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて複数の前記優先度別バッファからの前記ＩＰパケットの優先度別の読み出し及び読み出し量を制御するＩＰパケット読出制御ステップと、をコンピュータに実行させるＩＰパケット転送プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ（Internet Protocol）パケットを転送するネットワークに接続され、異なるサブネット間にて自身に設定された経路データベースに基づいてＩＰパケットを転送するルータ装置に関する。
【背景技術】
【０００２】
従来のＩＰネットワークでは、所謂ベストエフォート型の通信形態による転送が一般的である。このベストエフォート型の通信形態ではネットワークが混んでいない場合にはある程度のサービス品質を提供することができる。しかし、ネットワークが輻輳した場合にはパケットの遅延や紛失が生じてサービス品質が著しく劣化する。この問題に対し、近時、パケットの遅延や紛失につき一定のサービスを確保できるようなＱｏＳ（Quality of Ｓervice）保証サービスが提案されている。
【０００３】
ＱｏＳ保証サービスを実現するために、ネットワーク自体にパケット送信受付制御機能や通信資源を確保する機能を設ける手法が提案されている。しかしながら、パケット送信受付制御機能や通信資源を確保する機能を実現すると処理負荷が重くなることと、ネットワークのトポロジや各ノードの状態を常に把握して送信の受付や資源の確保を行う装置が別途必要になるなど、ネットワークの高機能化が必要となる。このため、特定用途向けのネットワークでしか適用し難い。すなわち、ＱｏＳ保証サービスを実現するためには構成が複雑になるとともに処理負荷が重くなる。
【０００４】
また、一方でネットワークに依存せずにＱｏＳ保証サービスを提供するための技術も提案されている（例えば、特許文献１参照）。
【０００５】
この特許文献１に記載の技術においては、送信端末装置が送信するパケットに優先順位を付けて送出し、パケット受信端末装置にて受信した一連のパケットの品質を解析してその品質情報を送信端末にフィードバックし、パケット送信端末にてこの通知内容に応じて送信するパケットに付与する優先順位を動的に変更する。この技術によれば、ネットワークの状態が変化してパケットの品質に変化が生じた場合に、フィードバックを受けることで変動が生じたパケットの品質を元に戻すことができ、ネットワークの状態に関わらず常に最適なパケット品質を保つことが可能となる。
【特許文献１】特開平９−６４９１２号公報（第３頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１で開示された技術においては、この技術を実装した送受信端末装置が動的に互いにフィードバックを行うことを前提としており、送信もしくは受信端末装置がこの技術を実装していない場合には実現が不可能である。
【０００７】
本発明は係る点に鑑みてなされたものであり、ネットワークの構成、輻輳状態及び隣接するルータ装置に関する情報を与えることなく、隣接するルータ装置の輻輳状態を回避して高品質なパケット伝送を行うことができるルータ装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
請求項１に記載の発明は、ＩＰパケットを転送するＩＰネットワークに接続され、異なるサブネット間にて自身に設定された経路データベースに基づいて前記ＩＰパケットを転送するルータ装置であって、入力される前記ＩＰパケットを優先度別に振り分けて蓄積するための複数の優先度別バッファと、同一の前記サブネット宛の前記ＩＰパケットを予め設定された条件ごとに複数の前記優先度別バッファに振り分ける優先度別パケット振分手段と、複数の前記優先度別バッファに蓄積された前記ＩＰパケットを予め設定された順序及びタイミングに基づいて読み出すＩＰパケット読出手段と、前記ルータ装置に隣接する隣接ルータ装置の輻輳状態をモニタするためのモニタパケットを生成するモニタパケット生成手段と、前記モニタパケット生成手段により生成された前記モニタパケットを前記隣接ルータ装置に送出するモニタパケット挿入送出手段と、前記モニタパケット挿入送出手段から送出され前記隣接ルータ装置から折り返し送出されてくる前記モニタパケットを受信して当該モニタパケットの遅延時間を求める遅延時間算出手段と、前記遅延時間算出手段により求められた前記遅延時間に基づいて前記隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて複数の前記優先度別バッファからの前記ＩＰパケットの優先度別の読み出し及び読み出し量を制御するＩＰパケット読出制御手段と、を具備する構成を採る。
【０００９】
この構成によれば、隣接ルータ装置に対してモニタパケットを送出することにより、隣接ルータ装置から折り返し送出されてくるモニタパケットを受信して送出から戻ってくるまでの遅延時間を求め、求めた遅延時間に基づいて隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて隣接ルータ装置に転送するＩＰパケットに対する優先制御及び帯域増減制御を行うため、ネットワークの構成、輻輳状態及び隣接ルータ装置に関する情報を与えることなく、隣接ルータ装置の輻輳状態を回避して高品質なパケット伝送が可能となる。
【００１０】
請求項２に記載の発明は、請求項１に記載の発明において、前記モニタパケット挿入送出手段が、転送する前記ＩＰパケットに所定の間隔をおいて前記モニタパケットを挿入して前記隣接ルータ装置に送出する構成を採る。
【００１１】
この構成によれば、請求項１に記載の発明と同じ効果を有する。
【００１２】
請求項３に記載の発明は、請求項１に記載の発明において、前記モニタパケット挿入送出手段が、転送する前記ＩＰパケットがないタイミングで前記モニタパケットを前記隣接ルータ装置に送出する構成を採る。
【００１３】
この構成によれば、請求項１に記載の発明の効果に加えて、転送するＩＰパケットがないタイミングでモニタパケットを隣接ルータ装置に送出するため、転送するＩＰパケットの流れを乱すことを防止することができる。
【００１４】
請求項４に記載の発明は、ＩＰパケットを転送するＩＰネットワークに接続され、異なるサブネット間にて自身に設定された経路データベースに基づいて前記ＩＰパケットを転送するルータ装置であって、入力される前記ＩＰパケットを優先度別に振り分けて蓄積するための複数の優先度別バッファと、同一の前記サブネット宛の前記ＩＰパケットを予め設定された条件ごとに複数の前記優先度別バッファに振り分ける優先度別パケット振分手段と、複数の前記優先度別バッファに蓄積された前記ＩＰパケットを予め設定された順序及びタイミングに基づいて読み出すＩＰパケット読出手段と、前記ルータ装置に隣接する隣接ルータ装置の輻輳状態をモニタするためのモニタパケットを生成するモニタパケット生成手段と、前記モニタパケット生成手段により生成された前記モニタパケットにシーケンス番号を付与するとともに前記シーケンス番号の付与後の前記モニタパケットを前記隣接ルータ装置に向けて送出するタイミングでタイマを起動するタイマシーケンス番号付与手段と、前記隣接ルータ装置に転送する一連の前記ＩＰパケットに前記モニタパケットを挿入して送出するモニタパケット挿入送出手段と、前記隣接ルータ装置から前記モニタパケットが折り返されてきた時に当該モニタパケットに付与された前記シーケンス番号を解析して解析した前記シーケンス番号に対応するタイマ値を取得して当該モニタパケットの送出から戻ってくるまでの前記モニタパケットの遅延時間を計測して当該計測結果を前記ＩＰパケット読出手段に通知する遅延時間タイムアウト判定手段と、を具備し、前記ＩＰパケット読出手段は、優先度の最も高い前記ＩＰパケットを蓄積した前記優先度別バッファから順に前記ＩＰパケットの読み出しを行うとともに、その読み出しにおいて、前記タイマ値の制限値内で前記モニタパケットの遅延時間が長くなるに従って前記ＩＰパケットの読み出し量を減少させる構成を採る。
【００１５】
この構成によれば、隣接ルータ装置に対してモニタパケットを送出することにより、隣接ルータ装置から折り返し送出されてくるモニタパケットを受信して送出から戻ってくるまでの遅延時間を求め、求めた遅延時間に基づいて隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて隣接ルータ装置に転送するＩＰパケットに対する優先制御及び帯域増減制御を行うため、ネットワークの構成、輻輳状態及び隣接ルータ装置に関する情報を与えることなく、隣接ルータ装置の輻輳状態を回避して高品質なパケット伝送が可能となる。また、この構成によれば、優先度の最も高いＩＰパケットを蓄積した優先度別バッファから順にＩＰパケットの読み出しを行うとともに、その読み出しにおいてモニタパケットの遅延時間が長くなるに従ってＩＰパケットの読み出し量を減少させるので、ネットワークの構成、輻輳状態及び隣接するルータ装置に関する情報を与えることなく、隣接ルータ装置の輻輳状態を回避して高品質なパケット伝送が可能となる。
【００１６】
請求項５に記載の発明は、請求項４に記載の発明において、前記モニタパケットの遅延時間が長くなるに従って値を大きくした複数の閾値を設定する閾値設定手段を具備し、前記ＩＰパケット読出手段は、複数の前記閾値の値が大きくなるに従って複数の前記優先度別バッファからの前記ＩＰパケットの読み出し量を減少させ、前記タイマ値の制限値内で、前記モニタパケットの遅延時間より長くかつ当該遅延時間に最も近い値の閾値に対応する読み出し量で複数の前記優先度別バッファから前記ＩＰパケットの読み出しを行い、前記タイマ値の制限値を超える場合には当該タイマ値の制限値の直前における前記閾値での読み出し量よりも更に少ない量で前記ＩＰパケットの読み出しを行う構成を採る。
【００１７】
この構成によれば、請求項４に記載の発明の効果に加えて、ＩＰパケット読出手段が、タイマ値の制限値内では複数の閾値との比較に応じたＩＰパケットの読み出しを行い、タイマ値の制限値を超えた場合にはタイマ値の制限値以内よりも更に少ない量を読み出すため、隣接ルータ装置の輻輳状態を回避してより高品質なパケット伝送が可能となる。
【００１８】
請求項６に記載の発明は、請求項５に記載の発明において、前記遅延時間タイムアウト判定手段が、前回に使用された前記閾値を中心値とした一定範囲の値である閾値範囲を設定し、前記遅延時間算出手段が新たに算出した前記モニタパケットの遅延時間が前記閾値範囲内であるか否かを判定して閾値範囲内判定結果を生成して前記ＩＰパケット読出手段に通知し、前記ＩＰパケット読出手段は、前記遅延時間算出手段が新たに算出した前記モニタパケットの遅延時間が前記閾値範囲内である時に前記ＩＰパケットの読み出し量を変更しない構成を採る。
【００１９】
この構成によれば、請求項５に記載の発明の効果に加えて、前回に使用された閾値を中心値とした一定範囲の値である閾値範囲を設定し、新たに算出した前記モニタパケットの遅延時間が前記閾値範囲内であるか否かを判定して閾値範囲内判定結果を生成し新たに算出した前記モニタパケットの遅延時間が前記閾値範囲内であることを前記閾値範囲内判定結果が示している時にＩＰパケットの読み出し量を変更しないため、ＩＰパケットの読み出し量の制御を安定させることができる。
【００２０】
請求項７に記載の発明は、請求項１から請求項６のいずれかに記載の発明において、ＲＦＣ７９２にて規定されるＩＣＭＰ（Internet Control Message Protocol）エコー要求メッセージの送信及びエコー応答メッセージの受信を行うピング（Ｐｉｎｇ：Packet InterNetwork Groper）コマンドを実装し当該ピングコマンドをデフォルトゲートウェイ設定にて予め与えられている前記隣接ルータ装置のＩＰアドレスを用いて前記モニタパケットに関する送受信処理を行う構成を採る。
【００２１】
この構成によれば、請求項１から請求項６のいずれかに記載の発明に加えて、ＩＣＭＰエコー要求メッセージの送信及びエコー応答メッセージの受信を行うピングコマンドをデフォルトゲートウェイ設定にて予め与えられている隣接ルータ装置のＩＰアドレスを用いてモニタパケットに関する一連の送受信処理を行うため、モニタパケットを送受信するための専用の手段が不要となるから、ネットワークの構成、輻輳状態及び隣接するルータ装置に関する情報を与えることなく、隣接するルータ装置の輻輳状態を回避して高品質なパケット伝送を可能としながらも、価格の上昇を最小限に抑えることができる。
【００２２】
請求項８記載の発明は、請求項１から請求項７のいずれかに記載の発明において、前記遅延時間算出手段が、前記モニタパケットの遅延時間の複数回の算出値の平均値を算出して当該平均値を前記モニタパケットの遅延時間として用いる構成を採る。
【００２３】
この構成によれば、請求項１から請求項７のいずれかに記載の発明の効果に加えて、前記遅延時間算出手段が、前記モニタパケットの遅延時間の複数回の算出値の平均値を算出して当該平均値を前記モニタパケットの遅延時間として用いるため、遅延時間タイムアウト判定部手段による判定動作を安定させることができる。
【００２４】
請求項９に記載の発明は、ＩＰパケットを転送するＩＰネットワークに接続され、異なるサブネット間にて自身に設定された経路データベースに基づいて前記ＩＰパケットを転送するルータ装置の前記ＩＰパケットの転送を実行するＩＰパケット転送方法であって、同一の前記サブネット宛の前記ＩＰパケットを予め設定された条件ごとに複数の優先度別バッファに振り分ける優先度別パケット振分ステップと、複数の前記優先度別バッファに蓄積された前記ＩＰパケットを予め設定された順序及びタイミングに基づいて読み出すＩＰパケット読出ステップと、前記ルータ装置に隣接する隣接ルータ装置の輻輳状態をモニタするためのモニタパケットを生成するモニタパケット生成ステップと、前記モニタパケット生成ステップにおいて生成された前記モニタパケットを前記隣接ルータ装置に送出するモニタパケット挿入送出ステップと、前記モニタパケット挿入送出ステップにおいて送出され前記隣接ルータ装置から折り返し送出されてくる前記モニタパケットを受信して当該モニタパケットの遅延時間を求める遅延時間算出ステップと、前記遅延時間に基づいて前記隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて複数の前記優先度別バッファからの前記ＩＰパケットの優先度別の読み出し及び読み出し量を制御するＩＰパケット読出制御ステップと、を具備するようにした。
【００２５】
この方法によれば、隣接ルータ装置に対してモニタパケットを送出することにより、隣接ルータ装置から折り返し送出されてくるモニタパケットを受信して送出から戻ってくるまでの遅延時間を求め、求めた遅延時間に基づいて隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて隣接ルータ装置に転送するＩＰパケットに対する優先制御及び帯域増減制御を行うため、ネットワークの構成、輻輳状態及び隣接ルータ装置に関する情報を与えることなく、隣接ルータ装置の輻輳状態を回避して高品質なパケット伝送が可能となる。
【００２６】
請求項１０に記載の発明は、ＩＰパケットを転送するＩＰネットワークに接続され、異なるサブネット間にて自身に設定された経路データベースに基づいて前記ＩＰパケットを転送するルータ装置の前記ＩＰパケットの転送をコンピュータに実行させるＩＰパケット転送プログラムであって、同一の前記サブネット宛の前記ＩＰパケットを予め設定された条件ごとに複数の優先度別バッファに振り分ける優先度別パケット振分ステップと、複数の前記優先度別バッファに蓄積された前記ＩＰパケットを予め設定された順序及びタイミングに基づいて読み出すＩＰパケット読出ステップと、前記ルータ装置に隣接する隣接ルータ装置の輻輳状態をモニタするためのモニタパケットを生成するモニタパケット生成ステップと、前記モニタパケット生成ステップにおいて生成された前記モニタパケットを前記隣接ルータ装置に送出するモニタパケット挿入送出ステップと、前記モニタパケット挿入送出ステップにおいて送出され前記隣接ルータ装置から折り返し送出されてくる前記モニタパケットを受信して当該モニタパケットの遅延時間を求める遅延時間算出ステップと、前記遅延時間に基づいて前記隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて複数の前記優先度別バッファからの前記ＩＰパケットの優先度別の読み出し及び読み出し量を制御するＩＰパケット読出制御ステップと、をコンピュータに実行させるようにした。
【００２７】
このプログラムによれば、隣接ルータ装置に対してモニタパケットを送出することにより、隣接ルータ装置から折り返し送出されてくるモニタパケットを受信して送出から戻ってくるまでの遅延時間を求め、求めた遅延時間に基づいて隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて隣接ルータ装置に転送するＩＰパケットに対する優先制御及び帯域増減制御を行うため、ネットワークの構成、輻輳状態及び隣接ルータ装置に関する情報を与えることなく、隣接ルータ装置の輻輳状態を回避して高品質なパケット伝送が可能となる。
【発明の効果】
【００２８】
以上説明したように、本発明によれば、隣接ルータ装置に対してモニタパケットを送出することにより、隣接ルータ装置から折り返し送出されてくるモニタパケットを受信して送出から戻ってくるまでの遅延時間を求め、求めた遅延時間に基づいて隣接ルータ装置におけるトラヒック状況を推測して推測結果を生成し当該推測結果に基づいて隣接ルータ装置に転送するＩＰパケットに対する優先制御及び帯域増減制御を行うため、ネットワークの構成、輻輳状態及び隣接ルータ装置に関する情報を与えることなく、隣接ルータ装置の輻輳状態を回避して高品質なパケット伝送が可能となる。
【発明を実施するための最良の形態】
【００２９】
本発明の骨子は、隣接するルータ装置に対して折り返し用のモニタパケットを送出し、隣接ルータ装置から折り返されてくるモニタパケットを受信して遅延時間を求め、求めた遅延時間に基づいて隣接ルータ装置におけるトラヒック状況を推測し、その推測結果に基づいてＩＰパケットに対する優先制御及び帯域の増減制御を行うことである。これにより、ネットワークの構成、輻輳状態及び隣接ルータ装置に関する情報を与えることなく、隣接ルータ装置の輻輳状態を回避して高品質なパケット伝送を行うことが可能となる。
【００３０】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００３１】
（実施の形態１）
図１は、本発明の実施の形態１に係るルータ装置を用いたネットワークの構成を示すブロック図である。この図において、本発明の実施の形態１に係るネットワークは、本実施の形態１に係るルータ装置１０１と、従来の一般的なルータ装置１０２〜１０５と、を具備している。
【００３２】
図２は、図１に示すネットワークで輻輳が生じた場合を示す図である。この図２において、ＴＦ１はルータ装置１０１から一般的なルータ装置１０２に対するトラヒックであり、ＴＦ２は他のルータ装置もしくは他ネットワークからのトラヒックである。この図２では、ルータ装置１０２において、ルータ装置１０１からルータ装置１０２に対するトラヒックＴＦ１及び他のルータ装置もしくは他ネットワークからのトラヒックＴＦ２により輻輳が発生している。
【００３３】
図３は、本発明の実施の形態１に係るルータ装置１０１の構成を示すブロック図である。この図３において、ルータ装置１０１は、複数の入力ポート３１０−１〜３１０−ｎと、複数の出力ポート３１１−１〜３１１−ｎと、それぞれの入力及び出力ポートから構成される複数のポート３１２−１〜３１２−ｎと、モニタパケット抽出部３１３と、モニタパケット解析部３１４と、パケットルーティング部３１５と、ルーティングテーブル３１６と、複数のキュー３１７−１〜３１７−ｎと、優先度別パケット振り分け部３１８と、モニタパケット生成部３１９と、タイマシーケンス番号付与部３２０と、遅延時間タイムアウト判定部３２１と、スケジューラ（ＩＰパケット読出制御手段）３２２と、モニタパケット挿入送出部３２４とを備えている。
【００３４】
遅延時間タイムアウト判定部３２１とスケジューラ３２２はスケジューリング部３２３を構成する。複数の入力ポート３１０−１〜３１０−ｎは、それぞれＩＰ（Internet Protocol）パケットの入力を行う。複数の出力ポート３１１−１〜３１１−ｎは、それぞれＩＰパケットの出力を行う。複数のポート３１２−１〜３１２−ｎは、それぞれの入力及び出力ポートから構成される。パケットルーティング部３１５は、ルーティングテーブル３１６に設定されたルーティング情報を用いて出力ポートを決定して、優先度別パケット振り分け部３１８へ転送する。モニタパケット抽出部３１３は、入力ポート３１０−１を介して入力されたＩＰパケットからモニタパケットを抽出する。モニタパケット解析部３１４は、モニタパケット抽出部３１３で抽出されたモニタパケットに付与されているシーケンス番号を解析する。
【００３５】
複数のキュー３１７−１〜３１７−ｎはＩＰパケットの蓄積に使用される。この場合、キュー３１７−１〜３１７−ｎの各々には、ＩＰパケットを優先度別に振り分けて蓄積するために優先度が付与されている。キュー３１７−１は優先度が最も高いキューであり、キュー３１７−ｎは優先度が最も低いキューである。すなわち、キュー３１７−１〜３１７−ｎは、キュー３１７−１からキュー３１７−ｎに向けて除々に優先度が低くなっている。優先度別パケット振り分け部３１８は、同一のサブネット宛のＩＰパケットを予め設定された条件ごとに複数のキュー３１７−１〜３１７−ｎ（優先度別バッファ）に振り分ける。この場合、ＩＰパケットの振り分けは、例えばＩＰパケットのヘッダ、ＴＣＰ（Transmission Control Protocol）ポート又はＲＴＰ（Real Time Transport Protocol）ポート等により振り分ける。
【００３６】
モニタパケット生成部３１９は、隣接するルータ装置の輻輳状態をモニタするためのモニタパケットを生成する。タイマシーケンス番号付与部３２０は、モニタパケット生成部３１９により生成されたモニタパケットにシーケンス番号を付与するとともに、シーケンス番号付与後のモニタパケットを隣接する隣接ルータ装置に向けて発信するタイミングでタイマを起動する。遅延時間タイムアウト判定部３２１は、隣接ルータ装置からモニタパケットが折り返されてきた場合に当該モニタパケットに付与されたシーケンス番号を解析し、解析したシーケンス番号に対応するタイマ値を取得して当該モニタパケットの折り返し時間を計測しその計測結果をスケジューラ３２２に通知する。
【００３７】
スケジューラ３２２は、キュー３１７−１〜３１７−ｎに蓄積されたＩＰパケットを優先度の最も高いＩＰパケットを蓄積したキュー３１７−１から順に読み出しを行うとともに、その読み出しにおいて遅延時間タイムアウト判定部３２１の計測結果に基づいてＩＰパケットの読み出し量を制御する。遅延時間タイムアウト判定部３２１とスケジューラ３２２はスケジューリング部３２３を構成する。
【００３８】
本実施の形態１では、スケジューラ３２２は、モニタパケットの送出から戻ってくるまでの遅延時間が長くなるに従ってＩＰパケットの読み出し量を減少させる。この場合、モニタパケットの遅延時間が長くなるに従って値を大きくした複数の閾値が設定されており、スケジューラ３２２は、複数の閾値の値が大きくなるに従って複数のキュー３１７−１〜３１７−ｎからのＩＰパケット読み出し量を減少させ、タイマ値の制限値内で、受信したモニタパケットの遅延時間より長くかつその遅延時間に最も近い値の閾値に対応する読み出し量で複数のキュー３１７−１〜３１７−ｎからＩＰパケットの読み出しを行い、タイマ値の制限値を超える場合（即ちタイムアウトした場合）には、当該タイマ値の制限値の直前における閾値での読み出し量よりも更に少ない量でＩＰパケットの読み出しを行う。
【００３９】
なお、タイムアウトした場合でもＩＰパケットの読み出しを行う理由は、タイムアウトしても隣接するルータ装置の全データが通らなくなる訳ではないからであり、最優先のキューに割り当てるデータは通信制御に関わるデータや、低遅延が必要とされるデータ即ち重要なデータを想定しているため、タイムアウトした場合でもＩＰパケットの送出を行うようにしている。
【００４０】
次に、本実施の形態１に係るルータ装置の動作について説明する。まず、本実施の形態１に係るルータ装置１０１と一般的なルータ装置１０２が通信を行う場合について説明する。一般的なルータ装置１０２に他からのトラヒックの流入が無い場合、本実施の形態１に係るルータ装置１０１からのトラヒックは一般的なルータ装置１０２にて予め定められたルーティング情報に基づいて全てが転送され、パケット転送の品質は保たれる。
【００４１】
次に、本実施の形態１に係るルータ装置１０１と一般的なルータ装置１０２とが通信を行い、かつ一般的なルータ装置１０２に対し、他のルータ装置（図示略）もしくは他のネットワークからのトラヒックＴＦ２が流入した場合を考える。
【００４２】
一般的なルータ装置１０２において、トラヒックＴＦ１及びＴＦ２が転送許容範囲内であればパケット転送の品質は保たれるが、両者の合計が一般的なルータ装置１０２の転送許容範囲を超えた場合には輻輳が発生し、転送すべきパケットが廃棄されてパケット転送の品質が低下してしまう。本実施の形態１に係るルータ装置１０１は、これを解消するために次のような動作を行う。
【００４３】
図４及び図５は、本実施の形態１に係るルータ装置１０１の動作を説明するためのフロー図である。
【００４４】
まず、本実施の形態１に係るルータ装置１０１の入力ポート３１０−１にはパケットが入力される。このとき、モニタパケット抽出部３１３によりモニタパケット以外であると判定されたパケットはパケットルーティング部３１５に入力される。パケットルーティング部３１５は、ルーティングテーブル３１６に設定されたルーティング情報を用いて出力ポートを決定して、優先度別パケット振り分け部３１８へ転送する。ここでは出力ポート３１１−１に転送されるものとする。優先度別パケット振り分け部３１８は予め設定されたパラメータにより、転送されてきたパケットの優先度を決定して、それぞれの対応した優先度別キュー３１７−１〜３１７−ｎのいずれかに入力する。
【００４５】
スケジューラ３２２は、遅延時間タイムアウト判定部３２１にて指示されたキュー範囲出力指示により、出力対象となっているのがどのキューなのかを認識し、それらのキューから優先度順に予め設定されたタイミングでパケットを順次に読み出して出力ポート３１１−１へ出力する。
【００４６】
モニタパケットに関しては、まず、モニタパケット生成部３１９からのタイマ起動指示によりタイマシーケンス番号付与部３２０が起動される（ステップＳＴ１０）。そして、タイマシーケンス番号付与部３２０が起動することで、タイマ情報とシーケンス番号が得られる（ステップＳＴ１１）。得られたタイマ情報とシーケンス番号に基づき、モニタパケット生成部３１９がシーケンス番号を付与したモニタパケットを生成し（ステップＳＴ１２）、モニタパケット挿入送出部３２４に対してモニタパケット及び挿入指示を与えるとモニタパケット挿入送出部３２４がＩＰパケットにモニタパケットを挿入して出力する（ステップＳＴ１３）。その後、一定の間隔をおいてモニタパケット生成部３１９は上述の動作を繰り返す。すなわち、一定間隔ごとにモニタパケットがＩＰパケットに挿入される。
【００４７】
一方、遅延時間タイムアウト判定部３２１が、モニタパケット生成部３１９より得たタイマ情報及びシーケンス番号と同じタイミングにてタイマ情報及びシーケンス番号を取得し、このタイマ情報に予め設定された値を加えて該シーケンス番号を有するモニタパケットのタイムアウト値として保持する（ステップＳＴ１４）。
【００４８】
遅延時間タイムアウト判定部３２１は、タイマシーケンス番号付与部３２０よりタイマ情報を取得し（ステップＳＴ１５）、シーケンス番号ごとに保持されたそれぞれのタイムアウト値と比較を行う（ステップＳＴ１６）。いずれのタイムアウト値にも該当しない場合には、モニタパケット抽出部３１３にてモニタパケットが抽出されるまで、一定の周期にてタイマ情報を取得してタイマ情報がタイムアウト値以内かどうかのチェックを行う（ステップＳＴ１５、１６、１７）。
【００４９】
タイマ情報を取得した結果、タイマ情報がいずれかのタイムアウト値を超えた場合、ｎ個ある優先度別キューのうちの読み出し対象とするキュー範囲を１（最高優先度）〜（ｎ―ｚ）（ｚは以降に規定されるｍ,ｌとｚ＞ｌ＞ｍとなる適切な値）としてスケジューラ３２２に通知する（ステップＳＴ２６、ステップＳＴ２７）。これに基づきスケジューラ３２２は、優先度の高いキューから予め設定されたタイミングに基づき順次にパケットを読み出して出力ポート３１１−１へ出力する。
【００５０】
その後、遅延時間タイムアウト判定部３２１は、該当するシーケンス番号及びそのシーケンス番号に対応して保持されたタイムアウト値の削除を行う（ステップＳＴ２８）。モニタパケット抽出部３１３にてモニタパケットが抽出された場合、抽出されたモニタパケットがモニタパケット解析部３１４にて解析され（ステップＳＴ１８）、シーケンス番号及び折り返し遅延時間が抽出される（ステップＳＴ１９）。抽出されたシーケンス番号及び折り返し遅延時間は、解析結果として遅延時間タイムアウト判定部３２１に伝えられる。
【００５１】
遅延時間タイムアウト判定部３２１は、折り返し遅延時間が予め設定された第１閾値以内であるかどうかの判定を行い（ステップＳＴ２０）、第１閾値以内である場合にはｎ個ある優先度別キューのうち、読み出し対象とするキュー範囲を１（最高優先度）〜ｎとしてスケジューラ３２２に通知する（ステップＳＴ２３、ステップＳＴ２７）。この通知を受けることで、スケジューラ３２２は優先度の高いキューから予め設定されたタイミングに基づき順次にパケットを読み出して出力ポート３１１−１へ出力する。その後、遅延時間タイムアウト判定部３２１は、該当するシーケンス番号及びそのシーケンス番号に対応して保持されたタイムアウト値の削除を行う（ステップＳＴ２８）。
【００５２】
一方、遅延時間が予め設定された第１閾値を超えている場合、遅延時間タイムアウト判定部３２１は、遅延時間が予め設定された第２閾値以内であるかどうかの判定を行い（ステップＳＴ２１）、第２閾値以内であれば、ｎ個ある優先度別キューのうちの読み出し対象とするキュー範囲を１（最高優先度）〜（ｎ―ｍ）（ｍは以降に規定されるｌとｚ＞ｌ＞ｍとなる適切な値）として、スケジューラ３２２に通知する（ステップＳＴ２４、ステップＳＴ２７）。これに基づきスケジューラ３２２は優先度の高いキューから予め設定されたタイミングの基づき順次にパケットを読み出して出力ポート３１１−１へ出力する。その後、遅延時間タイムアウト判定部３２１は、該当するシーケンス番号及びそのシーケンス番号に対応して保持されたタイムアウト値の削除を行う（ステップＳＴ２８）。
【００５３】
このようにして、折り返し遅延時間と各閾値との比較を行い、遅延時間タイムアウト判定部３２１は、折り返し遅延時間が予め設定された第Ｎ閾値以内であるかどうかの判定を行い（ステップＳＴ２２）、第Ｎ閾値以内であった場合、ｎ個ある優先度別キューのうち読み出し対象とするキュー範囲を１（最高優先度）〜（ｎ―ｌ）（ｌはｚ＞ｌ＞ｍとなる適切な値）として、スケジューラ３２２に通知する（ステップＳＴ２５、ステップＳＴ２７）。これに基づきスケジューラ３２２は、優先度の高いキューから予め設定されたタイミングに基づき順次にパケットを読み出して出力ポート３１１−１へ出力する。その後、遅延時間タイムアウト判定部３２１は、該当するシーケンス番号及びそのシーケンス番号に対応して保持されたタイムアウト値の削除を行う（ステップＳＴ２８）。
【００５４】
折り返し遅延時間が予め設定された第Ｎ閾値を超えている場合には、遅延時間タイムアウト判定部３２１は、ｎ個ある優先度別キューのうちの読み出し対象とするキュー範囲を１（最高優先度）〜（ｎ―ｚ）としてスケジューラ３２２に通知する（ステップＳＴ２６、ステップＳＴ２７）。これに基づきスケジューラ３２２は優先度の高いキューから予め設定されたタイミングに基づき順次にパケットを読み出して出力ポート３１１−１へ出力する。その後、遅延時間タイムアウト判定部３２１は、該当するシーケンス番号及びそのシーケンス番号に対応して保持されたタイムアウト値の削除を行う（ステップＳＴ２８）。
【００５５】
このように、本実施の形態１に係るルータ装置１０１においては、当該ルータ装置１０１に隣接する隣接ルータ装置の輻輳状態をモニタするためのモニタパケットにシーケンス番号を付与した上で送出し、さらにモニタパケットを送出するタイミングでシーケンス番号に対応したタイマを起動し、また、このタイマを監視して予め設定された制限値以内であれば、自身の発出したモニタパケットが折り返されてきた場合に、そのモニタパケットを受信してシーケンス番号を解析し、対応するタイマ値を取得する。そして、本実施の形態１に係るルータ装置１０１においては、このタイマ値によりモニタパケットの遅延時間を計測してこれをスケジューリング部３２３に通知し、タイマの計測結果が予め設定された制限値を超えた場合に、自身の発出したモニタパケットが折り返されたか否かに関わらずこの結果をスケジューリング部３２３に通知する。次に、本実施の形態１に係るルータ装置１０１においては、スケジューリング部３２３は、優先度別のキューをｎ個とした場合、通知されたモニタパケットの折り返し時間情報及びタイムアウト情報に応じた複数の閾値判別を行って、次のように制御する。
【００５６】
すなわち、本実施の形態１に係るルータ装置１０１においては、折り返し遅延時間が第１の閾値以内である場合にｎ個の優先度別のキューから優先順位ごとにＩＰパケットを読み出して予め設定されたタイミングに基づいてこれを出力する。また、本実施の形態１に係るルータ装置１０１においては、折り返し遅延時間が第２の閾値以内である場合に優先度の最も高いキューからｎ―ｍ個（ｍはｎ＞ｍであり、第２の閾値に対応した任意の値）までのキューから優先順位ごとにＩＰパケットを読み出して予め設定されたタイミングに基づいてこれを出力する。
【００５７】
また、本実施の形態１に係るルータ装置１０１においては、折り返し遅延時間が第Ｎの閾値以内である場合に優先度の最も高いキューからｎ―ｌ個（ｌはｎ＞ｌ＞ｍであり、第Ｎの閾値に対応した任意の値）までのキューから優先順位ごとにＩＰパケットを読み出して予め設定されたタイミングに基づいてこれを出力し、タイムアウト情報が通知された場合に優先度の最も高いキューからｎ―ｚ個（ｌはｎ＞ｚ＞ｌ＞ｍであり、タイムアウト情報に対応した任意の値）までのキューから優先順位ごとにＩＰパケットを読み出して予め設定されたタイミングに基づいてこれを出力する。したがって、また、本実施の形態１に係るルータ装置１０１においては、ネットワークの構成、輻輳状態及び隣接ルータ装置に関する情報を予め与えることなく、自律的にトラヒック状況を推測して優先制御及び帯域の増減制御を行って隣接ルータ装置の輻輳状態を回避することが可能となる。
【００５８】
その結果、隣接ルータ装置がネットワーク状態の変化により輻輳状態となった場合でも、自律的にトラヒック状況を推測して優先制御及び帯域の増減制御を行って隣接ルータ装置の輻輳状態を回避して高品質なパケット伝送を行うことができる。
【００５９】
なお、ＲＦＣ７９２にて規定されるＩＣＭＰ（Internet Control Message Protocol）エコー要求メッセージの送信及びエコー応答メッセージの受信を行う所謂ピング（Ｐｉｎｇ：Packet InterNetwork Groper）コマンドを実装し当該ピングコマンドをデフォルトゲートウェイ設定にて予め与えられている隣接ルータ装置のＩＰアドレスを用いてモニタパケットに関する送受信処理を行うことにより、モニタパケットを送受信するための専用の手段が不要となり、ネットワークの構成、輻輳状態及び隣接ルータ装置に関する情報を与えることなく、隣接ルータ装置の輻輳状態を回避して高品質なパケット伝送を可能としながらも、価格の上昇を最小限に抑えることができる。
【００６０】
なお、本実施の形態１では、入力ポート３１０―１から、出力ポート３１１―１へパケットが転送される場合について記述したが、任意の入力ポートから任意の出力ポートへパケットが転送される場合も同様に実施可能である。
【００６１】
（実施の形態２）
次に、本発明の実施の形態２について、図面を参照して詳細に説明する。図６は、本発明の実施の形態２に係るルータ装置の構成を示すブロック図である。本発明の実施の形態２においては、本発明の実施の形態１と同じ構成要素には同じ参照符号が付されてその説明が省略される。
【００６２】
図６に示すように、本発明の実施の形態２に係るルータ装置６００は、本発明の実施の形態１に係るルータ装置１０１において、モニタパケット挿入送出部３２４の代わりにモニタパケット挿入送出部６０１を具備している。
【００６３】
すなわち、本発明の実施の形態２に係るルータ装置６００は、複数の入力ポート３１０−１〜３１０−ｎと、複数の出力ポート３１１−１〜３１１−ｎと、それぞれの入力及び出力ポートから構成される複数のポート３１２−１〜３１２−ｎと、モニタパケット抽出部３１３と、モニタパケット解析部３１４と、パケットルーティング部３１５と、ルーティングテーブル３１６と、複数のキュー３１７−１〜３１７−ｎと、優先度別パケット振り分け部３１８と、モニタパケット生成部３１９と、タイマシーケンス番号付与部３２０と、遅延時間タイムアウト判定部３２１と、スケジューラ（ＩＰパケット読出手段）３２２と、モニタパケット挿入送出部６０１と、を備えている。
【００６４】
モニタパケット挿入送出部６０１は、モニタパケット生成部３１９からモニタパケット及び挿入指示を受けて、転送するＩＰパケットがないタイミングでモニタパケットを隣接ルータ装置に送出するものである。本発明の実施の形態２に係るルータ装置６００におけるモニタパケット挿入送出部６０１以外の構成は、本発明の実施の形態１に係るルータ装置１０１と同じである。
【００６５】
このように、本発明の実施の形態２においては、本発明の実施の形態１の効果に加えて、転送するＩＰパケットがないタイミングでモニタパケットを隣接ルータ装置に送出するため、転送するＩＰパケットの流れを乱すことを防止することができる。
【００６６】
（実施の形態３）
次に、本発明の実施の形態３について、図面を参照して詳細に説明する。図７は、本発明の実施の形態３に係るルータ装置の構成を示すブロック図である。本発明の実施の形態３においては、本発明の実施の形態１と同じ構成要素には同じ参照符号が付されてその説明が省略される。
【００６７】
図７に示すように、本発明の実施の形態３に係るルータ装置７００は、本発明の実施の形態１に係るルータ装置１０１において、遅延時間算出部７０１を追加してなる。
【００６８】
すなわち、本発明の実施の形態３に係るルータ装置７００は、複数の入力ポート３１０−１〜３１０−ｎと、複数の出力ポート３１１−１〜３１１−ｎと、それぞれの入力及び出力ポートから構成される複数のポート３１２−１〜３１２−ｎと、モニタパケット抽出部３１３と、モニタパケット解析部３１４と、パケットルーティング部３１５と、ルーティングテーブル３１６と、複数のキュー３１７−１〜３１７−ｎと、優先度別パケット振り分け部３１８と、モニタパケット生成部３１９と、タイマシーケンス番号付与部３２０と、遅延時間タイムアウト判定部３２１と、スケジューラ（ＩＰパケット読出手段）３２２と、モニタパケット挿入送出部３２４と、遅延時間算出部７０１と、を備えている。
【００６９】
遅延時間算出部７０１は、モニタパケット解析部３１４の出力端子と遅延時間タイムアウト判定部３２１の入力端子との間に接続されている。遅延時間算出部７０１は、モニタパケットの遅延時間の複数回の算出値の平均値を算出して当該平均値をモニタパケットの遅延時間として遅延時間タイムアウト判定部３２１に与える。遅延時間タイムアウト判定部３２１は、前述のように、複数の閾値と、モニタパケットの遅延時間の複数回の算出値の平均値とを比較して判定する。本発明の実施の形態３に係るルータ装置７００における遅延時間算出部７０１以外の構成は、本発明の実施の形態１に係るルータ装置１０１と同じである。
【００７０】
次に、本実施の形態３に係るルータ装置７００の動作について、図７と共に図８及び図９を参照して説明する。図８及び図９は、本実施の形態３に係るルータ装置７００の動作を説明するためのフロー図である。
【００７１】
図８において、ステップＳＴ１０からステップＳＴ１９までの動作は、前述のように実行される。ステップＳＴ１６においてタイムアウトである時には、図９のステップＳＴ２６に行き、前述のステップＳＴ２６からステップＳＴ２８を実行する。
【００７２】
ステップＳＴ１９の後に、遅延時間算出部７０１は、モニタパケットの遅延時間の複数回の算出値の平均値を算出する（ステップＳＴ８０１）。次に、ステップＳＴ８０２において、遅延時間算出部７０１は、Ｘ回の平均値の算出の完了か否かを判断する。ステップＳＴ８０２においてＸ回の平均値の算出の完了でない時には、ステップＳＴ１５に戻る。また、ステップＳＴ８０２においてＸ回の平均値の算出の完了である時には、図９のステップＳＴ２０に行き、前述のテップＳＴ２０からステップＳＴ２８を実行する。
【００７３】
なお、本発明の実施の形態３は、本発明の実施の形態２に適用することができる。
【００７４】
このように、本発明の実施の形態３においては、本発明の実施の形態１、２のいずれかの効果に加えて、モニタパケットの遅延時間の複数回の算出値の平均値を算出して当該平均値をモニタパケットの遅延時間として用いるため、遅延時間タイムアウト判定部３２１による判定動作を安定させることができから、ＩＰパケットの読み出し量の制御を安定させることができる。
【００７５】
（実施の形態４）
次に、本発明の実施の形態４について、図面を参照して詳細に説明する。図１０は、本発明の実施の形態４に係るルータ装置の構成を示すブロック図である。本発明の実施の形態４においては、本発明の実施の形態１と同じ構成要素には同じ参照符号が付されてその説明が省略される。
【００７６】
図１０に示すように、本発明の実施の形態４に係るルータ装置１０００は、本発明の実施の形態１に係るルータ装置１０１において、遅延時間タイムアウト判定部３２１の代わりに遅延時間タイムアウト判定部１００１を具備している。
【００７７】
すなわち、本発明の実施の形態４に係るルータ装置１０００は、複数の入力ポート３１０−１〜３１０−ｎと、複数の出力ポート３１１−１〜３１１−ｎと、それぞれの入力及び出力ポートから構成される複数のポート３１２−１〜３１２−ｎと、モニタパケット抽出部３１３と、モニタパケット解析部３１４と、パケットルーティング部３１５と、ルーティングテーブル３１６と、複数のキュー３１７−１〜３１７−ｎと、優先度別パケット振り分け部３１８と、モニタパケット生成部３１９と、タイマシーケンス番号付与部３２０と、遅延時間タイムアウト判定部１００１と、スケジューラ（ＩＰパケット読出手段）３２２と、モニタパケット挿入送出部３２４とを備えている。
【００７８】
遅延時間タイムアウト判定部１００１は、前回に使用された閾値を中心値とした一定範囲の値である閾値範囲を設定し、新たに算出したモニタパケットの遅延時間が前記閾値範囲内であるか否かを判定して閾値範囲内判定結果を生成しスケジューラ３２２に通知する。スケジューラ３２２は、新たに算出した前記モニタパケットの遅延時間が前記閾値範囲内であることを前記閾値範囲内判定結果が示している時にＩＰパケットの読み出し量を変更しない。本発明の実施の形態４に係るルータ装置１０００のおける遅延時間タイムアウト判定部１００１以外の構成は、本発明の実施の形態４に係るルータ装置１０１と同じである。
【００７９】
次に、本実施の形態４に係るルータ装置１０００の動作について、図１０と共に図１１及び図１２を参照して説明する。図１１及び図１２は、本実施の形態４に係るルータ装置１０００の動作を説明するためのフロー図である。
【００８０】
図１１において、ステップＳＴ１０からステップＳＴ１９までの動作は、前述のように実行される。ステップＳＴ１６においてタイムアウトである時には、図１２のステップＳＴ２６に行き、前述のステップＳＴ２６からステップＳＴ２８を実行する。
【００８１】
ステップＳＴ１９の後に、遅延時間タイムアウト判定部１００１は、前回に使用された閾値を中心値とした一定範囲の値である閾値範囲を設定する（ステップＳＴ１１０１）。次に、ステップＳＴ１１０２において、遅延時間タイムアウト判定部１００１は、新たに算出したモニタパケットの遅延時間が閾値範囲内であるか否かを判定し、閾値範囲内判定結果を生成しスケジューラ３２２に通知する。
【００８２】
ステップＳＴ１１０２において新たに算出したモニタパケットの遅延時間が閾値範囲内である時に、ＩＰパケットの読み出し量を変更しない（ステップＳＴ１１０３）。ステップＳＴ１１０２において新たに算出したモニタパケットの遅延時間が閾値範囲内でない時には、図１２のステップＳＴ２０に行き、前述のテップＳＴ２０からステップＳＴ２８を実行する。
【００８３】
なお、本発明の実施の形態４は、本発明の実施の形態２、３に適用することができる。
【００８４】
このように、本発明の実施の形態４においては、本発明の実施の形態１、２、３のいずれかの効果に加えて、遅延時間タイムアウト判定部１００１が、前回に使用された閾値を中心値とした一定範囲の値である閾値範囲を設定し、新たに算出した前記モニタパケットの遅延時間が前記閾値範囲内であるか否かを判定するため、遅延時間タイムアウト判定部３２１による判定動作を安定させることができるから、ＩＰパケットの読み出し量の制御を安定させることができる。
【００８５】
なお、本発明は、本発明の実施の形態１〜４の動作をコンピュータに実行させるプログラムを含むものである。
【産業上の利用可能性】
【００８６】
本発明は、ＩＰパケットを転送するシステムなどに適用することができる。
【図面の簡単な説明】
【００８７】
【図１】本発明の実施の形態１に係るルータ装置を用いたネットワークの構成の一例を示すブロック図
【図２】本発明の実施の形態１に係るルータ装置を用いたネットワークで輻輳が発生した場合の一例を示すブロック図
【図３】本発明の実施の形態１に係るルータ装置の構成を示すブロック図
【図４】本発明の実施の形態１に係るルータ装置の動作を説明するためのフロー図
【図５】本発明の実施の形態１に係るルータ装置の動作を説明するための他のフロー    図
【図６】本発明の実施の形態２に係るルータ装置の構成を示すブロック図
【図７】本発明の実施の形態３に係るルータ装置の構成を示すブロック図
【図８】本発明の実施の形態３に係るルータ装置の動作を説明するためのフロー図
【図９】本発明の実施の形態３に係るルータ装置の動作を説明するための他のフロー    図
【図１０】本発明の実施の形態４に係るルータ装置の構成を示すブロック図
【図１１】本発明の実施の形態４に係るルータ装置の動作を説明するためのフロー図
【図１２】本発明の実施の形態４に係るルータ装置の動作を説明するための他のフロー    図
【符号の説明】
【００８８】
１０１〜１０５、６００、７００、１０００  ルータ装置
３１３  モニタパケット抽出部
３１４  モニタパケット解析部
３１５  パケットルーティング部
３１６  ルーティングテーブル
３１７−１〜３１７−ｎ  キュー
３１８  優先度別パケット振り分け部
３１９  モニタパケット生成部
３２０  タイマシーケンス番号付与部
３２１、１００１  遅延時間タイムアウト判定部
３２２  スケジューラ（ＩＰパケット読出制御手段）
３２３  スケジューリング部
３２４、６０１  モニタパケット挿入送出部
７０１  遅延時間算出部
【図１】
2004282705.tif 000003
【図２】
2004282705.tif 000004
【図３】
2004282705.tif 000005
【図４】
2004282705.tif 000006
【図５】
2004282705.tif 000007
【図６】
2004282705.tif 000008
【図７】
2004282705.tif 000009
【図８】
2004282705.tif 000010
【図９】
2004282705.tif 000011
【図１０】
2004282705.tif 000012
【図１１】
2004282705.tif 000013
【図１２】
2004282705.tif 000014