(57)【要約】【課題】ネットワークが構築される際にスイッチに適切な制御装置を容易に割り当てることができる制御装置を提供する。【解決手段】制御装置１０は、通信網を介してスイッチおよび他の制御装置と通信可能に接続されている制御装置であって、他の制御装置により制御されていないスイッチに、制御装置１０との間に制御通信を確立させる指示を出力する出力部１１と、スイッチから制御通信を介して得られる所定の情報を取得する取得部１２と、所定の情報を用いて、他の制御装置の中からスイッチを制御させる制御装置を選択する選択部１３とを備え、出力部１１は、スイッチに、制御通信の接続先を制御装置１０から選択された制御装置に変更させる指示を出力する。【選択図】図１２
2016184859.tif 000002
【特許請求の範囲】
【請求項１】
通信網を介してスイッチおよび他の制御装置と通信可能に接続されている制御装置であって、
前記制御装置は、
前記他の制御装置により制御されていない前記スイッチに、前記制御装置との間に制御通信を確立させる指示を出力する出力部と、
前記スイッチから前記制御通信を介して得られる所定の情報を取得する取得部と、
前記所定の情報を用いて、前記他の制御装置の中から前記スイッチを制御させる制御装置を選択する選択部とを備え、
前記出力部は、前記スイッチに、前記制御通信の接続先を前記制御装置から選択された制御装置に変更させる指示を出力する
ことを特徴とする制御装置。
【請求項２】
選択部は、隣接する複数のスイッチが同一の制御装置により制御されるように、スイッチを制御させる制御装置を選択する
請求項１記載の制御装置。
【請求項３】
選択部は、他の制御装置が制御するスイッチの数が均等になるように、スイッチを制御させる制御装置を選択する
請求項１または請求項２記載の制御装置。
【請求項４】
選択部は、他の制御装置により制御されていないスイッチが通信網に新規に通信可能に接続されたスイッチである場合、前記スイッチが、前記スイッチに隣接するスイッチを制御する制御装置により制御されるように、スイッチを制御させる制御装置を選択する
請求項１から請求項３のうちのいずれか１項に記載の制御装置。
【請求項５】
選択部は、通信網に新規に通信可能に接続されたスイッチが、隣接する複数のスイッチをそれぞれ制御する複数の制御装置の中で負荷が最も低い制御装置により制御されるように、スイッチを制御させる制御装置を選択する
請求項４記載の制御装置。
【請求項６】
通信網を介してスイッチおよび他の制御装置と通信可能に接続されている制御装置において実行される制御方法であって、
前記他の制御装置により制御されていない前記スイッチに、前記制御装置との間に制御通信を確立させる指示を出力し、
前記スイッチから前記制御通信を介して得られる所定の情報を取得し、
前記所定の情報を用いて、前記他の制御装置の中から前記スイッチを制御させる制御装置を選択し、
前記スイッチに、前記制御通信の接続先を前記制御装置から選択された制御装置に変更させる指示を出力する
ことを特徴とする制御方法。
【請求項７】
隣接する複数のスイッチが同一の制御装置により制御されるように、スイッチを制御させる制御装置を選択する
請求項６記載の制御方法。
【請求項８】
通信網を介してスイッチおよび他の制御装置と通信可能に接続されている制御装置において実行される制御プログラムであって、
前記制御装置に、
前記他の制御装置により制御されていない前記スイッチに、前記制御装置との間に制御通信を確立させる指示を出力する第１出力処理、
前記スイッチから前記制御通信を介して得られる所定の情報を取得する取得処理、
前記所定の情報を用いて、前記他の制御装置の中から前記スイッチを制御させる制御装置を選択する選択処理、および
前記スイッチに、前記制御通信の接続先を前記制御装置から選択された制御装置に変更させる指示を出力する第２出力処理
を実行させるための制御プログラム。
【請求項９】
制御装置に、
隣接する複数のスイッチが同一の制御装置により制御されるように、スイッチを制御させる制御装置を選択する選択処理を実行させる
請求項８記載の制御プログラム。
【請求項１０】
通信網を介して通信可能に接続されているスイッチおよび複数の制御装置を含む通信システムであって、
前記複数の制御装置の中の所定の制御装置は、
他の制御装置により制御されていない前記スイッチに、前記所定の制御装置との間に制御通信を確立させる指示を出力する出力部と、
前記スイッチから前記制御通信を介して得られる所定の情報を取得する取得部と、
前記所定の情報を用いて、前記他の制御装置の中から前記スイッチを制御させる制御装置を選択する選択部とを備え、
前記出力部は、前記スイッチに、前記制御通信の接続先を前記所定の制御装置から選択された制御装置に変更させる指示を出力する
ことを特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、制御方法、制御プログラムおよび通信システムに関し、特に制御装置が複数のスイッチのパケット転送処理を制御する制御装置、制御方法、制御プログラムおよび通信システムに関する。
【背景技術】
【０００２】
管理者が設定変更しやすいネットワークを容易に構築できるオープンフロー（ＯｐｅｎＦｌｏｗ）という技術が提案されている。以下、ＯｐｅｎＦｌｏｗが用いられたネットワークシステムを、ＯｐｅｎＦｌｏｗネットワークと称する。
【０００３】
ＯｐｅｎＦｌｏｗは、ネットワーク機器が有するパケットの転送機能と経路制御機能を、ＯｐｅｎＦｌｏｗスイッチ（ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ：以下、ＯＦＳと称する。）とＯｐｅｎＦｌｏｗコントローラ（ＯｐｅｎＦｌｏｗ  Ｃｏｎｔｒｏｌｌｅｒ：以下、ＯＦＣと称する。）にそれぞれ移転する。ＯＦＳは、パケットの転送機能のみを有する。ＯＦＣは、経路制御機能を有し、複数のＯＦＳのパケット転送処理を制御する。パケットの転送機能と経路制御機能が分離されているため、ＯｐｅｎＦｌｏｗネットワークに対する外部からの制御が容易になり、柔軟性に富んだネットワークを構築することが可能になる。
【０００４】
ＯｐｅｎＦｌｏｗでは、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレス、ポート番号等の組み合わせによって決定される通信が、「フロー」として定義される。ＯｐｅｎＦｌｏｗネットワークでは、フロー単位で経路制御が実現される。
【０００５】
ＯＦＣとＯＦＳは、ＯＦＳ制御用のＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ Ｃｏｎｔｒｏｌ Ｐｒｏｔｏｃｏｌ）コネクションであるＯｐｅｎＦｌｏｗチャンネル（ＯｐｅｎＦｌｏｗ  Ｃｈａｎｎｅｌ）で接続されている。ＯＦＣは、ＯｐｅｎＦｌｏｗプロトコルを用いてＯＦＳと通信する。例えば、ＯＦＣは、ＯｐｅｎＦｌｏｗプロトコルで定義されているメッセージを用いて、ＯＦＳにフローエントリを設定する。ＯＦＳは、設定されたフローエントリの内容に従って、受信したパケットを処理する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−１４３６９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＯｐｅｎＦｌｏｗ技術が発展し、ＯｐｅｎＦｌｏｗ技術が適用されたネットワークの運用の実績が増えている。運用の実績の増加に伴い、より大規模なネットワークをＯｐｅｎＦｌｏｗ技術を用いて管理したいという要望が増えているため、大規模なＯｐｅｎＦｌｏｗネットワークの管理方法が求められている。
【０００８】
しかし、１台のＯＦＣが大量のＯＦＳを制御することは困難である。例えば、１台のＯＦＣが１０，０００台を超える全てのＯＦＳを制御する場合、ＯＦＣの負荷が高くなる。そこで、大規模なＯｐｅｎＦｌｏｗネットワークを制御するために、複数のＯＦＣにＯＦＳの制御処理を分散する方法が考えられている。
【０００９】
ＯＦＳの制御処理を分散する方法として、例えば、１台の統合コントローラの配下に複数のＯＦＣを置き、ＯＦＳの制御処理を配置された複数のＯＦＣに分散する方法がある。
【００１０】
しかし、複数のＯＦＣに大量のＯＦＳの制御処理を分散する場合においても、以下のような課題がある。例えば、ＯｐｅｎＦｌｏｗにおいて、ＯＦＣにＯＦＳを制御させるためには、すなわちＯＦＣとＯＦＳの間にＯｐｅｎＦｌｏｗチャンネルを確立するためには、ＯＦＳに確立先になるＯＦＣのＩＰアドレスを設定することが求められる。ＯＦＳへのＯＦＣのＩＰアドレスの設定は、ネットワーク管理者が手動で行うことが多い。
【００１１】
１０，０００台を超える大量のＯＦＳを複数のＯＦＣが制御するＯｐｅｎＦｌｏｗネットワーク環境において、全てのＯＦＳに対してＯｐｅｎＦｌｏｗチャンネルの確立先になるＯＦＣのＩＰアドレスを手動で間違いなく設定することは困難である。また、１０，０００台以上のＯＦＳに手動でＩＰアドレスを設定する場合、多くの手間がかかる。
【００１２】
また、複数のＯＦＣにＯＦＳの制御処理を分散する場合、ネットワーク管理者には、ＯＦＳの通信接続の形態であるネットワークトポロジ（隣接接続関係）を考慮しながら、各ＯＦＳに割り当てるＯＦＣを決めることが求められる。
【００１３】
その理由は、ネットワークトポロジの自動検出や経路の切り替え等が効率よく実施されるためには、隣接するＯＦＳに同じＯＦＣが割り当てられることが望ましいからである。
【００１４】
また、ネットワーク管理者には、ＯＦＣがネットワークにおけるボトルネックになることを避けるために、各ＯＦＣが制御するＯＦＳの数が均等になるように、ＯＦＣを割り当てることも求められる。
【００１５】
ネットワークシステムにおいて、ネットワークトポロジおよび負荷分散が考慮された各ＯＦＳに割り当てるＯＦＣの決定処理と、決定結果に基づいたＯＦＳへの設定処理が自動的に実施されれば、ネットワーク管理者の手間は、手動設定における手間以下に削減される。
【００１６】
特許文献１には、ＯＦＣのＩＰアドレスをＯＦＳに自動的に設定するネットワークシステムが記載されている。しかし、設定のためにＯＦＳが問い合わせ内容を含むパケットをネットワーク内にブロードキャストで送信するため、特許文献１に記載されている設定処理は、他の通信に影響を及ぼす可能性がある。
【００１７】
そこで、本発明は、ネットワークが構築される際にスイッチに適切な制御装置を容易に割り当てることができる制御装置、制御方法、制御プログラムおよび通信システムを提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明による制御装置は、通信網を介してスイッチおよび他の制御装置と通信可能に接続されている制御装置であって、制御装置は、他の制御装置により制御されていないスイッチに、制御装置との間に制御通信を確立させる指示を出力する出力部と、スイッチから制御通信を介して得られる所定の情報を取得する取得部と、所定の情報を用いて、他の制御装置の中からスイッチを制御させる制御装置を選択する選択部とを備え、出力部は、スイッチに、制御通信の接続先を制御装置から選択された制御装置に変更させる指示を出力することを特徴とする。
【００１９】
本発明による制御方法は、通信網を介してスイッチおよび他の制御装置と通信可能に接続されている制御装置において実行される制御方法であって、他の制御装置により制御されていないスイッチに、制御装置との間に制御通信を確立させる指示を出力し、スイッチから制御通信を介して得られる所定の情報を取得し、所定の情報を用いて、他の制御装置の中からスイッチを制御させる制御装置を選択し、スイッチに、制御通信の接続先を制御装置から選択された制御装置に変更させる指示を出力することを特徴とする。
【００２０】
本発明による制御プログラムは、通信網を介してスイッチおよび他の制御装置と通信可能に接続されている制御装置において実行される制御プログラムであって、制御装置に、他の制御装置により制御されていないスイッチに、制御装置との間に制御通信を確立させる指示を出力する第１出力処理、スイッチから制御通信を介して得られる所定の情報を取得する取得処理、所定の情報を用いて、他の制御装置の中からスイッチを制御させる制御装置を選択する選択処理、およびスイッチに、制御通信の接続先を制御装置から選択された制御装置に変更させる指示を出力する第２出力処理を実行させることを特徴とする。
【００２１】
本発明による通信システムは、通信網を介して通信可能に接続されているスイッチおよび複数の制御装置を含む通信システムであって、複数の制御装置の中の所定の制御装置は、他の制御装置により制御されていないスイッチに、所定の制御装置との間に制御通信を確立させる指示を出力する出力部と、スイッチから制御通信を介して得られる所定の情報を取得する取得部と、所定の情報を用いて、他の制御装置の中からスイッチを制御させる制御装置を選択する選択部とを備え、出力部は、スイッチに、制御通信の接続先を所定の制御装置から選択された制御装置に変更させる指示を出力することを特徴とする。
【発明の効果】
【００２２】
本発明によれば、ネットワークが構築される際にスイッチに適切な制御装置を容易に割り当てることができる。
【図面の簡単な説明】
【００２３】
【図１】本発明による制御装置を含むネットワークシステムの本実施形態の構成例を示すブロック図である。
【図２】デフォルトＯＦＣ３００の本実施形態の構成例を示すブロック図である。
【図３】ＯＦＣ管理部３０２が保持するＯＦＣ管理情報の例を示す説明図である。
【図４】ＯＦＳ管理部３０３が保持するＯＦＳ管理情報の例を示す説明図である。
【図５】デフォルトＯＦＣ３００による初期設定処理の動作を示すシーケンス図である。
【図６】ＯＦＳ割り当て計算部３０１による計算処理の動作を示すフローチャートである。
【図７】ＯＦＳ割り当て計算部３０１による計算結果の例を示す説明図である。
【図８】ＯＦＳ割り当て計算部３０１による計算結果の他の例を示す説明図である。
【図９】ＯＦＳ割り当て計算部３０１による計算結果の他の例を示す説明図である。
【図１０】ＯＦＳ割り当て計算部３０１による計算結果の他の例を示す説明図である。
【図１１】デフォルトＯＦＣ３００による追加設定処理の動作を示すシーケンス図である。
【図１２】本発明による制御装置の概要を示すブロック図である。
【図１３】本発明による通信システムの概要を示すブロック図である。
【発明を実施するための形態】
【００２４】
［構成の説明］
以下、本発明の実施形態を、図面を参照して説明する。図１は、本発明による制御装置を含むネットワークシステムの本実施形態の構成例を示すブロック図である。
【００２５】
本実施形態におけるネットワークシステムは、システム内のコントローラの中から、各ネットワークスイッチを制御するコントローラをそれぞれ決定する。ネットワークシステムは、例えば、データセンタに適用される。
【００２６】
本実施形態におけるネットワークシステムは、１つのＯＦＣが複数のＯＦＳを集中制御でき、ＯＦＳのトポロジをＯＦＣが把握できるというＯｐｅｎＦｌｏｗネットワークの特徴を利用する。ネットワークシステムは、ＯＦＳを制御するコントローラを二段階に分けて変更することによって、ＯＦＳの制御に適したＯＦＣのＩＰアドレスを、ＯＦＳに自動的に設定する。
【００２７】
具体的には、最初にシステム内の各ＯＦＳがデフォルトＯＦＣに制御される。デフォルトＯＦＣは、他のＯＦＣの中から各ＯＦＳを制御させるＯＦＣをそれぞれ決定し、ＯＦＳに対して決定したＯＦＣの情報を設定する。デフォルトＯＦＣは、ＯＦＳのトポロジを考慮して、ＯＦＳを制御させるＯＦＣを決定する。
【００２８】
図１に示すように、ネットワークシステム１００は、ＯＦＣ２０１〜２０Ｎと、デフォルトＯＦＣ３００と、ＯＦＳ４０１〜４０Ｎと、統合コントローラ５００とを含む。また、図１に示す点線は、管理用ネットワークを意味する。また、図１に示す直線は、データ転送用のネットワークを意味する。
【００２９】
図１に示すように、ＯＦＣ２０１〜２０ＮおよびデフォルトＯＦＣ３００は、管理用ネットワークを介して、複数のＯＦＳと通信可能に接続されている。また、統合コントローラ５００は、管理用ネットワークを介して、ＯＦＣ２０１〜２０ＮおよびデフォルトＯＦＣ３００と通信可能に接続されている。また、ＯＦＳ４０１〜４０Ｎは、データ転送用のネットワークを介して、他のＯＦＳと通信可能に接続されている。
【００３０】
図１に示すように、本実施形態のネットワークシステム１００では、複数のＯＦＣがＯＦＳ４０１〜４０Ｎを制御する。各ＯＦＳに、１つのＯＦＣが制御担当のコントローラとして割り当てられる。
【００３１】
また、本実施形態のネットワークシステム１００内のＯＦＳ、ＯＦＣおよびデフォルトＯＦＣ３００は、ＯＶＳＤＢ（Ｏｐｅｎ  ｖＳｗｉｔｃｈ  Ｄａｔａｂａｓｅ）やＯＦ−Ｃｏｎｆｉｇ等のＯＦＳ管理用プロトコルに対応する。デフォルトＯＦＣ３００は、ＯＦＳ管理用プロトコルを用いて、例えば、ＯＦＳのＯｐｅｎＦｌｏｗチャンネルの接続先になるコントローラの情報を、ＯＦＳに設定する。
【００３２】
また、一般的なＯＦＣと同様に、本実施形態におけるＯＦＣは、制御するＯＦＳの全ポートからＰＡＣＫＥＴ＿ＯＵＴメッセージでＬＬＤＰ（Ｌｉｎｋ  Ｌａｙｅｒ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）パケットを定期的に送信する。ＰＡＣＫＥＴ＿ＯＵＴメッセージでＬＬＤＰパケットを送信することによって、ＯＦＣは、制御するＯＦＳが含まれるネットワークトポロジを自動的に検出する。
【００３３】
本実施形態において、ＯＦＣ２０１〜２０Ｎ、デフォルトＯＦＣ３００およびＯＦＳ４０１〜４０Ｎには、予め装置自身のＩＰアドレスがそれぞれ設定されている。ネットワーク管理者は、例えば、ＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）サーバを利用してＯＦＣ２０１〜２０Ｎ、デフォルトＯＦＣ３００およびＯＦＳ４０１〜４０ＮにＩＰアドレスを設定できる。また、ネットワーク管理者は、ＩＰアドレスを各装置に手動で設定してもよい。
【００３４】
また、本実施形態において、ＯＦＳ４０１〜４０Ｎには、予めデフォルトＯＦＣ３００のＩＰアドレスと、ＴＣＰコネクションにおけるＯＦＳ管理用プロトコルにおいて利用されるＴＣＰポートの番号がそれぞれ設定されている。
【００３５】
ネットワーク管理者は、例えば、ＤＨＣＰサーバを利用して、ＯＦＳ４０１〜４０ＮにデフォルトＯＦＣ３００のＩＰアドレスと、利用されるＴＣＰポートの番号を設定してもよい。また、ネットワーク管理者は、ＩＰアドレスとＴＣＰポート番号を各ＯＦＳに手動で設定してもよい。
【００３６】
なお、ＯＦＳ４０１〜４０Ｎが工場から出荷される前に、ＯＦＳ管理用プロトコルの対応先のサーバのＩＰアドレスおよびプロトコル用のＴＣＰポート番号の各既定値が、ＯＦＳ４０１〜４０Ｎに設定されている場合がある。設定されている場合、ネットワーク管理者は、デフォルトＯＦＣ３００のＩＰアドレスと、ＯＦＳ管理用プロトコルにおいて利用されるＴＣＰポートの番号を、既定値に設定してもよい。
【００３７】
図１に示すＯＦＣ２０１〜２０Ｎ、デフォルトＯＦＣ３００およびＯＦＳ４０１〜４０Ｎは、管理用ネットワークを介して、ＴＣＰコネクションをそれぞれ確立できる。本実施形態におけるデフォルトＯＦＣ３００は、確立されたＴＣＰコネクションを介して、ＯＦＳ管理用プロトコルによりＯＦＳの設定を変更できる。
【００３８】
統合コントローラ５００は、ＯＦＣ２０１〜２０Ｎを一括して管理する機能を有する。統合コントローラ５００は、各ＯＦＣの情報を取得したり、各ＯＦＣの設定を管理したりする。統合コントローラ５００は、ネットワーク管理者の手間を軽減するために導入されている。
【００３９】
図２は、デフォルトＯＦＣ３００の本実施形態の構成例を示すブロック図である。図２に示すように、デフォルトＯＦＣ３００は、ＯＦＳ割り当て計算部３０１と、ＯＦＣ管理部３０２と、ＯＦＳ管理部３０３と、ＯＦＳ管理プロトコル処理部３０４と、ＯＦメッセージ処理部３０５とを含む。
【００４０】
ＯＦＳ割り当て計算部３０１は、所定の条件に基づいて、ＯＦＳのコントローラとして適切なＯＦＣを各ＯＦＳに対して決定するための計算を行う機能を有する。ＯＦＳ割り当て計算部３０１は、ネットワークトポロジ情報と、ＯＦＣ管理部３０２が保持するＯＦＣ管理情報とを入力として受け取り、コントローラとして適切なＯＦＣを各ＯＦＳに対して決定するための計算を行う。
【００４１】
ＯＦＣ管理部３０２は、ネットワークシステム１００内の各ＯＦＣの情報をＯＦＣ管理情報として保持する機能を有する。ＯＦＣ管理部３０２は、例えば、統合コントローラ５００からＯＦＣ管理情報を取得する。
【００４２】
ＯＦＣ管理情報の例を図３に示す。図３は、ＯＦＣ管理部３０２が保持するＯＦＣ管理情報の例を示す説明図である。図３に示すＯＦＣ管理情報は、ＯＦＣの識別子と、ＯＦＣのＩＰアドレスと、管理しているＯＦＳの数とで構成される。なお、ＯＦＣ管理情報には、図３に示す情報以外の他の情報が含まれてもよい。
【００４３】
ＯＦＳ管理部３０３は、各ＯＦＳを制御するＯＦＣをそれぞれ決定し、決定した各ＯＦＣの情報を対象のＯＦＳにそれぞれ設定する機能を有する。ＯＦＳ管理部３０３は、デフォルトＯＦＣ３００内の他の構成要素が提供する機能および情報を用いて、各ＯＦＳを制御するコントローラとして適切なＯＦＣを決定する。ＯＦＳ管理部３０３は、決定したＯＦＣのＩＰアドレスを、決定したＯＦＣが制御するＯＦＳに設定する。
【００４４】
また、ＯＦＳ管理部３０３は、ＯｐｅｎＦｌｏｗプロトコルのメッセージを処理し、各ＯＦＳが含まれるネットワークトポロジをそれぞれ検出する機能を有する。
【００４５】
また、ＯＦＳ管理部３０３は、ネットワークシステム１００内の各ＯＦＳの情報をＯＦＳ管理情報として保持する機能を有する。ＯＦＳ管理部３０３に保持されるＯＦＳ管理情報の例を図４に示す。図４は、ＯＦＳ管理部３０３が保持するＯＦＳ管理情報の例を示す説明図である。
【００４６】
図４に示すＯＦＳ管理情報は、ＯＦＳの識別子と、ＯＦＳのＩＰアドレスとで構成される。なお、ＯＦＳ管理情報には、図４に示す情報以外の他の情報が含まれてもよい。
【００４７】
本実施形態におけるデフォルトＯＦＣ３００は、ネットワークシステム１００の初期状態の時点で、ＯＦＳ管理用プロトコルを用いて各ＯＦＳと通信できる。すなわち、各ＯＦＳからＯＦＳに関する情報が取得されるため、ＯＦＳ管理部３０３は、例えば図４に示すＯＦＳ管理情報を保持できる。
【００４８】
ＯＦＳ管理プロトコル処理部３０４は、ＯＶＳＤＢやＯＦ−Ｃｏｎｆｉｇ等のＯＦＳ管理用プロトコルを用いてＯＦＳを管理する機能を、ＯＦＳ管理部３０３に提供する機能を有する。
【００４９】
ＯＦメッセージ処理部３０５は、ＯＦＳのＯｐｅｎＦｌｏｗ機能を制御する機能を、ＯＦＣ管理部３０２とＯＦＳ管理部３０３に提供する機能を有する。
【００５０】
なお、本実施形態のＯＦＣ２０１〜２０Ｎ、デフォルトＯＦＣ３００、ＯＦＳ４０１〜４０Ｎおよび統合コントローラ５００は、例えば、記憶媒体に格納されているプログラムに従って処理を実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）によって実現される。
【００５１】
すなわち、ＯＦＳ割り当て計算部３０１、ＯＦＳ管理部３０３、ＯＦＳ管理プロトコル処理部３０４およびＯＦメッセージ処理部３０５は、例えば、プログラム制御に従って処理を実行するＣＰＵによって実現される。
【００５２】
また、ＯＦＣ管理部３０２は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）で実現される。
【００５３】
また、デフォルトＯＦＣ３００における各部は、ハードウェア回路によって実現されてもよい。
【００５４】
［動作の説明］
以下、本実施形態のネットワークシステム１００の動作を図５〜図６および図１１を参照して説明する。
【００５５】
最初に、ネットワークシステム１００の初期状態、すなわちネットワークシステム１００のＯＦＳ４０１〜４０ＮにＯＦＳを制御するＯＦＣの情報が設定されていない状態における、デフォルトＯＦＣ３００の動作を、図５を参照して説明する。図５は、デフォルトＯＦＣ３００による初期設定処理の動作を示すシーケンス図である。
【００５６】
デフォルトＯＦＣ３００のＯＦＳ管理部３０３は、ＯＦＳ管理プロトコル処理部３０４から提供されたＯＦＳ管理プロトコルを用いて、ＯＦＳのＯｐｅｎＦｌｏｗチャンネルの確立先のコントローラとして、デフォルトＯＦＣ３００をＯＦＳに設定する（ステップＳ１１０）。なお、各ＯＦＳには、デフォルトＯＦＣ３００のＩＰアドレスが予め設定されている。
【００５７】
デフォルトＯＦＣ３００のＯＦＳ管理部３０３は、ＯＦＳ管理プロトコル処理部３０４から提供されたＯＦＳ管理プロトコルを用いて、ＯＦＳのＯｐｅｎＦｌｏｗスイッチ機能を有効にする（ステップＳ１２０）。
【００５８】
ＯｐｅｎＦｌｏｗチャンネルの確立先のコントローラとしてデフォルトＯＦＣ３００が設定され、ＯｐｅｎＦｌｏｗスイッチ機能が有効にされたＯＦＳは、デフォルトＯＦＣ３００との間にＯｐｅｎＦｌｏｗチャンネルを確立する（ステップＳ１３０）。
【００５９】
デフォルトＯＦＣ３００は、ステップＳ１１０〜Ｓ１２０における処理を、全てのＯＦＳに対して実行する。また、全てのＯＦＳが、ステップＳ１３０における処理をそれぞれ実行する。
【００６０】
全てのＯＦＳとの間にＯｐｅｎＦｌｏｗチャンネルを確立した後、デフォルトＯＦＣ３００のＯＦＳ管理部３０３は、ＯＦメッセージ処理部３０５を介してネットワークトポロジを検出する（ステップＳ１４０）。
【００６１】
ＯＦＳ管理部３０３は、ＯＦＳにＰＡＣＫＥＴ＿ＩＮメッセージでＬＬＤＰパケットを送信する。ステップＳ１４０で用いられるネットワークトポロジ検出方法は、ＯＦＣで一般的に利用されている方法である。ＯＦＳ管理部３０３は、ステップＳ１４０における処理を、全てのＯＦＳに対して実行する。
【００６２】
全てのＯＦＳのネットワークトポロジを検出した後、デフォルトＯＦＣ３００のＯＦＳ管理部３０３は、取得したネットワークトポロジ情報と、ＯＦＣ管理部３０２が保持するＯＦＣ管理情報を、ＯＦＳ割り当て計算部３０１に入力する。ＯＦＳ割り当て計算部３０１は、各ＯＦＳに割り当てられるＯＦＣを決定するための計算を行う（ステップＳ１５０）。
【００６３】
ＯＦＳ割り当て計算部３０１の計算結果に従って、デフォルトＯＦＣ３００のＯＦＳ管理部３０３は、ＯＦＳ管理プロトコル処理部３０４から提供されたＯＦＳ管理プロトコルを用いて、各ＯＦＳのＯｐｅｎＦｌｏｗチャンネルの確立先のコントローラを変更する（ステップＳ１６０）。
【００６４】
具体的には、ＯＦＳ管理部３０３は、ＯＦＳのＯｐｅｎＦｌｏｗチャンネルの接続先を、デフォルトＯＦＣ３００のＩＰアドレスから、ＯＦＳ割り当て計算部３０１の計算により決定されたＯＦＣのＩＰアドレスに変更する。ＯＦＳ管理部３０３は、ステップＳ１６０における処理を、全てのＯＦＳに対して実行する。
【００６５】
各ＯＦＳは、変更されたＩＰアドレスに対応するＯＦＣにＯｐｅｎＦｌｏｗプロトコルに定義されたＨＥＬＬＯメッセージを送信し、ＯＦＣとの間にＯｐｅｎＦｌｏｗチャンネルを確立する（ステップＳ１７０）。全てのＯＦＳが指定されたＯＦＣとの間にＯｐｅｎＦｌｏｗチャンネルを確立した後、ネットワークシステム１００は、初期設定処理を終了する。
【００６６】
次に、図５に示すステップＳ１５０における、ＯＦＳ割り当て計算部３０１による、ネットワークトポロジ情報を用いた、各ＯＦＳのＯｐｅｎＦｌｏｗチャンネルの確立先になるＯＦＣを決定するための計算処理の例を、図６を参照して説明する。図６は、ＯＦＳ割り当て計算部３０１による計算処理の動作を示すフローチャートである。
【００６７】
ＯＦＳ割り当て計算部３０１は、ネットワークシステム１００内のＯＦＳの総数をネットワークシステム１００内のＯＦＣの総数で割り、１台のＯＦＣが制御するＯＦＳの数を算出する（ステップＳ１５１）。
【００６８】
次いで、ＯＦＳ割り当て計算部３０１は、全てのＯＦＳに対して、他のＯＦＳに接続するＯＦＳのポートの数を、ＯＦＳごとに算出する（ステップＳ１５２）。以下、他のＯＦＳに接続するＯＦＳのポートを、コアポートと称する。
【００６９】
全てのＯＦＳに対してコアポート数を算出した後、ＯＦＳ割り当て計算部３０１は、全てのＯＦＳの中からコアポート数が最小のＯＦＳを１つ選択する。ＯＦＳ割り当て計算部３０１は、選択したＯＦＳを候補グループに含める（ステップＳ１５３）。
【００７０】
ＯＦＳ割り当て計算部３０１は、候補グループに隣接する各ＯＦＳに対して包囲度をそれぞれ計算する（ステップＳ１５４）。包囲度は、以下の式で計算される。
【００７１】
包囲度＝（コアポートの数）−（候補グループに属する隣接ＯＦＳの数）  （１）
【００７２】
式（１）で計算される包囲度が小さいＯＦＳほど、他のＯＦＣの配下にあるＯＦＳに包囲される可能性が低くなる。ＯＦＳ割り当て計算部３０１は、包囲度が小さいＯＦＳを優先的に候補グループに含める。その理由は、隣接するスイッチに可能な限り同じＯＦＣを割り当てるためである。
【００７３】
ＯＦＳ割り当て計算部３０１は、候補グループに隣接する各ＯＦＳの中で、包囲度が最小のＯＦＳを候補グループに含める（ステップＳ１５５）。
【００７４】
ＯＦＳ割り当て計算部３０１は、候補グループに含まれるＯＦＳの数が、ステップＳ１５１で算出された、１台のＯＦＣが制御するＯＦＳの数に等しいか否かを確認する（ステップＳ１５６）。候補グループに含まれるＯＦＳの数が１台のＯＦＣが制御するＯＦＳの数に等しくない場合（ステップＳ１５６におけるＮｏ）、ＯＦＳ割り当て計算部３０１は、再度ステップＳ１５４における処理を行う。
【００７５】
候補グループに含まれるＯＦＳの数が１台のＯＦＣが制御するＯＦＳの数に等しい場合（ステップＳ１５６におけるＹｅｓ）、ＯＦＳ割り当て計算部３０１は、候補グループに含まれる全てのＯＦＳに、ＯＦＳにまだ割り当てられていないＯＦＣを割り当てる（ステップＳ１５７）。
【００７６】
候補グループに含まれるＯＦＳにＯＦＣを割り当てた後、ＯＦＳ割り当て計算部３０１は、ＯＦＳにまだ割り当てられていないＯＦＣが他に存在するか否かを確認する（ステップＳ１５８）。ＯＦＳにまだ割り当てられていないＯＦＣが他に存在する場合（ステップＳ１５８におけるＹｅｓ）、ＯＦＳ割り当て計算部３０１は、再度ステップＳ１５２における処理を行う。
【００７７】
ＯＦＳにまだ割り当てられていないＯＦＣが他に存在しない場合（ステップＳ１５８におけるＮｏ）、ＯＦＳ割り当て計算部３０１は、計算処理を終了する。
【００７８】
以下、ＯＦＳ割り当て計算部３０１による計算結果の具体例を、図７〜図１０を参照して説明する。図７〜図１０に示す計算結果は、ＯＦＳ割り当て計算部３０１が図６に示す計算処理を、１２台のＯＦＳと、３台のＯＦＣとを含むネットワークシステムに対して実施した場合の計算結果である。ＯＦＳの総数をＯＦＣの総数で割ると、１台のＯＦＣが制御するＯＦＳは４台になる。
【００７９】
図７は、ＯＦＳ割り当て計算部３０１による計算結果の例を示す説明図である。図７は、ステップＳ１５２における処理結果、すなわちコアポート数の算出結果を示す。図７に示す各ＯＦＳの近傍に記された数字が、各ＯＦＳに対して算出されたコアポート数である。図７において、コアポート数は、ＯＦＳに接続する実線の数に相当する。
【００８０】
図８は、ＯＦＳ割り当て計算部３０１による計算結果の他の例を示す説明図である。図８は、ステップＳ１５３における処理結果、すなわちコアポート数が最小のＯＦＳが１つ選択され、候補グループに含められた結果を示す。図８に示す例では、コアポート数が最小のＯＦＳとして、コアポート数が２である左端の下側に存在するＯＦＳが選択されている。なお、図８に示す角丸四角形が、候補グループの範囲に対応する。
【００８１】
図９は、ＯＦＳ割り当て計算部３０１による計算結果の他の例を示す説明図である。図９は、ステップＳ１５４における処理結果、すなわち包囲度の計算結果を示す。図９に示す候補グループに隣接する各ＯＦＳの近傍に記された数字が、各ＯＦＳに対して計算された包囲度である。図９において、包囲度は、ＯＦＳに接続する実線の数から、候補グループに属する隣接ＯＦＳの数である１を減じた数に相当する。
【００８２】
図９において、包囲度が最小のＯＦＳは、包囲度が１である左端の上側に存在するＯＦＳである。よって、ＯＦＳ割り当て計算部３０１は、ステップＳ１５５において包囲度が１のＯＦＳを候補グループに含める。
【００８３】
ＯＦＳ割り当て計算部３０１は、候補グループに含まれるＯＦＳの数が１台のＯＦＣが制御するＯＦＳの数である４台になるまで、ステップＳ１５４〜Ｓ１５５における処理を繰り返し実行する。候補グループに含まれるＯＦＳの数が４台になった後、左のＯＦＣが、候補グループに含まれる４台のＯＦＳそれぞれに割り当てられる。
【００８４】
左のＯＦＣを４台のＯＦＳに割り当てた後、ＯＦＳ割り当て計算部３０１は、ＯＦＳにまだ割り当てられていない中央のＯＦＣと右のＯＦＣも、４台のＯＦＳにそれぞれ割り当てられるように、ステップＳ１５２〜Ｓ１５７における処理を繰り返し実行する。
【００８５】
図１０は、ＯＦＳ割り当て計算部３０１による計算結果の他の例を示す説明図である。図１０は、図６に示す計算処理により最終的に得られる計算結果を示す。図１０に示すように、各ＯＦＣは、４台のＯＦＳにそれぞれ割り当てられている。
【００８６】
次に、ネットワークシステム１００の運用中に、ネットワークシステム１００にＯＦＳが追加された場合のデフォルトＯＦＣ３００の動作を、図１１を参照して説明する。図１１は、デフォルトＯＦＣ３００による追加設定処理の動作を示すシーケンス図である。
【００８７】
デフォルトＯＦＣ３００のＯＦＳ管理部３０３は、新規に追加されたＯＦＳのＯｐｅｎＦｌｏｗチャンネルの確立先のコントローラとして、デフォルトＯＦＣ３００をＯＦＳに設定する。具体的には、ＯＦＳ管理部３０３は、新規に追加されたＯＦＳに、デフォルトＯＦＣ３００自身のＩＰアドレスをＯｐｅｎＦｌｏｗチャンネルの接続先として設定する（ステップＳ２１０）。 
【００８８】
デフォルトＯＦＣ３００のＯＦＳ管理部３０３は、新規に追加されたＯＦＳのＯｐｅｎＦｌｏｗスイッチ機能を有効にする（ステップＳ２２０）。ＯｐｅｎＦｌｏｗチャンネルの確立先のコントローラとしてデフォルトＯＦＣ３００が設定され、ＯｐｅｎＦｌｏｗスイッチ機能が有効にされたＯＦＳは、デフォルトＯＦＣ３００との間にＯｐｅｎＦｌｏｗチャンネルを確立する（ステップＳ２３０）。
【００８９】
新規に追加されたＯＦＳとの間にＯｐｅｎＦｌｏｗチャンネルを確立した後、デフォルトＯＦＣ３００は、新規に追加されたＯＦＳに隣接するＯＦＳを制御するＯＦＣを特定する（ステップＳ２４０）。
【００９０】
デフォルトＯＦＣ３００は、例えば、新規に追加されたＯＦＳに流入したパケットの情報を集め、新規に追加されたＯＦＳのネットワークトポロジにおける位置を計算することによって、隣接するＯＦＳを特定する。
【００９１】
隣接するＯＦＳを制御するＯＦＣを特定する方法として、以下の方法がある。隣接するＯＦＳを制御するＯＦＣがＬＬＤＰパケットを利用したトポロジ検出を行っている場合、ＯＦＣは、定期的にＬＬＤＰパケットを制御配下にあるＯＦＳのポートから送信する。よって、デフォルトＯＦＣ３００は、隣接するＯＦＳから転送されるＬＬＤＰパケットに埋め込まれているＯＦＣのＩＤを参照することによって、隣接するＯＦＳを制御するＯＦＣを特定できる。
【００９２】
また、新規に追加されたＯＦＳに隣接するＯＦＳが複数存在し、各ＯＦＳを制御するＯＦＣが異なる場合、デフォルトＯＦＣ３００は、各ＯＦＣの中で負荷が最も低いＯＦＣを、新規に追加されたＯＦＳに割り当てる。例えば、デフォルトＯＦＣ３００は、制御するＯＦＳの数が最小のＯＦＣを、割り当てるＯＦＣに決定する。
【００９３】
なお、デフォルトＯＦＣ３００は、各ＯＦＣの負荷状況を、ＯＦＣを統合管理する統合コントローラ５００から取得してもよい。また、デフォルトＯＦＣ３００は、デフォルトＯＦＣ３００自身が管理する情報を各ＯＦＣの負荷状況を示す情報として利用してもよい。
【００９４】
例えば、ＯＦＣ管理部３０２は、ネットワークシステム１００が起動された時から各ＯＦＣが管理するＯＦＳの数を、ＯＦＣ管理情報の「管理しているＯＦＳの数」に保持する。よって、ＯＦＣ管理情報の「管理しているＯＦＳの数」が、各ＯＦＣの負荷情報として利用されてもよい。
【００９５】
デフォルトＯＦＣ３００のＯＦＳ管理部３０３は、新規に追加されたＯＦＳのＯｐｅｎＦｌｏｗチャンネルの確立先のコントローラを、隣接するＯＦＳを制御する選択されたＯＦＣに変更する（ステップＳ２５０）。
【００９６】
具体的には、ＯＦＳ管理部３０３は、新規に追加されたＯＦＳのＯｐｅｎＦｌｏｗチャンネルの接続先を、デフォルトＯＦＣ３００のＩＰアドレスから、隣接するＯＦＳを制御する選択されたＯＦＣのＩＰアドレスに変更する。
【００９７】
新規に追加されたＯＦＳは、変更されたＩＰアドレスに対応するＯＦＣにＯｐｅｎＦｌｏｗプロトコルに定義されたＨＥＬＬＯメッセージを送信し、ＯＦＣとの間にＯｐｅｎＦｌｏｗチャンネルを確立する（ステップＳ２６０）。新規に追加されたＯＦＳが指定されたＯＦＣとの間にＯｐｅｎＦｌｏｗチャンネルを確立した後、ネットワークシステム１００は、追加設定処理を終了する。
【００９８】
本実施形態におけるネットワークシステムのデフォルトＯＦＣは、ネットワークトポロジ情報に基づいて各ＯＦＣの制御対象になるＯＦＳを自動的に計算し、ＯＦＳに割り当てられたＯＦＣの情報を各ＯＦＳに自動的に設定する。特許文献１に記載されている方法と異なり、本実施形態におけるデフォルトＯＦＣは、各コントローラが制御するスイッチを自動的に計算し、スイッチに割り当てられたコントローラの情報を各スイッチに自動的に設定する。
【００９９】
従って、本実施形態におけるネットワークシステムを使用した場合、大規模ネットワークを構築する際に求められるＯＦＳに対する手動設定が不要になり、大規模ネットワーク構築時に要するネットワーク管理者の手間やコスト、設定ミスの発生等が軽減される。
【０１００】
具体的には、ネットワークシステムに含まれるＯＦＣの制御設定が定められていない各ＯＦＳは、ネットワークシステムが起動された際、予め装置内に情報が設定されているデフォルトＯＦＣを、接続先コントローラとして使用する。よって、デフォルトＯＦＣは、制御するＯＦＳが含まれるネットワークトポロジの情報を取得できる。
【０１０１】
次いで、デフォルトＯＦＣは、取得したネットワークトポロジ情報に基づいて、ＯＦＳ群を最も管理しやすい複数のグループに分割し、各グループに含まれるＯＦＳを制御するＯＦＣを決定する。デフォルトＯＦＣは、各グループに含まれるＯＦＳに対して、決定された１つのＯＦＣの情報を設定する。
【０１０２】
割り当てるＯＦＣの決定結果に従って、デフォルトＯＦＣは、ＯＶＳＤＢやＯＦ−Ｃｏｎｆｉｇ等のＯＦＳ管理用プロトコルを用いて、全てのＯＦＳに対して、割り当てられたＯＦＣのＩＰアドレスを設定する。以上により、大規模なＯｐｅｎＦｌｏｗネットワークにおけるＯＦＣとＯＦＳの間に制御チャンネルが自動的に確立される。
【０１０３】
また、本実施形態のネットワークシステムにおいてシステムにＯＦＳが追加された時、デフォルトＯＦＣは、追加されたＯＦＳがＯＦＣと制御チャンネルを介して接続するために求められる設定を、追加されたＯＦＳに自動的に設定する。従って、本実施形態におけるネットワークシステムを使用した場合、ネットワーク管理者は、大規模ネットワークに新たにＯＦＳを追加する場合にも、システム設定を容易に変更できる。
【０１０４】
具体的には、ネットワークシステムの運用中にシステムにＯＦＳが新規に追加された場合、デフォルトＯＦＣは、新規に追加されたＯＦＳに隣接するＯＦＳを制御するＯＦＣを特定する。ＯＦＣを特定した後、デフォルトＯＦＣは、特定されたＯＦＣのＩＰアドレスを、新規に追加されたＯＦＳに設定する。特定されたＯＦＣが複数ある場合、デフォルトＯＦＣは、例えば、負荷がより低いＯＦＣを新規に追加されたＯＦＳに割り当てる。
【０１０５】
デフォルトＯＦＣが割り当てられたＯＦＣの情報を設定すると、新規に追加されたＯＦＳは、接続先をデフォルトＯＦＣから情報が設定されたＯＦＣに変更する。割り当てられたＯＦＣと接続を確立した後、新規に追加されたＯＦＳは、ネットワークの運用を開始する。
【０１０６】
次に、本発明の概要を説明する。図１２は、本発明による制御装置の概要を示すブロック図である。本発明による制御装置１０は、通信網を介してスイッチおよび他の制御装置と通信可能に接続されている制御装置であって、制御装置１０は、他の制御装置により制御されていないスイッチに、制御装置１０との間に制御通信を確立させる指示を出力する出力部１１（例えば、ＯＦＳ管理部３０３およびＯＦＳ管理プロトコル処理部３０４）と、スイッチから制御通信を介して得られる所定の情報を取得する取得部１２（例えば、ＯＦＳ管理部３０３およびＯＦメッセージ処理部３０５）と、所定の情報を用いて、他の制御装置の中からスイッチを制御させる制御装置を選択する選択部１３（例えば、ＯＦＳ割り当て計算部３０１）とを備え、出力部１１は、スイッチに、制御通信の接続先を制御装置１０から選択された制御装置に変更させる指示を出力する。
【０１０７】
そのような構成により、制御装置は、ネットワークが構築される際にスイッチに適切な制御装置を容易に割り当てることができる。
【０１０８】
また、選択部１３は、隣接する複数のスイッチが同一の制御装置により制御されるように、スイッチを制御させる制御装置を選択してもよい。
【０１０９】
そのような構成により、制御装置は、ネットワークトポロジの自動検出や経路の切り替えが効率よく実施されるように、ＯＦＳにＯＦＣを割り当てることができる。
【０１１０】
また、選択部１３は、他の制御装置が制御するスイッチの数が均等になるように、スイッチを制御させる制御装置を選択してもよい。
【０１１１】
そのような構成により、制御装置は、ネットワーク内にボトルネックが発生しないように、ＯＦＳにＯＦＣを割り当てることができる。
【０１１２】
また、選択部１３は、他の制御装置により制御されていないスイッチが通信網に新規に通信可能に接続されたスイッチである場合、スイッチが、スイッチに隣接するスイッチを制御する制御装置により制御されるように、スイッチを制御させる制御装置を選択してもよい。
【０１１３】
そのような構成により、制御装置は、通信システムに新規にＯＦＳが追加された場合にも、適切なＯＦＣを割り当てることができる。
【０１１４】
また、選択部１３は、通信網に新規に通信可能に接続されたスイッチが、隣接する複数のスイッチをそれぞれ制御する複数の制御装置の中で負荷が最も低い制御装置により制御されるように、スイッチを制御させる制御装置を選択してもよい。
【０１１５】
そのような構成により、制御装置は、各ＯＦＣの負荷を考慮して、ＯＦＳに割り当てるＯＦＣを選択できる。
【０１１６】
また、所定の情報は、制御通信の接続先のスイッチが含まれるネットワークトポロジの情報でもよい。
【０１１７】
そのような構成により、制御装置は、ネットワークトポロジ情報を用いてＯＦＳに割り当てるＯＦＣを選択できる。
【０１１８】
図１３は、本発明による通信システムの概要を示すブロック図である。本発明による通信システム２０は、通信網を介して通信可能に接続されているスイッチおよび複数の制御装置を含む通信システムであって、複数の制御装置の中の制御装置２１（例えば、デフォルトＯＦＣ３００）は、他の制御装置により制御されていないスイッチに、制御装置２１との間に制御通信を確立させる指示を出力する出力部２２（例えば、ＯＦＳ管理部３０３およびＯＦＳ管理プロトコル処理部３０４）と、スイッチから制御通信を介して得られる所定の情報を取得する取得部２３（例えば、ＯＦＳ管理部３０３およびＯＦメッセージ処理部３０５）と、所定の情報を用いて、他の制御装置の中からスイッチを制御させる制御装置を選択する選択部２４（例えば、ＯＦＳ割り当て計算部３０１）とを備え、出力部２２は、スイッチに、制御通信の接続先を制御装置２１から選択された制御装置に変更させる指示を出力する。
【０１１９】
そのような構成により、通信システムは、ネットワークが構築される際にスイッチに適切な制御装置を容易に割り当てることができる。
【０１２０】
また、選択部２４は、隣接する複数のスイッチが同一の制御装置により制御されるように、スイッチを制御させる制御装置を選択してもよい。
【０１２１】
そのような構成により、通信システムは、ネットワークトポロジの自動検出や経路の切り替えが効率よく実施されるように、ＯＦＳにＯＦＣを割り当てることができる。
【符号の説明】
【０１２２】
１０、２１  制御装置
１１、２２  出力部
１２、２３  取得部
１３、２４  選択部
２０  通信システム
１００  ネットワークシステム
２０１〜２０Ｎ  ＯＦＣ
３００  デフォルトＯＦＣ
３０１  ＯＦＳ割り当て計算部
３０２  ＯＦＣ管理部
３０３  ＯＦＳ管理部
３０４  ＯＦＳ管理プロトコル処理部
３０５  ＯＦメッセージ処理部
４０１〜４０Ｎ  ＯＦＳ
５００  統合コントローラ
【図１】
2016184859.tif 000003
【図２】
2016184859.tif 000004
【図３】
2016184859.tif 000005
【図４】
2016184859.tif 000006
【図５】
2016184859.tif 000007
【図６】
2016184859.tif 000008
【図７】
2016184859.tif 000009
【図８】
2016184859.tif 000010
【図９】
2016184859.tif 000011
【図１０】
2016184859.tif 000012
【図１１】
2016184859.tif 000013
【図１２】
2016184859.tif 000014
【図１３】
2016184859.tif 000015