(57)【特許請求の範囲】
【請求項１】
ルーティングプロトコルを用いてネットワークトポロジー情報を動的に収集して最短経路を選択するコネクションレス型のパケットネットワーク（ＩＰネットワーク）におけるトラフィック負荷分散方式であって、
前記ネットワークはパケットを送受信する端末と前記端末間のパケットを経路中継するルータと管理端末とを備え、
前記管理端末は、
パケットを識別するパケット種別情報を設定する手段と、
前記パケット種別毎の仮想ネットワークを構築するための各ルータ間接続の有効／無効情報を設定する手段と、
前記パケット種別情報および前記パケット種別毎のルータ間接続情報を前記ルータに送信する手段と、を有し、
前記ルータは、
実存するネットワークに対応した実ネットワークトポロジーテーブルを生成し前記実ネットワークトポロジーテーブルを基に実ルーティングテーブルを作成する手段と、
前記パケット種別情報および前記パケット種別毎のルータ間接続情報を前記管理端末から受信する手段と、
前記実ネットワークトポロジーテーブルおよび前記パケット種別毎のルータ間接続情報を基に前記パケット種別毎の仮想ネットワークトポロジーテーブルを生成し前記仮想ネットワークトポロジーテーブルを基に仮想ルーティングテーブルを作成する手段と、
パケットを受信したときに受信したパケットが前記パケット種別に該当するか否かを検索し前記パケット種別に該当する場合には該当したパケット種別に対応した仮想ルーティングテーブルを用いて受信したパケットのルーティングを行う手段と、を有する、
ことを特徴とするトラフィック負荷分散方式。
【請求項２】
ルーティングプロトコルを用いてネットワークトポロジー情報を動的に収集して最短経路を選択するコネクションレス型のパケットネットワーク（ＩＰネットワーク）におけるトラフィック負荷分散方式であって、
前記ネットワークはパケットを送受信する端末と前記端末間のパケットを経路中継するルータと管理端末とを備え、
前記管理端末は、
ネットワークからネットワークトポロジー情報を収集して実在のネットワークトポロジーを認識し実ネットワークトポロジーテーブルを作成する実ネットワーク認識手段と、
パケットを識別するパケット種別情報を設定する手段と、
前記パケット種別毎の仮想ネットワークを構築するための各ルータ間接続の有効／無効情報を設定する手段と、
前記ルータ間接続情報および前記実ネットワークトポロジーテーブルを基に前記パケット種別毎の仮想ネットワークトポロジーテーブルを作成する仮想ネットワーク定義手段と、
前記パケット種別情報および前記パケット種別毎の仮想ネットワークトポロジーテーブルを前記ルータに送信する手段と、を有し、
前記ルータは、
実存するネットワークに対応した実ネットワークトポロジーテーブルを生成し前記実ネットワークトポロジーテーブルを基に実ルーティングテーブルを作成する手段と、
前記パケット種別情報および前記パケット種別毎の仮想ネットワークトポロジーテーブルを前記管理端末から受信する手段と、
前記パケット種別毎の仮想ネットワークトポロジーテーブルを基に前記パケット種別毎の仮想ネットワークに対応した仮想ルーティングテーブルを作成する手段と、
パケットを受信したときに受信したパケットが前記パケット種別に該当するか否かを検索し前記パケット種別に該当する場合には該当したパケット種別に対応した仮想ルーティングテーブルを用いて受信したパケットのルーティングを行う手段と、を有する、
ことを特徴とするトラフィック負荷分散方式。
【請求項３】
前記ルータは、前記受信したパケットが前記パケット種別に該当しない場合に前記実存するネットワークに対応した実ルーティングテーブルを用いて受信したパケットのルーティングを行う手段を有する、
ことを特徴とする請求項１または２記載のトラフィック負荷分散方式。
【請求項４】
前記パケット種別情報は、パケットのヘッダ情報の組み合わせから成る、
ことを特徴とする請求項１または２記載のトラフィック負荷分散方式。
【請求項５】
ルーティングプロトコルを用いてネットワークトポロジー情報を動的に収集して最短経路を選択するコネクションレス型のパケットネットワーク（ＩＰネットワーク）におけるトラフィック負荷分散方法であって、
ルータは、
ネットワークからネットワークトポロジー情報を収集して実存するネットワークに対応した実ネットワークトポロジーテーブルを生成し前記実ネットワークトポロジーテーブルを基に実ルーティングテーブルを作成し、
管理端末は、
パケットを識別するためのパケット種別情報を設定し、
前記パケット種別毎の仮想ネットワークを構築するためのルータ間接続情報を設定し、
前記パケット種別情報および前記パケット種別毎のルータ間接続情報をネットワークを構成する各ルータに送信し、
前記ルータは、
前記パケット種別情報および前記パケット種別毎のルータ間接続情報を前記管理端末から受信し、
前記実ネットワークトポロジーテーブルおよび前記パケット種別毎のルータ間接続情報を基に前記パケット種別毎の仮想ネットワークトポロジーテーブルを生成し、
前記仮想ネットワークトポロジーテーブルを基に対応した仮想ルーティングテーブルを作成し、
前記ルータは、
パケットを受信したときに受信したパケットが前記パケット種別に該当するか否かを検索し前記パケット種別に該当する場合には該当したパケット種別に対応した仮想ルーティングテーブルを用いて受信したパケットのルーティングを行う、
ことを特徴とするトラフィック負荷分散方法。
【請求項６】
ルーティングプロトコルを用いてネットワークトポロジー情報を動的に収集して最短経路を選択するコネクションレス型のパケットネットワーク（ＩＰネットワーク）におけるトラフィック負荷分散方法であって、
ルータは、
ネットワークからネットワークトポロジー情報を収集して実存するネットワークに対応した実ネットワークトポロジーテーブルを生成し前記実ネットワークトポロジーテーブルを基に実ルーティングテーブルを作成し、
管理端末は、
ネットワークからネットワークトポロジー情報を収集して実在のネットワークトポロジーを認識して実ネットワークトポロジーテーブルを作成し、
パケットを識別するためのパケット種別情報を設定し、
前記パケット種別毎の仮想ネットワークを構築するためのルータ間接続情報を設定し、
前記ルータ間接続情報および前記実ネットワークトポロジーテーブルを基に前記パケット種別毎の仮想ネットワークトポロジーテーブルを作成し、
前記パケット種別情報および前記パケット種別毎の仮想ネットワークトポロジーテーブルをネットワークを構成する各ルータに送信し、
前記ルータは、
前記パケット種別情報および前記パケット種別毎の仮想ネットワークトポロジーテーブルを前記管理端末から受信し、
前記パケット種別毎の仮想ネットワークトポロジーテーブルを基に前記パケット種別毎の仮想ネットワークに対応した仮想ルーティングテーブルを作成し、
前記ルータは、
パケットを受信したときに受信したパケットが前記パケット種別に該当するか否かを検索し前記パケット種別に該当する場合には該当したパケット種別に対応した仮想ルーティングテーブルを用いて受信したパケットのルーティングを行う、
ことを特徴とするトラフィック負荷分散方法。
【請求項７】
前記受信したパケットが前記パケット種別に該当しない場合には、実存するネットワークに対応した実ルーティングテーブルを用いて受信したパケットのルーティングを行う、
ことを特徴とする請求項５または６記載のトラフィック負荷分散方法。
【請求項８】
前記パケット種別情報は、パケットのヘッダ情報の組み合わせであることを特徴とする請求項５または６記載のトラフィック負荷分散方法。
【請求項９】
前記受信したパケットが前記パケット種別に該当している場合で且つ対応する仮想ネットワークの仮想ルーティングテーブルを用いても宛先に到達不能である場合、実存するネットワークに対応した実ルーティングテーブルを用いて受信したパケットのルーティングを行う、
ことを特徴とする請求項５または６記載のトラフィック負荷分散方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークのトラフィック負荷を分散させるトラフィック負荷分散方式および方法に関し、特にルーティングプロトコルを用いてネットワークトポロジー情報を動的に収集しTOS(Type of Service)を意識した最短経路を選択するとともにトラフィックエンジニアリングを併用することによりトラフィックに要求されるCoS(Class of Service)を保証するトラフィック負荷分散方式および方法に関する。
【０００２】
【従来の技術】
コネクションレス型のパケットネットワーク（ＩＰ(Internet Protocol)ネットワーク）において、従来のOSPF(IETF:RFC1247,Open Shortest Path First)に代表されるリンク状態プロトコルでは、データフロー毎のTOSに対して最適な経路を選択するために、以下のような方法をとっている。
ネットワークを構成するルータが、全ての出力ポートに対してTOS毎に遅延、スループット、信頼性のコストを算出して、そのコスト情報をネットワーク全体に通知する。
ネットワークに属するルータは、通知されたTOS毎のコストに基づき最短経路を算出し、ルーティングテーブルを生成する。
これにより、ネットワーク内において輻輳やネットワークトポロジー変更によるコストの変化に基づいて、動的にデータフローのTOSに適した最短経路を選択することができる。
【０００３】
上記ルーティングプロトコルによって求められた最短経路上で、その経路を通過するパケットに対するQoS(Quality of Service,サービス品質)を保証する手段として、Diffserv(IETF：RFC2474,RFC2475,Differentiated Services)やRSVP(IETF:RFC2205〜2209,Resource ReSerVation Protocol)のようなプロトコルがある。
【０００４】
Diffservでは、あらかじめネットワーク管理者とユーザ間の取り決めとして、Diffservドメイン内のルータにおける受信パケットに対する処理方法と、ＩＰヘッダ内のDSCP(DiffServ Code Point)の関係を定義する。これにより、DSCPごとに、差別化したサービスを実現する。サービスクラスとして、帯域，遅延保証を目的としたEF（Expedited Forwarding）と相対的な優先処理を実現するAF(Assured Forwarding)がある。また、DSCPとして、IPv4では、IPv4ヘッダ内のType of Serviceフィールド、IPv6では、IPv6ヘッダ内のPriorityフィールドが使用される。図１５にIPv4のヘッダフォーマット(RFC791)を、図１６にIPv6のヘッダフォーマット(RFC1883)を示す。
【０００５】
また、RSVPは、データフロー毎にそれが通過するルータにおいて帯域を予約することによって、CoSを保証する手段である。送信側端末がデータフローを送信すると、そのネットワークで動作するルーティングプロトコルによって、そのデータフローの通過する経路が決定される。RSVPでは、この経路上の各々のルータにおいて、前段のルータのＩＰアドレス情報を蓄積する。これにより、帯域を予約する経路が決定される。ルーティングプロトコルによってデーターフローの通過する経路が変更された場合、ネットワーク上の各ルータは、蓄積している前段のルータのＩＰアドレス情報を更新する。受信側端末は、上記により決定された経路上のルータに対して、上記データフローに対して必要とされる帯域を要求する。これにより、ある特定のデータフローに対してCoSを保証することが可能となる。
【０００６】
【発明が解決しようとする課題】
しかしながら、上述した従来の技術には、以下のような問題点がある。
【０００７】
第１の問題点は、従来のルーティングプロトコルでは、そのパケットの通過経路として想定しうるすべてのルートの中で、通過経路として許可するルート群と許可しないルート群とを指定することが出来なかった。また、従来のスタティックルーティングでは、事前に登録された固定の経路しか定義できないため、ネットワークの状況の変化に、動的に対応させることができなかった。そのため、いくつかの通過する候補となるルートをグループ化し、その中で最適な経路を自動選択させるというような、柔軟な経路制御を行うことができなかった。
【０００８】
第２の問題点は、OSPFのようなリンク状態プロトコルを用いて、TOS毎に最適な経路のルーティングを行うためには、ネットワーク上の全てのルータが、常に実装する全ての出力ポートにおいて各TOS毎のコストを算出し、ネットワーク全体に通知する必要がある。また、ネットワーク上の全てのルータは受信した上記コスト情報から、TOS毎の最適経路を常時算出し、TOS毎にルーティングテーブルを作成する必要がある。これらの処理が、ネットワーク全体で必要とされる処理の負荷を高める要因となるため、TOSルーティングはあまり利用されていなかった。
【０００９】
第３の問題点は、OSPFのようなリンク状態プロトコルにおいて、TOSルーティングを行った場合、ルーティングはあくまでTOS毎であるため、同じTOSを持つ全てのパケットに同じ経路が適用される。これにより、パケット長などTOSに反映されない特徴によって、パケットのルートを振り分けて、ネットワーク内の負荷を分散させるような制御を行うことができなかった。
【００１０】
第４の問題点は、DiffServやRSVPのようなトラフックエンジニアリングでは、経路選択の手段としてOSPFなどの既存のルーティングプロトコルを使用しているため、上記で指摘した問題点１〜３を解消することは出来なかった。
【００１１】
本発明の第１の目的は、前述の第１の問題点を解決するために、特定のパケット種別に応じて、そのパケット種別が通過するルートとして、許可するルート群と許可しないルート群とを指定する機能を提供することによって、ネットワークの特性に適した柔軟な経路制御を行うトラフィック負荷分散方式および方法を提供することである。
【００１２】
第２の目的は、前述の第２の問題点を解決するために、本発明による経路制御方法により、パケット種別毎にトラフィックが集中するルートについて迂回するルート群をあらかじめ定義しておくことによって、従来ボトルネックとなっていた各TOS毎のコストに基づく最適経路を常時算出する手順を省き、ネットワーク全体で必要とされる処理を簡素化したトラフィック負荷分散を行うトラフィック負荷分散方式および方法を提供することである。
【００１３】
第３の目的として、前述の第３の問題点を解決するために、パケット種別を定義するパラメータとして、ＩＰパケットのTOSに加えて任意のＩＰパケットヘッダ情報を取り扱うことにより、柔軟なパケット種別選択を行うトラフィック負荷分散方式および方法を提供することである。
【００１４】
第４の目的として、前述の第４の問題点を解決するために、従来のルーティンプロトコルに上記第１〜３の目的で記述されている機能を追加することにより、従来のトラフィックエンジニアリングが本発明の機能を利用して、トラフィックの負荷分散された経路上でQoS制御を実現するトラフィック負荷分散方式および方法を提供することである。
【００１６】
【課題を解決するための手段】
本願第１の発明のトラフィック負荷分散方式は、ルーティングプロトコルを用いてネットワークトポロジー情報を動的に収集して最短経路を選択するコネクションレス型のパケットネットワーク（ＩＰネットワーク）におけるトラフィック負荷分散方式であって、前記ネットワークはパケットを送受信する端末と前記端末間のパケットを経路中継するルータと管理端末とを備え、前記管理端末は、パケットを識別するパケット種別情報を設定する手段と、前記パケット種別毎の仮想ネットワークを構築するための各ルータ間接続の有効／無効情報を設定する手段と、前記パケット種別情報および前記パケット種別毎のルータ間接続情報を前記ルータに送信する手段と、を有し、前記ルータは、実存するネットワークに対応した実ネットワークトポロジーテーブルを生成し前記実ネットワークトポロジーテーブルを基に実ルーティングテーブルを作成する手段と、前記パケット種別情報および前記パケット種別毎のルータ間接続情報を前記管理端末から受信する手段と、前記実ネットワークトポロジーテーブルおよび前記パケット種別毎のルータ間接続情報を基に前記パケット種別毎の仮想ネットワークトポロジーテーブルを生成し前記仮想ネットワークトポロジーテーブルを基に仮想ルーティングテーブルを作成する手段と、パケットを受信したときに受信したパケットが前記パケット種別に該当するか否かを検索し前記パケット種別に該当する場合には該当したパケット種別に対応した仮想ルーティングテーブルを用いて受信したパケットのルーティングを行う手段と、を有する、ことを特徴とする。
【００１７】
本願第２の発明のトラフィック負荷分散方式は、ルーティングプロトコルを用いてネットワークトポロジー情報を動的に収集して最短経路を選択するコネクションレス型のパケットネットワーク（ＩＰネットワーク）におけるトラフィック負荷分散方式であって、前記ネットワークはパケットを送受信する端末と前記端末間のパケットを経路中継するルータと管理端末とを備え、前記管理端末は、ネットワークからネットワークトポロジー情報を収集して実在のネットワークトポロジーを認識し実ネットワークトポロジーテーブルを作成する実ネットワーク認識手段と、パケットを識別するパケット種別情報を設定する手段と、前記パケット種別毎の仮想ネットワークを構築するための各ルータ間接続の有効／無効情報を設定する手段と、前記ルータ間接続情報および前記実ネットワークトポロジーテーブルを基に前記パケット種別毎の仮想ネットワークトポロジーテーブルを作成する仮想ネットワーク定義手段と、前記パケット種別情報および前記パケット種別毎の仮想ネットワークトポロジーテーブルを前記ルータに送信する手段と、を有し、前記ルータは、実存するネットワークに対応した実ネットワークトポロジーテーブルを生成し前記実ネットワークトポロジーテーブルを基に実ルーティングテーブルを作成する手段と、前記パケット種別情報および前記パケット種別毎の仮想ネットワークトポロジーテーブルを前記管理端末から受信する手段と、前記パケット種別毎の仮想ネットワークトポロジーテーブルを基に前記パケット種別毎の仮想ネットワークに対応した仮想ルーティングテーブルを作成する手段と、パケットを受信したときに受信したパケットが前記パケット種別に該当するか否かを検索し前記パケット種別に該当する場合には該当したパケット種別に対応した仮想ルーティングテーブルを用いて受信したパケットのルーティングを行う手段と、を有する、ことを特徴とする。
【００１８】
本願第３の発明のトラフィック負荷分散方式は、第１または第２の発明において前記ルータは、前記受信したパケットが前記パケット種別に該当しない場合に前記実存するネットワークに対応した実ルーティングテーブルを用いて受信したパケットのルーティングを行う手段を有することを特徴とする。
【００１９】
本願第４の発明のトラフィック負荷分散方式は、第１または第２の発明において前記パケット種別情報は、パケットのヘッダ情報の組み合わせから成ることを特徴とする。
【００２０】
本願第５の発明のトラフィック負荷分散方法は、ルーティングプロトコルを用いてネットワークトポロジー情報を動的に収集して最短経路を選択するコネクションレス型のパケットネットワーク（ＩＰネットワーク）におけるトラフィック負荷分散方法であって、ルータは、ネットワークからネットワークトポロジー情報を収集して実存するネットワークに対応した実ネットワークトポロジーテーブルを生成し前記実ネットワークトポロジーテーブルを基に実ルーティングテーブルを作成し、管理端末は、パケットを識別するためのパケット種別情報を設定し、前記パケット種別毎の仮想ネットワークを構築するためのルータ間接続情報を設定し、前記パケット種別情報および前記パケット種別毎のルータ間接続情報をネットワークを構成する各ルータに送信し、前記ルータは、前記パケット種別情報および前記パケット種別毎のルータ間接続情報を前記管理端末から受信し、前記実ネットワークトポロジーテーブルおよび前記パケット種別毎のルータ間接続情報を基に前記パケット種別毎の仮想ネットワークトポロジーテーブルを生成し、前記仮想ネットワークトポロジーテーブルを基に対応した仮想ルーティングテーブルを作成し、前記ルータは、パケットを受信したときに受信したパケットが前記パケット種別に該当するか否かを検索し前記パケット種別に該当する場合には該当したパケット種別に対応した仮想ルーティングテーブルを用いて受信したパケットのルーティングを行う、ことを特徴とする。
【００２１】
本願第６の発明のトラフィック負荷分散方法は、ルーティングプロトコルを用いてネットワークトポロジー情報を動的に収集して最短経路を選択するコネクションレス型のパケットネットワーク（ＩＰネットワーク）におけるトラフィック負荷分散方法であって、ルータは、ネットワークからネットワークトポロジー情報を収集して実存するネットワークに対応した実ネットワークトポロジーテーブルを生成し前記実ネットワークトポロジーテーブルを基に実ルーティングテーブルを作成し、管理端末は、ネットワークからネットワークトポロジー情報を収集して実在のネットワークトポロジーを認識して実ネットワークトポロジーテーブルを作成し、パケットを識別するためのパケット種別情報を設定し、前記パケット種別毎の仮想ネットワークを構築するためのルータ間接続情報を設定し、前記ルータ間接続情報および前記実ネットワークトポロジーテーブルを基に前記パケット種別毎の仮想ネットワークトポロジーテーブルを作成し、前記パケット種別情報および前記パケット種別毎の仮想ネットワークトポロジーテーブルをネットワークを構成する各ルータに送信し、前記ルータは、前記パケット種別情報および前記パケット種別毎の仮想ネットワークトポロジーテーブルを前記管理端末から受信し、前記パケット種別毎の仮想ネットワークトポロジーテーブルを基に前記パケット種別毎の仮想ネットワークに対応した仮想ルーティングテーブルを作成し、前記ルータは、パケットを受信したときに受信したパケットが前記パケット種別に該当するか否かを検索し前記パケット種別に該当する場合には該当したパケット種別に対応した仮想ルーティングテーブルを用いて受信したパケットのルーティングを行う、ことを特徴とする。
【００２２】
本願第７の発明のトラフィック負荷分散方法は、第５または第６の発明において前記受信したパケットが前記パケット種別に該当しない場合には、実存するネットワークに対応したルーティングテーブルを用いて受信したパケットのルーティングを行うことを特徴とする。
【００２３】
本願第８の発明のトラフィック負荷分散方法は、第５または第６の発明において前記パケット種別情報は、パケットのヘッダ情報の組み合わせであることを特徴とする。
【００２４】
本願第９の発明のトラフィック負荷分散方法は、第５または第６の発明において前記受信したパケットが前記パケット種別に該当している場合で且つ対応する仮想ネットワークの仮想ルーティングテーブルを用いても宛先に到達不能である場合、実存するネットワークに対応した実ルーティングテーブルを用いて受信したパケットのルーティングを行うことを特徴とする。
【００２５】
【発明の実施の形態】
本発明の第１の実施の形態の構成について、図面を用いて詳細に説明する。
図１は、本発明の第１の実施の形態の構成を示す図であり、ネットワークトポロジーを表している（後述する仮想ネットワークトポロジーに対して、以降、実ネットワークトポロジーと称す）。
図２は、ルータの構成を示す図である。
図３は、管理端末の構成を示す図である。
図４は、パケット種別テーブルの例を示す図である。
【００２６】
図１を参照すると、本発明の第１の実施の形態は、端末１０，端末２０，ルータ３０，ルータ４０，ルータ５０，ルータ６０，ルータ７０，ルータ８０，ルータ９０および管理端末２００を備えている。
【００２７】
端末１０は、端末２０宛のパケットを送信する情報処理装置である。
【００２８】
端末２０は、端末１０からのパケットを受信する情報処理装置である。
【００２９】
ルータ３０〜ルータ９０は、端末１０から端末２０宛のパケットを中継する装置である。
ルータ３０〜ルータ９０は、図２に示すように、ルータ機能部１０１と実ルーティングテーブル１０２と第１仮想ルーティングテーブル１０３１と第２仮想ルーティングテーブル１０３２とパケット種別テーブル１０４とインタフェース部１０５とを有している。
【００３０】
ルータ機能部１０１は、実ルーティングテーブル１０２またはパケット種別テーブル１０４および仮想ルーティングテーブル１０３を用いてパケットの中継処理を行う。ルータ機能部１０１は、ＣＰＵおよびＣＰＵが実行するプログラムやデータ等を格納するメモリ等で構成され、仮想ネットワークトポロジーテーブルを基に仮想ルーティングテーブル１０３を作成する機能，受信したパケットのパケット種別をパケット種別テーブル１０４に基づき判定する機能，ルーティングテーブルに基づきパケットの中継経路を決定する機能およびパケットの送受信を行う機能を有している。また、ネットワーク内におけるルータ間の接続情報を収集して実在のネットワークトポロジーを認識して実ネットワークトポロジーテーブルを生成し、さらに生成した実ネットワークトポロジーテーブルを基に対応する実ルーティングテーブル１０２を作成する機能を有する。
【００３１】
実ルーティングテーブル１０２は、実ネットワークトポロジーに対応したルーティングテーブルであり、パケットの中継経路情報を格納する。実ルーティングテーブルを構成する各行（エントリと呼ぶ）は、ある中継経路に関する情報を示している。
【００３２】
仮想ルーティングテーブル１０３は、仮想ネットワークトポロジーに対応したルーティングテーブルであり、パケットの中継経路情報を格納する。仮想ルーティングテーブルを構成する各行（エントリと呼ぶ）は、ある中継経路に関する情報を示している。仮想ルーティングテーブルは仮想ネットワークトポロジーに対応し、仮想ネットワークトポロジー毎に存在する。図２では、２つの仮想ルーティングテーブル（第１仮想ルーティングテーブル１０３１と第２仮想ルーティングテーブル１０３２）が例示されている。
【００３３】
パケット種別テーブル１０４は、管理端末２００から送信されたパケット種別情報が格納され、パケット種別と仮想ネットワークとの関連付けを行う。図４にパケット種別テーブルの例を示す。パケット種別テーブルにはＩＰヘッダ情報およびそれに対応する仮想ネットワーク番号が登録されている。図４の例では、Source Address“10.40.29.109”を持つＩＰパケットが仮想ネットワーク1と関連付けられている。
【００３４】
インタフェース部１０５は、ケーブルを介してルータをネットワークに接続する。インタフェース部１０５はポート数に応じて複数個存在する。
【００３５】
ルータ３０〜ルータ９０は、概略次のように動作する。インタフェース部１０５がパケットを受信すると、ルータ機能部１０１がパケットの種別を判定し、パケット種別から対応する仮想ネットワークを判定する。受信パケットの宛先アドレスから宛先ネットワークを判定し、宛先ネットワークで仮想ネットワークのルーティングテーブルを検索する。一致するエントリがない場合には実在ネットワークのルーティングテーブルを用いて転送処理を行い、一致するエントリがある場合にはその仮想ネットワークのルーティングテーブル上のエントリを選択してインタフェース部１０５から転送先に送信する。なお、管理端末２００から発行される管理情報パケットは実ルーティングテーブルを使用して経路中継を行う。また、管理端末２００からパケット種別情報およびルータ間接続情報を受信して、パケット種別テーブルおよび仮想ネットワークトポロジーテーブルを生成し、さらに生成した仮想ネットワークトポロジーテーブルを基に対応する仮想ルーティングテーブルを生成する。
【００３６】
管理端末２００は、端末１０〜端末２０およびルータ３０〜ルータ９０で構成されるネットワークを管理する情報処理装置である。
管理端末２００は、図３に示すように、制御手段２０１とパケット種別情報設定手段２０２とルータ間接続情報設定手段２０３と通信手段２０４と実ネットワーク認識手段２０５と仮想ネットワーク定義手段２０６とを有する。
【００３７】
制御手段２０１は、パケット種別情報設定手段２０２とルータ間接続情報設定手段２０３と通信手段２０４と実ネットワーク認識手段２０５と仮想ネットワーク定義手段２０６とを制御する。
【００３８】
パケット種別情報設定手段２０２は、パケットを識別するためのパケット種別情報を設定する。パケット種別情報は、パケット優先度(TOS)，データ長，プロトコルタイプ等のＩＰパケットヘッダ情報の組み合わせにより定義される。なお、パケット優先度は、IPv4ヘッダ内のTOSフィールドあるいはIPv6ヘッダ内のPriorityフィールドで指定される。データ長はIPv4ヘッダ内のTotal LengthフィールドあるいはIPv6ヘッダ内のPayload Lengthフィールドで指定される。プロトコルタイプは、IPv4ヘッダ内のProtocolフィールドあるいはIPv6ヘッダ内のNext Headerフィールドで識別される。
【００３９】
ルータ間接続情報設定手段２０３は、各パケット種別毎の有効なルータ間接続情報（或は無効なルータ間接続情報）を設定する。ルータ間接続情報は、図１に示される実在のネットワークトポロジーでの各ルータ間の接続が、特定のパケット種別の経路演算をする際のルータ間接続として、有効であるか、無効であるかをあらわす。ルータ間接続情報は、仮想ネットワークトポロジーを生成するために使用される。
【００４０】
通信手段２０４は、パケット種別情報設定手段２０２が設定したパケット種別情報やルータ間接続情報設定手段２０３が設定したルータ間接続情報などの情報をルータに送信する。また、端末１０〜端末２０やルータ３０〜ルータ９０からの情報を受信する。
【００４１】
実ネットワーク認識手段２０５は、ネットワークトポロジー情報を動的に収集して実在のネットワークトポロジーを認識し、実ネットワークトポロジーテーブルを作成する。トポロジーテーブルは、認識されているルータ間リンクと、コスト情報と、ルータ間リンクの有効／無効情報と、を含んでいる。ルータ間リンクの有効／無効情報は本発明特有のパラメータであり、ルータ間リンクが有効であるか無効であるかを示す。
【００４２】
仮想ネットワーク定義手段２０６は、ルータ間接続情報設定手段２０３でパケット種別毎に設定されるルータ間接続情報および実ネットワーク認識手段２０５が作成する実ネットワークトポロジーテーブルを基に、パケット種別毎の仮想ネットワークトポロジーテーブルを作成する。
【００４３】
本発明の第１の実施の形態の動作について、図面を用いて詳細に説明する。
図５は、本発明の第１の実施の形態の動作を説明する図である。
図６は、パケット種別テーブルの例を示す図である。
図７は、仮想ネットワークトポロジーの例を示す図である。
図８は、ルータにおけるＩＰパケットルーティングの流れを示す図である。
図９は、トラフィック１００における変更された通過経路を示す図である。
図１０は、トラフィック１１０における変更された通過経路を示す図である。
図１１は、トラフィックの通過経路を示す図である。
【００４４】
最初に、動作の全体の流れを説明する。本発明の実施の形態は、以下のように動作する。
（ステップ１）ネットワークが立ち上がり、公知の方法で実ルーティングテーブルを作成してルーティングを行う。
（ステップ２）管理端末２００はパケット種別およびパケット種別毎のルータ間接続情報を定義し、各ルータへ通知する。
（ステップ３）各ルータは管理端末２００より受信したパケット種別およびパケット種別毎のルータ間接続情報から、仮想ネットワークトポロジーテーブルを生成し、さらに対応する仮想ルーティングテーブルを作成する。
（ステップ４）各ルータは実ルーティングテーブルと仮想ルーティングテーブルとを使用してルーティングを行う。
【００４５】
次に、上記の４ステップについて、それぞれ詳細に説明する。
【００４６】
先ず、ステップ１について説明する。
（１−１）図５を参照すると、各ルータは、ネットワークトポロジー情報を動的に収集して実在のネットワークトポロジーを認識し、従来のルーティングプロトコルのアルゴリズムによって、実ネットワークトポロジーに基づく実ルーティングテーブル１０２を作成する。
（１−２）実ルーティングテーブル１０２を使用して既存のルーティングプロトコルによる経路演算結果により選択された最短経路によるルーティングを行う（図５のネットワークが立ち上がった時点では、パケット種別を識別した仮想ネットワークによる経路制御は未だ行われていない）。このネットワークでは、端末１０から端末２０宛に、トラフィック１００，トラフィック１１０およびトラフィック１２０が流れている。これらのトラフィックは、パケット優先度(TOS)，データ長あるいはプロトコルタイプ等のパケット種別により互いに識別可能なＩＰパケットデータグラムのグループであり、トラフィック１００は”ToS＝5”のパケット群、トラフィック１１０は”TL＝1500バイト以上”のパケット群、から成る。図５の例では、端末１０より出力されるトラフィック１００〜トラフィック１２０は、端末１０→ルータ３０→ルータ４０→ルータ５０→端末２０の経路を通過している。
【００４７】
続いて、ステップ２について説明する。
（２−１）先ず、管理端末２００の実ネットワーク認識手段２０５は、ネットワークトポロジー情報を動的に収集して実在のネットワークトポロジーを認識し、実ネットワークのトポロジー図とトポロジーテーブル（実ネットワークトポロジーテーブルと称す）を作成する。図７の▲１▼−１は、ここで例として取り上げるネットワークのネットワークトポロジー図を示している（図７の▲１▼−１は図５のネットワークから端末と管理端末を省略したものである）。また、このネットワークトにおけるトポロジーテーブル例を▲１▼−２に示す。ここでは、コスト情報を考えないため、任意の値を示す“Ｘ”が表中に表示されている。▲１▼−２実在のネットワークにおけるトポロジーテーブル例においては、全てのルータ間リンクの“有効／無効”パラメータが、有効に設定されている。
（２−２）次に、管理端末２００のパケット種別情報設定手段２０２は、仮想ネットワークのためのパケット種別を設定する。本例では、トラフィック１００を識別するためのパケット種別１とトラフィック１１０を識別するためのパケット種別２を設定する。設定したパケット種別情報の例を図６に示す。図６を参照すると、パケット種別情報として”TOS=5”を有するパケットをパケット種別１として仮想ネットワーク番号１と関連付け、パケット種別情報として”TL=1500バイト以上”を有するパケットをパケット種別２として仮想ネットワーク番号２と関連付けている。
（２−３）次に、管理端末２００のルータ間接続情報設定手段２０３は、各パケット種別毎の有効なルータ間接続情報（或は無効なルータ間接続情報）を設定する。ルータ間接続情報は、図７▲１▼−１に示される実在のネットワークトポロジーでの各ルータ間の接続が、特定のパケット種別の経路演算をする際のルータ間接続として、有効であるか無効であるかをあらわす。
本例では、パケット種別１に対するルータ間接続情報は、ルータ４０〜ルータ５０間およびルータ４０〜ルータ９０間のルータ間接続をトラフィック１００の経路演算には使用しないという無効なルータ間接続情報である。
また、パケット種別２に対するルータ間接続情報は、ルータ３０〜ルータ４０間およびルータ４０〜ルータ５０間のルータ間接続をトラフィック１１０の経路演算には使用しないという無効なルータ間接続情報である。
（２−４）次に、管理端末２００の仮想ネットワーク定義手段２０６は、実ネットワーク認識手段２０５が作成した実ネットワークトポロジーテーブルとルータ間接続情報設定手段２０３が作成したルータ間接続情報を基に、パケット種別毎に仮想ネットワークトポロジーを構築する。本例では、パケット種別１とパケット種別２のために２つの仮想ネットワーク（仮想ネットワーク１と仮想ネットワーク２）を定義する。図７を参照すると、
▲２▼−２において、仮想ネットワーク１のトポロジーテーブルを示す。表中No9  ルータ４０〜ルータ５０間のルータ間リンクと、No10  ルータ４０〜ルータ９０間のルータ間リンクの“有効／無効”パラメータを、“無効”に設定している。これにより仮想ネットワーク１のトポロジーテーブルにおいては、上記２つのルータ間リンクが、接続されていないとみなされる。▲２▼−１に、この時の仮想ネットワーク１のトポロジー図を示す。
同様に、▲３▼−２において、仮想ネットワーク２のトポロジーテーブルを示す。表中No2  ルータ３０〜ルータ４０間のルータ間リンクと、No9  ルータ４０〜ルータ５０間のルータ間リンクの“有効／無効”パラメータを、“無効”に設定している。これにより仮想ネットワーク２のトポロジーテーブルにおいては、上記２つのルータ間リンクが、接続されていないとみなされる。▲３▼−１に、この時の仮想ネットワーク２のトポロジー図を示す。
（２−５）次に、管理端末２００の通信手段２０４は、ネットワーク内の全てのルータに対して、パケット種別情報設定手段２０２が作成したパケット種別情報およびルータ間接続情報設定手段２０３が作成したパケット種別毎のルータ間接続情報を送信する。
【００４８】
続いて、ステップ３について説明する。
（３−１）先ず、ルータのルータ機能部１０１は、管理端末２００から、パケット種別情報およびルータ間接続情報を受信する。
（３−２）次に、パケット種別情報をパケット種別テーブルに格納する。
（３−３）次に、パケット種別毎のルータ間接続情報および実ネットワークトポロジーテーブルを基にパケット種別毎の仮想ネットワークトポロジーテーブルを生成し、さらにパケット種別毎の仮想ルーティングテーブルを作成する。
すなわち、パケット種別１に対する第１仮想ルーティングテーブル１０３１およびパケット種別２に対する第２仮想ルーティングテーブル１０３２を生成する。このとき、パケット種別１に対して無効であるルータ４０〜ルータ５０間およびルータ４０〜ルータ９０間のルータ間接続は第１仮想ルーティングテーブル１０３１には使用されず、パケット種別２に対して無効であるルータ３０〜ルータ４０間およびルータ４０〜ルータ５０間のルータ間接続は第２仮想ルーティングテーブル１０３２には使用されない。
（３−４）次に、生成したルーティングテーブルとパケット種別との関連付けをパケット種別テーブルに格納する。
すなわち、パケット種別テーブルはＩＰヘッダ情報と仮想ネットワーク番号と仮想ルーティングテーブル番号とから成るように構成される。
【００４９】
続いて、ステップ４について説明する。
（４−１）ルータはパケットの中継処理を行う。
図８を参照すると、ルータは、ＩＰパケットを受信すると、そのＩＰパケットのヘッダ情報を抽出する。
次に、ＩＰヘッダ情報がパケット種別テーブル１０４に登録されているかを検索する。
パケット種別テーブル１０４内のＩＰヘッダ情報と条件が一致し（パケット種別テーブル１０４にエントリがある）仮想ネットワークと関連付けられている場合には、仮想ネットワークに対応する仮想ルーティングテーブルを決定し、この仮想ルーティングテーブルを用いてそのＩＰパケットのルーティングを行う。
パケット種別テーブル１０４にエントリがない場合（仮想ネットワークによる経路制御を必要としないパケット）あるいはパケット種別テーブル１０４にエントリはあるが仮想ネットワークと関連付けられていない場合には、実ルーティングテーブル１０２を使用してルーティングを行う。
仮想ルーティングテーブルにおいて経路計算を行ったときに該当するパケットが到達不能である場合には、実ルーティングテーブル１０２を使用してルーティングを行う。
管理端末２００から送信される管理情報パケットについては、実ルーティングテーブル１０２を使用してルーティングを行う。
このようにして、受信したＩＰパケットを送信する出力ポートが決定され、ＩＰパケットを送信する。
本例では、トラフィック１００（ＩＰヘッダ情報に”TOS=5”を有するパケット群）はパケット種別１と認識されて第１仮想ルーティングテーブル１０３１を用いてルーティングが行なわれ、トラフィック１１０（ＩＰヘッダ情報に”TL=1500バイト以上”を有するパケット群）はパケット種別２と認識されて第２仮想ルーティングテーブル１０３２を用いてルーティングが行なわれ、トラフィック１２０は実ルーティングテーブル１０２を用いてルーティングが行なわれる。
トラフィック１００の通過経路を図９に示す。トラフィック１００の経路は端末１０→ルータ３０→ルータ４０→ルータ７０→ルータ５０→端末２０のように変更されている。なお、点線は無効なルータ間接続を示している。
トラフィック１１０の通過経路を図１０に示す。トラフィック１１０の経路は端末１０→ルータ３０→ルータ４０→ルータ５０→端末２０のように変更されている。なお、点線は無効なルータ間接続を示している。
トラフィック１２０の通過経路は、図５と同様に、端末１０→ルータ３０→ルータ４０→ルータ５０→端末２０である。
トラフィック１００〜トラフィック１２０の通過経路をまとめると、図１１のようになる。
【００５０】
なお、上述の実施の形態では、ルータはパケット種別毎のルータ間接続情報および実ネットワークトポロジーテーブルを基にパケット種別毎の仮想ルーティングテーブルを生成しているが、管理端末がルータに仮想ネットワークトポロジーテーブルを送信しルータは仮想ネットワークトポロジーテーブルを基に仮想ルーティングテーブルを生成するようにしてもよい。
【００５１】
このようにして、ネットワーク上でパケット種別に応じた仮想ネットワークを明示的に複数定義することで、仮想ネットワークに関連するパケットはその定義されたルート群内でルーティングされるので、ネットワークの特性に適した柔軟な経路制御を行うことができる。また、定義されたルート群内で動的に経路演算を行うため、トポロジーの変更や、経路の障害によるルート変更にも追従することができる。この結果、ネットワークにおける負荷を分散させ輻輳の発生を事前に防止する効果がある。
【００５２】
次に、本発明の第２の実施の形態について、図面を用いて詳細に説明する。
図１２は、本発明の第２の実施の形態の構成を示す図でであり、ネットワークトポロジーを表している（後述する仮想ネットワークトポロジーに対して、以降、実ネットワークトポロジーと称す）。
図１３は、仮想ネットワークの例を示す図である。
図１４は、仮想ネットワークの例を示す図である。
【００５３】
図１２を参照すると、本発明の第２の実施の形態は、４つのＬＡＮセグメント（ＬＡＮ３００，ＬＡＮ３１０，ＬＡＮ３２０およびＬＡＮ３３０）並びに、それらを接続している５つのルータ（ルータ４００，ルータ４１０，ルータ４２０，ルータ４３０およびルータ４４０）を備えている。
【００５４】
図１２の構成において、各ＬＡＮセグメント間で通信を行う場合を考える。
例として、ＬＡＮ３００の端末からＬＡＮ３３０の端末にデータを転送する場合、ループが存在しないよう通過経路を考えると、以下の４通りの通過経路の候補が考えられる。
１つ目として、ルータ４００→ルータ４２０→ルータ４４０。
２つ目として、ルータ４００→ルータ４２０→ルータ４３０→ルータ４４０。
３つ目として、ルータ４００→ルータ４１０→ルータ４２０→ルータ４４０。
４つ目として、ルータ４００→ルータ４１０→ルータ４２０→ルータ４３０ →ルータ４４０となる。
【００５５】
ここで、管理端末において、第１の実施の形態と同様に仮想ネットワークを定義する。
本例では、図１２のネットワークに対して、２つのパケット種別を設定し、パケット種別ごとにルータ間接続情報を設定し、図１３および図１４に示す２つの仮想ネットワークを定義している。
【００５６】
これにより、ＬＡＮ３００の端末からＬＡＮ３３０の端末にデータを転送する通過経路の候補が、図１２においては４つであったが、図１３および図１４では、各々１つのみとなる。
【００５７】
特定のパケット種別により、図１３または図１４のどちらかの仮想ネットワークへパケットを振り分け、各々の仮想ネットワークにおいてルーティング演算を実施する。
【００５８】
各々の仮想ネットワークでは、通過経路の候補が減少したことにより、経路演算の処理を減少することができる。
【００５９】
このようにして、複雑なネットワーク構成を複数のシンプルな仮想ネットワーク構成で表現することにより、ルーティンプロトコルによる経路演算の処理を軽減することができ、構造的に複雑なネットワークに対しても容易に対応することが可能となる。
【００６０】
例えば、OSPFのようなリンク状態プロトコルでは、ルーティングされるデータフローの到達経路が複数存在する場合、経路演算の処理が増大するという問題点があったが、本発明による経路制御方法を導入することにより、この問題点を解決することができる。
【００６１】
【発明の効果】
第１の効果は、ネットワーク上でパケット種別に応じた仮想ネットワークを明示的に複数定義することが可能となり、ネットワークの特性に適した柔軟な経路制御方法を提供することができることである。
【００６２】
第２の効果は、構造的に輻輳、伝播遅延、パケット廃棄が発生しづらいネットワークを構築でき、かつ実装が容易なパケット種別に応じたトラフィックの負荷分散が可能となることである。
【００６３】
第３の効果は、特定のネットワークにおいて、そのネットワーク固有の特性に合ったパケット種別を定義することが可能となることである。
【００６４】
第４の効果は、DiffservやRSVP等のトラフィックエンジニアリング方式を使用して、トラフィックの負荷分散された経路上で、QoS制御を行うことが可能となることである。
【００６５】
第５の効果は、経路演算の処理を軽減することが可能となり、構造的に複雑なネットワークにおいても、容易にルーティングプロトコルを取り扱うことが可能となることである。
【００６６】
その理由は、パケットを識別するパケット種別情報を設定してパケット種別毎に仮想ネットワークを定義し、パケットを受信した時にパケット種別を識別して対応する仮想ネットワークにルーティングするようにしたからである。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態の構成を示す図
【図２】ルータの構成を示す図
【図３】管理端末の構成を示す図
【図４】パケット種別テーブルの例を示す図
【図５】本発明の第１の実施の形態の動作を説明する図
【図６】パケット種別テーブルの例を示す図である。
【図７】仮想ネットワークトポロジーの例を示す図
【図８】ルータにおけるＩＰパケットルーティングの流れを示す図
【図９】トラフィック１００における変更された通過経路を示す図
【図１０】トラフィック１１０における変更された通過経路を示す図
【図１１】トラフィックの通過経路を示す図
【図１２】本発明の第２の実施の形態の構成を示す図
【図１３】仮想ネットワークの例を示す図
【図１４】仮想ネットワークの例を示す図
【図１５】  IPv4ヘッダフォーマットの例を示す図
【図１６】  IPv6ヘッダフォーマットの例を示す図
【符号の説明】
１０    端末
２０    端末
３０    ルータ
４０    ルータ
５０    ルータ
６０    ルータ
７０    ルータ
８０    ルータ
９０    ルータ
１０１    ルータ機能部
１０２    実ルーティングテーブル
１０４    パケット種別テーブル
１０５    インタフェース部
２００    管理端末
２０１    制御手段
２０２    パケット種別情報設定手段
２０３    ルータ間接続情報設定手段
２０４    通信手段
２０５    実ネットワーク認識手段
２０６    仮想ネットワーク定義手段
３００    ＬＡＮ
３１０    ＬＡＮ
３２０    ＬＡＮ
３３０    ＬＡＮ
４００    ルータ
４１０    ルータ
４２０    ルータ
４３０    ルータ
４４０    ルータ
１０３１    第１仮想ルーティングテーブル
１０３２    第２仮想ルーティングテーブル
【図１】
0003926158.tif 000002
【図２】
0003926158.tif 000003
【図３】
0003926158.tif 000004
【図４】
0003926158.tif 000005
【図５】
0003926158.tif 000006
【図６】
0003926158.tif 000007
【図７】
0003926158.tif 000008
【図８】
0003926158.tif 000009
【図９】
0003926158.tif 000010
【図１０】
0003926158.tif 000011
【図１１】
0003926158.tif 000012
【図１２】
0003926158.tif 000013
【図１３】
0003926158.tif 000014
【図１４】
0003926158.tif 000015
【図１５】
0003926158.tif 000016
【図１６】
0003926158.tif 000017