(57)【要約】      （修正有）【課題】  設定されたルートに転送されるトラフィックパケットの混雑に起因して発生するトラフィックパケットの流失を低減するためのネットワークルーティング方法及び装置を提供する。【解決手段】  同一目的地に対するベストルート及びセカンドルートを設定する第１ステップと、入力されるパケットに対する経路を、前記設定したベストルート及びセカンドルートを参照して決定する第２ステップと、前記ベストルート及びセカンドルートに対応するベストルート及びセカンドルートの出力キューが混雑しているか否か態に応じて、前記入力されたパケットを前記ベストルート及びセカンドルートの出力キューに選択的にキューイングする第３ステップと、前記ベストルート及びセカンドルートの出力キューに格納されるパケットを、入力される順序に応じて順次に該当経路の出力ポートに出力転送する第４ステップと、を備える。【選択図】  図５
2006217597.tif 000002
【特許請求の範囲】
【請求項１】
パケットの流失を抑制するためのネットワークルーティング方法であって、
同一目的地に対するベストルート及びセカンドルートを設定する第１ステップと、
入力されるパケットに対するルートを、前記第１ステップで設定したベストルート及びセカンドルートを参照して決定する第２ステップと、
前記ベストルート及びセカンドルートの出力キューが混雑しているか否かに応じて、前記入力されたパケットを前記ベストルート及びセカンドルートの出力キューに選択的に出力する第３ステップと、
前記ベストルート及びセカンドルートの出力キューに格納されるパケットを、入力される順序に応じて順次に該当ルートの出力ポートに出力転送する第４ステップと、を備えることを特徴とするネットワークルーティング方法。
【請求項２】
前記第３ステップは、
前記決定されたベストルートに基づいて前記ベストルートの出力キューを、前記パケットを出力するためのキューに選択するステップと、
前記ベストルートの出力キューがパケットで混雑しているか否かを判別するステップと、
前記ベストルートの出力キューが混雑状態の場合には、前記セカンドルートの出力キューを前記入力されたパケットを出力するためのキューに決定するステップと、
前記セカンドルートの出力キューがパケットで混雑しているか否かを判別するステップと、
前記セカンドルートのキューが混雑状態でない場合には、前記入力されたパケットを前記セカンドルートの出力キューに出力するステップと、を備えることを特徴とする請求項１に記載のネットワークルーティング方法。
【請求項３】
前記第３ステップは、
前記セカンドルートの出力キューが混雑状態の場合には、前記入力されたパケットを破棄するステップをさらに備えることを特徴とする請求項２に記載のネットワークルーティング方法。
【請求項４】
前記第３ステップは、
前記入力されるパケットを前記セカンドルートの出力キューに出力する場合において、前記セカンドルートの出力キューのパケット累積個数が設定された最大閾値以上か否かを判別するステップと、
前記セカンドルートの出力キューのパケット累積個数が前記最大閾値以上の場合には、前記セカンドルートの出力キューが混雑状態であると判別するステップと、をさらに備えることを特徴とする請求項２に記載のネットワークルーティング方法。
【請求項５】
前記第３ステップは、
前記ベストルートの出力キューが混雑状態でない場合には、前記入力されたパケットを前記ベストルートの出力キューに出力するステップと、
前記入力されるパケットを前記ベストルートの出力キューに出力する場合において、前記ベストルートの出力キューのパケット累積個数が設定された最大閾値以上か否かを判別するステップと、
前記ベストルートの出力キューのパケット累積個数が前記最大閾値以上の場合には、前記ベストルートの出力キューが混雑状態であると判別するステップと、をさらに備えることを特徴とする請求項２に記載のネットワークルーティング方法。
【請求項６】
前記第４ステップは、
前記ベストルート及び前記セカンドルートの出力キューに入力された順序に基づいて、引き出すためのパケットが格納されているキューを決定するステップと、
前記決定されたキューに格納されているパケットを引き出して、該当出力ポートに出力転送するステップと、
前記決定されたキューの累積パケット個数が設定された最小閾値以下か否かを判別するステップと、
前記決定されたキューの累積パケット個数が前記最小閾値以下の場合には、前記決定されたキューが混雑状態でないと判別するステップと、を備えることを特徴とする請求項１に記載のネットワークルーティング方法。
【請求項７】
ネットワークルーティング装置において、
同一目的地に対するベストルート及びセカンドルートに関する情報を示すフォワーディングテーブルが格納されているフォワーディングデータベースと、
前記フォワーディングテーブルを参照して、入力されるパケットに対するベストルート及びセカンドルートを決定するフォワーディング部と、
前記ベストルート及びセカンドルートに対応する出力キューがパケットで混雑しているか否かに応じて、前記入力されたパケットを前記ベストルート及びセカンドルート出力キューに選択的に出力するキュー管理部と、
前記ベストルート及びセカンドルートの出力キューに出力されて格納されたパケットを、入力される順序に応じて順次に該当経路の出力ポートに出力転送する転送部と、を備えることを特徴とするネットワークルーティング装置。
【請求項８】
前記ベストルート及びセカンドルートの出力キューが混雑状態にあるか否かを示す情報及び現在該当ルートの出力キューに格納されているパケットの個数情報を含むキュー状態情報が格納されるキュー情報格納部をさらに備え、
前記キュー管理部は、前記キュー状態情報に基づいて前記入力されたパケットを前記ベストルート及びセカンドルートの出力キューに選択的に出力することを特徴とする請求項７に記載のネットワークルーティング装置。
【請求項９】
前記キュー管理部は、前記フォワーディング部で決定された前記ベストルートの出力キューが混雑状態の場合には、前記セカンドルートの出力キューを前記入力されたパケットを出力するためのキューに決定し、前記セカンドルートの出力キューが混雑状態でない場合には、前記入力されたパケットを前記セカンドルートの出力キューに出力することを特徴とする請求項８に記載のネットワークルーティング装置。
【請求項１０】
前記キュー管理部は、前記セカンドルートの出力キューが混雑状態の場合には、前記入力されたパケットを破棄することを特徴とする請求項９に記載のネットワークルーティング装置。
【請求項１１】
前記キュー管理部は、前記入力されるパケットを前記セカンドルートの出力キューに出力する場合であって、前記セカンドルートの出力キューのパケット累積個数が設定された最大閾値以上の場合には、前記セカンドルートの出力キューが混雑状態であると判別することを特徴とする請求項９に記載のネットワークルーティング装置。
【請求項１２】
前記キュー管理部は、前記ベストルートの出力キューが混雑状態でない場合には、前記入力されたパケットを前記ベストルートの出力キューに出力し、前記入力されるパケットを前記ベストルートの出力キューに出力する場合であって、前記ベストルートの出力キューのパケット累積個数が設定された最大閾値以上の場合には、前記ベストルートの出力キューが混雑状態であると判別することを特徴とする請求項９に記載のネットワークルーティング装置。
【請求項１３】
前記転送部は、前記ベストルート及び前記セカンドルートの出力キューに入力された順序に応じて、この出力キューに格納されているパケットを引き出して、該当出力ポートに出力転送することを特徴とする請求項７に記載のネットワークルーティング装置。
【請求項１４】
前記転送部は、前記パケットが引き出されるルートの出力キューの累積パケット個数が設定された最小閾値以下の場合には、前記パケットが引き出されるルートの出力キューが混雑状態でないと判別することを特徴とする請求項１３に記載のネットワークルーティング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークルーティング方法及び装置に関し、より詳細には、設定されたルートを介してＩＰパケット｛ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）Ｐａｃｋｅｔ｝を転送する場合において、ＩＰパケットを一時的に格納するキューにＩＰパケットを格納しすぎることによって、その後に発生するＩＰパケットの流失を低減するためのネットワークルーティング方法及び装置に関するものである。
【背景技術】
【０００２】
現在、インターネットユーザの急増、提供サービスの多様化及びＶｏＩＰ（Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）などの利用分野の拡大などに伴って、インターネット上に幾何級数的なトラフィックの急増がもたらされている。このため、インターネット上でＩＰパケットを目的地に短時間に転送するためには、特に数十ギガまたはテラ級の高速ルータの場合、該当パケットの目的地に対する経路を遅延無く最短時間内に発見し、フォワーディングしなければならない。このために、ルータ各々の物理的入力インタフェースを介して伝達されるＩＰパケットの目的地への経路を捜し出すために、最短経路（ルーティングまたはフォワーディング）テーブルの維持、効率的な経路テーブル管理及び検索時間短縮などの機能が必ず要求されている。
【０００３】
次世代インターネットに要求される特性のうち１つは、高い信頼性である。高い付加価値を有するｍｉｓｓｉｏｎ−ｃｒｉｔｉｃａｌ  ｔｒａｆｆｉｃ、ｒｅａｌ−ｔｉｍｅ  ｔｒａｆｆｉｃ、及びｈｉｇｈ−ｐｒｉｏｒｉｔｙ  ｔｒａｆｆｉｃなどの増加により、これらのトラフィックを常に安定的にサービスするための必要性が増大している。また、ネットワークが高速且つ大容量に発展することに応じて、さらに多くのデータを転送するようになり、障害発生時に、サービスの中断による被害とデータの損失が非常に大きく現れるようになる。したがって、ネットワークに障害が発生したときに、早い時間内にこれを感知し、サービスを早い時間内に復元して、継続的なサービスを提供するための効率的で且つ効果的なメカニズムが、次世代インターネットには基本的に要求される。
【０００４】
一般的に、ネットワークのリンクに障害が発生したとき、どれほど効果的にサービスを復元させるかについて多くの研究が行われている。図１は、特定の目的地に対して１つ以上の経路を有するネットワーク構成の一例を示す図である。
【０００５】
図１に示されるように、ルータ２０は、ソース（Ｓ１）１２、ソース（Ｓ２）１４に対して各々コスト費用が最も少ないベストルートを設定する。図１で、ソース（Ｓ１）１２から目的地（Ｄ）３６への経路は、第１網１６−ルータ２０−第３網３２を経た経路に設定にしたり、第１網１６−ルータ２０−第４網３４を経た経路に設定にしたりすることができる。また、ソース（Ｓ２）１４から目的地３６（Ｄ）への経路は、第２網１８−ルータ２０−第３網３２を経た設定にしたり、第２網１８−ルータ２０−第４網３４を経た設定にしたりすることができる。
【０００６】
図１で、ソース（Ｓ１）１２に対するベストルートは、第１網１６−ルータ２０−第３網３２−目的地（Ｄ）３６であり、ソース（Ｓ２）１４に対するベストルートは、第２網１８−ルータ２０−第３網３２−目的地（Ｄ）３６であるとする。
【０００７】
図２は、多重目的地経路を有するネットワークにおいて、障害発生によるルート変更を行う例を示す図である。
【０００８】
図２に示されるように、設定されたベストルートにおいて、ルータ２０と第３網３２との間にネットワーク障害が発生した場合には、ルータ２０は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）階層でＩＧＰ（Ｉｎｔｅｒｉｏｒ  Ｇａｔｅｗａｙ  Ｐｒｏｔｏｃｏｌ）に基づいてルート変更を行い、ネットワークの障害を回復させる。この際、ＩＰＧの例としては、ＯＳＰＦ（Ｏｐｅｎ  Ｓｈｏｒｔ  Ｐａｔｈ  Ｆｉｒｓｔ）、ＩＳＩＳが挙げられる。
【０００９】
ルータ２０は、現在ネットワークトポロジー情報を用いて最適の経路に入力されるＩＰパケットを、設定したルートに転送する。この際、ネットワークリンクに障害が発生すれば、ルータ２０は、ネットワーク障害情報（Ｌｉｎｋ  Ｓｔａｔｅ  Ａｄｖｅｒｔｉｓｅｍｅｎｔ）をネットワークにフラッディングさせ、ＳＰＦ（Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ）アルゴリズムを駆動させて、最適の経路をさらに計算し、ベストルートを設定し、設定したベストルートにＩＰパケットを転送する。
【００１０】
このような方式は、ネットワーク資源を效率的に利用し、トポロジーの変化に柔軟に適応させことができるが、ルーティングの不安定を考慮した様々なタイマーによって復元速度がかなり遅い（数秒〜数分）という短所がある。
【００１１】
このような短所を克服するために、タイマーを最小限に設定する方法が提案されているが、制御トラフィックの増加やルーティングの不安定の危険があるために、実際には利用されていない。
【００１２】
上述したように、ベストルートに設定されたネットワーク経路に障害が発生した場合には、これを復元する時間の間に流失されるＩＰパケットを低減するために、ベストルートとベストルートの次に好ましいルートであるセカンドルートを設定する方案が提案されている。
【００１３】
図３は、ベストルート及びセカンドルートを設定するためのルータの例を示す図である。参考として、図３に示すルータは、図１及び図２に示すネットワークに配置されたルータ２０と同じ位置に配置されるものとして説明する。
【００１４】
図３に示すように、ルータは、ソース（Ｓ１）１２、ソース（Ｓ２）１４に対して各々コスト費用が最も少ないベストルート及び、ベストルートの次にコスト費用が少ないセカンドルートを設定する。この際、ルータは、設定したベストルート及びセカンドルートの情報をフォワーディングテーブルとして構成し、フォワーディングＤＢ（ＤａｔａＢａｓｅ）に格納する。
【００１５】
図３において、ソースＳ１（１２）の目的地（Ｄ）３６への経路は、第１網１６−ルータ２０−第３網３２を経た経路に設定されるか、または第１網１６−ルータ２０−第４網３４を経た経路に設定される。また、ソースＳ２（１４）の目的地（Ｄ）３６への経路は、第２網１８−ルータ２０−第３網３２を経た経路に設定されるか、または第２網１８−ルータ２０−第４網３４を経た経路に設定される。
【００１６】
図３において、ソース（Ｓ１）１２に対するベストルートは、第１網１６−ルータ２０−第３網３２−目的地（Ｄ）３６の経路に設定され、セカンドルートは、第１網１６−ルータ２０−第４網３４−目的地（Ｄ）３６の経路に設定されている。また、ソース（Ｓ２）１４に対するベストルートは、第２網１８−ルータ２０−第３網３２−目的地（Ｄ）３６の経路に設定され、セカンドルートは、第２網１８−ルータ２０−第４網３４−目的地（Ｄ）３６の経路に設定されている。
【００１７】
フォワーディング部２１は、入力されるＩＰパケットから目的地アドレスを検出し、検出した目的地アドレスに対するベストルート及びセカンドルートを、フォワーディングデータベース２２を参照して得る。この際、フォワーディング部２１は、ＩＰパケットにルート情報（ベストルート及びセカンドルートに関する情報）を含ませてキュー管理部２３に転送する。
【００１８】
キュー管理部２３は、入力されるＩＰパケットに含まれたルート情報に応じて、ＩＰパケットをベストキュー（ベストルートに対応するキュー）２４に出力する。転送部２６は、ベストキュー２４からＩＰパケットを引き出し、出力インタフェースポート（ｐｏｒｔ  ０）２７を介してルーティング転送する。
【００１９】
この場合において、ベストルートに障害が発生すれば、キュー管理部２３は、入力されるＩＰパケットをセカンドキュー（セカンドルートに対応するキュー）２５に出力する。これにより、転送部２６は、セカンドキュー２５からＩＰパケットを引き出し、出力インタフェースポート（ｐｏｒｔ  １）２８を介してルーティング転送する。
【００２０】
ところが、ネットワーク障害が発生しない状況でも、特定の経路のキューに対するパケット入力の混雑に起因して、以後に該当キューに入力されるパケットが流失されるようになる。
【００２１】
図４は、パケットの混雑に起因してパケットが流失される例を示すブロック図である。
【００２２】
図４に示すように、ネットワーク障害が発生しない状況であって、ベストキュー２４へのパケット入力の混雑に起因した混雑が発生した場合には（Ｑｕｅｕｅ＝Ｆｕｌｌ）、ベストキュー２４にパケットが格納されすぎているため、以後に入力されるパケットは流失されるという問題点がある。
【００２３】
ＳＰＦアルゴリズムなどによって構築された最適の経路に該当するリンクにおいて、ユーザトラフィックによって混雑し、トラフィックパケットの量が最適の経路に該当するリンクの転送速度を超過する場合には、超過する量だけのユーザトラフィックパケットが流失される（図４におけるベストキュー２４の場合）。このようなユーザトラフィックパケットの流失は、ネットワークの終端間にデータ再転送を誘発し、サービスの品質を低下させる重要な問題点となる。
【００２４】
すなわち、最適の経路に該当するリンク（図４におけるベストキュー２４）においてトラフィックが混雑して、該当リンクに接続されるポート毎に有している格納可能な空間であるパケットのキューが全て消耗されたとき（Ｑｕｅｕｅ＝Ｆｕｌｌ）、キュー管理部２３は、以後に入力される該当トラフィックパケットを破棄する。
【００２５】
一方、ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｉｇｎａｌ）の観点から、このようなトラフィックパケットの混雑に対処するために、混雑回避のいろいろな方式が提示されている。このような混雑を回避するために、ＴＤ（Ｔａｉｌ  Ｄｒｏｐ）、ＲＥＤ（Ｒａｎｄｏｍ  Ｅａｒｌｙ  Ｄｒｏｐ）、及びＷＲＥＤ（Ｗａｉｔｅｄ  Ｒａｎｄｏｍ  Ｅａｒｌｙ  Ｄｒｏｐ）のようなアルゴリズムが現在広く使われている。しかし、このような方式は、トラフィックパケットを效果的に破棄することだけに焦点を合せているため、基本的にトラフィックパケットの流失を認定する技術であると考えられる。
【００２６】
したがって、トラフィックパケットの流失に起因して発生し得るサービスの中断による被害とデータの損失を減少させ、より安定したサービスを提供するための方案が要求される。
【発明の開示】
【発明が解決しようとする課題】
【００２７】
本発明は、前述のような問題点を解決するためになされたもので、本発明の目的は、設定されたルートに転送されるトラフィックパケットの混雑に起因して発生するトラフィックパケットの流失を低減するためのネットワークルーティング方法及び装置を提供することにある。
【００２８】
本発明の他の目的は、同一目的地に対してベストルート及びセカンドルートが設定されている状態で、ベストルートに転送されるトラフィックパケットの流失を低減するためのネットワークルーティング方法及び装置を提供することにある。
【００２９】
本発明のさらに他の目的は、ベストルート及びセカンドルートを用いて、トラフィックの混雑に起因するトラフィックパケットの流失を低減するためのネットワークルーティング方法及び装置を提供することにある。
【課題を解決するための手段】
【００３０】
上記目的を達成するために、本発明に係るネットワークルーティング方法は、パケットの流失を抑制するためのネットワークルーティング方法であって、同一目的地に対するベストルート及びセカンドルートを設定する第１ステップと、入力されるパケットに対するルートを、第１ステップで設定したベストルート及びセカンドルートを参照して決定する第２ステップと、ベストルート及びセカンドルートにおける出力キューがパケットで混雑しているか否かに応じて、入力されたパケットをベストキュー及びセカンドキューに選択的に出力する第３ステップと、ベストキュー及びセカンドキューに出力されて格納されたパケットを、入力される順序に応じて順次に該当経路の出力ポートに出力転送する第４ステップと、を備える。
【００３１】
好ましくは、第３ステップは、決定されたベストルートに基づいてベストルートの出力キューを、パケットを出力するための出力キューに選択するステップと、ベストルートの出力キューがパケットで混雑しているか否かを判別するステップと、ベストルートの出力キューが混雑状態の場合には、セカンドルートの出力キューを入力されたパケットを出力するためのキューに決定するステップと、セカンドルートの出力キューがパケットで混雑しているか否かを判別するステップと、セカンドルートの出力キューが混雑状態でない場合には、入力されたパケットをセカンドルートの出力キューに出力するステップと、を備える。
【００３２】
本発明のネットワークルーティング方法において、第３ステップは、セカンドルートの出力キューが混雑状態の場合には、入力されたパケットを破棄するステップをさらに備える。
【００３３】
また、本発明のネットワークルーティング方法において、第３ステップは、入力されるパケットをセカンドルートの出力キューに出力する場合において、セカンドルートの出力キューのパケット累積個数が設定された最大閾値以上か否かを判別するステップと、セカンドルートの出力キューのパケット累積個数が最大閾値以上の場合には、セカンドルートの出力キューが混雑状態であると判別するステップと、をさらに備える。
【００３４】
好ましくは、本発明のネットワークルーティング方法において、第３ステップは、ベストルートの出力キューが混雑状態でない場合には、入力されたパケットをベストルートの出力キューに出力するステップと、入力されるパケットをベストルートの出力キューに出力する場合において、ベストルートの出力キューのパケット累積個数が設定された最大閾値以上か否かを判別するステップと、ベストルートの出力キューのパケット累積個数が最大閾値以上の場合には、ベストルートの出力キューが混雑状態であると判別するステップと、をさらに備える。
【００３５】
好ましくは、第４ステップは、ベストルート及びセカンドルートの出力キューに入力された順序に基づいて転送するためのパケットが格納されているキューを決定するステップと、決定されたキューに格納されているパケットを引き出して、該当出力ポートに出力転送するステップと、決定されたキューの累積パケット個数が設定された最小閾値以下か否かを判別するステップと、決定されたキューの累積パケット個数が最小閾値以下の場合には、決定されたキューが混雑状態でないと判別するステップと、を備える。
【００３６】
また、本発明に係るネットワークルーティング装置は、同一目的地に対するベストルート及びセカンドルートに関する情報を示すフォワーディングテーブルが格納されているフォワーディングデータベースと、フォワーディングテーブルを参照して、入力されるパケットに対するベストルート及びセカンドルートを決定するフォワーディング部と、ベストルート及びセカンドルートに対応して配置された出力キューへのパケット入力の混雑に起因した混雑が発生しているか否かに応じて、入力されたパケットをベストルート及びセカンドルートの出力キューに選択的に出力するキュー管理部と、ベストルート及びセカンドルートの出力キューに出力されて格納されたパケットを、入力される順序に応じて順次に該当経路の出力ポートに出力転送する転送部と、を備える。
【００３７】
好ましくは、本発明のネットワークルーティング装置は、ベストルート及びセカンドルートの出力キューが混雑状態にあるか否かを示す情報及び該当キューに格納されているパケットの個数情報を含むキュー状態情報が格納されるキュー情報格納部をさらに備える。これにより、キュー管理部は、キュー状態情報に基づいて入力されたパケットをベストルート及びセカンドルートの出力キューに選択的に出力する。
【００３８】
前記キュー管理部は、フォワーディング部で決定されたベストルートの出力キューが混雑状態の場合には、セカンドルートの出力キューを、入力されたパケットを出力するためのキューに決定し、セカンドルートの出力キューが混雑状態でない場合には、入力されたパケットをセカンドルートの出力キューに出力する。
【００３９】
前記キュー管理部は、セカンドルートの出力キューが混雑状態の場合には、入力されたパケットを破棄する。
【００４０】
前記キュー管理部は、入力されるパケットをセカンドルートの出力キューに出力する場合であって、セカンドルートの出力キューのパケット累積個数が設定された最大閾値以上の場合には、セカンドルートの出力キューが混雑状態であると判別する。
【００４１】
前記キュー管理部は、ベストルートの出力キューが混雑状態でない場合には、入力されたパケットをベストルートの出力キューに出力し、入力されるパケットをベストルートの出力キューに出力する場合であって、ベストルートの出力キューのパケット累積個数が設定された最大閾値以上の場合には、ベストルートの出力キューが混雑状態であると判別する。
【００４２】
前記転送部は、ベストルート及びセカンドルートの出力キューに入力された順序に応じて転送するためのパケットが格納されているキューを決定し、決定されたキューに格納されているパケットを引き出し、該当出力ポートに出力転送する。
【００４３】
好ましくは、前記転送部は、決定されたキューの累積パケット個数が設定された最小閾値以下の場合には、決定されたキューが混雑状態でないと判別する。
【発明の効果】
【００４４】
本発明によれば、ベストルート及びセカンドルートを設定し、ベストルートのリンクにパケットが混雑して混雑状態が発生すれば、以後に入力されて流出され得るパケットを、セカンドルートを介して出力転送することによって、入力されるパケットの混雑に起因して発生するパケットの流失を低減することができる。
【００４５】
また、ベストルートのキューへのパケットの混雑に起因した混雑が発生しているか否かに応じて、入力されるパケットをベストルートのキューまたはセカンドルートのキューに選択的に出力し、該当目的地にベストルートまたはセカンドルートを介して出力転送することによって、入力されるパケットの混雑に起因するパケットの流失を低減することができ、且つ一層安定したサービスを提供することができ、これにより、ネットワークパケット転送サービスに対する高い信頼性を確保することができる。
【発明を実施するための最良の形態】
【００４６】
以下、添付の図面を参照して、本発明に係る好適な実施形態を詳細に説明する。なお、本発明の要旨を不明確にする公知の機能及び構成についての詳細な説明は省略する。本明細書において、同一の参照番号は、同一の構成要素を示す。
【００４７】
図５は、本発明に係るパケット流失を抑制するためのネットワークルーティング装置の好ましい実施形態を示すブロック図である。図面では、前記ルーティング装置として、ルータが適用される。したがって、以下では、ルータを例に取って説明する。
【００４８】
図５に示されるように、ルータは、受信部１１０、フォワーディング部１３０、フォワーディングデータベース１５０、キュー管理部２００、キュー４２０、４４０、キュー情報格納部３００、及び転送部５００を有する。
【００４９】
受信部１１０は、外部（ソース）から流入されるパケットを感知し、感知されるパケットを受信し、フォワーディング部１３０に出力する。
【００５０】
フォワーディング部１３０は、受信部１１０に受信されたパケットに対して目的地アドレスを通じてフォワーディングデータベース１５０に格納されたフォワーディングテーブルを参照して、前記パケットの出力ポートを検出する。この際、フォワーディング部１３０は、検出した出力ポート情報を前記パケットに含ませてキュー管理部２００に出力する。
【００５１】
一方、フォワーディングデータベース１５０には、同一目的地アドレスに対して設定されたベストルート及びセカンドルートの情報が、受信部１０に接続された入力ポートに対応してテーブルに格納されている。すなわち、フォワーディングデータベース１５０には、ルータの入力ポート毎にベストルート及びセカンドルートに対応する出力ポートが設定され、フォワーディングテーブルとして格納されている。
【００５２】
したがって、フォワーディング部１３０は、フォワーディングデータベース１５０に格納されたフォワーディングテーブルを参照して、受信したパケットの入力ポートに対応するベスト及びセカンドの出力ポートを検出する。
【００５３】
キュー管理部２００は、フォワーディング部１３０で出力されたパケットから前記パケットの出力のための出力ポートの情報を検出し、検出した出力ポートに対応して設定された該当キュー４２０または４４０にパケットをキューイング（出力格納）させる。
【００５４】
転送部５００は、各出力ポート６２０、６４０に設定されたキュー４２０または４４０に存在する（格納されている）パケットの有無を判断する。ここで、転送部５００は、キュー管理部２００からキューイングされて格納されたパケットが該当キュー４２０または４４０に存在する場合には、該当キューからパケットを引き出して、該当出力ポートに出力転送する。
【００５５】
一方、キュー管理部２００は、入力パケットの混雑に起因する混雑があるか否かにかかわらず、ベストルートに対応するベストキュー４２０及びセカンドルートに対応するセカンドキュー４４０に対して設定された最大閾値／最小閾値や、Ｑｕｅｕｅ  Ｆｕｌｌ  ｆｌａｇ情報といった各キューの状態情報をリアルタイムでキュー情報格納部３００に格納する。
【００５６】
これにより、キュー管理部２００は、キュー情報格納部３００に格納された該当キュー４２０、４４０の状態によって、パケットをベストキュー４２０またはセカンドキュー４４０に選択的に出力する。好ましくは、キュー管理部２００は、キューの状態情報によって、ベストキュー４２０に格納されたパケットの個数が設定された最大閾値以上の場合には、以後に入力されるパケットをセカンドキュー４４０に出力する。この際、キュー管理部２００は、ベストキュー４２０のＱｕｅｕｅ＿Ｆｕｌｌ  ｆｌａｇを“１”に設定する。
【００５７】
また、ベストキュー４２０に格納されたパケットの個数が設定された最小閾値以下の場合には、キュー管理部２００は、以後に入力されるパケットの出力先であるキューを、セカンドキュー４４０からベストキュー４２０に変更する。この際、キュー管理部２００は、ベストキュー４２０のＱｕｅｕｅ＿Ｆｕｌｌ  ｆｌａｇを“０”に設定（クリア）する。
【００５８】
転送部５００は、該当キュー４２０、４４０に入力される順序に応じて、該キューからパケットを抽出し、引き出した該当キューに対応して接続されている出力ポート６２０または６４０に出力転送する。すなわち、転送部５００は、ベストキュー４２０からパケットを抽出した場合には、抽出したパケットをベストルートに沿ってベスト出力ポート６２０を介して出力転送する。また、転送部５００は、セカンドキュー４４０からパケットを抽出した場合には、抽出したパケットをセカンドルートに沿ってセカンド出力ポート６４０を介して出力転送する。
【００５９】
したがって、ベストキュー４２０が転送すべきパケットで満たされている場合には、以後に入力されるパケットをセカンドキュー４４０に出力して転送する。そして、ベストキュー４２０に格納されたパケットの個数が、設定された最小閾値以下である場合には、以後に入力されるパケットをベストキュー４２０に出力して転送する。このように、入力されるパケットを選択的に出力転送することによって、入力されるパケットの混雑に起因して発生するパケットの流失を低減することができる。
【００６０】
図６は、本発明に係るネットワークルーティング装置を利用したネットワークルーティング方法の好ましい実施形態を示すフローチャートである。
【００６１】
まず、ルーティング装置（ルータ）は、同一目的地に対するベストルート及びセカンドルートを設定し、設定したベストルート及びセカンドルートの情報をフォワーディングテーブルとして構成し、フォワーディングデータベース１５０に格納する（ステップＳ１１０）。外部から目的地に転送すべきパケットが入力されれば、受信部１１０は、入力されるパケットを受信し、フォワーディング部１３０に出力する。
【００６２】
フォワーディング部１３０は、受信部１１０から受信したパケットの目的地アドレスを参照し、フォワーディングデータベース１５０に格納されたフォワーディングテーブルを参照して、前記パケットに対するベストルート及びセカンドルートを決定する（ステップＳ１３０）。この際、フォワーディング部１３０は、決定されたベストルート及びセカンドルートの情報をパケットに含ませてキュー管理部２００に出力する。
【００６３】
キュー管理部２００は、決定されたベストルート及びセカンドルートに対応する各キュー４２０、４４０の状態情報をキュー情報格納部３００に格納する（ステップＳ１５０）。好ましくは、キュー管理部２００によって、ベストルートに対応するベストキュー４２０の状態情報だけをキュー情報格納部３００に格納するようにしてもよい。ここで、状態情報には、該当キューに格納されているパケットの個数情報、該当キューにパケットを格納するために設定された最小閾値及び最大閾値、キューがパケットで満たされているか否かの情報（Ｑｕｅｕｅ＿Ｆｕｌｌ  ｆｌａｇ）が含まれる。
【００６４】
キュー管理部２００は、キュー情報格納部３００に格納されている該当キュー（本実施形態では、ベストキュー４２０）の状態情報に基づいて、入力されるパケットをベストルート及びセカンドルートの該当キューに選択的に出力する(ステップＳ２００)。すなわち、キュー管理部２００は、ベストキュー４２０にパケットが満ちている場合（本実施形態では、パケットの個数が最大閾値以上である場合）には、以後に入力されるパケットをセカンドキュー４４０に出力する。また、キュー管理部２００は、ベストキュー４２０におけるパケットの個数が最小閾値以下である場合には、以後に入力されるパケットをベストキュー４２０に出力する。
【００６５】
これにより、転送部５００は、ベストルート及びセカンドルートの該当キューに出力されたパケットを、各キューの状態情報によって選択的に該当出力ポート６２０または６４０に出力転送する（ステップＳ４００）。すなわち、転送部５００は、ベストキュー４２０に格納されているパケットの個数が最大閾値と最小閾値との間である場合には、ベストキュー４２０に格納されている次のパケットを抽出し、ベスト出力ポート６２０に出力転送する。また、転送部５００は、ベストキュー４２０に格納されているパケットを抽出して、出力ポート６２０を介して出力転送する場合において、ベストキュー４２０に格納されているパケットの個数が最小閾値以下になれば、ベストキュー４２０のＱｕｅｕｅ＿Ｆｕｌｌ  ｆｌａｇを“０”に設定（クリア）する。
【００６６】
したがって、ベストキュー４２０において、パケットの混雑に起因した混雑が発生しているか否かに応じて、入力されるパケットをベストキュー４２０またはセカンドキュー４４０に選択的に出力し、ベストルートまたはセカンドルートを介して該当目的地に出力転送することによって、入力されるパケットの混雑に起因するパケットの流失を低減することができる。
【００６７】
図７は、図６のステップＳ２００の動作を詳細に示すフローチャートである。
【００６８】
まず、キュー管理部２００は、フォワーディング部１３０で決定されたベストルートを介してパケットを出力するための該当キュー（本実施形態では、ベストキュー４２０）を決定する(ステップＳ２１０)。この際、キュー管理部２００は、キュー情報格納部３００に格納され、パケット出力のために決定されたベストキュー４２０の状態情報を確認する(ステップＳ２２０)。ベストキュー４２０の状態情報を確認することで、キュー管理部２００は、ベストキュー４２０がパケットで満たされている状態か否か（言い換えれば、Ｑｕｅｕｅ＿Ｆｕｌｌ  Ｆｌａｇ＝１であるか否か）を判別する(ステップＳ２３０)。
【００６９】
ベストキュー４２０がパケットで満たされている場合には、キュー管理部２００は、フォワーディング部１３０で決定したセカンドルートのキュー４４０を、パケットの出力キューとして決定する(ステップＳ２４０)。この際、キュー管理部２００は、セカンドキュー４４０がパケットで満たされているか否か（言い換えれば、Ｑｕｅｕｅ＿Ｆｕｌｌ  Ｆｌａｇ＝１であるか否か）を判断する(ステップＳ２５０)。
【００７０】
セカンドキュー４４０がパケットで満たされていない場合には、キュー管理部２００は、パケットをセカンドキュー４４０に出力する(ステップＳ２６０)。パケットをセカンドキュー４４０に出力する場合において、キュー管理部２００は、セカンドキュー４４０のパケット累積個数が、設定された最大閾値以上であるか否かを判別する(ステップＳ２７０)。
【００７１】
セカンドキュー４４０のパケット累積個数が、設定された最大閾値以上の場合には、キュー管理部２００は、セカンドキュー４４０の混雑状態を示すフラグ（Ｑｕｅｕｅ＿Ｆｕｌｌ  Ｆｌａｇ）を“１”に設定し、以後に入力されるパケットをベストキュー４２０に出力する(ステップＳ２８０)。ステップＳ２７０で、パケット累積個数が、設定された最大閾値よりも小さければ、キュー管理部２００は、ステップＳ２１０に戻る。
【００７２】
一方、ステップＳ２５０で、セカンドキュー４４０がパケットで満たされている場合には、キュー管理部２００は、入力されたパケットを破棄する（ステップＳ３５０）。
【００７３】
ステップＳ２３０で、セカンドキュー４４０がパケットで満たされていない場合には、キュー管理部２００は、入力されたパケットをベストキュー４２０に出力する（ステップＳ３１０）。入力されるパケットをベストキュー４２０に出力する場合において、キュー管理部２００は、ベストキュー４２０のパケット累積個数が、設定された最大閾値以上であるか否かを判別する（ステップＳ３２０）。
【００７４】
ベストキュー４２０のパケット累積個数が、設定された最大閾値以上の場合には、キュー管理部２００は、ベストキュー４２０の混雑状態を示すフラグ（Ｑｕｅｕｅ＿Ｆｕｌｌ  Ｆｌａｇ）を“１”に設定し、以後に入力されるパケットをセカンドキュー４４０に出力する（ステップＳ３３０）。ベストキュー４２０のパケット累積個数が、設定された最大閾値よりも小さければ、キュー管理部２００は、ステップＳ２１０に戻る。
【００７５】
図８は、図６のステップＳ４００の動作を詳細に示すフローチャートである。
【００７６】
まず、転送部５００は、該当キューに格納されたパケットを転送するためのキューを決定する（ステップＳ４１０）。好ましくは、転送部５００は、キュー４２０、４４０に入力される順序に応じて、転送のためのパケットが格納されているキューを決定する。本実施形態では、パケット転送のためのキューがベストキュー４２０であるとして説明する。
【００７７】
転送部５００は、決定されたベストキュー４２０に格納されたパケットを抽出し、ベストルートに対応する出力ポート６２０に出力転送する（ステップＳ４３０）。ベストキュー４２０からパケットを抽出して出力転送する場合において、転送部５００は、決定されたベストキュー４２０の累積パケット個数が設定された最小閾値以下であるか否かを判別する（ステップＳ４５０）。
【００７８】
ベストキュー４２０の累積パケット個数が、設定された最小閾値以下の場合には、転送部５００は、ベストキュー４２０の混雑状態を示すフラグ（Ｑｕｅｕｅ＿Ｆｕｌｌ  Ｆｌａｇ）を“０”に設定（クリア）する（ステップＳ４７０）。ベストキュー４２０の累積パケット個数が、設定された最小閾値よりも大きければ、転送部５００は、ステップＳ４１０に戻る。
【００７９】
以上において説明した本発明は、本発明が属する技術の分野における通常の知識を有する者であれば、本発明の技術的思想を逸脱しない範囲内で、様々な置換、変形及び変更が可能であるので、上述した実施形態及び添付された図面に限定されるものではない。
【図面の簡単な説明】
【００８０】
【図１】特定の目的地に対して１つ以上の経路を有するネットワーク構成の一例を示す図である。
【図２】多重目的地経路を有するネットワークにおいて障害発生による再ルーティングを行う例を示す図である。
【図３】ベストルート及びセカンドルートを設定するためのルータの例を示す図である。
【図４】パケットの混雑に起因してパケットが流出される例を示すブロック図である。
【図５】本発明に係るパケットの流失を抑制するためのネットワークルーティング装置の好ましい実施形態を示すブロック図である。
【図６】本発明に係るネットワークルーティング装置を利用したネットワークルーティング方法の好ましい実施形態を示すフローチャートである。
【図７】図６のステップＳ２００の動作を詳細に示すフローチャートである。
【図８】図６のステップＳ４００の動作を詳細に示すフローチャートである。
【符号の説明】
【００８１】
１１０  受信部
１３０  フォワーディング部
２００  キュー管理部
３００  キュー情報管理部
５００  転送部
【図１】
2006217597.tif 000003
【図２】
2006217597.tif 000004
【図３】
2006217597.tif 000005
【図４】
2006217597.tif 000006
【図５】
2006217597.tif 000007
【図６】
2006217597.tif 000008
【図７】
2006217597.tif 000009
【図８】
2006217597.tif 000010