(57)【特許請求の範囲】
【請求項１】
パケットの転送処理を実行する複数のスイッチと、前記スイッチそれぞれと制御チャネルを介して接続され、前記スイッチの経路制御を実行するコントローラと、を備えるネットワーク制御システムであって、
複数の前記スイッチをエリア毎に分割し、前記分割したエリアそれぞれに対応付けた前記コントローラを備えており、
前記スイッチは、
前記パケットの宛先と出力するＩＦ（Interface）とを対応付けたエントリを複数格納する転送先情報が記憶される記憶部と、
前記スイッチ自身が前記エリアの境界に位置する境界スイッチである場合に、自エリアのコントローラおよび隣接エリアのコントローラとの間で、制御チャネルを構築するコントローラ接続処理部と、
前記スイッチ自身が前記境界スイッチである場合に、前記スイッチ自身の前記パケットの転送処理による装置状態を示す装置状態情報を、前記自エリアのコントローラおよび前記隣接エリアのコントローラに対し、構築された前記制御チャネルそれぞれを介して送信すると共に、障害の発生を検出した場合に、前記障害の発生箇所を付した障害検出通知を生成し、前記自エリアのコントローラおよび前記隣接エリアのコントローラに対し送信する装置状態監視部と、
前記エントリを前記自エリアのコントローラから受信し、前記転送先情報を書き換えるスイッチ設定部と、を備え、
前記コントローラは、自身が前記自エリアのコントローラである場合に、
前記自エリアのスイッチおよび前記隣接エリアの境界スイッチそれぞれの間の接続関係を示すトポロジ情報が記憶されるエリア内トポロジ管理情報、並びに、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチの前記装置状態情報、が記憶される記憶部と、
前記自エリアのスイッチおよび前記隣接エリアの境界スイッチとの間で、前記制御チャネルを構築するスイッチ接続処理部と、
前記自エリアのスイッチおよび前記隣接エリアの境界スイッチから、前記装置状態情報を受信するエリア内トポロジ監視部と、
前記自エリアの境界スイッチから前記障害検出通知を受信した場合に、前記エリア内トポロジ管理情報および前記装置状態情報を参照し、前記障害の発生箇所を除外した代替経路を計算し、その経路計算結果に基づき、前記自エリアのスイッチそれぞれに対応付けた前記エントリを生成し、前記自エリアのスイッチそれぞれに送信することにより前記経路制御を実行する経路計算部と、
前記経路計算部が計算した代替経路に基づき、前記隣接エリアに新たに接続される前記境界スイッチと対応する前記パケットの宛先の情報とを示す境界装置変更情報を生成し、前記隣接エリアのコントローラに送信するコントローラ連携部と、を備え、
前記コントローラは、自身が前記隣接エリアのコントローラである場合に、
前記経路計算部が、受信した前記境界装置変更情報に基づき、経路を再計算し、前記隣接エリア内の経路制御を実行すること
を特徴とするネットワーク制御システム。
【請求項２】
前記自エリアのコントローラは、前記コントローラ連携部の代わりに、境界装置ＩＦ優先度決定部を備えており、
前記境界装置ＩＦ優先度決定部は、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチの前記装置状態情報を参照し、前記自エリアと前記隣接エリアとを接続する、前記境界スイッチおよび利用するＩＦそれぞれの設定順を示す優先度を決定し、前記境界スイッチおよび前記利用するＩＦに前記優先度を対応付けた境界装置ＩＦ優先度情報を生成して、前記隣接エリアのコントローラに送信し、
前記隣接エリアのコントローラの経路計算部は、
前記障害検出通知を受信した場合に、受信した前記境界装置ＩＦ優先度情報を参照し、現時点の優先度の次の設定順である前記境界スイッチおよび前記利用するＩＦを用いるように、経路を再計算し、前記隣接エリア内の経路制御を実行すること
を特徴とする請求項１に記載のネットワーク制御システム。
【請求項３】
パケットの転送処理を実行する複数のスイッチと、前記スイッチそれぞれと制御チャネルを介して接続され、前記スイッチの経路制御を実行するコントローラと、を備えるネットワーク制御システムのネットワーク制御方法であって、
前記ネットワーク制御システムは、複数の前記スイッチがエリア毎に分割され、前記分割されたエリアそれぞれに対応付けて前記コントローラを備えており、
前記スイッチは、
前記パケットの宛先と出力するＩＦ（Interface）とを対応付けたエントリを複数格納する転送先情報が記憶される記憶部を備えており、
前記スイッチ自身が前記エリアの境界に位置する境界スイッチである場合において、障害の発生を検出したときに、前記障害の発生箇所を付した障害検出通知を生成し、自エリアのコントローラおよび隣接エリアのコントローラに対し送信するステップと、
前記エントリを前記自エリアのコントローラから受信し、前記転送先情報を書き換えるステップと、を実行し、
前記コントローラは、自身が前記自エリアのコントローラである場合に、
前記自エリアのスイッチおよび前記隣接エリアの境界スイッチそれぞれの間の接続関係を示すトポロジ情報が記憶されるエリア内トポロジ管理情報、並びに、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチの前記パケットの転送処理による装置状態を示す装置状態情報、が記憶される記憶部を備えており、
前記自エリアの境界スイッチから前記障害検出通知を受信した場合に、前記エリア内トポロジ管理情報および前記装置状態情報を参照し、前記障害の発生箇所を除外した代替経路を計算し、その経路計算結果に基づき、前記自エリアのスイッチそれぞれに対応付けた前記エントリを生成し、前記自エリアのスイッチそれぞれに送信することにより前記経路制御を実行するステップと、
前記計算した代替経路に基づき、前記隣接エリアに新たに接続される前記境界スイッチと対応する前記パケットの宛先の情報とを示す境界装置変更情報を生成し、前記隣接エリアのコントローラに送信するステップと、を実行し、
前記コントローラは、自身が前記隣接エリアのコントローラである場合に、
受信した前記境界装置変更情報に基づき、経路を再計算し、前記隣接エリア内の経路制御を実行するステップを実行すること
を特徴とするネットワーク制御方法。
【請求項４】
前記自エリアのコントローラは、前記境界装置変更情報を生成し、前記隣接エリアのコントローラに送信するステップの代わりに、
前記自エリアのスイッチおよび前記隣接エリアの境界スイッチの前記装置状態情報を参照し、前記自エリアと前記隣接エリアとを接続する、前記境界スイッチおよび利用するＩＦそれぞれの設定順を示す優先度を決定し、前記境界スイッチおよび前記利用するＩＦに前記優先度を対応付けた境界装置ＩＦ優先度情報を生成して、前記隣接エリアのコントローラに送信するステップを実行し、
前記隣接エリアのコントローラは、
前記障害検出通知を受信した場合に、受信した前記境界装置ＩＦ優先度情報を参照し、現時点の優先度の次の設定順である前記境界スイッチおよび前記利用するＩＦを用いるように、経路を再計算し、前記隣接エリア内の経路制御を実行するステップを実行すること
を特徴とする請求項３に記載のネットワーク制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク制御システムおよびネットワーク制御方法に関する。
【背景技術】
【０００２】
従来のルータ等に代表される転送装置は、コントロールプレーン処理手段（ルーチング機能など）と転送処理手段（フォワーディング機能など）を併せ持ち、１台の筐体でこれらの処理をしながら、他のルータとルーチング情報を交換しつつ、必要に応じてパケットを転送する形態を採用しているのが一般的であった。これらのコントロールプレーン処理と転送処理との概念を切り離した、コントロールプレーン／ユーザプレーン分離のアーキテクチャや装置の研究が近年盛んに行われている。
【０００３】
コントロールプレーン処理手段とユーザプレーン処理手段とを分離（以下、「Ｃ／Ｕ分離」という。）したアーキテクチャでは、ルーチングなどに代表されるコントロールプレーン機能を、筐体から物理的または論理的に切り離し、制御チャネルを介して両者を接続することが大きな特徴といえる。経路計算やトポロジ管理、障害監視といった高度な機能は、筐体から物理的、論理的に切り離して稼動させることで、Ｈ／Ｗ（ハードウェア）の汎用化による転送装置の低コスト化を実現できるといったメリットがある。
【０００４】
従来のルータと同等の制御を実現するに際し、必要に応じてコントロールプレーン処理手段と転送処理を実行するＨ／Ｗとの間で、要求・応答メッセージを送受信する必要がある。このメッセージの送受信において、コントロールプレーン処理手段を実装する箇所（以下、「コントローラ」と呼ぶ。）と、転送処理手段（以下、「スイッチ」と呼ぶ。）の関係としては、コントローラからの指示に基づいて、スイッチは自身の動作を決定する（若しくは、コントローラに応答（通知）する）というものになる。
【０００５】
コントローラとスイッチ間の制御チャネルを通じて制御・指示される内容としては、経路エントリ（ＦＩＢ：Forwarding Information Base）への経路書き込みや更新、トポロジ探索、装置状態情報や転送量などの統計情報の収集などがある。網を管理するコントローラとスイッチは、基本的には、１対Ｎの集中管理型の関係で構成され、単一のコントローラが網内の装置を把握・管理することで、経路計算や情報収集を実現する。集中管理型の利点としては、網全体での最適化（例えば、網内リンク利用率の平準化）が実現できるといったことがあげられる。これらの代表的なプロトコル例としてOpenFlow（非特許文献１）などが挙げられる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】“OpenFlow 1.2,”December 2011, ［online］，［平成25年8月14日検索］，インターネット<ＵＲＬ：http://www.openflow.org/>
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記したＣ／Ｕ分離のアーキテクチャには、以下の課題がある。
【０００８】
〔課題（１）〕
大規模網において、Ｃ／Ｕ分離アーキテクチャを適用し、経路制御（例えば、障害切り替え）を実現しようとした場合、ルーチング機能を備えるコントローラは、障害を検知（通信を受信）してから、全てのノードそれぞれに関して最適な経路を再計算し、経路変更が必要な装置に更新設定を行う。例えば、装置規模が２００台の環境であれば、あるリンクやＩＦ（Interface）の障害に伴い、最悪の場合、最適経路計算を装置数分（２００台）実行し、エントリ設定を行う必要がある。このことは、経路切り替え速度の観点で大きな性能上の課題となり、高速な切り替えの実現は困難となる。
【０００９】
例えば、Ｃ／Ｕ分離アーキテクチャにおけるＦＩＢの１エントリの更新が１ｍｓ（処理時間や制御チャネルの遅延時間を含む）必要な場合、自網から外部向けの経路が全て書き換わる場合を想定すると、最悪なケースで、現状のインターネット経路相当（４０万経路）の更新には、１（単エントリ更新時間（ｍｓ））×４０００００（経路数）×２００（装置数）＝８００００秒必要とする。これは、従来のルータにおける経路情報の伝搬、収束時間と比較しても膨大であり、大きな性能上の課題となる。
【００１０】
一方、経路計算時間を短縮するために、事前に故障パターンを想定した経路を計算し保持しておき、必要に応じて読み出す方法も考えられる。しかしながら、この場合、２００台の装置、それらが搭載するＩＦ数、装置間のリンク数などのバリエーションの障害、多重障害などを事前に考慮すると、管理・保持しなければならない情報量が、想定障害のバリエーションに比例して増大し、事前の経路計算というアプローチでは、コントローラにおけるスケーラビリティの観点で課題となる。
【００１１】
〔課題（２）〕
広域網において、コントローラとスイッチとの間が物理的に離れていた場合、各制御メッセージがスイッチに到達するまで、または、スイッチからコントローラに制御メッセージの応答が返信されるまで、伝搬遅延が発生する。特に、制御メッセージの内容が多い場合、例えば、膨大なＰｒｅｆｉｘ毎にＦＩＢを更新する場合、物理距離に依存して制御が完了するまでの時間がかかり、経路設定投入、若しくは、経路切り替えまでのユーザトラヒックが導通しない時間が特に顕著になる。これは、従来の同一筐体内で処理を完了していたときと比べ、Ｃ／Ｕ分離が適用された環境ならではの大きな課題といえる。
【００１２】
〔課題（３）〕
課題（１）や課題（２）を解決するアプローチとして、コントローラを複数用意し、管轄するエリアを設けて管理対象を分割するといった一般的な手法が考えられる。これにより、コントローラにおける制御のリアルタイム性やスケーラビリティの向上は望める。しかしながら、複数のコントローラによるエリアの分割方式を適用するために、各エリアのコントローラが管理する情報が断片的（限定されたトポロジ情報など）になり、本来Ｃ／Ｕ分離アーキテクチャの大きな効能である、集中管理型ゆえの全体最適化の実現が難しくなる。結果として、最適化の効果が減少し、エリア毎の局所的な最適解になってしまうことがあった。
【００１３】
このような背景に鑑みて本発明がなされたのであり、本発明は、Ｃ／Ｕ分離されたコントローラおよびスイッチを備えるシステムにおいて、制御のリアルタイム性およびスケーラビリティを保ちつつ、エリア分割に依存しない経路制御を可能にする、ネットワーク制御システムおよびネットワーク制御方法を提供することを課題とする。
【課題を解決するための手段】
【００１４】
前記した課題を解決するため、請求項１に記載の発明は、パケットの転送処理を実行する複数のスイッチと、前記スイッチそれぞれと制御チャネルを介して接続され、前記スイッチの経路制御を実行するコントローラと、を備えるネットワーク制御システムであって、複数の前記スイッチをエリア毎に分割し、前記分割したエリアそれぞれに対応付けた前記コントローラを備えており、前記スイッチが、前記パケットの宛先と出力するＩＦ（Interface）とを対応付けたエントリを複数格納する転送先情報が記憶される記憶部と、前記スイッチ自身が前記エリアの境界に位置する境界スイッチである場合に、自エリアのコントローラおよび隣接エリアのコントローラとの間で、制御チャネルを構築するコントローラ接続処理部と、前記スイッチ自身が前記境界スイッチである場合に、前記スイッチ自身の前記パケットの転送処理による装置状態を示す装置状態情報を、前記自エリアのコントローラおよび前記隣接エリアのコントローラに対し、構築された前記制御チャネルそれぞれを介して送信すると共に、障害の発生を検出した場合に、前記障害の発生箇所を付した障害検出通知を生成し、前記自エリアのコントローラおよび前記隣接エリアのコントローラに対し送信する装置状態監視部と、前記エントリを前記自エリアのコントローラから受信し、前記転送先情報を書き換えるスイッチ設定部と、を備え、前記コントローラが、自身が前記自エリアのコントローラである場合に、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチそれぞれの間の接続関係を示すトポロジ情報が記憶されるエリア内トポロジ管理情報、並びに、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチの前記装置状態情報、が記憶される記憶部と、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチとの間で、前記制御チャネルを構築するスイッチ接続処理部と、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチから、前記装置状態情報を受信するエリア内トポロジ監視部と、前記自エリアの境界スイッチから前記障害検出通知を受信した場合に、前記エリア内トポロジ管理情報および前記装置状態情報を参照し、前記障害の発生箇所を除外した代替経路を計算し、その経路計算結果に基づき、前記自エリアのスイッチそれぞれに対応付けた前記エントリを生成し、前記自エリアのスイッチそれぞれに送信することにより前記経路制御を実行する経路計算部と、前記経路計算部が計算した代替経路に基づき、前記隣接エリアに新たに接続される前記境界スイッチと対応する前記パケットの宛先の情報とを示す境界装置変更情報を生成し、前記隣接エリアのコントローラに送信するコントローラ連携部と、を備え、前記コントローラが、自身が前記隣接エリアのコントローラである場合に、前記経路計算部が、受信した前記境界装置変更情報に基づき、経路を再計算し、前記隣接エリア内の経路制御を実行することを特徴とするネットワーク制御システムとした。
【００１５】
また、請求項３に記載の発明は、パケットの転送処理を実行する複数のスイッチと、前記スイッチそれぞれと制御チャネルを介して接続され、前記スイッチの経路制御を実行するコントローラと、を備えるネットワーク制御システムのネットワーク制御方法であって、前記ネットワーク制御システムが、複数の前記スイッチがエリア毎に分割され、前記分割されたエリアそれぞれに対応付けて前記コントローラを備えており、前記スイッチが、前記パケットの宛先と出力するＩＦ（Interface）とを対応付けたエントリを複数格納する転送先情報が記憶される記憶部を備えており、前記スイッチ自身が前記エリアの境界に位置する境界スイッチである場合において、障害の発生を検出したときに、前記障害の発生箇所を付した障害検出通知を生成し、自エリアのコントローラおよび隣接エリアのコントローラに対し送信するステップと、前記エントリを前記自エリアのコントローラから受信し、前記転送先情報を書き換えるステップと、を実行し、前記コントローラが、自身が前記自エリアのコントローラである場合に、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチそれぞれの間の接続関係を示すトポロジ情報が記憶されるエリア内トポロジ管理情報、並びに、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチの前記パケットの転送処理による装置状態を示す装置状態情報、が記憶される記憶部を備えており、前記自エリアの境界スイッチから前記障害検出通知を受信した場合に、前記エリア内トポロジ管理情報および前記装置状態情報を参照し、前記障害の発生箇所を除外した代替経路を計算し、その経路計算結果に基づき、前記自エリアのスイッチそれぞれに対応付けた前記エントリを生成し、前記自エリアのスイッチそれぞれに送信することにより前記経路制御を実行するステップと、前記計算した代替経路に基づき、前記隣接エリアに新たに接続される前記境界スイッチと対応する前記パケットの宛先の情報とを示す境界装置変更情報を生成し、前記隣接エリアのコントローラに送信するステップと、を実行し、前記コントローラが、自身が前記隣接エリアのコントローラである場合に、受信した前記境界装置変更情報に基づき、経路を再計算し、前記隣接エリア内の経路制御を実行するステップを実行することを特徴とするネットワーク制御方法とした。
【００１６】
このようにすることにより、本実施形態に係るネットワーク制御システム（ネットワーク制御方法）は、コントローラとスイッチとを分離させたシステムにおいて、複数のスイッチをエリア毎に分割し、分割したエリアそれぞれにコントローラを備えることにより、コントローラが記憶するトポロジ情報の範囲を限定することができる。また、コントローラをエリア毎に設置するため、スイッチとコントローラの物理距離を短くし、遅延時間を短くすることができる。また、各エリアの境界に位置するスイッチ（境界スイッチ）が、隣接エリアのコントローラとも制御チャネルを構築することで、自エリアのコントローラは、隣接エリアの境界スイッチの装置状態情報を取得することができる。また、自エリアのコントローラは、境界スイッチの装置状態情報も参照して、障害の発生箇所を除外した代替経路を計算し、その代替経路に基づき、隣接エリアに新たに接続される境界スイッチとパケットの宛先の情報を示す境界装置変更情報を隣接エリアのコントローラに送信する。よって、隣接エリアのコントローラは、受信した境界装置変更情報に基づき、経路を再計算し、隣接エリア内の経路制御を実行することができる。
【００１７】
請求項２に記載の発明は、前記自エリアのコントローラが、前記コントローラ連携部の代わりに、境界装置ＩＦ優先度決定部を備えており、前記境界装置ＩＦ優先度決定部が、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチの前記装置状態情報を参照し、前記自エリアと前記隣接エリアとを接続する、前記境界スイッチおよび利用するＩＦそれぞれの設定順を示す優先度を決定し、前記境界スイッチおよび前記利用するＩＦに前記優先度を対応付けた境界装置ＩＦ優先度情報を生成して、前記隣接エリアのコントローラに送信し、前記隣接エリアのコントローラの経路計算部が、前記障害検出通知を受信した場合に、受信した前記境界装置ＩＦ優先度情報を参照し、現時点の優先度の次の設定順である前記境界スイッチおよび前記利用するＩＦを用いるように、経路を再計算し、前記隣接エリア内の経路制御を実行することを特徴とする請求項１に記載のネットワーク制御システムとした。
【００１８】
また、請求項４に記載の発明は、前記自エリアのコントローラが、前記境界装置変更情報を生成し、前記隣接エリアのコントローラに送信するステップの代わりに、前記自エリアのスイッチおよび前記隣接エリアの境界スイッチの前記装置状態情報を参照し、前記自エリアと前記隣接エリアとを接続する、前記境界スイッチおよび利用するＩＦそれぞれの設定順を示す優先度を決定し、前記境界スイッチおよび前記利用するＩＦに前記優先度を対応付けた境界装置ＩＦ優先度情報を生成して、前記隣接エリアのコントローラに送信するステップを実行し、前記隣接エリアのコントローラが、前記障害検出通知を受信した場合に、受信した前記境界装置ＩＦ優先度情報を参照し、現時点の優先度の次の設定順である前記境界スイッチおよび前記利用するＩＦを用いるように、経路を再計算し、前記隣接エリア内の経路制御を実行するステップを実行することを特徴とする請求項３に記載のネットワーク制御方法とした。
【００１９】
このようにすることにより、本実施形態に係るネットワーク制御システム（ネットワーク制御方法）は、自エリアのコントローラが、自エリアのスイッチおよび隣接エリアの境界スイッチの装置状態情報を参照して、境界スイッチおよび利用するＩＦそれぞれの設定順を示す優先度を決定することができる。そして、自エリアのコントローラは、境界スイッチおよび利用するＩＦに優先度を対応付けた境界装置ＩＦ優先度情報を生成して、隣接エリアのコントローラに送信する。隣接エリアのコントローラは、障害検出通知を受信した場合に、この境界装置ＩＦ優先度情報を参照し、優先度が次の境界スイッチおよび利用するＩＦを用いて、経路を再計算し、隣接エリア内の経路制御を実行することができる。よって、自エリアおよび隣接エリアにおいて、経路切り替えを自律的に実行することができる。
【発明の効果】
【００２０】
本発明によれば、Ｃ／Ｕ分離されたコントローラおよびスイッチを備えるシステムにおいて、制御のリアルタイム性およびスケーラビリティを保ちつつ、エリア分割に依存しない経路制御を可能とする、ネットワーク制御システムおよびネットワーク制御方法を提供することができる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態に係るネットワーク制御システムの構成例を示す図である。
【図２】本実施形態に係るコントローラが管理する情報を説明するための図である。
【図３】本実施形態に係るスイッチの構成例を示す機能ブロック図である。
【図４】本実施形態に係るコントローラの構成例を示す機能ブロック図である。
【図５】本実施形態に係るネットワーク制御システムが行う非エリア境界障害発生パターンの処理の流れ説明するための図である。
【図６】非エリア境界障害発生パターンにおけるエントリ情報の書き換えを説明するための図である。
【図７】本実施形態に係るネットワーク制御システムが行うエリア境界障害発生パターンの処理の流れを説明するための図である。
【図８】エリア境界障害発生パターンにおけるエントリ情報の書き換えを説明するための図である。
【図９】本実施形態の変形例に係るコントローラの構成例を示す機能ブロック図である。
【図１０】本実施形態の変形例に係る境界装置ＩＦ優先度情報のデータ構成の一例を示す図である。
【図１１】本実施形態の変形例に係るコントローラを含むネットワーク制御システムが行うエリア境界障害発生パターンの処理の流れを説明するための図である。
【図１２】従来の一般的なＣ／Ｕ分離によるネットワーク制御システムの構成例を示す図である。
【図１３】従来のＣ／Ｕ分離のネットワーク制御システムにおける障害発生時の経路切り替え処理を説明するための図である。
【図１４】エリア毎にコントローラを設けて、スイッチを管理するＣ／Ｕ分離のネットワーク制御システムの一例を示す図である。
【発明を実施するための形態】
【００２２】
次に、本発明を実施するための形態（以下、「本実施形態」という）におけるネットワーク制御システム５等について説明する。
【００２３】
＜システムの全体構成と処理概要＞
まず、本実施形態に係るネットワーク制御システム５の全体を構成と処理概要とを、従来技術と比較しながら説明する。
【００２４】
本実施形態に係るネットワーク制御システム５は、Ｃ／Ｕ分離されたコントローラ１およびスイッチ２で構成される（後記する図１参照）。また、ネットワーク制御システム５は、Ｃ／Ｕ分離アーキテクチャにおいて、コントローラ１とスイッチ２と間で情報の送受信を行えるようなプロトコルであれば、いずれにも適用可能であるが、ここでは、既存のOpenFlowプロトコルを例に挙げて説明する。なお、システムにおいて実行される処理については、制御のリアルタイム性およびスケーラビリティが求められ、経路切り替え処理（経路再計算）が必要となる障害発生時の経路切り替えを例に説明する。また、転送処理に関しては、既存のルータと同様に、宛先ＩＰ（Internet Protocol）アドレス等に基づく情報によりパケット転送を行う例で説明する。
【００２５】
≪従来のＣ／Ｕ分離によるネットワーク制御システム≫
まず、本実施形態に係るネットワーク制御システム５との比較のため、従来のＣ／Ｕ分離のアーキテクチャを採用したネットワーク制御システムについて説明する。
図１２は、従来の一般的なＣ／Ｕ分離によるネットワーク制御システム（以下、単に「システム」と記載する場合がある。）の構成例を示す図である。
【００２６】
従来の一般的なＣ／Ｕ分離によるシステムでは、図１２に示すように、単一のコントローラ１０が、システム内のすべてのスイッチ２０（各図において、スイッチを「ＳＷ」と記載する。）について管理し、その制御を実行する。図１２では、すべてのスイッチ２０（＃Ａ１〜＃Ａ５，＃Ｂ１〜＃Ｂ５，＃Ｘ１〜＃Ｘ３）は、コントローラ１０によって、制御チャネルと通じて管理・制御されている。また、各スイッチ２０間は、図１２において実線で示されるリンク（各図において、リンクを「Ｌ」と記載し、例えば、リンクに固有な番号が「１１」の場合は、「Ｌ１１」と記載する。）で接続されシステム全体のトポロジを構成する。さらに、スイッチ２０には、ユーザプレフィックス３（例えば、ＩＰネットワークにおけるPrefix、192.168.100.0/24等の情報に対応する複数の装置（装置のＩＦ）であり、各図において「Prefixes」と記載する。）が接続されており、各スイッチ２０は、このユーザプレフィックス３に関する情報を格納するテーブル（例えば、ＦＩＢ。各図において、「フォワーディングテーブル」と記載する。）を記憶しており、このフォワーディングテーブルに基づいてパケット転送を行う。
【００２７】
従来のＣ／Ｕ分離のシステム（図１２）における障害発生時の経路切り替え処理を説明する。図１３は、従来のＣ／Ｕ分離のシステムにおける障害発生時の経路切り替え処理を説明するための図である。
なお、図１３においては、スイッチ２０側の自己管理により障害発生を検出したものとして説明する。また、コントローラ１０およびスイッチ２０が備える機能については、図１３においてその代表的な機能のみを記載している。具体的には、コントローラ１０については、スイッチ２０との間で制御チャネルを介して情報の送受信を行うスイッチ接続処理手段と、経路計算手段を記載している。スイッチ２０については、コントローラ１０との間で制御チャネルを介して情報の送受信を行うコントローラ接続処理手段と、パケットの転送先の情報が記憶されるフォワーディングテーブルを記載している。
【００２８】
まず、スイッチ２０（２０−１）が自身と接続するリンクのリンク断などの障害を検出すると、そのスイッチ２０（２０−１）は、コントローラ１０に対して障害検出通知を送信する（ステップＳ１）。
【００２９】
コントローラ１０の経路計算手段は、その障害検出通知に基づいて、障害箇所を除外した経路再計算を実行する（経路計算：ステップＳ２）。なお、このとき行われる経路計算は、例えば、ダイクストラアルゴリズムやポリシベースルーチングアルゴリズム、網内の最大リンク利用率の最小化計算アルゴリズム等に基づき実行される。
【００３０】
コントローラ１０は、すべてのスイッチ２０についての経路計算が完了した後、その計算結果に基づき、各スイッチ２０（２０−１，２０−２）に対し、宛先Prefixとネクストホップとの対応関係を示すエントリの書き込みを行う（ステップＳ３）。
これにより、各スイッチ２０は、自身が記憶するフォワーディングテーブルに、障害発生後の宛先毎のネクストホップが決定可能なエントリ情報を保持することができる。つまり、各スイッチ２０は、ユーザ端末（図示省略）から新しいパケットが到着した場合には、障害発生箇所を避けた最適経路によりパケットの転送が実現可能となる。
【００３１】
しかしながら、この従来のＣ／Ｕ分離のシステムにおいては、コントローラ１０が全てのスイッチ２０それぞれについての経路計算をしなければならないこと、コントローラ１０とスイッチ２０との間の物理距離に応じたエントリの書き込み時間がかかることが課題となる。なお、このエントリの書き込み時間の増大は、例えばPrefix数の増加に伴う時間の増大、制御対象装置数の増加に伴う時間の増大、ＴＣＰ（Transmission Control Protocol）のような正確なエントリ書き込みおよびその確認のため、コントローラ１０とスイッチ２０との間でのメッセージシーケンス増に伴う遅延時間の増大などにより引き起こされる。これらの問題は、網規模が大規模、広域になるほど顕著になる。
【００３２】
これらの問題を解決するため、コントローラ１０を複数用意し、管轄するエリアを設けて管理対象を分割する手法が考えられる。図１４は、エリア毎にコントローラを設けて、スイッチを管理するＣ／Ｕ分離のシステムの一例を示す図である。
図１４に示すシステムでは、網内のスイッチ２０を、エリアという単位に分割して配置する。スイッチ２０（＃Ａ１〜＃Ａ５）は、エリア「Ａ」に属し、スイッチ２０（＃Ｂ１〜＃Ｂ５）は、エリア「Ｂ」に属し、スイッチ２０（＃Ｘ１〜＃Ｘ３）は、エリア「Ｘ」に属する。また、エリア毎にコントローラ１０を配置する。つまり、単一ネットワーク上に複数のコントローラ１０が存在する構成となる。
しかしながら、図１４に示すように、網内のスイッチ２０をエリア毎に分割して、各エリアにコントローラ１０を配置するだけでは、前記したように、本来Ｃ／Ｕ分離の構成にしたことにより得られる特有の効果である、集中管理型ゆえの全体最適化の実現が難しくなる。
【００３３】
≪本実施形態に係るネットワーク制御システムの構成≫
次に、本実施形態に係るネットワーク制御システム５について説明する。
図１は、本実施形態に係るネットワーク制御システム５の構成例を示す図である。
図１に示すように、本実施形態に係るネットワーク制御システム５は、ネットワークを構成するスイッチ２をエリア毎に分割し、各エリアにコントローラ１を配置する。図１４に示した従来技術に基づくシステムとの違いは、エリア内のスイッチ２が、自エリアのコントローラ１と制御チャネルを介して接続されるだけでなく、隣接エリアのコントローラ１とも制御チャネルを介して接続される点である。ここで、隣接エリアのコントローラ１とも接続されるスイッチ２は、エリアの境界に位置するスイッチ２である。なお、このエリアの境界に位置するスイッチ２のことを、「境界スイッチ」または「エリア境界装置」と記載することがある。
【００３４】
図１に示す例では、ネットワーク内のスイッチ２がエリア「Ａ」，「Ｂ」，「Ｘ」に分割されて配置され、各エリア「Ａ」，「Ｂ」，「Ｘ」にコントローラ１（１Ａ，１Ｂ，１Ｘ）が配置される。エリア「Ａ」，「Ｂ」，「Ｘ」に属する各スイッチ２は、自身のエリアを管轄するコントローラ１（１Ａ，１Ｂ，１Ｘ）それぞれに接続される。さらに、エリアの境界に位置するスイッチ２は、隣接エリアのコントローラ１とも接続される。
【００３５】
図１では、例えば、スイッチ２（＃Ａ３）は、エリア「Ａ」に属しているため、エリア「Ａ」のコントローラ１（１Ａ）と接続されると共に、隣接エリアであるエリア「Ｘ」のコントローラ１（１Ｘ）とも接続される。また、エリア「Ｘ」に属するスイッチ２（＃Ｘ１）は、エリア「Ｘ」に属しているため、エリア「Ｘ」のコントローラ１（１Ｘ）と接続されると共に、隣接エリアであるエリア「Ａ」のコントローラ１（１Ａ）および隣接エリアであるエリア「Ｂ」のコントローラ１（１Ｂ）とも接続される。あるスイッチ２が複数のエリアの境界に位置する場合は、複数のエリアのコントローラ１と接続を行う。つまり、あるエリア境界装置からみて、制御チャネルで接続されるコントローラ１は、複数存在することとなる。
【００３６】
続いて、エリア毎に配置されるコントローラ１（１Ａ，１Ｂ，１Ｘ）が管理する情報について説明する。
図２は、本実施形態に係るコントローラが管理する情報を説明するための図である。
【００３７】
図２に示すように、各エリアのコントローラ１（１Ａ，１Ｂ，１Ｘ）は、自身のエリアに属するスイッチ２と隣接エリアに属する境界スイッチを含めたトポロジ情報を管理する。例えば、エリア「Ａ」のコントローラ１（１Ａ）は、自エリアに属するスイッチ２（＃Ａ１〜＃Ａ５）を管理すると共に、隣接エリアであるエリア「Ｘ」に属する境界スイッチ（＃Ｘ１，＃Ｘ２）も管理する。エリア「Ｘ」のコントローラ１（１Ｘ）は、自エリアに属するスイッチ２（＃Ｘ１〜＃Ｘ３）を管理すると共に、隣接エリアであるエリア「Ａ」に属する境界スイッチ（＃Ａ２，＃Ａ３）と、同じく隣接エリアであるエリア「Ｂ」に属する境界スイッチ（＃Ｂ２，＃Ｂ３）とを管理する。
このコントローラ１が管理するトポロジ情報は、例えば、各スイッチ２のＩＰアドレス等の情報、各スイッチ２が備えるＩＦの情報、各スイッチ２のＩＦが隣接するスイッチのどのＩＦと接続しているかを示すリンク情報である。なお、このトポロジ情報を管理・更新する手法は、ネットワーク運用者による手動でのトポロジ情報の入力や、自身のトポロジ管理範囲内に位置するスイッチ２に対して、ＬＬＤＰ（Link Layer Discovery Protocol）を活用したトポロジディスカバリ方式（http://blogs.ixiacom.com/ixia-blog/discovery-in-openflow-networks-at-onf-plugfest/）などを用いることができる。なお、ここで説明したコントローラ１が管理するトポロジ情報が、後記する図４に示すエリア内トポロジ管理情報１４１に相当する。
また、コントローラ１が、転送処理のための情報であるエントリを制御する（エントリの書き込みを行う）対象は、自身のエリアに属しているスイッチ２のみが対象となる。つまり、隣接エリアの境界スイッチは、トポロジ情報の管理対象ではあるが、エントリの制御対象とはしない。
【００３８】
このように、本実施形態に係るネットワーク制御システム５は、スイッチ２をエリア毎に分割して、そのエリアを管轄するコントローラ１が自エリア内のトポロジ情報の管理およびエントリの制御をするとともに、各コントローラ１は、隣接エリアの境界スイッチのトポロジ情報も管理する。この構成にすることにより、エリアの境界に位置するスイッチ２や、そのＩＦ（隣接エリアの境界スイッチ向けＩＦ）、エリア間を接続するリンク等で障害が発生した場合に、境界スイッチは、その障害検出通知を、自エリアを管轄するコントローラ１と、隣接エリアを管轄するコントローラ１との両方へ送信する。これにより、自エリアだけでなく隣接エリアも含めた柔軟な経路制御を可能にする。なお、詳細は後記する。
【００３９】
＜各装置の構成＞
次に、本実施形態に係るネットワーク制御システム５を構成する各装置（スイッチ２、コントローラ１）の構成について、図３，図４を参照して説明する。
【００４０】
≪スイッチ≫
図３は、本実施形態に係るスイッチ２の構成例を示す機能ブロック図である。
スイッチ２は、Ｃ／Ｕ分離されたアーキテクチャにおいて、パケットの転送処理を実現する装置であり、他のスイッチ２やユーザプレフィックス３等と接続される。また、スイッチ２は、制御チャネルを介してコントローラ１と接続される。なお、図３において、スイッチ２は、図１で示したエリアの境界に位置する境界スイッチであるスイッチ２（＃Ａ２）として説明する。この境界スイッチであるスイッチ２（＃Ａ２）は、自身のエリア（エリア「Ａ」）のコントローラ１（１Ａ）と接続されるともに、隣接エリア（エリア「Ｘ」）のコントローラ１（１Ｘ）とも接続される。また、スイッチ２（＃Ａ２）は、通信部２２が備えるＩＦを介して、他のスイッチ２（＃Ａ４，＃Ｘ１等）に接続され、パケット転送が行われる。
このスイッチ２は、図３に示すように、制御部２１と、通信部２２と、記憶部２３とを備える。
【００４１】
通信部２２は、通信回線を介して情報の送受信を行う通信ＩＦ（例えば、ＮＩＣ（Network Interface Card ））により構成される。この通信ＩＦは、他のスイッチ２等との間でのパケットの転送を行うパケット転送用のＩＦや、コントローラ１との間で制御情報の送受信を行う制御チャネル用のＩＦ（図示省略）等により構成される。
【００４２】
制御部２１は、スイッチ２全体の制御を司り、コントローラ接続処理部２１１と、スイッチ設定部２１２と、装置状態監視部２１３と、複数コントローラ接続制御部２１４と、転送処理部２１５とを含んで構成される。
【００４３】
コントローラ接続処理部２１１は、通信部２２を介して、コントローラ１との間で制御情報を送受信するための制御チャネルを構築する。なお、コントローラ接続処理部２１１は、複数コントローラ接続制御部２１４からの指示を受けた場合には、隣接するエリアのコントローラ１との間にも制御チャネルを構築する。図３において、コントローラ接続処理部２１１は、自エリアのコントローラ１（１Ａ）との間で制御チャネルを構築するとともに、隣接エリアのコントローラ１（１Ｘ）との間でも制御チャネルを構築する。
【００４４】
スイッチ設定部２１２は、通信部２２を介して、自エリアのコントローラ１（図３では、コントローラ１（１Ａ））から、エントリ情報を受信し、自身の記憶部２３に格納されたフォワーディングテーブル２３１（転送先情報）の書き換え、登録を実行する。
また、スイッチ設定部２１２は、通信部２２を介して、自エリアのコントローラ１（図３では、コントローラ１（１Ａ））から、受信したパケットを識別するための条件や、その条件を満たした場合の処理を示すフロー設定情報を受信して、転送処理の設定を行う。
【００４５】
装置状態監視部２１３は、スイッチ２自身のＩＦ等や、スイッチ２自身と接続するリンクに障害が発生したか否かを監視し、障害発生を検出した場合に、その障害発生箇所（ＩＦやリンク）の情報を付した障害検出通知を生成して自身が属するエリアのコントローラ１へ送信する。なお、装置状態監視部２１３は、複数コントローラ接続制御部２１４からの指示を受けた場合には、隣接するエリアのコントローラ１に対しても制御チャネルを介して、障害検出通知を送信する。図３において、装置状態監視部２１３は、自エリアのコントローラ１（１Ａ）および隣接エリアのコントローラ１（１Ｘ）に対して、障害検出通知を送信する。
この装置状態監視部２１３は、例えば、OpenFlowプロトコルのポートステータスメッセージを用いて、この障害検出通知をコントローラ１に送信する。
【００４６】
また、装置状態監視部２１３は、スイッチ２自身の処理状態を監視し、単位時間内の入出力ビット数やパケット数、フロー保持数などの情報（装置状態情報）を収集し、記憶部２３内の装置状態統計情報２３２に保存する。また、装置状態監視部２１３は、収集した情報に基づき、自身に接続するリンクのリンク利用率を算出し、装置状態統計情報２３２に格納しておく。装置状態監視部２１３は、所定の時間間隔で、フロー保持数やリンク利用率等の自身の装置状態情報を、自身が属するエリアのコントローラ１へ送信する。なお、装置状態監視部２１３は、複数コントローラ接続制御部２１４からの指示を受けた場合には、隣接するエリアのコントローラ１に対しても制御チャネルを介して、自身の装置状態情報を送信する。図３において、装置状態監視部２１３は、自エリアのコントローラ１（１Ａ）および隣接エリアのコントローラ１（１Ｘ）に対して、装置状態情報を送信する。
【００４７】
複数コントローラ接続制御部２１４は、そのスイッチ２自身が、エリアの境界に位置するスイッチ（エリア境界装置）であるか否かを、フォワーディングテーブル２３１を参照して判定するか、若しくは、自エリアのコントローラ１等から自身がエリア境界装置である旨の情報を受信した場合に、自スイッチ２が境界スイッチであると判定する。そして、複数コントローラ接続制御部２１４は、コントローラ接続処理部２１１に対して、隣接するエリアのコントローラ１（図３では、コントローラ１（１Ｘ））に対しても、制御チャネルを構築するように指示を出力する。また、複数コントローラ接続制御部２１４は、装置状態監視部２１３に対して、隣接するエリアのコントローラ１（図３では、コントローラ１（１Ｘ））に対しても、所定の時間間隔で装置状態情報を送信すること、障害発生を検出した場合に、隣接するエリアのコントローラ１（図３では、コントローラ１（１Ｘ））に対しても障害検出通知を送信することの指示を出力する。なお、複数コントローラ接続制御部２１４は、障害検出前の正常時（例えば、初期設定時や、システム構成の変更時）において、コントローラ接続処理部２１１および装置状態監視部２１３に対するこれらの指示を出力し、隣接エリアのコントローラ１に対して、制御チャネルの構築や、所定の時間間隔での装置状態情報の送信を、予め実行させておくものとする。
【００４８】
転送処理部２１５は、他のスイッチ２等からパケットを受信し、フォワーディングテーブル２３１（転送先情報）を参照して、宛先となる装置へ向けてそのパケットを転送する。図３において、転送処理部２１５は、通信部２２を介して、例えば、自エリアのスイッチ２（＃Ａ４）から受信したパケットを、隣接エリアのスイッチ２（＃Ｘ１）に転送する。
【００４９】
記憶部２３は、ＲＯＭ（Read Only Memory）や、ＲＡＭ（Random Access Memory）、フラッシュメモリ、ハードディスク等の記憶手段により構成され、制御部２１の機能を実現するためのプログラムや、前記したフォワーディングテーブル２３１（転送先情報）、装置状態統計情報２３２等が記憶される。
【００５０】
≪コントローラ≫
次に、本ネットワーク制御システム５のコントローラ１について説明する。
図４は、本実施形態に係るコントローラ１の構成例を示す機能ブロック図である。
コントローラ１は、Ｃ／Ｕ分離されたアーキテクチャにおいて、主に経路制御を実現する装置であり、自身が管轄するエリアの各スイッチ２と、隣接エリアの境界スイッチとに接続される。また、コントローラ１は、当該隣接エリアを管轄する他のコントローラ１とも接続される。なお、図４において、コントローラ１は、図１で示したエリア「Ａ」を管轄するコントローラ１（１Ａ）として説明する。このコントローラ１（１Ａ）は、自身が管轄するエリア「Ａ」の各スイッチ２（＃Ａ１〜＃Ａ５）と、隣接エリア「Ｘ」の境界スイッチ（＃Ｘ１，＃Ｘ２）とに接続される。また、コントローラ１（１Ａ）は、隣接エリア「Ｘ」を管轄するコントローラ１（１Ｘ）とも接続される。
このコントローラ１は、図４に示すように、制御部１１と、通信部１２と、入出力部１３と、記憶部１４とを備える。
【００５１】
通信部１２は、通信回線を介して情報の送受信を行う通信ＩＦ（例えば、ＮＩＣ）により構成される。この通信ＩＦは、自エリアのスイッチ２や隣接エリアの境界スイッチとの間で制御情報の送受信を行う制御チャネル用のＩＦ（図示省略）や、隣接エリアのコントローラ１との間で制御情報の送受信を行うＩＦ（図示省略）等により構成される。
【００５２】
制御部１１は、コントローラ１全体の制御を司り、スイッチ接続処理部１１１と、コントローラ設定部１１２と、エリア内トポロジ監視部１１３と、経路計算部１１４と、コントローラ連携部１１５とを含んで構成される。
【００５３】
スイッチ接続処理部１１１は、通信部１２を介して、スイッチ２との間で制御情報を送受信するための制御チャネルを構築する。なお、このスイッチ接続処理部１１１は、記憶部１４内のエリア内トポロジ管理情報１４１を参照し、自エリア内のスイッチ２（図４では、スイッチ２（＃Ａ１〜＃Ａ５））と、隣接エリアの境界スイッチ（図４では、境界スイッチ（＃Ｘ１，＃Ｘ２））との間で、制御チャネルを構築する。
なお、エリア内トポロジ管理情報１４１には、コントローラ１が管理する、自エリアに属するスイッチ２と、隣接エリアに属する境界スイッチを含めた、各スイッチ２間の接続に関するトポロジ情報が記憶される。具体的には、図２において説明したように、例えば、各スイッチ２のＩＰアドレス等の情報、各スイッチ２が備えるＩＦの情報、各スイッチ２のＩＦが隣接するスイッチのどのＩＦと接続しているかを示すリンク情報がトポロジ情報として記憶される。
【００５４】
コントローラ設定部１１２は、エリア内トポロジ管理情報１４１や、フロー設定管理情報１４２等の設定情報を通信部１２または入出力部１３を介して取得し、記憶部１４に記憶しておく。また、エリア内トポロジ管理情報１４１やフロー設定管理情報１４２等の変更情報を通信部１２または入出力部１３を介して取得した場合には、その情報に基づき更新、登録処理を行う。
また、フロー設定管理情報１４２には、OpenFlowプロトコルに基づくスイッチ２において、受信したパケットを識別するための条件（ヘッダフィールド）やその条件を満たした場合の処理（アクション）等がフロー設定情報として記憶される。なお、コントローラ設定部１１２は、このフロー設定情報を、制御チャネルを介して自エリア内の各スイッチ２に送信する。
【００５５】
エリア内トポロジ監視部１１３は、自エリア内のスイッチ２（図４では、スイッチ２（＃Ａ１〜＃Ａ５））および隣接エリアの境界スイッチ（図４では、境界スイッチ（＃Ｘ１，＃Ｘ２））から、所定の時間間隔で、装置の処理状態を計測するためのトラヒックカウンタの各情報や、リンク利用率、フロー保持数等の装置状態情報を受信し、装置状態統計管理情報１４３に格納する。
なお、本実施形態における障害検出処理は、スイッチ２（装置状態監視部２１３）の自己管理により行われるものとして説明するが、スイッチ２の自己管理に基づく障害検出処理に代えて、このエリア内トポロジ監視部１１３が、構築された制御チャネルにより各スイッチ２を死活監視することにより、障害を検出するようにしてもよい。
【００５６】
経路計算部１１４は、各フローの経路計算を実行する。そして、経路計算部１１４は、その経路計算結果に基づき、自エリアのスイッチ２それぞれについての、宛先Prefixとネクストホップとの対応関係を示すエントリ情報を生成し、記憶部１４のルーチングテーブル１４４に格納する、そして、経路計算部１１４は、その生成したエントリ情報を、自エリア内の各スイッチ２へ送信する。
また、経路計算部１１４は、自エリア内のスイッチ２から障害検出通知を受け取った場合に、障害箇所を除外した経路の再計算を実行する。この経路計算部１１４が実行する経路計算は、例えば、ダイクストラアルゴリズムやポリシベースルーチングアルゴリズム、網内の最大リンク利用率の最小化計算アルゴリズム等に基づき実行される。経路計算部１１４は、各アルゴリズムに対応する情報を、エリア内トポロジ管理情報１４１や、装置状態統計管理情報１４３等から取得し、経路計算を実行する。
なお、経路計算部１１４は、事前に障害発生のパターンを想定し、障害発生箇所を迂回する代替経路を計算し、その計算結果を記憶部１４に保持しておくようにしてもよい。
【００５７】
ここで、経路計算部１１４は、この経路計算を実行する場合、障害検出通知に付された障害発生箇所を示す情報により、エリア境界に位置しないスイッチ２（以下、「非エリア境界装置」と記載する場合がある。）およびエリア内のリンク（以下、「非エリア境界リンク」と記載する場合がある。）に障害が発生したと判定した場合には、エリア内において、障害箇所を迂回する代替経路を計算する。一方、経路計算部１１４は、エリア境界に位置するスイッチ２（エリア境界装置）、自エリアと隣接エリアとを接続するリンクであり、エリアの境界に位置するリンク（以下、「エリア境界リンク」と記載する場合がある。）のいずれかに障害が発生したと判定した場合は、隣接エリアの境界スイッチを含めた代替経路を計算する。
また、経路計算部１１４は、この代替経路の経路計算結果に基づき、自エリアのスイッチ２それぞれについてのエントリ情報を生成し、記憶部１４のルーチングテーブル１４４に格納する、そして、経路計算部１１４は、その生成したエントリ情報を、自エリア内の各スイッチ２（図４では、スイッチ２（＃Ａ１〜＃Ａ５））へ送信する。
【００５８】
コントローラ連携部１１５は、エリア境界装置（スイッチ２）のＩＦ等や、エリア境界リンクに障害が発生した場合には、経路計算部１１４によるその障害箇所を迂回する代替経路の計算結果に基づき、どの宛先Prefixがどの出口（エリア境界装置）から送信されるかを示す境界装置変更情報を生成し、隣接エリアのコントローラ１（図４では、コントローラ１（１Ｘ））に送信する。
なお、境界エリアのコントローラ１（図４では、コントローラ１（１Ｘ））の経路計算部１１４は、隣接エリアの境界スイッチから障害検出通知を受信した後に、隣接エリアのコントローラ１（図４では、コントローラ１（１Ａ））から境界装置変更情報を受信した場合には、その境界装置変更情報に付された宛先Prefixと出口（エリア境界装置）の情報に基づき、自エリア内の経路を再計算する。
【００５９】
記憶部１４は、ＲＯＭや、ＲＡＭ、フラッシュメモリ、ハードディスク等の記憶手段により構成され、制御部１１の機能を実現するためのプログラムや、前記したエリア内トポロジ管理情報１４１、フロー設定管理情報１４２、装置状態統計管理情報１４３、ルーチングテーブル１４４等が記憶される。
【００６０】
＜処理の流れ＞
次に、本実施形態に係るネットワーク制御システム５の処理の流れについて説明する。
ここでは、ネットワーク制御システム５を構成するスイッチ２が、スイッチ２自身のＩＦ等や、スイッチ２自身と接続するリンクの障害を検出した場合の経路切り替えを例に説明する。
【００６１】
本実施形態に係るスイッチ２は、障害の発生位置に応じて、以下の２種類のパターンの動作を実行する。
（非エリア境界障害発生パターン）障害発生エリア内のみの経路切り替えで導通性が確保できるパターン。
（エリア境界障害発生パターン）障害発生エリアの隣接エリアも合わせて経路切り替えしなければ導通性が確保できないパターン。
【００６２】
非エリア境界障害発生パターンは、エリアの境界に位置しないスイッチ２（非エリア境界装置）、そのＩＦ、エリア内のリンク（非エリア境界リンク）において障害が発生した場合に、従来のシステムと同様に、障害を検出したスイッチ２が、障害検出通知を自エリアのコントローラ１のみに送信する。障害検出通知を受信した自エリアのコントローラ１は、障害箇所を迂回する代替経路を計算（若しくは事前計算結果を取得）し、その結果に基づいて、自エリア内の経路制御を実行する。これらの処理に伴って、隣接エリアとパケット送受信を行うエリア境界装置に経路変更は発生しない。
【００６３】
エリア境界障害発生パターンは、エリアの境界に位置するスイッチ２（エリア境界装置）、そのＩＦ（隣接エリアの境界スイッチ向けのＩＦ）、エリア境界リンクにおいて障害が発生した場合に、障害を検出したスイッチ２（エリア境界装置）は、障害検出通知を自エリアのコントローラ１に送信すると共に、隣接エリアのコントローラ１に対しても送信する。そして、障害発生エリアのコントローラ１は、障害発生箇所を迂回する代替経路を計算（若しくは事前計算結果を取得）し、その結果に基づいて、自エリア内の経路制御を実行する。また、障害発生エリアのコントローラ１は、隣接エリアのコントローラ１に対し、どの宛先Prefixがどの出口（エリア境界装置）から送信されるかを示す境界装置変更情報を生成し、隣接エリアのコントローラ１に送信する。そして、隣接エリアのコントローラ１は、受信した境界装置変更情報に基づき、経路の再計算を実行し、その結果に基づいて、自エリア内の経路制御を実行する。
以下、この２種類のパターンについて詳細に説明する。
【００６４】
（非エリア境界障害発生パターン）
まず、非エリア境界障害発生パターンの処理の詳細について説明する。
図５は、本実施形態に係るネットワーク制御システム５が行う非エリア境界障害発生パターンの処理の流れ説明するための図である。図６は、非エリア境界障害発生パターンにおけるエントリ情報の書き換えを説明するための図である。なお、図５においては、スイッチ２が備える代表的な機能（コントローラ接続処理部２１１およびフォワーディングテーブル２３１）およびコントローラ１が備える代表的な機能（経路計算部１１４およびスイッチ接続処理部１１１）のみを記載し、他の機能の図示を省略している。また、ここでは、エリアの境界に位置しないスイッチ２（非エリア境界装置）、そのＩＦ、エリア内のリンク（非エリア境界リンク）において障害が発生したものとする。
【００６５】
エリアの境界に位置しないスイッチ２（エリア「Ａ」の非エリア境界装置）の装置状態監視部２１３（図３）が障害発生を検出すると、図５に示すように、その障害検出通知を、自エリアのコントローラ１（１Ａ）に送信する（ステップＳ１１）。
【００６６】
障害発生エリアのコントローラ１（１Ａ）の経路計算部１１４は、障害箇所を迂回する代替経路を計算（若しくは事前計算結果を取得）し（経路計算：ステップＳ１２）、その経路計算結果に基づいて、エリア内の各スイッチ２に対し変更後のエントリ情報の書き込みを行う（ステップＳ１３）。
これらの処理に伴って、隣接エリアとの間でパケットの送受信を行うエリア境界装置のエントリ情報には変更は生じない。
【００６７】
図６を参照して、エリア「Ａ」の非エリア境界装置であるスイッチ２（＃Ａ４）が障害発生を検出した場合を例に、エントリ情報の書き換えを説明する。
【００６８】
図６（ａ）に示すように、障害発生前（正常時）において、エリア「Ａ」のスイッチ２（＃Ａ１）は、α1〜1000、β1〜1000という計2000個の宛先Prefix（図６においては、宛先Prefixを「Prefixes α1…1000」「Prefixes β1…1000」としてまとめて表現しているが、実際には合計2000個のエントリ情報が存在するものとする。）に対し、α1〜1000をＩＦ「３」方向、β1〜1000をＩＦ「１」方向に転送を行っているものとする（図６（ｂ）参照）。ここで、エリア「Ａ」のスイッチ２（＃Ａ４）に障害（ノード障害）が発生した場合に、スイッチ２（＃Ａ４）からの障害検出通知を受信したエリア「Ａ」のコントローラ１（１Ａ）（図６において図示省略）は、障害箇所を迂回する経路計算し、その計算結果に基づいて、エリア「Ａ」内の各スイッチ２のフォワーディングテーブル２３１（図６において「テーブル」と記載。）を更新する。例えば、スイッチ２（＃Ａ１）においては、従来β1〜1000方向の転送は、ＩＦ「１」方向であったが、経路再計算の結果、ＩＦ「２」方向へと更新される（図６（ｃ）参照）。
また、スイッチ２（＃Ａ４）が、リンクＬ１１４、リンクＬ１２４の障害（リンク障害）を検出した場合も、同様のフォワーディングテーブル２３１の更新を行う（図６（ｄ），（ｅ）参照）。
【００６９】
これらの処理に伴って、エリア「Ｂ」「Ｘ」から見た場合、エリア「Ａ」での障害発生は、他エリアに伝達されることがないため、他エリアのスイッチ２のフォワーディングテーブル２３１は更新されることはない。
このように、スイッチ２が各エリアに分割され、各コントローラ１が管理する装置数が削減されることで、課題であった経路計算時間と事前経路計算に必要な情報量の削減を達成することができる。また、コントローラ１と各エリアのスイッチ２との間を、物理的に近い位置に配置しておくことで、課題であった物理遅延時間を減少させることができる。
【００７０】
（エリア境界障害発生パターン）
次に、エリア境界障害発生パターンの処理の詳細について説明する。
図７は、本実施形態に係るネットワーク制御システム５が行うエリア境界障害発生パターンの処理の流れを説明するための図である。図８は、エリア境界障害発生パターンにおけるエントリ情報の書き換えを説明するための図である。なお、図７においては、図５と同様に、スイッチ２が備える代表的な機能（コントローラ接続処理部２１１およびフォワーディングテーブル２３１）およびコントローラ１が備える代表的な機能（経路計算部１１４およびスイッチ接続処理部１１１）のみを記載し、他の機能の図示を省略している。また、ここでは、エリアの境界に位置するスイッチ２（エリア境界装置）、そのＩＦ（隣接エリアの境界スイッチ向けのＩＦ）、エリア境界リンクにおいて障害が発生したものとする。
【００７１】
エリアの境界に位置するスイッチ２（エリア「Ａ」のエリア境界装置）の装置状態監視部２１３（図３）が障害発生を検出すると、複数コントローラ接続制御部２１４（図３）の指示に基づき、図７に示すように、その障害検出通知を、自エリアのコントローラ１（１Ａ）と、隣接エリア（エリア「Ｘ」）のコントローラ１（１Ｘ）とに送信する（ステップＳ２１）。
【００７２】
障害発生エリアのコントローラ１（１Ａ）の経路計算部１１４（図４）は、障害箇所を迂回する代替経路を計算（若しくは事前計算結果を取得）し（経路計算：ステップＳ２２）、その経路計算結果に基づいて、自エリア内の各スイッチ２に対し変更後のエントリ情報の書き込みを行う（ステップＳ２３）。
【００７３】
また、障害発生エリアのコントローラ１（１Ａ）のコントローラ連携部１１５（図４）は、経路計算部１１４による経路計算結果に基づき、どの宛先Prefixがどの出口（エリア境界装置）から送信されるかを示す境界装置変更情報を生成し、隣接エリアのコントローラ１（１Ｘ）に送信する（ステップＳ２４）。
【００７４】
境界装置変更情報を受信した隣接エリアのコントローラ１（１Ｘ）の経路計算部１１４は、その境界装置変更情報に付された宛先Prefixと出口（エリア境界装置）の情報に基づき、自エリア内の経路を再計算する（経路計算：ステップＳ２５）。
そして、コントローラ１（１Ｘ）の経路計算部１１４は、その経路計算結果に基づいて、自エリア内の各スイッチ２に対し変更後のエントリ情報の書き込みを行う（ステップＳ２６）。
【００７５】
図８を参照して、エリア「Ａ」のエリア境界装置であるスイッチ２（＃Ａ２）が障害発生を検出した場合を例に、エントリ情報の書き換えを説明する。
【００７６】
図８（ａ）に示すように、障害発生前（正常時）において、エリア「Ａ」のスイッチ２（＃Ａ１）は、α1〜1000のPrefixに対しては、ＩＦ「３」方向、β1〜1000のPrefixに対しては、ＩＦ「１」方向に転送を行っているものとする（図８（ｂ）参照）。ここで、エリア「Ａ」のスイッチ２（＃Ａ２）に障害（ノード障害）が発生した場合に、スイッチ２（＃Ａ２）からの障害検出通知を受信したエリア「Ａ」のコントローラ１（１Ａ）（図８において図示省略）は、障害箇所を迂回する経路計算し、その計算結果に基づいて、エリア「Ａ」内の各スイッチ２のフォワーディングテーブル２３１（図８において「テーブル」と記載。）を更新する。例えば、スイッチ２（＃Ａ１）においては、従来β1〜1000方向の転送は、ＩＦ「１」方向であったが、経路再計算の結果、ＩＦ「２」方向へと更新される（図８（ｃ）参照）。
【００７７】
また、コントローラ１（１Ａ）のコントローラ連携部１１５（図４）は、経路計算部１１４による経路計算結果に基づき、どの宛先Prefixがどの出口（エリア境界装置）から送信されるかを示す境界装置変更情報を生成し、隣接エリア（エリア「Ｘ」）のコントローラ１（１Ｘ）（図８において図示省略）に送信する。ここでは、コントローラ連携部１１５が、宛先Prefixがβ1〜1000について、エリア「Ａ」のスイッチ２（＃Ａ３）からエリア「Ｘ」のスイッチ２（＃Ｘ２）方向へ転送するという境界装置変更情報を隣接エリアのコントローラ１（１Ｘ）に送信したものとする。そして、コントローラ１（１Ｘ）の経路計算部１１４は、受信した境界装置変更情報に基づき、自エリア内の経路を再計算し、自エリア内の各スイッチ２に対し変更後のエントリ情報の書き込みを行う。例えば、エリア「Ｘ」のスイッチ２（＃Ｘ２）において、α1〜1000方向の転送をＩＦ「２」で行うこと、β1〜1000方向の転送をＩＦ「１」で行うことの新たなエントリ情報が登録される（図８（ｄ）参照）。
また、スイッチ２（＃Ａ２）が、エリア境界リンクであるリンクＬ１１の障害（リンク障害）を検出した場合も、同様のフォワーディングテーブル２３１の更新を行う（図８（ｅ），（ｆ）参照）。
【００７８】
このように境界に位置する装置（エリア境界装置）が障害検出通知を自エリアのコントローラ１（１Ａ）と隣接エリアのコントローラ１（１Ｘ）に送信し、障害検出通知を受信した障害発生エリアのコントローラ１（１Ａ）と、隣接エリアのコントローラ１（１Ｘ）とが、境界装置変更情報を送受信することにより連携することで、本ネットワーク制御システム５は、障害発生エリアだけでなく隣接エリアも含めた柔軟な経路制御を可能にする。
【００７９】
＜コントローラの変形例＞
次に、本実施形態に係るコントローラ１の変形例について説明する。
図９は、本実施形態の変形例に係るコントローラ１ａの構成例を示す機能ブロック図である。図４に示した、本実施形態に係るコントローラ１と同様の機能を備える構成については、同一の名称と記号を付し、説明を省略する。図９に示したコントローラ１ａと図４に示したコントローラ１との違いは、コントローラ１ａは、制御部１１の中に、コントローラ連携部１１５を備えておらず、その代わりに、境界装置ＩＦ優先度決定部１１６を備えていること、また、記憶部１４に、境界装置ＩＦ優先度情報１４５が追加して記憶されていることである。
【００８０】
本実施形態に係るコントローラ１においては、図４に示すように、コントローラ連携部１１５を備え、このコントローラ連携部１１５が、経路計算部１１４によるその障害箇所を迂回する代替経路の計算結果に基づき、どの宛先Prefixがどの出口（エリア境界装置）から送信されるかを示す境界装置変更情報を障害発生時に生成し、隣接エリアのコントローラ１に送信していた。そして、隣接エリアのコントローラ１は、受信した境界装置変更情報に基づき、自エリア内の経路の再計算を行っていた。
これに対し、本実施形態の変形例に係るコントローラ１ａは、障害発生前（事前）に、現用のスイッチ２やリンクに障害が発生した際に、その代替として、どのスイッチ２、そのＩＦ、および、どのリンクを使用するかという情報（後記する図１０の境界装置ＩＦ優先度情報１４５）を、隣接エリアのコントローラ１ａとの間で交換しておく。つまり、コントローラ１ａは、隣接するコントローラ１ａとの間において、所定の時間間隔で障害発生時に利用する境界装置ＩＦ優先度情報１４５を広告することにより同期をとっておく。こうすることにより、ネットワーク制御システム５は、境界装置変更情報を送信することなく、エリア境界装置であるスイッチ２からの障害検出通知の受信のみで、隣接する複数のエリアが並行して自律的に経路切り替え処理を実行することができる。
【００８１】
コントローラ１ａの境界装置ＩＦ優先度決定部１１６は、障害発生前において、所定の時間間隔毎に、境界装置ＩＦ優先度情報１４５（図１０）を生成し、記憶部１４に記憶した上で、隣接エリアのコントローラ１ａに送信しておく。
【００８２】
図１０は、本実施形態の変形例に係る境界装置ＩＦ優先度情報１４５のデータ構成の一例を示す図である。図１０に示すように、境界装置ＩＦ優先度情報１４５は、エリア境界装置、利用ＩＦ、優先度の各データにより構成され、１行目のレコードが、優先度が最も高く（優先度「高」）、現在利用しているエリア境界装置と、その利用しているＩＦと示す。なお、このエリア境界装置と利用ＩＦとにより、現在利用しているリンク（エリア境界リンク）が特定される。そして、２行目のレコードが、優先度が低い（優先度「低」）エリア境界装置と利用ＩＦとが示される。つまり、図１０に示す例では、エリア境界装置であるスイッチ２（＃Ａ２）のＩＦ「Ｘ」（または、スイッチ２（＃Ａ２）に接続するエリア境界リンク）に障害が発生した場合には、スイッチ２（＃Ａ３）のＩＦ「Ｙ」に切り替えることを示している。なお、この境界装置ＩＦ優先度情報１４５の優先度は、図１０に示すように、エリア境界リンクが２つしかないような場合には、優先度を「高」「低」のように２種で表すようにしてもよいし、エリア境界リンクが３つ以上ある場合には、優先度を「１」「２」「３」・・・のように表し、優先度「１」から順にエリア境界装置と利用ＩＦとが設定されるようにしてもよい。また、優先度を決定するための所定の条件式を導入し、その条件式を用いて計算した結果の数値が高いもの程、優先度が高いと設定してもよい。
【００８３】
境界装置ＩＦ優先度決定部１１６は、この境界装置ＩＦ優先度情報１４５の優先度を、隣接エリアのエリア境界装置の装置状態情報（例えば、物理ＩＦのリンク利用率やその装置のフロー保持数など）に基づき決定する。この装置状態情報は、あるエリアのコントローラ１ａが、隣接エリアのエリア境界装置のトポロジ情報を管理しているために、隣接エリアの情報を一部参照して、優先度を決定することができる。
【００８４】
例えば、エリア「Ａ」のコントローラ１ａ（エリア内トポロジ監視部１１３）は、図２に示すように、スイッチ２（＃Ｘ１）との間のリンクＬ１１を構成する物理ＩＦ「Ｎ」と、スイッチ２（＃Ｘ２）との間のリンクＬ１２を構成する物理ＩＦ「Ｍ」のリンク利用率を装置状態情報として収集する。その結果、物理ＩＦ「Ｎ」のリンク利用率が「３０％」、物理ＩＦ「Ｍ」のリンク利用率が「６０％」だったとする。この場合、物理ＩＦのリンク利用率の負荷分散を実現するために、リンク利用率が低い物理ＩＦ「Ｎ」を優先的に使用することとし、対応する自エリアのスイッチ２（＃Ａ２）の優先度を「高」、スイッチ２（＃Ａ３）の優先度を「低」として、境界装置ＩＦ優先度情報１４５（図１０参照）を生成し、隣接するエリア「Ｘ」のコントローラ１ａに広告を行う。
この処理により、エリア境界装置であるスイッチ２からの障害検出通知の受信のみで、隣接エリアのコントローラ１ａが並行して自律的に経路切り替え処理を実行することができる。
なお、この優先度は、障害発生エリアのコントローラ１ａとその隣接エリアのコントローラ１ａとにおいて、一位に通信経路が決定できれば、従来のＢＧＰ（Border Gateway Protocol）のように、受信方向（ＭＥＤ相当）や送信方向（LOCAL PREFERENCE）などの属性を付与することも可能である。
【００８５】
次に、本実施形態の変形例に係るコントローラ１ａを含むネットワーク制御システム５が行うエリア境界障害発生パターンの処理の流れを説明する。なお、非エリア境界障害発生パターンの処理は、図５と同様であるので記載を省略する。
図１１は、本実施形態の変形例に係るコントローラ１ａを含むネットワーク制御システム５が行うエリア境界障害発生パターンの処理の流れを説明するための図である。なお、図１１においては、図５，７と同様に、スイッチ２が備える代表的な機能（コントローラ接続処理部２１１およびフォワーディングテーブル２３１）およびコントローラ１が備える代表的な機能（経路計算部１１４およびスイッチ接続処理部１１１）のみを記載し、他の機能の図示を省略している。また、ここでは、エリアの境界に位置するスイッチ２（エリア境界装置）、そのＩＦ（隣接エリアの境界スイッチ向けのＩＦ）、エリア境界リンクにおいて障害が発生したものとする。
【００８６】
まず、エリア「Ａ」のコントローラ１ａ（１Ａ）は、障害発生前に所定に時間間隔で境界装置ＩＦ優先度情報１４５（図１０参照）を生成し、その生成した境界装置ＩＦ優先度情報１４５を隣接エリア（エリア「Ｘ」）のコントローラ１ａ（１Ｘ）に送信しておく（ステップＳ３０）。境界装置ＩＦ優先度情報１４５を受信した隣接エリアのコントローラ１ａ（１Ｘ）は、その境界装置ＩＦ優先度情報１４５を自身の記憶部１４に記憶しておく。
【００８７】
次に、エリアの境界に位置するスイッチ２（エリア「Ａ」のエリア境界装置）の装置状態監視部２１３が障害発生を検出すると、複数コントローラ接続制御部２１４の指示に基づき、図１１に示すように、その障害検出通知を、自エリアのコントローラ１ａ（１Ａ）と、隣接エリア（エリア「Ｘ」）のコントローラ１ａ（１Ｘ）とに送信する（ステップＳ３１）。
【００８８】
障害発生エリアのコントローラ１ａ（１Ａ）の経路計算部１１４は、障害箇所を迂回する代替経路を計算（若しくは事前計算結果を取得）し（経路計算：ステップＳ３２）、その経路計算結果に基づいて、自エリア内の各スイッチ２に対し変更後のエントリ情報の書き込みを行う（ステップＳ３３）。
【００８９】
一方、隣接エリアのコントローラ１ａ（１Ｘ）の経路計算部１１４は、障害検出通知を受信すると、まず、記憶部１４内の境界装置ＩＦ優先度情報１４５（図１０）を参照して、優先度順で現時点の次の優先度となるエリア境界装置と利用ＩＦの情報を取得し、自エリア内の経路を再計算する（経路計算：ステップＳ３４）。そして、コントローラ１ａ（１Ｘ）の経路計算部１１４は、経路計算結果に基づいて、自エリア内の各スイッチ２に対し変更後のエントリ情報の書き込みを行う（ステップＳ３５）。
【００９０】
本実施形態に変形例に係るコントローラ１ａを含むネットワーク制御システム５においては、障害検出通知の受信を契機として、障害発生エリアのコントローラ１ａ（１Ａ）によるステップＳ３２，Ｓ３３の経路計算からエントリの書き込みまでの処理と、隣接エリアのコントローラ１ａ（１Ｘ）によるステップＳ３４，Ｓ３５の経路計算からエントリの書き込みまでの処理とが、並行して実行される。よって、本実施形態の変形例に係るコントローラ１ａを含むネットワーク制御システム５は、自エリアおよび隣接エリアにおいて、並行して自律的に経路切り替え処理を実行することができる。
【００９１】
以上説明したように、本実施形態に係るネットワーク制御システム５およびネットワーク制御方法によれば、以下に示す顕著な効果を奏することができる。
【００９２】
Ｃ／Ｕ分離アーキテクチャで構成されるネットワークにおける障害発生時の経路計算時間や障害パターンの事前計算による管理情報量の増大といった課題（課題（１））に対しては、エリアを分割することで、コントローラ１が管理すべきトポロジ情報が限定されるため、スイッチ２の数の削減による計算時間の減少や、事前に管理すべき情報量の削減が可能となる。
【００９３】
コントローラ１とスイッチ２との間での物理距離に応じて、メッセージ送受信時の遅延時間が増大するという課題（課題（２））に対しては、エリア毎にコントローラ１を設置し、各エリアのスイッチ２と物理的に近い位置に配置することにより、コントローラ１とスイッチ２間の要求・応答に伴う遅延時間を削減することが可能となる。
【００９４】
エリア分割によって、エリアのコントローラ１が管理・保持する情報が限定されるために、経路計算等の解が最適解ではなく、局所的な最適解になってしまうという課題（課題（３））に対しては、隣接エリアのエリア境界装置までをトポロジとして管理するため、エリア境界装置の各種情報（リンク利用率や、保持フロー数等）の情報収集が可能となり、それらの情報に基づき、境界装置ＩＦ優先度情報１４５（図１０参照）を生成することにより、単純なエリア分割方式より柔軟な経路選択（例えば、網内の最大リンク利用率の抑制など）が実現可能となる。
【００９５】
このように、本実施形態に係るネットワーク制御システム５およびネットワーク制御方法によれば、Ｃ／Ｕ分離されたコントローラ１およびスイッチ２を備えるシステムにおいて、制御のリアルタイム性およびスケーラビリティを保ちつつ、エリア分割に依存しない柔軟な経路制御を実現することができる。
【符号の説明】
【００９６】
１      コントローラ
２      スイッチ（ＳＷ）
５      ネットワーク制御システム
１１，２１  制御部
１２，２２  通信部
１３    入出力部
１４，２３  記憶部
１１１  スイッチ接続処理部
１１２  コントローラ設定部
１１３  エリア内トポロジ監視部
１１４  経路計算部
１１５  コントローラ連携部
１１６  境界装置ＩＦ優先度決定部
１４１  エリア内トポロジ管理情報
１４２  フロー設定管理情報
１４３  装置状態統計管理情報
１４４  ルーチングテーブル
１４５  境界装置ＩＦ優先度情報
２１１  コントローラ接続処理部
２１２  スイッチ設定部
２１３  装置状態監視部
２１４  複数コントローラ接続制御部
２１５  転送処理部
２３１  フォワーディングテーブル（転送先情報）
２３２  装置状態統計情報
【図１】
0005945254.tif 000002
【図２】
0005945254.tif 000003
【図３】
0005945254.tif 000004
【図４】
0005945254.tif 000005
【図５】
0005945254.tif 000006
【図６】
0005945254.tif 000007
【図７】
0005945254.tif 000008
【図８】
0005945254.tif 000009
【図９】
0005945254.tif 000010
【図１０】
0005945254.tif 000011
【図１１】
0005945254.tif 000012
【図１２】
0005945254.tif 000013
【図１３】
0005945254.tif 000014
【図１４】
0005945254.tif 000015