(57)【要約】 【課題】ネットワーク上の転送ノードに設定するエントリの数を増やすことなく、きめ細かに代替経路による転送制御ができるようにする。【解決手段】経路制御システムは、個々の転送ノードがいずれかのグループに属し、前記グループに対応するサブラベルに基づいてパケット転送を行う転送ネットワークと、受信したパケットの情報に基づいて、複数のサブラベルで構成されたラベルを付加するエッジノードと、前記エッジノードにおいて付加するサブラベルの組み合わせ及び前記転送ノードにおけるサブラベルに基づく転送処理を制御することにより、転送ネットワークの経路制御を行う制御装置とを含む。この制御装置は、通信経路に障害が発生した場合、エッジノードに、その後の受信パケットに付加するサブラベルのうち、通信経路の障害発生区間に対応するサブラベルの変更を行わせる。また、この制御装置は、転送ノードに、前記障害発生区間を経由しない経路にてパケット転送を行わせる。【選択図】図１
2015526921.tif 000002
【特許請求の範囲】
【請求項１】
個々の転送ノードがいずれかのグループに属し、前記グループに対応するサブラベルに基づいてパケット転送を行う転送ネットワークと、
受信したパケットの情報に基づいて、複数のサブラベルで構成されたラベルを付加するエッジノードと、
前記エッジノードにおいて付加するサブラベルの組み合わせ及び前記転送ノードにおける前記サブラベルに基づく転送処理を制御することにより、前記転送ネットワークの経路制御を行う制御装置と、を含み、
前記制御装置は、通信経路に障害が発生した場合、
前記エッジノードに、その後の受信パケットに付加するサブラベルのうち、前記通信経路の障害発生区間に対応するサブラベルの変更を行わせ、
前記転送ノードに、前記障害発生区間を経由しない経路にてパケット転送を行わせること、
を特徴とする経路制御システム。
【請求項２】
前記制御装置は、前記転送ノードに、前記障害発生区間を経由しない経路にて前記変更後のサブラベルに適合するパケットを転送させる制御情報を予め設定しておくこと、を特徴とする請求項１の経路制御システム。
【請求項３】
前記エッジノードは、送信元アドレスとパケットのペイロードの内容とに基づいて優先度情報と、宛先アドレスと、サブラベルの組み合わせとを対応付けた経路エントリ群から選択した受信パケットに適合するエントリに基づいてサブラベルの付加を行う請求項１または２の経路制御システム。
【請求項４】
前記経路エントリには、通信経路の状態を記録するフィールドが設けられ、前記エッジノードは、受信パケットに適合するエントリのうち、最も優先順位が高く、経路状態が正常であるエントリを選択する請求項３の経路制御システム。
【請求項５】
前記転送ノードが前記グループのほか、予め設定された階層のいずれかにも属しており、
前記制御装置は、前記エッジノードにおいて付加するサブラベルと階層識別子との組み合わせ及び前記転送ノードにおける前記サブラベルと前記階層識別子とに基づく転送処理を制御する請求項１から４いずれか一の経路制御システム。
【請求項６】
前記エッジノードは、パケットヘッダの送信元ＭＡＣアドレス領域に、生成したラベルを格納し、
前記制御装置は、下流側のエッジノードまたは転送ノードに前記送信元ＭＡＣアドレス領域の復元処理を実行させる請求項１から５いずれか一の経路制御システム。
【請求項７】
個々の転送ノードがいずれかのグループに属し、前記グループに対応するサブラベルに基づいてパケット転送を行う転送ネットワークと、
受信したパケットの情報に基づいて、複数のサブラベルで構成されたラベルを付加するエッジノードと、に接続され、
前記エッジノードにおいて付加するサブラベルの組み合わせ及び前記転送ノードにおける前記サブラベルに基づく転送処理を制御することにより、前記転送ネットワークの経路制御を行う制御装置であって、
通信経路に障害が発生した場合、
前記エッジノードに、その後の受信パケットに付加するサブラベルのうち、前記通信経路の障害発生区間に対応するサブラベルの変更を行わせ、
前記転送ノードに、前記障害発生区間を経由しない経路にてパケット転送を行わせる制御装置。
【請求項８】
前記エッジノードに、送信元アドレスとパケットのペイロードの内容とに基づいて優先度情報と、宛先アドレスと、サブラベルの組み合わせとを対応付けた経路エントリ群を設定し、
前記エッジノードに、前記経路エントリ群の経路エントリのうち、受信パケットに適合するエントリを用いてサブラベルの付加を行わせる請求項７の制御装置。
【請求項９】
前記経路エントリには、通信経路の状態を記録するフィールドが設けられ、前記エッジノードに、受信パケットに適合するエントリのうち、最も優先順位が高く、経路状態が正常であるエントリを選択させる請求項８の制御装置。
【請求項１０】
個々の転送ノードがいずれかのグループに属し、前記グループに対応するサブラベルに基づいてパケット転送を行う転送ネットワークと、
受信したパケットの情報に基づいて、複数のサブラベルで構成されたラベルを付加するエッジノードと、
前記エッジノードにおいて付加するサブラベルの組み合わせ及び前記転送ノードにおける前記サブラベルに基づく転送処理を制御することにより、前記転送ネットワークの経路制御を行う制御装置と、を含む経路制御システムにおける経路制御方法であって、
前記通信経路に障害が発生したか否かを検出するステップと、
前記通信経路に障害が発生した場合、前記エッジノードに、その後の受信パケットに付加するサブラベルのうち、前記通信経路の障害発生区間に対応するサブラベルの変更を行わせるステップと、
前記転送ノードに、前記障害発生区間を経由しない経路にてパケット転送を行わせるステップと、を含む経路制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、日本国特許出願：特願２０１２−１８７８６７号（２０１２年８月２８日出願）の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、経路制御システム、制御装置、エッジノード、経路制御方法及びプログラムに関し、特に、転送ノードと、これら転送ノードを集中制御する制御装置とを含む経路制御システム、制御装置、エッジノード、経路制御方法及びプログラムに関する。
【背景技術】
【０００２】
ＩＰ網（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  Ｎｅｔｗｏｒｋ）では、経路障害が発生したときに、ルータ間で経路情報のやりとりを行い、経路の再計算を行うダイナミックルーティングが用いられている。これらルータ間の情報のやり取りに用いられるプロトコルとしては、ＲＩＰ（Ｒｏｕｔｉｎｇ  ｉｎｆｏｒｍａｔｉｏｎ  ｐｒｏｔｏｃｏｌ）、ＯＳＰＦ（Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ）やＢＧＰ（Ｂｏｒｄｅｒ  Ｇａｔｅｗａｙ  Ｐｒｏｔｏｃｏｌ）等が知られている。
【０００３】
しかしながら、上記したルーティングプロトコルを用いる手法では、経路情報のやり取りを行い経路の再計算を行うため、障害経路を回避して代替経路で転送できるようになるまでに時間が掛かるという問題点がある。その他の障害時の代替経路の切替を行う方法としては、ＭＰＬＳ（Ｍｕｌｔｉ  Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ）におけるＦＲＲ（Ｆａｓｔ  ＲｅＲｏｕｔｅ）が知られている（非特許文献１を参照）。ＦＲＲは、ＭＰＬＳネットワークに設定されたＬＳＰ（Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ  Ｐａｔｈ）において、途中のリンクやノードの障害発生時に代替経路へ切り替える技術であり、予め代替経路を計算し設定を行うものである。
【０００４】
また、非特許文献２、３には、オープンフロー（ＯｐｅｎＦｌｏｗ）という技術が提案されている。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。非特許文献３に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチ条件（Ｍａｔｃｈ  Ｆｉｅｌｄｓ）と、フロー統計情報（Ｃｏｕｎｔｅｒｓ）と、処理内容を定義したインストラクション（Ｉｎｓｔｒｕｃｔｉｏｎｓ）と、の組が定義される（非特許文献３の「４．１  Ｆｌｏｗ  Ｔａｂｌｅ」の項参照）。
【０００５】
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチ条件（非特許文献３の「４．３  Ｍａｔｃｈ  Ｆｉｅｌｄｓ」参照）を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報（カウンタ）を更新するとともに、受信パケットに対して、当該エントリのインストラクションフィールドに記述された処理内容（指定ポートからのパケット送信、フラッディング、廃棄等）を実施する。一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求、即ち、受信パケットの処理内容の決定の要求（Ｐａｃｋｅｔ−Ｉｎメッセージ）を送信する。オープンフロースイッチは、処理内容が定められたフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを処理規則として用いてパケット転送を行う。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Ｐ．Ｐａｎ，Ｇ．Ｓｗａｌｌｏｗ  ａｎｄ  Ａ．Ａｔｌａｓ、“Ｆａｓｔ  Ｒｅｒｏｕｔｅ  Ｅｘｔｅｎｓｉｏｎｓ  ｔｏ  ＲＳＶＰ−ＴＥ  ｆｏｒ  ＬＳＰ  Ｔｕｎｎｅｌｓ”、ＩＥＴＦ  ＲＦＣ４０９０、  Ｍａｙ  ２００５、インターネット〈URL: http://www.ietf.org/rfc/rfc4090.txt〉
【非特許文献２】Ｎｉｃｋ  ＭｃＫｅｏｗｎほか７名、“ＯｐｅｎＦｌｏｗ：  Ｅｎａｂｌｉｎｇ  Ｉｎｎｏｖａｔｉｏｎ  ｉｎ  Ｃａｍｐｕｓ  Ｎｅｔｗｏｒｋｓ”、［ｏｎｌｉｎｅ］、［平成２４（２０１２）年５月３１日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉
【非特許文献３】“ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”  Ｖｅｒｓｉｏｎ  １．１．０  Ｉｍｐｌｅｍｅｎｔｅｄ  （Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ  ０ｘ０２）、［ｏｎｌｉｎｅ］、［平成２４（２０１２）年５月３１日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記非特許文献の開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明によって与えられたものである。上記したＭＰＬＳにおけるＦＲＲの第１の問題点は、ネットワークに障害が発生したときに、代替経路を柔軟に選択できない点である。その理由は、障害が発生したときに予め設定された代替経路に切り替えることで経路制御を実現しているためである。また、ＦＲＲの第２の問題点は、ネットワーク機器の設定が増加する点である。その理由は、ネットワークに障害が発生したときに、代替経路で転送するための設定を行う必要があり、アプリケーション（ラベル）単位に設定を行う場合には、その設定数（ＬＩＢ（Ｌａｂｅｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）のエントリ数）が多くなるためである。
【０００８】
また、非特許文献２、３のオープンフローには、フロー単位での経路制御や障害回復を行う機能が備えられているが、代替経路の計算を行った上で、その経路を実現するフローエントリを作成し、個々のオープンフロースイッチに設定する必要があるため、相応の負荷が掛かってしまうという問題点がある。事前に代替経路を計算し、個々のオープンフロースイッチに設定しておくことも可能であるが、フロー毎に代替経路を設定しておくとなると、上記ＭＰＬＳの場合と同様に、個々のオープンフロースイッチが保持するフローエントリの数が増大してしまうという問題点がある。
【０００９】
本発明の目的は、ネットワーク上の転送ノードに設定するエントリの数を増やすことなく、きめ細かに代替経路による転送制御を可能とする経路制御システム、制御装置、エッジノード、経路制御方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
本発明の第１の視点によれば、個々の転送ノードがいずれかのグループに属し、前記グループに対応するサブラベルに基づいてパケット転送を行う転送ネットワークと、受信したパケットの情報に基づいて、複数のサブラベルで構成されたラベルを付加するエッジノードと、前記エッジノードにおいて付加するサブラベルの組み合わせ及び前記転送ノードにおける前記サブラベルに基づく転送処理を制御することにより、前記転送ネットワークの経路制御を行う制御装置と、を含み、前記制御装置は、通信経路に障害が発生した場合、前記エッジノードに、その後の受信パケットに付加するサブラベルのうち、前記通信経路の障害発生区間に対応するサブラベルの変更を行わせ、前記転送ノードに、前記障害発生区間を経由しない経路にてパケット転送を行わせる経路制御システムが提供される。
【００１１】
本発明の第２の視点によれば、個々の転送ノードがいずれかのグループに属し、前記グループに対応するサブラベルに基づいてパケット転送を行う転送ネットワークと、受信したパケットの情報に基づいて、複数のサブラベルで構成されたラベルを付加するエッジノードと、に接続され、前記エッジノードにおいて付加するサブラベルの組み合わせ及び前記転送ノードにおける前記サブラベルに基づく転送処理を制御することにより、前記転送ネットワークの経路制御を行う制御装置であって、通信経路に障害が発生した場合、前記エッジノードに、その後の受信パケットに付加するサブラベルのうち、前記通信経路の障害発生区間に対応するサブラベルの変更を行わせ、前記転送ノードに、前記障害発生区間を経由しない経路にてパケット転送を行わせる制御装置が提供される。
【００１２】
本発明の第３の視点によれば、送信元アドレスとパケットのペイロードの内容とに基づいて優先度情報と、宛先アドレスと、サブラベルの組み合わせとを対応付けた経路エントリ群から選択した受信パケットに適合するエントリに基づいてサブラベルの付加を行うエッジノードが提供される。
【００１３】
本発明の第４の視点によれば、個々の転送ノードがいずれかのグループに属し、前記グループに対応するサブラベルに基づいてパケット転送を行う転送ネットワークと、受信したパケットの情報に基づいて、複数のサブラベルで構成されたラベルを付加するエッジノードと、前記エッジノードにおいて付加するサブラベルの組み合わせ及び前記転送ノードにおける前記サブラベルに基づく転送処理を制御することにより、前記転送ネットワークの経路制御を行う制御装置と、を含む経路制御システムにおける経路制御方法であって、前記通信経路に障害が発生したか否かを検出するステップと、前記通信経路に障害が発生した場合、前記エッジノードに、その後の受信パケットに付加するサブラベルのうち、前記通信経路の障害発生区間に対応するサブラベルの変更を行わせるステップと、前記転送ノードに、前記障害発生区間を経由しない経路にてパケット転送を行わせるステップと、を含む経路制御方法が提供される。本方法は、上記した転送ノード及びエッジノードを制御する制御装置という、特定の機械に結びつけられている。
【００１４】
本発明の第５の視点によれば、個々の転送ノードがいずれかのグループに属し、前記グループに対応するサブラベルに基づいてパケット転送を行う転送ネットワークと、受信したパケットの情報に基づいて、複数のサブラベルで構成されたラベルを付加するエッジノードと、前記エッジノードにおいて付加するサブラベルの組み合わせ及び前記転送ノードにおける前記サブラベルに基づく転送処理を制御することにより、前記転送ネットワークの経路制御を行う制御装置と、を含む経路制御システムの前記制御装置に搭載されたコンピュータに、前記通信経路に障害が発生したか否かを検出する処理と、前記通信経路に障害が発生した場合、前記エッジノードに、その後の受信パケットに付加するサブラベルのうち、前記通信経路の障害発生区間に対応するサブラベルの変更を行わせる処理と、前記転送ノードに、前記障害発生区間を経由しない経路にてパケット転送を行わせる処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な（非トランジエントな）記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１５】
本発明によれば、ネットワーク上の転送ノードに設定するエントリ数を増やすことなく、きめ細かに代替経路による転送を行うことが可能となる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態の経路制御システムの構成を示す図である。
【図２】本発明の一実施形態の経路制御システムの動作を説明するための図である。
【図３】本発明の第１の実施形態の経路制御システムの構成を示す図である。
【図４】本発明の第１の実施形態のエッジノードの構成を示す図である。
【図５】本発明の第１の実施形態のエッジノードが保持する優先度テーブルの構成を示す図である。
【図６】本発明の第１の実施形態のエッジノードが保持する経路テーブルの構成を示す図である。
【図７】本発明の第１の実施形態のエッジノードがパケットに付加するラベルの構成を示す図である。
【図８】本発明の第１の実施形態の転送ノードに設定されるフローテーブルの構成を示す図である。
【図９】本発明の第１の実施形態のエッジノードの動作を示す流れ図である。
【図１０】本発明の第１の実施形態の制御装置の動作を示す流れ図である。
【図１１】本発明の第２の実施形態の経路制御システムの構成を示す図である。
【図１２】本発明の第２の実施形態のエッジノードが保持する経路テーブルの構成を示す図である。
【図１３】本発明の第２の実施形態のエッジノードがパケットに付加するラベルの構成を示す図である。
【図１４】本発明の第２の実施形態の転送ノードに設定されるフローテーブルの構成を示す図である。
【図１５】本発明の第３の実施形態の経路制御システムの構成を示す図である。
【図１６】本発明の第３の実施形態のエッジノードが保持する優先度テーブルの構成を示す図である。
【図１７】本発明の第３の実施形態のエッジノードが保持する経路テーブルの構成を示す図である。
【図１８】本発明の第３の実施形態の転送ノードに設定されるフローテーブルの構成を示す図である。
【発明を実施するための形態】
【００１７】
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００１８】
本発明は、その一実施形態において、図１に示すように、複数の転送ノード３０ａ〜３０ｆによって構成される転送ネットワーク３０と、転送ネットワークに流れるパケットにラベルを付加するエッジノード２０と、転送ノード３０ａ〜３０ｆ及びエッジノード２０を制御する制御装置４０とを含む構成にて実現できる。
【００１９】
転送ノード３０ａ〜３０ｆは、ネットワークトポロジ上の任意の２点間の通信を実現するにあたり並列関係にある（代替関係にある）転送ノード同士をまとめたいくつかのグループにグループ分けされている。個々の転送ノード３０ａ〜３０ｆは、それぞれ自装置が属するグループに対応するサブラベルに基づいてパケット転送を行う。例えば、図１の例では、転送ノード３０ａ、３０ｂ、転送ノード３０ｃ、３０ｄ、転送ノード３０ｅ、３０ｆの３つのグループが設けられている。
【００２０】
エッジノード２０は、受信したパケットの情報に基づいて、複数のサブラベルで構成されたラベルを付加する。図１の例では、エッジノード２０は、制御装置４０から予め指示されたラベル付加ルールに従い、端末１０または端末１１から受信した受信パケットに、３つのサブラベルによって構成されるラベルを付加する。
【００２１】
制御装置４０は、エッジノード２０に対し、受信パケットに対するラベル付加ルールを指示する。また、制御装置４０は、転送ノード３０ａ〜３０ｆに対し、前記サブラベルに基づく転送処理を指示する。例えば、制御装置４０は、端末１０から見て最も上流側のグループの転送ノード３０ａ、３０ｂに対し、受信したパケットの第１サブラベル（図１の吹き出し内左側のサブラベル）を参照し、その値に従い転送先を決定するよう指示する。同様に、転送ノード３０ｃ、３０ｄは、受信したパケットの第２サブラベル（図１の吹き出し内中央のサブラベル）を参照し、転送先を決定する。同様に、転送ノード３０ｅ、３０ｆは、受信したパケットの第３サブラベル（図１の吹き出し内右側のサブラベル）を参照し、転送先を決定する。この結果、転送ノード３０ａ〜３０ｆは、一つの転送用エントリで、端末１０から端末１２宛てのパケット転送と端末１１から端末１２宛てのパケット転送、を実行することが可能となる。
【００２２】
また、制御装置４０は、経路上の転送ノードに障害が発生したことを検出した場合、次の動作を行う。例えば、図２に示すように、転送ノード３０ｄに障害が発生した場合、制御装置４０は、エッジノード２０に対し、転送ノード３０ｄにて障害が発生したことを通知し、第１サブラベルとして書き込む値を変更させる（例えば、エッジノード２０に図６に例示する経路テーブルの更新を行わせる。）。以上の結果、図２の矢線に示すように、端末１０、１１からのパケットは、転送ノード３０ｄの代わりに転送ノード３０ｃを経由して端末１２に転送されるようになる。
【００２３】
以上のようにして、ネットワーク上の転送ノードに設定するエントリ数を増やすことなく、代替経路による転送が実現される。
【００２４】
［第１の実施形態］
続いて、代替経路を事前設定しておくようにした本発明の第１の実施形態について図面を参照して詳細に説明する。
【００２５】
図３は、本発明の第１の実施形態の経路制御システムの構成を示す図である。図３を参照すると、端末１００−１〜１００−３と、サーバ１０３−１〜１０３−３と、転送ノード１０２−１〜１０２−８で構成される転送ネットワーク１０８と、転送ネットワーク１０８と端末やサーバ等の外部ノードとの間に配置されるエッジノード１０１−１〜１０１−４と、転送ネットワーク１０８とエッジノード１０１−１〜１０１−４を監視制御するための制御装置１０４と、を含んだ構成が示されている。なお、図３の例では、エッジノード１０１−１〜１０１−４は、端末１００−１〜１００−３およびサーバ１０３−１〜１０３−３と直接接続しているが、端末１００−１〜１００−３やサーバ１０３−１〜１０３−３と間にスイッチなどのネットワーク機器が存在してもよい。
【００２６】
以降の説明では、端末１００−１〜１００−３とエッジノード１０１−１〜１０１−４と転送ノード１０２−１〜１０２−８とサーバ１０３−１〜１０３−３は、特に区別する必要がある場合を除き、端末１００とエッジノード１０１と転送ノード１０２とサーバ１０３と記載する。
【００２７】
転送ネットワーク１０８は、フロー単位の転送制御が可能な転送ノード１０２−１〜１０２−８で構成されている。転送ノード１０２は、制御装置１０４の指示により、フロー単位に転送先を設定することが可能であり、非特許文献３の仕様に準拠したスイッチが該当する。転送ノード１０２は、第１の横階層１０５、第２の横階層１０６、第３の横階層１０７のいずれかに属している。フローは、たとえば、送信元や送信先のＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス、ＩＰアドレス、ポート番号の組み合わせで特定される一連のパケットの流れであるが、要素はこれに限定されるものではない。また、本実施形態では、転送ネットワーク１０８を３つの横階層に分割しているが、これに限定するものではない。
【００２８】
制御装置１０４は、後記するエッジノード２０の制御のほか、転送ノード１０２を制御する制御装置として動作する。制御装置１０４と転送ノード１０２間には専用のチャネルが設けられ、制御メッセージを授受することが可能となっている。また、これら制御メッセージを授受するためのプロトコルとしては、非特許文献３のオープンフロープロトコルを用いることができる。
【００２９】
図４は、図３のエッジノード１０１の詳細な構成例を示すブロック図である。図４を参照すると、エッジノード１０１は、受信部２００と、パケット解析部２０１と、フロー識別部２０２と、優先度テーブル２０３と、転送ネットワーク１０８の経路情報を記憶している経路テーブル２０５と、経路テーブル２０５を参照して経路を決定する経路解決部２０４と、制御装置１０４の指示に従い経路テーブル２０５の情報を更新する経路管理部２０８と、ラベル格納部２０６と、送信部２０７と、ヘッダ変換部２０９とを含んで構成されている。
【００３０】
図５は、図４の優先度テーブル２０３の詳細な構成例を示す図である。優先度テーブル２０３は、端末や利用者を特定するための送信元ＩＰアドレス３００と、利用するサービスを特定するフロー識別子３０１と、優先度３０２とを対応付けたエントリを格納する。フロー識別子３０１としては、ＷｅｂのサービスにおけるＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）などを用いることができる。もちろん、ＵＲＬに限定するものではなく、アプリケーションを特定するための情報であればよい。また、送信元ＩＰアドレス３００は、利用者や端末を特定できる情報であればよく、ＩＰアドレスに限定するものではない。
【００３１】
図６は、図４における経路テーブル２０５の詳細な構成例を示す図である。経路テーブル２０５は、宛先ＩＰアドレス４００と、優先度４０１と、経路が利用可能か否かを示す経路状態４０２と、第１の横階層１０５に属する転送ノード１０２で利用する第１のサブラベル４０３と、第２の横階層１０６に属する転送ノード１０２で利用する第２のサブラベル４０４と、第３の横階層１０７に属する転送ノード１０２で利用する第３のサブラベル４０５とを対応付けたエントリを格納する。これらのエントリは、後記するように、パケットのペイロードの内容に応じたサブラベルの組み合わせを持つラベルを付加するラベル付加ルールとして機能する。
【００３２】
経路解決部２０４は、宛先ＩＰアドレス４００と優先度４０１を検索キーとして、サブラベルの解決を行う。経路テーブル２０５に格納されている経路情報は、同一の宛先と優先度に関して、複数のエントリを持つことが可能であり、たとえば図６において上位にあるエントリが先にヒットするように登録する。すなわち通常時の転送用エントリを経路テーブル２０５の上の方に登録しておき、障害時の代替経路用のエントリをそれより下側に登録しておく。このようにすることにより、通常時の転送用エントリの経路状態４０２が異常となった場合には、代替経路用のエントリが検索結果として得られる。
【００３３】
図７は、ラベル格納部２０６がパケットヘッダに格納するラベルを示す図である。ラベル５００は、第１の横階層１０５に属する転送ノード１０２で利用する第１のサブラベル５０１と、第２の横階層１０６に属する転送ノード１０２で利用する第２のサブラベル５０２と、第３の横階層１０７に属する転送ノード１０２で利用する第３のサブラベル５０３とから構成されている。
【００３４】
図８は、転送ノード１０２において、パケットの転送先を決定するためのフローテーブルの詳細構成を示す図である。フローテーブルは、パケットヘッダに格納されているラベル６００と、転送ノード１０２が属する階層に対してラベルのどの部分を参照すればよいかを示すマスク６０１と、出力ポートなど転送ノードの動作を示すアクション６０２とを対応付けたエントリを格納する。アクション６０２は、パケットを指定したポートへ出力することやパケットヘッダの書き換え指示などが該当する。例えば、第１の横階層１０５に属する転送ノード１０２には、第１のサブラベル５０１の参照を指示するマスクと、第１のサブラベル５０１と同一のサブラベルを持つパケットを受信した際に、当該パケットに適用する処理を定めたアクションを設定したエントリが設定される（その他の転送ノードも同様）。
【００３５】
次に、本実施形態の全体動作について図面を参照して詳細に説明する。以下、本実施形態の説明では、端末１００−１とサーバ１０３−１間の転送ネットワーク１０８を経由する通信に関して、転送ノード１０２の障害や転送ノード１０２間の経路障害が発生した場合の経路制御方法について説明する。
【００３６】
端末１００−１とサーバ１０３−１は、転送ノード１０２−１、転送ノード１０２−４、転送ノード１０２−６を通る経路や、転送ノード１０２−１、転送ノード１０２−５、転送ノード１０２−６を通る経路といった複数の経路が存在する。以下の説明では、正常時の転送では、転送ノード１０２−１、転送ノード１０２−５、転送ノード１０２−６を通る経路を利用するものとし、代替経路として転送ノード１０２−１、転送ノード１０２−４、転送ノード１０２−６を通る経路を利用するものとする。
【００３７】
初期設定時や通信開始時といった所定のタイミングで制御装置１０４は、転送ネットワーク１０８を構成する転送ノード１０２のフローテーブルの設定を行う。より具体的には、制御装置１０４は、図８に示すように転送ノード１０２が属する横階層に応じて、第１のサブラベル６０３〜第３のサブラベル６０５とマスク６０１とアクション６０２とを対応付けたエントリの登録を行う。例えば、第１の階層１０５に属する転送ノード１０２−１は、第１のサブラベル６０３と第１のサブラベル６０３を参照することを示すマスク６０１を設定し、これらに合致するサブラベル（第１のサブラベル）が設定されたパケットを受信した際に、アクション６０２フィールドに設定された処理を行う。アクション６０２としては、指定ポートから出力等が該当する。
【００３８】
例えば、４８ポートスイッチであれば、６ビットの情報ですべてのポートを表現できるため、第１のサブラベル６０３は６ビットの情報でよい。制御装置１０４は、転送ノード１０２のフローテーブルに、各転送ノードが属する階層のサブラベルの値と、出力ポートとを対応付けたエントリを設定する。また、制御装置１０４は、エッジノード１０１に対して、これら転送ノード１０２に設定したサブラベルの情報を通知する。エッジノード１０１の経路管理部２０８は、経路テーブル２０５へ通知されたサブラベルの組み合わせを持つ経路エントリを設定する。
【００３９】
図９は、上記のように経路テーブル２０５へエントリが設定されたエッジノード１０１の動作を表したフローチャートである。図９を参照すると、まず、エッジノード１０１は、受信部２００で端末１００−１からパケットを受信すると（図９のステップＳ１００）、転送ネットワーク１０８向きのパケットか否かを判断する（図９のステップＳ１０１）。
【００４０】
エッジノード１０１は、受信パケットを受信したポートが、端末１００−１との接続ポートか、転送ネットワーク１０８側の転送ノード１０２との接続ポートであるか否かにより、転送ネットワーク１０８向きのパケットか否かを判断する。受信パケットが転送ネットワーク１０８向きのパケットである場合、エッジノード１０１は、パケット解析部２０１に受信したパケットを渡し、パケットヘッダの解析を実施させる（図９のステップＳ１０２）。
【００４１】
次に、フロー識別部２０２は、前記パケットヘッダの解析により特定されたペイロードの位置に基づき、パケットのペイロードに含まれる上位プロトコルヘッダからアプリケーションを特定する情報としてフロー識別子を抽出する（図９のステップＳ１０３）。フロー識別子は、ＷｅｂのサービスにおけるＵＲＬが該当する。
【００４２】
さらに、フロー識別部２０２は、優先度テーブル２０３を参照して、優先度を決定する（図９のステップＳ１０４）。優先度テーブル２０３は、図５に示すように、送信元ＩＰアドレス３００とフロー識別子３０１と優先度３０２で構成されており、パケット解析部２０１で抽出した送信元ＩＰドレスとフロー識別部２０２で抽出したフロー識別子で検索を行い、優先度を決定することができる。
【００４３】
次に、経路解決部２０４は、経路テーブル２０５を参照して経路解決すなわちサブラベル解決を行う（図９のステップＳ１０５）。経路テーブル２０５は、図６に示すように宛先ＩＰアドレス４００と、優先度４０１を検索キーとして、サブラベルを解決することが可能である。また、経路状態４０２により、登録されている経路が利用できるかどうかを判断できる。経路状態４０２が正常となっている経路が登録されていない場合、エッジノード１０１は、受信したパケットを廃棄する（図９のステップＳ１０９）。
【００４４】
経路テーブル２０５に、受信パケットの宛先ＩＰアドレス４００と、優先度４０１に対応するエントリが登録されている場合、エッジノード１０１は、ラベル格納部２０６において、解決したサブラベルを連結してラベルを生成し、パケットヘッダに格納する（図９のステップＳ１０７）。本実施形態では、ラベルを格納する領域として、送信元ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ Ｃｏｎｔｒｏｌ）アドレスを用いるものとする。なお、ラベル格納先としては、送信元ＭＡＣアドレスのほか、転送ノード１０２で制御可能なその他領域を用いることができる。もちろん、ラベル格納先するための追加ヘッダをパケットに付加する構成や、その他既存ヘッダのオプションフィールドにラベルを格納する構成も採用可能である。
【００４５】
送信部２０７は、転送ネットワーク１０８に対してラベルが格納されたパケットを送信する（図９のステップＳ１０８）。
【００４６】
転送ネットワーク１０８において、転送ノード１０２−１は、エッジノード１０１−１からパケットを受信する。転送ノード１０２−１は、第１の横階層１０５に属しており、パケットヘッダに格納されたラベルのうち、第１のサブラベル５０１に基づき転送処理を行う。転送ノード１０２−１は、そのフローテーブルに、エッジノード１０１−１が格納したラベルの第１のサブラベル６０３に対して、転送ノード１０２−５へ出力するエントリが設定されており、本設定に従い転送ノード１０２−５に対してパケットを送信する。
【００４７】
同様に、転送ノード１０２−５は、第２の横階層１０６に属しており、パケットヘッダに格納されたラベルのうち、第２のサブラベル５０２に基づき転送処理を行う。転送ノード１０２−５は、そのフローテーブルに、エッジノード１０１−１が格納したラベルの第２のサブラベル６０４に対して、転送ノード１０２−６へ出力するエントリが設定されており、本設定に従い転送ノード１０２−６に対してパケットを送信する。
【００４８】
同様に、転送ノード１０２−６は、第３の横階層１０７に属しており、パケットヘッダに格納されたラベルのうち、第３のサブラベル５０３に基づき転送処理を行う。転送ノード１０２−６は、そのフローテーブルに、エッジノード１０１−１が格納したラベルの第３のサブラベル６０５に対して、エッジノード１０１−３へ出力するエントリが設定されており、本設定に従いエッジノード１０１−３に対してパケットを送信する。
【００４９】
エッジノード１０１−３は、受信部２００でパケットを受信し（図９のステップＳ１００）、転送ネットワーク１０８向きのパケットか否かを判断する（図９のステップＳ１０１）。転送ネットワーク１０８向きのパケットではないため、受信部２００はヘッダ変換部２０９に対し受信パケットを渡す。ヘッダ変換部２０９はラベルが格納された送信元ＭＡＣアドレスにエッジノード１０１−３のＭＡＣアドレスを格納する（図９のステップＳ１１０；復元処理）。送信部２０７は、サーバ１０３−１に対して、前記ＭＡＣアドレスを格納したパケットを送信する（図９のステップＳ１０８）。
【００５０】
サーバ１０３−１から端末１００−１方向へのパケットの転送制御は、上記と同様であるため説明を省略する。
【００５１】
次に、転送ノード１０２−５に障害が発生し、経路が利用できなくなった場合の動作について説明する。図１０は、本発明の第１の実施形態の制御装置の動作を示す流れ図である。
【００５２】
制御装置１０４は、転送ネットワーク１０８において、転送ノード１０２や転送ノード１０２間の経路に障害が発生していないか監視する（図１０のステップＳ２００）。
【００５３】
制御装置１０４は、ある転送ノード１０２にて障害が発生したことを検知すると（図１０のステップＳ２０１）、エッジノード１０１−１〜１０１−４に対し、障害が発生した旨と、障害が発生した転送ノードを通知する（図１０のステップＳ２０２）。ここでは、図３の転送ノード１０２−５にて障害が発生したものとして説明する。
【００５４】
前記通知を受けたエッジノード１０１−１の経路管理部２０８は、制御装置１０４から受信した障害情報に基づき、経路テーブル２０５の更新を行う（図１０のステップＳ２０３）。具体的には、転送ノード１０２−５を利用する経路に関して、図６の経路テーブル２０５の該当エントリの経路状態４０２を正常から異常の状態に変更する。経路テーブル２０５の更新を行うことにより、以降エッジノード１０１−１にて受信したパケットは、転送ノード１０２−１、転送ノード１０２−５、転送ノード１０２−６の経路用エントリではなく、代替経路である転送ノード１０２−１、転送ノード１０２−４、転送ノード１０２−６の経路用エントリで処理されることになる。
【００５５】
以上説明したように、転送ノード１０２−１〜１０２−８で構成された転送ネットワーク１０８と、受信したパケットのペイロード情報をもとに転送ネットワーク１０８で転送するためのラベルをパケットヘッダに格納するエッジノード１０１と、これらを制御するための制御装置１０４とを含む本実施形態の経路制御システムは、いくつかの階層に分けて転送ネットワークを管理し、それぞれの転送ノードが属する階層に応じたサブラベルと転送先を設定する。エッジノード１０１は転送ネットワーク１０８の階層ごとのサブラベルを解決して、ラベルとしてパケットヘッダに格納する。以上により、転送ネットワーク１０８の障害発生時における、アプリケーション単位の経路制御が実現される。
【００５６】
なお、図９、１０に示したエッジノードや制御装置における処理は、これらの装置に搭載されたコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
【００５７】
［第２の実施形態］
次に、転送ノードをマトリックス状に複数の階層に所属させるようにした本発明の第２の実施形態について図面を参照して詳細に説明する。図１１は、本発明の第２の実施形態の経路制御システムの構成を示す図である。図３に示した第１の実施形態の構成との相違点は、転送ネットワーク１０８において、第１の縦階層９００と、第２の縦階層９０１と、第３の縦階層９０２とが新たに定義されている点である。例えば、転送ノード１０２−１は、第３の横階層１０７と第１の縦階層９００に属し、転送ノード１０２−３は、第３の横階層１０７と第３の縦階層９０２に属する。
【００５８】
図１２は、本実施形態における経路テーブル２０５を示すもので、サブラベルに加え、第１の階層識別子１０００と、第２の階層識別子１００１と、第３の階層識別子１００２を有する点が異なる。
【００５９】
図１３は、エッジノード１０１がパケットヘッダに格納するラベルを示すもので、サブラベルに加え、第１の階層識別子１１００と、第２の階層識別子１１０１と、第３の階層識別子１１０２を有する点が異なる。
【００６０】
図１４は、転送ノード１０２のフローテーブルを示すもので、マッチ条件として、サブラベルに加え、第１の階層識別子１２００と、第２の階層識別子１２０１と、第３の階層識別子１２０２とが設定されている点で異なっている。
【００６１】
本発明の第２の実施形態では、第１の実施形態のサブラベルに階層識別子を追加して管理を行う。本実施形態の動作は、第１の実施形態におけるサブラベルによる経路制御に代えて、サブラベルと階層識別子による経路制御に置き換えて説明することができるため、説明を省略する。
【００６２】
以上説明したように本実施形態によれば、転送ネットワーク１０８を縦階層に分割して管理するようにしたことにより、端末間やサーバ間の通信をよりきめ細かく制御することが可能となる。
【００６３】
［第３の実施形態］
続いて、上記した本発明の第１の実施形態をより具体的に表した形態を、本発明の第３の実施形態として説明する。本実施形態では、図１５に示す端末１００−１とサーバ１０３−１間の通信に関して説明する。端末１００−１は、ＩＰアドレス“１０．０．０．１”を有し、サーバ１０３−１は、ＩＰアドレス“１９２．１６８．０．１”を有するものとする。また、図１５によると、端末１００−１は、エッジノード１０１−１に接続して、転送ネットワーク１０８に収容されている。サーバ１０３−１も同様に、エッジノード１０１−３に接続して、転送ネットワーク１０８に収容されている。
【００６４】
図１６は、エッジノード１０１−１における優先度テーブル２０３の構成を示す図である。優先度テーブル２０３には、送信元ＩＰアドレス３００に端末１００−１のＩＰアドレス“１０．０．０．１”（図１６の１４００）、フロー識別子としてサーバ１０３−１が提供するＵＲＬ−Ａ（図１６の１４０１）、優先度として“１”（図１６の１４０２）とを対応付けたエントリが設定されている。
【００６５】
転送ノード１０２は、４８ポートスイッチとし、次のように接続されている。転送ノード１０２−１のポート１（図１５の１３００）は転送ノード１０２−４に接続しており、ポート２（図１５の１３０１）は転送ノード１０２−５に接続している。転送ノード１０２−４のポート１（図１５の１３０２）は、転送ノード１０２−６に接続しており、ポート２（図１５の１３０３）は転送ノード１０２−７に接続している。転送ノード１０２−５のポート３（図１５の１３０４）は、転送ノード１０２−６に接続しており、ポート４（図１５の１３０５）は転送ノード１０２−７に接続している。転送ノード１０２−６のポート１０（図１５の１３０６）は、エッジノード１０１−３に接続している。転送ノード１０２−７のポート８（図１５の１３０７）は、エッジノード１０１−３に接続している。
【００６６】
図１５に示す転送ネットワーク１０８において、端末１００−１とサーバ１０３−１間の経路として、転送ノード１０２−１と転送ノード１０２−４と転送ノード１０２−６を通る経路、転送ノード１０２−１と転送ノード１０２−４と転送ノード１０２−７を通る経路、転送ノード１０２−１と転送ノード１０２−５と転送ノード１０２−６を通る経路と、転送ノード１０２−１と転送ノード１０２−５と転送ノード１０２−７を通る経路の４つが存在する。
【００６７】
図１７は、端末１００−１とサーバ１０３−１間の経路に関して、エッジノード１０１−１の経路テーブル２０５を示すものである。経路テーブル２０５は、予め制御装置１０４より次に示す設定がなされているものとする。すべての経路エントリは、宛先ＩＰアドレス４００としてサーバ１０３−１のＩＰアドレスである“１９２．１６８．０．１”が設定されており、優先度４０１として“１”が設定されている。また、各経路エントリの経路状態４０２は、すべて正常の状態を示している。
【００６８】
第１の経路１５００は、転送ノード１０２−１と転送ノード１０２−５と転送ノード１０２−６の経路を示すもので、第１のサブラベル４０３に“２”、第２のサブラベル４０４に“３”、第３のサブラベル４０５に“１０”が設定されている。サブラベルは、転送ノード１０２の処理を決定するために利用するもので、転送ノード１０２の処理として指定ポートからの転送を設定するとしても、ポート数だけ、即ち４８通りのアクションが必要となる。本実施形態では、サブラベルは、４８通りを表現できる６ビットの情報であるものとする。その他、指定ポートからの転送以外に、パケットヘッダの加工などの処理を行う場合は、サブラベルのサイズを大きくすることで対応することが可能となる。本実施形態では、転送ノード１０２は指定ポートからの転送処理のみを実行するため、サブラベルは６ビットの情報とする。経路テーブル２０５の第２の経路１５０１、第３の経路１５０２、第４の経路１５０３に関しても、第１の経路１５００と同様に設定がなされているものとする。
【００６９】
図１８は、本実施例における転送ノード１０２のフローテーブルを示すものである。図１８に示すフローテーブルは、制御装置１０４によって予め設定されているものとする。
【００７０】
転送ノード１０２−１のフローテーブルには、第１のフローエントリ１６００として第１のサブラベルに“１”が設定されたラベルと、マスクとして第１のサブラベルを参照することを示す“１１１１１１００００００００００００”と、アクションとしてポート１へ出力するエントリが格納されている。また、第２のフローエントリ１６０１として第１のサブラベルに“２”が設定されたラベルと、マスクとして第１のサブラベルを参照することを示す“１１１１１１００００００００００００”と、アクションとしてポート２へ出力するエントリが格納されている。
【００７１】
転送ノード１０２−４のフローテーブルには、第１のフローエントリ１６０２として第２のサブラベルに“１”が設定されたラベルと、マスクとして第２のサブラベルを参照することを示す“００００００１１１１１１００００００”と、アクションとしてポート１へ出力するエントリが格納されている。第２のフローエントリ１６０３として第２のサブラベルに“２”が設定されたラベルと、マスクとして第２のサブラベルを参照することを示す“００００００１１１１１１００００００”と、アクションとしてポート２へ出力するエントリが格納されている。
【００７２】
転送ノード１０２−５のフローテーブルには、第１のフローエントリ１６０４として第２のサブラベルに“３”が設定されたラベルと、マスクとして第２のサブラベルを参照することを示す“００００００１１１１１１００００００”と、アクションとしてポート３へ出力する情報が格納されている。第２のフローエントリ１６０５として第２のサブラベルに“４”が設定されたラベルと、マスクとして第２のサブラベルを参照することを示す“００００００１１１１１１００００００”と、アクションとしてポート４へ出力するエントリが格納されている。
【００７３】
転送ノード１０２−６のフローテーブルには、第１のフローエントリ１６０６として第３のサブラベルに“１０”が設定されたラベルと、マスクとして第３のサブラベルを参照することを示す“００００００００００００１１１１１１”と、アクションとしてポート１０へ出力するエントリが格納されている。
【００７４】
転送ノード１０２−７のフローテーブルには、第１のフローエントリ１６０７として第３のサブラベルに“８”が設定されたラベルと、マスクとして第３のサブラベルを参照することを示す“００００００００００００１１１１１１”と、アクションとしてポート８へ出力するエントリが格納されている。
【００７５】
続いて、上記した経路エントリやフローテーブルを元に、端末１００−１からサーバ１０３−１へのパケット転送について、再度図９を参照して詳細に説明する。
【００７６】
エッジノード１０１−１は、受信部２００で端末１００−１からパケットを受信すると（図９のステップＳ１００）、転送ネットワーク１０８向きのパケットかどうかを判断する（図９のステップＳ１０１）。
【００７７】
端末１００−１からサーバ１０３−１へと宛てたパケットは、転送ネットワーク１０８向きのパケットであるため、エッジノード１０１は、パケット解析部２０１に受信パケットを入力する。パケット解析部２０１は、パケットヘッダの解析を行いペイロードの位置を特定する（図９のステップＳ１０２）。
【００７８】
フロー識別部２０２は、パケットのペイロードから、利用するサービスを特定する情報であり、フロー識別子でもある“ＵＲＬ−Ａ”を抽出する（図９のステップＳ１０３）。さらに、フロー識別部２０２は、優先度テーブル２０３を参照して、優先度を決定する（図９のステップＳ１０４）。優先度テーブル２０３は、図１６に示すように構成されており、フロー識別部２０２は、端末のＩＰアドレス“１０．０．０．１”とパケットのペイロードから抽出したフロー識別子“ＵＲＬ−Ａ”をもとに、優先度を“１”に決定する。
【００７９】
次に、経路解決部２０４は、経路テーブル２０５を参照して経路解決すなわちサブラベルの解決を行う（図９のステップＳ１０５）。経路テーブル２０５は、図１７に示すように構成されており、サーバ１０３−１のＩＰアドレス“１９２．１６８．０．１”と優先度“１”を検索キーとして検索を実行する。前記検索の結果、第１の経路１５００が検索結果として得られ、経路状態４０２は正常であるため第１のサブラベル“２”と第２のサブラベル“３”と第３のサブラベル“１０”を決定する。
【００８０】
ラベル格納部２０６は、解決したサブラベルを連結してラベルを生成し、パケットヘッダである送信元ＭＡＣアドレスに格納する（図９のステップＳ１０７）。送信部２０７は、転送ネットワーク１０８に対してラベルが格納されたパケットを送信する（図９のステップＳ１０８）。
【００８１】
転送ネットワーク１０８において、転送ノード１０２−１は、エッジノード１０１−１から前記パケットを受信する。受信したパケットは、第１のサブラベルに“２”が格納されているため、転送ノード１０２−１のフローテーブルの第２のフローエントリ１６０１と一致する（図１８参照）。転送ノード１０２−１は、第２のフローエントリ１６０１を参照して、パケットをポート２（図１５の１３０１）から出力する。
【００８２】
次に、転送ノード１０２−５は、転送ノード１０２−１からパケットを受信する。受信したパケットは、第２のサブラベルに“３”が格納されているため、転送ノード１０２−５のフローテーブルの第１のフローエントリ１６０４と一致する（図１８参照）。転送ノード１０２−５は、第１のフローエントリ１６０４を参照して、パケットをポート３（図１５の１３０４）から出力する。
【００８３】
最後に、転送ノード１０２−６は、転送ノード１０２−５からパケットを受信する。受信したパケットは、第３のサブラベルに“１０”が格納されているため、転送ノード１０２−６のフローテーブルの第１のフローエントリ１６０６と一致する（図１８参照）。転送ノード１０２−６は、第１のフローエントリ１６０６を参照して、パケットをポート１０（図１５の１３０６）から出力する。
【００８４】
エッジノード１０１−３は、受信部２００でパケットを受信し（図９のステップＳ１００）、転送ネットワーク１０８向きのパケットかどうかを判断する（図９のステップＳ１０１）。転送ネットワーク１０８向きのパケットではないため、受信部２００はヘッダ変換部２０９へパケットを渡し、ヘッダ変換部２０９はラベルが格納された送信元ＭＡＣアドレスにエッジノード１０１−３のＭＡＣアドレスを格納する（図９のステップＳ１１０）。送信部２０７は、サーバ１０３−１に対してパケットを送信する（図９のステップＳ１０８）。
【００８５】
サーバ１０３−１から端末１００−１への逆方向のパケット転送の詳細な動作は、端末１００−１からサーバ１０３−１の転送と同様であるため、説明を省略する。
【００８６】
次に、転送ノード１０２−５に障害が発生し、経路が利用できなくなった場合の動作について再度図１０を参照して説明する。制御装置１０４は、転送ネットワーク１０８に対して、転送ノード１０２や転送ノード１０２間の経路に障害が発生していないか監視する（図１０のステップＳ２００）。
【００８７】
転送ノード１０２−５にて障害が発生したことを検知すると（図１０のステップＳ２０１）、制御装置１０４は、転送ノード１０２−５にて障害が発生したことをエッジノード１０１−１〜１０１−４へ通知する（図１０のステップＳ２０２）。
【００８８】
前記通知を受けたエッジノード１０１−１は、経路管理部２０８において制御装置１０４からの障害情報を受信し、経路テーブル２０５の更新を行う（図１０のステップＳ２０３）。具体的には、図１７における第１の経路１５００と第２の経路１５０１の経路状態４０２を異常に変更する。
【００８９】
以上のような経路テーブル２０５の更新を行うことにより、以降に受信したパケットについて、エッジノード１０１−１の経路解決部２０４は、第３の経路１５０２を得る。そして、エッジノード１０１−１は、フロー制御ネットワークに対して、第１のサブラベル“１”と第２のサブラベル“１”と第３のサブラベル“１０”で構成されたラベルをパケットヘッダに格納する。エッジノード１０１−１が送信したパケットは、転送ノード１０２−１と転送ノード１０２−４と転送ノード１０２−６の経路で転送される。転送の詳細な動作は、正常時の動作と同様のため省略する。
【００９０】
以上、本発明の実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、図１〜図３、図１１及び図１５に示したネットワーク構成や図４に示したエッジノードの構成は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
【００９１】
また例えば、上記した実施形態では、サーバ１０３に接続された下流側のエッジノードでＭＡＣアドレスの復元（端末１０１側のエッジノードが付加したラベルをＭＡＣアドレスに書き戻す）を行うものとして説明したが、例えば、最終ホップの転送ノードにおいて、ＭＡＣアドレスの復元を行うものとしてもよい。
【００９２】
最後に、本発明の好ましい形態を要約する。
［第１の形態］
（上記第１の視点による経路制御システム参照）
［第２の形態］
第１の形態の経路制御システムにおいて、
前記制御装置は、前記転送ノードに、前記障害発生区間を経由しない経路にて前記変更後のサブラベルに適合するパケットを転送させる制御情報を予め設定しておくことが好ましい。
［第３の形態］
第１又は第２の形態の経路制御システムにおいて、
前記制御装置は、前記転送ノードに、受信パケットと照合するサブラベルを指示することにより、前記サブラベルに基づく転送処理を実施させることが望ましい。
［第４の形態］
第１から第３いずれか一の形態の経路制御システムにおいて、
前記エッジノードは、送信元アドレスとパケットのペイロードの内容とに基づいて優先度情報と、宛先アドレスと、サブラベルの組み合わせとを対応付けた経路エントリ群から検索した受信パケットに適合するエントリに基づいてサブラベルの付加を行うことが望ましい。
［第５の形態］
第４の形態の経路制御システムにおいて、
前記経路エントリには、通信経路の状態を記録するフィールドが設けられ、前記エッジノードは、受信パケットに適合するエントリのうち、最も優先順位が高く、経路状態が正常であるエントリを選択できるようにすることが望ましい。
［第６の形態］
第１から第５いずれか一の形態の経路制御システムにおいて、
前記転送ノードが前記グループのほか、予め設定された階層のいずれかにも属しており、
前記制御装置は、前記エッジノードにおいて付加するサブラベルと階層識別子との組み合わせ及び前記転送ノードにおける前記サブラベルと前記階層識別子とに基づく転送処理を制御することが望ましい。
［第７の形態］
第１から第６いずれか一の形態の経路制御システムにおいて、
前記エッジノードは、パケットヘッダの送信元ＭＡＣアドレス領域に、生成したラベルを格納し、
前記制御装置は、下流側のエッジノードまたは転送ノードに前記送信元ＭＡＣアドレス領域の復元処理を実行させることが望ましい。
［第８の形態］
（上記第２の視点による制御装置参照）
［第９の形態］
第８の形態の制御装置において、
前記エッジノードに、送信元アドレスとパケットのペイロードの内容とに基づいて優先度情報と、宛先アドレスと、サブラベルの組み合わせとを対応付けた経路エントリ群を設定し、
前記エッジノードに、前記経路エントリ群の経路エントリのうち、受信パケットに適合するエントリを用いてサブラベルの付加を行わせることが望ましい。
［第１０の形態］
第９の形態の制御装置において、
前記経路エントリには、経路の状態を記録するフィールドが設けられ、前記エッジノードに、受信パケットに適合するエントリのうち、最も優先順位が高く、経路状態が正常であるエントリを選択させることが望ましい。
［第１１の形態］
（上記第３の視点によるエッジノード参照）
［第１２の形態］
（上記第４の視点による経路制御方法参照）
［第１３の形態］
（上記第５の視点によるプログラム参照）
【００９３】
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【００９４】
１０、１１、１２：端末
２０：エッジノード
３０：転送ネットワーク
３０ａ〜３０ｆ：転送ノード
４０：制御装置
１００−１〜１００−３：端末
１０１−１〜１０１−４：エッジノード
１０２−１〜１０２−８：転送ノード
１０３−１〜１０３−３：サーバ
１０４：制御装置
１０５：第１の横階層
１０６：第２の横階層
１０７：第３の横階層
１０８：転送ネットワーク
２００：受信部
２０１：パケット解析部
２０２：フロー識別部
２０３：優先度テーブル
２０４：経路解決部
２０５：経路テーブル
２０６：ラベル格納部
２０７：送信部
２０８：経路管理部
２０９：ヘッダ変換部
３００：送信元ＩＰアドレス
３０１：フロー識別子
３０２：優先度
４００：宛先ＩＰアドレス
４０１：優先度
４０２：経路状態
４０３：第１のサブラベル
４０４：第２のサブラベル
４０５：第３のサブラベル
５００：ラベル
５０１：第１のサブラベル
５０２：第２のサブラベル
５０３：第３のサブラベル
６００：ラベル
６０１：マスク
６０２：アクション
６０３：第１のサブラベル
６０４：第２のサブラベル
６０５：第３のサブラベル
９００：第１の縦階層
９０１：第２の縦階層
９０２：第３の縦階層
１０００、１１００、１２００：第１の階層識別子
１００１、１１０１、１２０１：第２の階層識別子
１００２、１１０２、１２０２：第３の階層識別子
１３００：転送ノード１０２−１のポート１
１３０１：転送ノード１０２−１のポート２
１３０２：転送ノード１０２−４のポート１
１３０３：転送ノード１０２−４のポート２
１３０４：転送ノード１０２−５のポート３
１３０５：転送ノード１０２−５のポート４
１３０６：転送ノード１０２−６のポート１０
１３０７：転送ノード１０２−７のポート８
１４００：送信元ＩＰアドレス（１０．０．０．１）
１４０１：フロー識別子（ＵＲＬ−Ａ）
１４０２：優先度（１）
１５００：第１の経路
１５０１：第２の経路
１５０２：第３の経路
１５０３：第４の経路
１６００：転送ノード１０２−１における第１のフローエントリ
１６０１：転送ノード１０２−１における第２のフローエントリ
１６０２：転送ノード１０２−４における第１のフローエントリ
１６０３：転送ノード１０２−４における第２のフローエントリ
１６０４：転送ノード１０２−５における第１のフローエントリ
１６０５：転送ノード１０２−５における第２のフローエントリ
１６０６：転送ノード１０２−６における第１のフローエントリ
１６０７：転送ノード１０２−７における第１のフローエントリ
【図１】
2015526921.tif 000003
【図２】
2015526921.tif 000004
【図３】
2015526921.tif 000005
【図４】
2015526921.tif 000006
【図５】
2015526921.tif 000007
【図６】
2015526921.tif 000008
【図７】
2015526921.tif 000009
【図８】
2015526921.tif 000010
【図９】
2015526921.tif 000011
【図１０】
2015526921.tif 000012
【図１１】
2015526921.tif 000013
【図１２】
2015526921.tif 000014
【図１３】
2015526921.tif 000015
【図１４】
2015526921.tif 000016
【図１５】
2015526921.tif 000017
【図１６】
2015526921.tif 000018
【図１７】
2015526921.tif 000019
【図１８】
2015526921.tif 000020
【国際調査報告】
2015526921.tif 000021
2015526921.tif 000022