(57)【要約】【課題】集中制御型の通信システムにおいて、制御装置の配下に収容可能なスイッチの台数を増大させること。【解決手段】通信システムは第１のスイッチおよび第２のスイッチと、第１のスイッチを集中制御する制御装置とを備え、第１のスイッチは制御装置により設定された制御情報に従ってパケットを転送するとともに、当該制御情報を第２のスイッチに配信し、第２のスイッチは第１のスイッチにより配信された当該制御情報に従ってパケットを転送する。【選択図】図１
2018113564.tif 000002
【特許請求の範囲】
【請求項１】
第１のスイッチおよび第２のスイッチと、
前記第１のスイッチを集中制御する制御装置と、を備え、
前記第１のスイッチは、前記制御装置により設定された制御情報に従ってパケットを転送するとともに、前記制御情報を前記第２のスイッチに配信し、
前記第２のスイッチは、前記第１のスイッチにより配信された前記制御情報に従ってパケットを転送する、
ことを特徴とする通信システム。
【請求項２】
前記第１のスイッチは、前記制御情報を複数の前記第２のスイッチに配信し、
前記複数の第２のスイッチのうちの一の第２のスイッチに接続される通信機器と、前記複数の第２のスイッチのうちの他の第２のスイッチに接続される通信機器は、同一の種類であり、または、同一の通信ポリシで運用される、
請求項１に記載の通信システム。
【請求項３】
前記第１のスイッチのポートと、前記ポートを介して前記第１のスイッチが受信したパケットを前記第１のスイッチから受信する前記第２のスイッチのポートは、同一の識別子で識別される、
請求項１に記載の通信システム。
【請求項４】
スタック接続された複数の前記第１のスイッチと、
スタック接続された複数の前記第２のスイッチと、
スタック接続された複数の第３のスイッチと、を備え、
前記複数の第３のスイッチおよび前記複数の第１のスイッチは、複数のリンクを用いて接続され、
前記複数の第１のスイッチおよび前記複数の第２のスイッチは、複数のリンクを用いて接続される、
請求項１ないし３のいずれか１項に記載の通信システム。
【請求項５】
前記複数の第３のスイッチと前記複数の第１のスイッチの間を接続する複数のリンクから成るリンクアグリゲーションに使用される前記複数の第１のスイッチ側のポートと、前記複数の第１のスイッチと前記複数の第２のスイッチの間を接続する複数のリンクから成るリンクアグリゲーションに使用される前記複数の第２のスイッチ側のポートは、同一の識別子で識別される、
請求項４に記載の通信システム。
【請求項６】
制御装置によって集中制御される第１のスイッチであって、
前記制御装置により設定された制御情報に従ってパケットを転送する転送部と、
前記制御情報を、前記第１のスイッチにより配信された制御情報に従ってパケットを転送する第２のスイッチに配信する配信部と、を備える、
ことを特徴とするスイッチ。
【請求項７】
第１のスイッチを集中制御する制御装置であって、
前記第１のスイッチに設定する制御情報を生成する制御部と、
前記制御情報を前記第１のスイッチに設定する設定部と、を備え、
前記第１のスイッチは、前記制御情報に従ってパケットを転送するとともに、前記制御情報を第２のスイッチに配信し、
前記第２のスイッチは、前記第１のスイッチにより配信された前記制御情報に従ってパケットを転送する、
ことを特徴とする制御装置。
【請求項８】
制御装置によって集中制御される第１のスイッチが、前記制御装置により設定された制御情報に従ってパケットを転送するステップと、
前記制御情報を、前記第１のスイッチにより配信された制御情報に従ってパケットを転送する第２のスイッチに配信するステップと、を含む、
ことを特徴とする通信方法。
【請求項９】
第１のスイッチを集中制御する制御装置が、前記第１のスイッチに設定する制御情報を生成するステップと、
前記制御情報を前記第１のスイッチに設定するステップと、を含み、
前記第１のスイッチは、前記制御情報に従ってパケットを転送するとともに、前記制御情報を第２のスイッチに配信し、
前記第２のスイッチは、前記第１のスイッチにより配信された前記制御情報に従ってパケットを転送する、
ことを特徴とする通信方法。
【請求項１０】
制御装置によって集中制御される第１のスイッチに設けられたコンピュータに対して、
前記制御装置により設定された制御情報に従ってパケットを転送する処理と、
前記制御情報を、前記第１のスイッチにより配信された制御情報に従ってパケットを転送する第２のスイッチに配信する処理と、を実行させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、スイッチ、制御装置、通信方法、および、プログラムに関し、特にＩｏＴ（Internet of Things）システムなどの大規模な通信システム、かかる通信システムに設けられるスイッチおよび制御装置、ならびに、かかる通信システムにおける通信方法およびプログラムに関する。
【背景技術】
【０００２】
近年、オープンフロー（OpenFlow）という技術が提案されている（非特許文献１、２）。オープンフローシステムでは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化などを行う。オープンフロースイッチ（ＯＦＳ：OpenFlow Switch）は、オープンフローコントローラ（ＯＦＣ：OpenFlow Controller）との通信用のオープンフローチャネル（セキュアチャネル）を備え、ＯＦＣから適宜追加または書き換えが指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチングルールとフロー統計情報と処理内容を定義したアクションの組が定義される。
【０００３】
一方、様々なデバイス（通信機器など）をインターネットに接続するＩｏＴ（Internet of Thing）も注目されている。ＩｏＴでは、センサやスマートメータなどのデバイスをインターネットに接続することで、データセンタから各種デバイスの計測データ収集や遠隔制御などが可能となる。例えば、スマートメータの自動検針システムなど、膨大な数のＩｏＴデバイスを１元管理するシステムが登場している。
【０００４】
関連技術として、特許文献１には、複数のコントローラが通信経路を算出して通信経路上のスイッチにフローエントリの設定を指示することで、オープンフロー技術を利用したコンピュータシステムの耐障害性を向上させる技術が記載されている。
【０００５】
また、特許文献２には、スイッチとスイッチコントローラとの間の制御メッセージを中継するフロントエンド装置を設けることで、スイッチとスイッチコントローラとの間の制御メッセージの送信レートを低減する技術が記載されている。
【０００６】
さらに、特許文献３には、スイッチとスイッチに制御情報を設定する制御装置との間に制御メッセージ中継装置を配置し、制御メッセージ中継装置が、制御装置から受信した制御内容を、所定の制御ポリシに基づいて、スイッチが保持する制御情報に反映させる技術が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１−１６０３６３号公報
【特許文献２】国際公開第２０１３／０４７７０５号
【特許文献３】国際公開第２０１４／１４２０７０号
【非特許文献】
【０００８】
【非特許文献１】Nick McKeown, et al., "OpenFlow: Enabling Innovation in Campus Networks," March 14, 2008、［online］、［平成28年12月8日検索］、インターネット〈URL：http://archive.openflow.org/documents/openflow-wp-latest.pdf〉
【非特許文献２】Open Networking Foundation (ONF), "OpenFlow Switch Specification, Version 1.3.4 (Protocol version 0x04)," March 27, 2014、［online］、［平成28年12月8日検索］、インターネット〈URL：https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-switch-v1.3.4.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記特許文献および非特許文献の全開示内容は、本書に引用をもって繰り込み記載されているものとする。以下の分析は、本発明者によってなされたものである。
【００１０】
ＩｏＴ（Internet of Things）システムを実現するためのネットワーク技術として、上述のオープンフロー（OpenFlow）の活用が期待されている。一例として、各種デバイスやデバイスを集約するゲートウェイ装置に対してＯＦＳ（OpenFlow Switch）機能を実装することで、データセンタ内のＯＦＣ（OpenFlow Controller）がこれらのデバイスやゲートウェイ装置を集中制御することが考えられる。しかし、ＯＦＣで制御可能なＯＦＳの台数は数百から数千台に制限されており、膨大な数のデバイスを制御するＩｏＴシステムにおいて、オープンフローのような集中制御方式が有効に活用できていないという問題がある。
【００１１】
特許文献１の図２は多段構成のプログラマブルフロースイッチ（ＰＦＳ：Programmable Flow Switch）を開示するが、これはＰＦＳ間の物理的な配線が多段となった構成を表したものにすぎず、各階層のＰＦＳはいずれもプログラマブルフローコントローラ（ＰＦＣ：Programmable Flow Controller）によって集中制御される。したがって、特許文献１に記載された技術によると、単一の制御装置（ＰＦＣ）によって制御されるスイッチ（ＰＦＳ）の台数を増やすことは困難である。
【００１２】
また、特許文献２に記載された技術では、スイッチと制御装置（スイッチコントローラ）に設けられたフロントエンド装置によって、制御メッセージをバッファリングすることでスイッチと制御装置との間の制御メッセージの送信レートを低減するものであり、制御装置によって制御可能なスイッチの台数を増大させることには何ら寄与しない。なお、特許文献２におけるフロントエンド装置は、制御装置とスイッチの間の制御メッセージを中継する装置であって、制御装置から設定された制御情報に応じてパケットを転送するスイッチではない。
【００１３】
さらに、特許文献３に記載された技術では、スイッチと制御装置との間に配置された制御メッセージ中継装置が、制御装置から受信した制御内容を、所定の制御ポリシに基づいて、スイッチが保持する制御情報に反映させることで、例えばスイッチが保持すべき制御情報を削減することができる。しかしながら、特許文献３に記載された技術も、制御装置によって制御可能なスイッチの台数を増大させることに寄与するものではない。なお、特許文献３における制御メッセージ中継装置も、制御装置とスイッチの間の制御情報を中継する装置であって、制御装置から設定された制御情報に応じてパケットを転送するスイッチには該当しない。
【００１４】
そこで、集中制御型の通信システムにおいて、制御装置の配下に収容可能なスイッチの台数を増大させることが課題となる。本発明の目的は、かかる課題解決に寄与する通信システム、スイッチ、制御装置、通信方法、および、プログラムを提供することにある。
【課題を解決するための手段】
【００１５】
本発明の第１の態様に係る通信システムは、第１のスイッチおよび第２のスイッチと、前記第１のスイッチを集中制御する制御装置と、を備え、前記第１のスイッチは、前記制御装置により設定された制御情報に従ってパケットを転送するとともに、前記制御情報を前記第２のスイッチに配信し、前記第２のスイッチは、前記第１のスイッチにより配信された前記制御情報に従ってパケットを転送する。
【００１６】
本発明の第２の態様に係るスイッチは、制御装置によって集中制御される第１のスイッチであって、前記制御装置により設定された制御情報に従ってパケットを転送する転送部と、前記制御情報を、前記第１のスイッチにより配信された制御情報に従ってパケットを転送する第２のスイッチに配信する配信部と、を備えている。
【００１７】
本発明の第３の態様に係る制御装置は、第１のスイッチを集中制御する制御装置であって、前記第１のスイッチに設定する制御情報を生成する制御部と、前記制御情報を前記第１のスイッチに設定する設定部と、を備え、前記第１のスイッチは、前記制御情報に従ってパケットを転送するとともに、前記制御情報を第２のスイッチに配信し、前記第２のスイッチは、前記第１のスイッチにより配信された前記制御情報に従ってパケットを転送する。
【００１８】
本発明の第４の態様に係る通信方法は、制御装置によって集中制御される第１のスイッチが、前記制御装置により設定された制御情報に従ってパケットを転送するステップと、前記制御情報を、前記第１のスイッチにより配信された制御情報に従ってパケットを転送する第２のスイッチに配信するステップと、を含む。
【００１９】
本発明の第５の態様に係る通信方法は、第１のスイッチを集中制御する制御装置が、前記第１のスイッチに設定する制御情報を生成するステップと、前記制御情報を前記第１のスイッチに設定するステップと、を含み、前記第１のスイッチは、前記制御情報に従ってパケットを転送するとともに、前記制御情報を第２のスイッチに配信し、前記第２のスイッチは、前記第１のスイッチにより配信された前記制御情報に従ってパケットを転送する。
【００２０】
本発明の第６の態様に係るプログラムは、制御装置によって集中制御される第１のスイッチに設けられたコンピュータに対して、前記制御装置により設定された制御情報に従ってパケットを転送する処理と、前記制御情報を、前記第１のスイッチにより配信された制御情報に従ってパケットを転送する第２のスイッチに配信する処理と、を実行させる。なお、プログラムは、非一時的なコンピュータ可読記録媒体（non-transitory computer-readable storage medium）に記録されたプログラム製品として提供することもできる。
【発明の効果】
【００２１】
本発明に係る通信システム、スイッチ、制御装置、通信方法、および、プログラムによると、集中制御型の通信システムにおいて、制御装置の配下に収容可能なスイッチの台数を増大させることができる。
【図面の簡単な説明】
【００２２】
【図１】一実施形態に係る通信システムの構成を例示する図である。
【図２】一実施形態に係るスイッチ（第１のスイッチ）の構成を例示するブロック図である。
【図３】一実施形態に係る制御装置の構成を例示するブロック図である。
【図４】第１の実施形態に係る通信システムの構成を例示する図である。
【図５】第１の実施形態に係る通信システムの構成を例示するブロック図である。
【図６】第１の実施形態に係る通信システムの動作を説明するための図である。
【図７】第１の実施形態に係る通信システムの動作を説明するための図である。
【図８】第２の実施形態に係る通信システムの構成を例示する図である。
【図９】情報処理装置の構成を例示するブロック図である。
【発明を実施するための形態】
【００２３】
はじめに、一実施形態の概要について説明する。なお、この概要に付記する図面参照符号は、専ら理解を助けるための例示であり、本発明を図示の態様に限定することを意図するものではない。
【００２４】
一実施形態に係る通信システムは、図１に示すように、第１のスイッチ２（例えば図４の代表ＯＦＳ（OpenFlow Switch）２０）および第２のスイッチ３（例えば図４のＧＷ  ＯＦＳ（Gateway OFS）３０）と、第１のスイッチ２を集中制御する制御装置１（例えば図４のＯＦＣ（OpenFlow Controller）１０）を備えている。第１のスイッチ２は、制御装置１により設定された制御情報に従ってパケットを転送するとともに、当該制御情報を第２のスイッチ３に配信する。一方、第２のスイッチ３は、第１のスイッチ２により配信された制御情報に従ってパケットを転送する。
【００２５】
かかる通信システムによると、第２のスイッチ３がパケットを転送するための制御情報を第１のスイッチ２を用いて配信することができ、制御装置１が直接制御するスイッチを第１のスイッチ２のみに限定することができる。したがって、制御装置１が直接制御対象とするスイッチ（すなわち第１のスイッチ２）の数の増大を抑えつつ、通信システムに配置されるスイッチの総数を増大させることが可能となる。ゆえに、かかる通信システムによると、オープンフロー（OpenFlow）をはじめとする集中制御型の通信システムにおいて、制御装置１の配下に収容可能なスイッチの台数を飛躍的に増大させることが可能となる。
【００２６】
また、一実施形態の他の構成によると、第１のスイッチ２（例えば図４の代表ＯＦＳ２０）は、制御情報を複数の第２のスイッチ３（例えば図４の複数の事務所に設置された複数のＧＷ  ＯＦＳ３０）に配信してもよい。このとき、複数の第２のスイッチ３のうちの一の第２のスイッチ３に接続される通信機器（例えば図４のある事務所に設置されたスマートメータ５０）と、複数の第２のスイッチ３のうちの他の第２のスイッチ３に接続される通信機器（例えば図４の他の事務所に設置されたスマートメータ５０）は、同一の種類であり、または、同一の通信ポリシで運用されることが好ましい。
【００２７】
かかる通信システムによると、第１のスイッチ２（例えば代表ＯＦＳ２０）の配下に設置される複数の第２のスイッチ３（例えばＧＷ  ＯＦＳ３０）に対して設定すべき制御情報（例えばオープンフローのフローエントリ）を、共通化することができる。これにより、同一の制御情報に基づいて、第１のスイッチ２の配下の複数の第２のスイッチ３に所望の動作（パケット転送など）を行わせることが可能となる。
【００２８】
さらに、一実施形態の他の構成において、第１のスイッチ２のポート（例えば図６の代表ＯＦＳ２０のポートport1）と、当該ポートを介して第１のスイッチ２が受信したパケットを第１のスイッチ２から受信する第２のスイッチ３のポート（例えば図６のＧＷ  ＯＦＳ３０のポートport1）は、同一の識別子（例えば、いずれもport1）で識別されることが好ましい。
【００２９】
かかる通信システムによると、第１のスイッチ２に設定すべき制御情報（例えば代表ＯＦＳ２０に設定すべきフローエントリ）と、第２のスイッチ３に設定すべき制御情報（例えばＧＷ  ＯＦＳ３０に設定すべきフローエントリ）を共通化することができる。したがって、制御装置１が制御情報を第１にスイッチ２に設定し、第１のスイッチ２が設定された制御装置を第２のスイッチ３に単に配信するだけで、制御装置１は第１のスイッチ２と第２のスイッチ３の双方に所望の動作（例えばパケット転送）を行わせることができる。
【００３０】
また、一実施形態の他の構成によると、通信システムは、スタック接続された複数の第１のスイッチ２（例えば図８のようにスタック接続された代表ＯＦＳ２０）と、スタック接続された複数の第２のスイッチ（例えば図８のようにスタック接続されたＧＷ  ＯＦＳ３０）と、スタック接続された複数の第３のスイッチ（例えば図８のようにスタック接続されたコアＯＦＳ４０）を備えることが好ましい。ここで、複数の第３のスイッチ（例えばコアＯＦＳ４０）および複数の第１のスイッチ（例えば代表ＯＦＳ２０）は複数のリンクを用いて接続され、複数の第１のスイッチ（例えば代表ＯＦＳ２０）および複数の第２のスイッチ（例えばＧＷ  ＯＦＳ３０）は複数のリンクを用いて接続されることが好ましい。
【００３１】
かかる構成（すなわち、スタック接続および複数のリンクを用いた冗長構成）によると、一部のＯＦＳやＯＦＳ間を接続するリンクに障害が生じた場合であっても、通信システムの運用を継続することができ、通信システムの可用性の向上につながる。
【００３２】
さらに、一実施形態の他の構成によると、複数の第３のスイッチ（例えば図８のコアＯＦＳ４０）と複数の第１のスイッチ２（例えば図８の代表ＯＦＳ２０）の間を接続する複数のリンクから成るリンクアグリゲーションに使用される複数の第１のスイッチ２側のポート（例えば図８の代表ＯＦＳ２０のポートＬＡＧ１）と、複数の第１のスイッチ２（例えば図８の代表ＯＦＳ２０）と複数の第２のスイッチ３（例えば図８のＧＷ  ＯＦＳ３０）の間を接続する複数のリンクから成るリンクアグリゲーションに使用される複数の第２のスイッチ３側のポート（例えば図８のＧＷ  ＯＦＳ３０のポートＬＡＧ１）は、同一の識別子（例えばＬＡＧ１）で識別されることが好ましい。
【００３３】
かかる通信システムによると、第１のスイッチ２に設定すべき制御情報（例えば代表ＯＦＳ２０に設定すべきフローエントリ）と、第２のスイッチ３に設定すべき制御情報（例えばＧＷ  ＯＦＳ３０に設定すべきフローエントリ）を共通化することができる。したがって、制御装置１が制御情報を第１のスイッチ２に設定し、第１のスイッチが設定された制御装置を第２のスイッチ３に配信するだけで、制御装置１は、第１のスイッチ２と第２のスイッチ３から成るすべてのスイッチに所望の動作を行わせることができる。
【００３４】
また、一実施形態において、図２に示すように、制御装置（例えば図１の制御装置１）によって集中制御される第１のスイッチ２は、制御装置により設定された制御情報に従ってパケットを転送する転送部６と、かかる制御情報を、第１のスイッチ２により配信された制御情報に従ってパケットを転送する第２のスイッチ（例えば図１の第２のスイッチ３）に配信する配信部７を備えている。
【００３５】
さらに、一実施形態において、図３に示すように、第１のスイッチ（例えば図１の第１のスイッチ２）を集中制御する制御装置１は、第１のスイッチに設定する制御情報を生成する制御部４と、生成した制御情報を第１のスイッチに設定する設定部５と、を備えている。ここで、第１のスイッチは、設定部５により設定された制御情報に従ってパケットを転送するとともに、当該制御情報を第２のスイッチ（例えば図１の第２のスイッチ３）に配信し、第２のスイッチは、第１のスイッチにより配信された制御情報に従ってパケットを転送する。
【００３６】
かかる第１のスイッチ２（図２）および制御装置１（図３）によると、第２のスイッチがパケットを転送するための制御情報を第１のスイッチ２によって配信することができ、制御装置１が直接制御すべきスイッチを第１の制御装置２のみに限定することができる。したがって、集中制御型の通信システムにおいて、制御装置１が直接制御し得るスイッチの数が制限されている場合であっても、制御装置１の配下に収容可能なスイッチの総数を大幅に増やすことができる。
【００３７】
以上のように、一実施形態の通信システム（図１）、スイッチ２（図２）、および、制御装置１（図３）によると、大規模ＩｏＴ（Internet of Things）システムにおいて、オープンフロー（OpenFlow）を活用した大規模ネットワーク制御を実現することができる。なぜなら、制御装置１（ＯＦＣ：OpenFlow Controller）と第２のスイッチ３（ＧＷ  ＯＦＳ：Gateway OpenFlow Switch）の間に第１のスイッチ２（代表ＯＦＳ）を導入することで、制御装置１（ＯＦＣ）が直接的または間接的に制御できるスイッチ（ＯＦＳ）の数（すなわちシステムに配置可能なスイッチの数）を飛躍的に増大させることができるからである。
【００３８】
＜実施形態１＞
次に、第１の実施形態に係る通信システムについて、図面を参照して説明する。
【００３９】
［構成］
本実施形態の通信システムは、図４に示すように、データセンタ（ＤＣ：Data Center）内に設けられたＯＦＣ（OpenFlow Controller）１０およびコアＯＦＳ（OpenFlow Switch）４０と、中継局内に設置された代表ＯＦＳ２０と、事務所や工場などの拠点内に設置されたゲートウェイＯＦＳ（ＧＷ  ＯＦＳ：Gateway OFS）３０とを備えている。データセンタのコアＯＦＳ４０には、サーバ７０Ａ、７０Ｂが接続されている。また、事務所に設置されたＧＷ  ＯＦＳ３０にはスマートメータ５０およびセンサ６０Ａが接続されている。一方、工場に設置されたＧＷ  ＯＦＳ３０には、センサ６０Ｂ、６０Ｃが接続されている。
【００４０】
ここでは、中継局は、同一の種類、および／または、同一のポリシを有するデバイス（通信機器）の組み合わせでグループ分けされているものとする。例えば、図４の左側の中継局に設けられた代表ＯＦＳ２０の配下の拠点は、いずれも事務所であり、いずれの事務所にもスマートメータ５０とセンサ６０Ａが設置されている。同様に、図４の右側の中継局に設けられた代表ＯＦＳ２０の配下の拠点はすべて工場であり、いずれの工場にもセンサ６０Ｂ、６０Ｃが設置されている。これにより、代表ＯＦＳ２０の配下の複数のＧＷ  ＯＦＳ３０（例えば複数の事務所に設置されるＧＷ  ＯＦＳ３０）に設定すべきフローエントリを共通化することが可能となる。
【００４１】
なお、図４に例示するＯＦＣ、ＯＦＳ、サーバ、デバイス（スマートメータ、センサ）などの機器の台数および接続構成（ネットワークトポロジ）は例示にすぎず、本発明は図示の態様に限定されない。
【００４２】
図５は、本実施形態の図４に示した通信システムの詳細な構成を例示するブロック図である。図５を参照すると、ＯＦＣ１０は、ポリシ記憶部１１、エントリ制御部１２およびエントリ設定部１３を備えている。ポリシ記憶部１１は、例えば各デバイスに割り当てるＶＬＡＮ（Virtual Local Area Network）、ＱｏＳ（Quality of Service）、ＡＣＬ（Access Control List）などを保持する。エントリ制御部１２は、ポリシ記憶部１１が保持するポリシに従って、コアＯＦＳ４０および代表ＯＦＳ２０に対して設定すべきフローエントリを生成する。なお、エントリ制御部１２は、フローエントリを生成する際に、予め収集した通信システムのトポロジ情報を用いてもよい。エントリ設定部１３は、エントリ制御部１２が生成したフローエントリをコアＯＦＳ４０および代表ＯＦＳ２０に設定する。
【００４３】
なお、ＯＦＣ１０は、ＧＷ  ＯＦＳ３０に対する制御を実施しない。すなわち、本実施形態の通信システムにおいて、ＯＦＣ１０が直接の制御対象とするＯＦＳは、データセンタに設けられたコアＯＦＳ４０および中継局に設けられた代表ＯＦＳ２０のみである。
【００４４】
コアＯＦＳ４０は、エントリ記憶部４１およびパケット転送部４２を備えている。エントリ記憶部４１は、ＯＦＣ１０のエントリ設定部１３から受信したフローエントリを保持する。また、パケット転送部４２は、エントリ記憶部４１が保持するフローエントリを参照してパケットを転送する。
【００４５】
代表ＯＦＳ２は、エントリ記憶部２１、パケット転送部２２およびエントリ配信部２３を備えている。エントリ記憶部２１は、ＯＦＣ１０のエントリ設定部１３から設定されたフローエントリを保持する。また、パケット転送部２２は、エントリ記憶部２１が保持するフローエントリを参照してパケットを転送する。さらに、エントリ配信部２３は、配下のＧＷ  ＯＦＳ３０に対して、エントリ記憶部２１が記憶しているフローエントリと同一の設定を配信する。
【００４６】
ＧＷ  ＯＦＳ３０は、エントリ記憶部３１およびパケット転送部３２を備えている。ＧＷ  ＯＦＳ３０は代表ＯＦＳ２０と接続することにより、代表ＯＦＳ２０からフローエントリの配信を受け、ＯＦＣ１０からは直接の制御を受けない。エントリ記憶部３１は、代表ＯＦＳ２０のエントリ配信部２３から配信されたフローエントリを保持する。また、パケット転送部３２は、エントリ記憶部３１が保持するフローエントリを用いてパケットを転送する。
【００４７】
［動作］
次に、本実施形態の通信システムの動作について説明する。ここでは、一例としてＶＬＡＮ（Virtual Local Area Network）技術を用いて、拠点（事務所）内のセンサ６０Ａとデータセンタ内のサーバ７０Ａの間のネットワーク制御を行うときの動作について説明する。
【００４８】
ここでは、図６に示すように、代表ＯＦＳ２０およびＧＷ  ＯＦＳ３０におけるサーバ７０Ａ方向のポートをport１に固定し、その他のポートをデバイス（例えばセンサ６０Ａ）方向とする。
【００４９】
かかるポート利用制約によると、代表ＯＦＳ２０とＧＷ  ＯＦＳ３０の双方を同一のフローエントリで運用することができる。すなわち、ＯＦＣ１０が代表ＯＦＳ２０にフローエントリを設定し、代表ＯＦＳ２０がＯＦＣ１０から設定されたフローエントリをＧＷ  ＯＦＳ３０に配信するだけで、代表ＯＦＳ２０のみならずＧＷ  ＯＦＳ３０にも所望の動作（パケット転送など）を行わせることが可能となる。
【００５０】
まず、管理者は、ＯＦＣ１０のポリシ記憶部１１に対して、センサ６０Ａとサーバ７０Ａに適用するポリシを設定する（ステップＳ１）。ここでは、一例として、センサ６０Ａとサーバ７０Ａの間のネットワークについて「ＶＬＡＮ１００を利用し、転送優先度１とする」ポリシを割り当てる場合について説明する。
【００５１】
ＯＦＣ１０のエントリ制御部１２は、コアＯＦＳ４０とセンサ６０Ａが所属する代表ＯＦＳ２０（すなわち、センサ６０Ａが設置された事務所を収容する中継局の代表ＯＦＳ２０）に対し、センサ６０Ａのポリシに対応するフローエントリを生成する（ステップＳ２）。
【００５２】
エントリ制御部１２は、例えば以下のフローエントリを生成する。
（１）ポートport1から受信したＶＬＡＮ１００のパケットには、転送優先度１を設定しポートport1以外のポートへフラッディング転送する。
（２）ポートport1以外のポートから受信したＶＬＡＮ１００のパケットには、転送優先度１を設定しポートport1へ転送する。
【００５３】
ＯＦＣ１０のエントリ設定部１３は、エントリ制御部１２が生成した上記フローエントリ（１）、（２）をコアＯＦＳ４０および代表ＯＦＳ２０に送信する。コアＯＦＳ４０のエントリ記憶部４１および代表ＯＦＳ２０のエントリ記憶部２１は、ＯＦＣ１０から設定されたフローエントリを保存する（ステップＳ３）。
【００５４】
代表ＯＦＳ２０のエントリ配信部２３は、エントリ記憶部２１に追加されたフローエントリを配下のＧＷ  ＯＦＳ３０へ配信する（ステップＳ４）。なお、この配信においてオープンフロー（OpenFlow）で規定されたメッセージ（例えばOFPT_FLOW_MODなど）を利用することができる。これにより、ＧＷ  ＯＦＳ３０として、既存のオープンフロー（OpenFlow）対応スイッチなどを利用することが可能となる。
【００５５】
なお、ＧＷ  ＯＦＳ３０の再起動や障害などにより、代表ＯＦＳ２０とＧＷ  ＯＦＳ３０のフローエントリに不一致が生じた場合、代表ＯＦＳ２０のエントリ配信部２３は、自身のエントリ記憶部２１が保持するフローエントリをコピー元として、ＧＷ  ＯＦＳ３０のフローエントリを同期する。
【００５６】
以上の動作により、代表ＯＦＳ２０とＧＷ  ＯＦＳ３０のフローエントリは、つねに一致した内容が設定された状態となる（図７参照）。これにより、センサ６０Ａとサーバ７０Ａの間で双方向の通信（例えばＶＬＡＮ１００を利用したレイヤ２（Ｌ２：Layer 2）通信）を優先度１で転送することが可能となる。
【００５７】
［効果］
本実施形態の通信システムによると、代表ＯＦＳ２０を導入することにより、ＯＦＣ１０が直接制御するＯＦＳの台数が減少するため、システム全体で利用できるＯＦＳ台数が飛躍的に増大する（第１の効果）。これにより、例えば代表ＯＦＳ２０の台数を数千台の規模とし、ＧＷ  ＯＦＳ３０の台数を数千×数千台の規模とすることができる。したがって、本実施形態によると、様々な拠点（事務所、工場など）に設置された大量のデバイス（センサ、スマートメータなど）に関する通信を、１台のＯＦＣ１０で集中制御することができる。
【００５８】
また、本実施形態の通信システムでは、代表ＯＦＳ２０が配下のＧＷ  ＯＦＳ３０に対して行う制御は自身のフローエントリをコピーすることである。すなわち、代表ＯＦＳ２０は、配下のＧＷ  ＯＦＳに３０対して独自にフローエントリ制御を行わない。したがって、利用者（例えば通信システムの管理者）は、ＯＦＣ１０に対してポリシの設定を行うだけで、ＧＷ  ＯＦＳ３０を含むすべてのＯＦＳを管理することができる（第２の効果）。
【００５９】
さらに、本実施形態の通信システムは、ＯＦＣ１０により仮想的にネットワーク機器をエミュレーションする関連技術などとも併用することができる。したがって、ネットワーク制御の柔軟性を損なうことなく、上述の第１および第２の効果をもたらすことができる。
【００６０】
＜実施形態２＞
次に、第２の実施形態に係る通信システムについて、図面を参照して説明する。本実施形態では、第１の実施形態に係る通信システムにおける各ＯＦＳを冗長化した構成について説明する。
【００６１】
本実施形態の通信システムでは、図８に示すように、データセンタに複数のコアＯＦＳ４０を設置する。同様に、中継局には複数の代表ＯＦＳ２０を配置し、拠点（事務所、工場など）には複数のＧＷ  ＯＦＳ３０を配置する。また、コアＯＦＳ４０と代表ＯＦＳ２０の間は複数のリンクを用いて接続し、代表ＯＦＳ２０とＧＷ  ＯＦＳ３０の間も複数のリンクを用いて接続する。
【００６２】
本実施形態では、一例として複数のコアＯＦＳ４０をＩＲＦ（Intelligent Resilient Framework）によりスタック接続することで、論理的に１台のコアＯＦＳ４０とする。同様に、複数の代表ＯＦＳ２０もＩＲＦに基づくスタック接続により論理的に１台の代表ＯＦＳ２０とする。また、複数のＧＷ  ＯＦＳ３０もＩＲＦに基づくスタック接続により論理的に１台のＧＷ  ＯＦＳ３０とする。さらに、各ＯＦＳのポートについては、リンクアグリゲーション（ＬＡＧ：Link Aggregation）により複数のポートを論理的に１つのポートとする。なお、スタック接続のための方式はＩＲＦに限定されず、他の方式を採用してもよい。
【００６３】
図８に示すように、スタック接続された複数のＯＦＳと、ＬＡＧによって集約された複数のリンクを備えた冗長構成によると、一部のＯＦＳやＯＦＳ間を接続するリンクに障害が生じた場合であっても、通信システムの運用を維持することができる。すなわち、かかる構成によると、通信システムの可用性の向上を図ることができる。
【００６４】
ここで、コアＯＦＳ４０と代表ＯＦＳ２０の間のリンクアグリゲーションにおける代表ＯＦＳ２０側のポートと、代表ＯＦＳ２０とＧＷ  ＯＦＳ３０の間のリンクアグリゲーションにおけるＧＷ  ＯＦＳ３０側のポートは、同一の識別子（例えばＬＡＧ１）で識別することが好ましい。
【００６５】
このように、スタック接続された代表ＯＦＳ２０と、スタック接続されたＧＷ  ＯＦＳ３０の上り方向のポートをともに同一の識別子で識別することで、第１の実施形態と同様に、代表ＯＦＳ２０に設定するフローエントリとＧＷ  ＯＦＳ３０に設定するフローエントリを共通化することができる。したがって、本実施形態のように冗長構成を採用した場合においても、ＯＦＣ１０が代表ＯＦＳ２０に制御情報を設定し、代表ＯＦＳ２０がＯＦＣ１０から設定された制御装置をＧＷ  ＯＦＳ３０に配信するだけで、代表ＯＦＳ２０とＧＷ  ＯＦＳ３０に対して所望の動作（パケット転送）を行わせることができる。
【００６６】
［効果］
本実施形態の通信システムによると、第１の実施形態の通信システムと同様の効果がもたらされる。さらに、本実施形態によると、冗長構成を採用したことにより、第１の実施形態と比較して通信システムの可用性を向上させることができる。したがって、本実施形態によると、集中制御型の通信システムにおいて、制御装置の配下に収容可能なスイッチ数の増加と、高い可用性を同時に実現できる。
【００６７】
＜変形例＞
上記実施形態に係るスイッチ２（図２）、制御装置１（図３）、ＯＦＣ１０および代表ＯＦＳ２０（図４）は、図９に示す情報処理装置８０を備えていてもよい。情報処理装置８０は、中央処理装置（ＣＰＵ：Central Processing Unit）８１およびメモリ８２を有する。情報処理装置８０は、メモリ８２に記憶されているプログラムをＣＰＵ８１が実行することにより、スイッチ（図２）、制御装置１（図３）、ＯＦＣ１０（図５）、および代表ＯＦＳ２０（図５）が有する各部の機能の一部または全部を実現してもよい。
【００６８】
上記実施形態に係る通信装置は、ＩｏＴ（Internet of Things）をはじめとする様々なデバイス管理システムやオープンフロー（OpenFlow）に代表される集中制御型ネットワーク管理システムに適用することができる。
【００６９】
なお、本発明において、下記の形態が可能である。
［形態１］
上記第１の態様に係る通信システムのとおりである。
［形態２］
前記第１のスイッチは、前記制御情報を複数の前記第２のスイッチに配信し、
前記複数の第２のスイッチのうちの一の第２のスイッチに接続される通信機器と、前記複数の第２のスイッチのうちの他の第２のスイッチに接続される通信機器は、同一の種類であり、または、同一の通信ポリシで運用される、
形態１に記載の通信システム。
［形態３］
前記第１のスイッチのポートと、前記ポートを介して前記第１のスイッチが受信したパケットを前記第１のスイッチから受信する前記第２のスイッチのポートは、同一の識別子で識別される、
形態１に記載の通信システム。
［形態４］
スタック接続された複数の前記第１のスイッチと、
スタック接続された複数の前記第２のスイッチと、
スタック接続された複数の第３のスイッチと、を備え、
前記複数の第３のスイッチおよび前記複数の第１のスイッチは、複数のリンクを用いて接続され、
前記複数の第１のスイッチおよび前記複数の第２のスイッチは、複数のリンクを用いて接続される、
形態１ないし３のいずれか一に通信システム。
［形態５］
前記複数の第３のスイッチと前記複数の第１のスイッチの間を接続する複数のリンクから成るリンクアグリゲーションに使用される前記複数の第１のスイッチ側のポートと、前記複数の第１のスイッチと前記複数の第２のスイッチの間を接続する複数のリンクから成るリンクアグリゲーションに使用される前記複数の第２のスイッチ側のポートは、同一の識別子で識別される、
形態４に記載の通信システム。
［形態６］
上記第２の態様に係るスイッチのとおりである。
［形態７］
前記配信部は、前記制御装置により設定された前記制御情報を、複数の前記第２のスイッチに配信し、
前記複数の第２のスイッチのうちの一の第２のスイッチに接続される通信機器と、前記複数の第２のスイッチのうちの他の第２のスイッチに接続される通信機器は、同一の種類であり、または、同一の通信ポリシで運用される、
形態６に記載のスイッチ。
［形態８］
前記第１のスイッチのポートと、前記ポートを介して前記第１のスイッチが受信したパケットを前記第１のスイッチから受信する前記第２のスイッチのポートは、同一の識別子で識別される、
形態６に記載のスイッチ。
［形態９］
上記第３の態様に係る制御装置のとおりである。
［形態１０］
前記第１のスイッチは、前記制御情報を複数の前記第２のスイッチに配信し、
前記複数の第２のスイッチのうちの一の第２のスイッチに接続される通信機器と、前記複数の第２のスイッチのうちの他の第２のスイッチに接続される通信機器は、同一の種類であり、または、同一の通信ポリシで運用され、
前記制御部は、前記複数の第２のスイッチに接続される通信機器の種類、または、該通信機器に適用される通信ポリシに従って前記制御情報を生成する、
形態９に記載の制御装置。
［形態１１］
前記第１のスイッチのポートと、前記ポートを介して前記第１のスイッチが受信したパケットを前記第１のスイッチから受信する前記第２のスイッチのポートは、同一の識別子で識別され、
前記制御部は、前記識別子に基づいて前記制御情報を生成する、
形態９に記載の制御装置。
［形態１２］
第１のスイッチが、前記第１のスイッチを集中制御する制御装置により設定された制御情報に従ってパケットを転送するステップと、
前記制御情報を第２のスイッチに配信するステップと、
前記第２のスイッチが、前記第１のスイッチにより配信された前記制御情報に従ってパケットを転送するステップと、を含む、
ことを特徴とする通信方法。
［形態１３］
上記第４の態様に係る通信方法のとおりである。
［形態１４］
前記第１のスイッチが、前記制御装置により設定された前記制御情報を、複数の前記第２のスイッチに配信するステップを含み、
前記複数の第２のスイッチのうちの一の第２のスイッチに接続される通信機器と、前記複数の第２のスイッチのうちの他の第２のスイッチに接続される通信機器は、同一の種類であり、または、同一の通信ポリシで運用される、
形態１３に記載の通信方法。
［形態１５］
前記第１のスイッチのポートと、前記ポートを介して前記第１のスイッチが受信したパケットを前記第１のスイッチから受信する前記第２のスイッチのポートは、同一の識別子で識別される、
形態１３に記載の通信方法。
［形態１６］
上記第５の態様に係る通信方法のとおりである。
［形態１７］
前記第１のスイッチは、前記制御情報を複数の前記第２のスイッチに配信し、
前記複数の第２のスイッチのうちの一の第２のスイッチに接続される通信機器と、前記複数の第２のスイッチのうちの他の第２のスイッチに接続される通信機器は、同一の種類であり、または、同一の通信ポリシで運用され、
前記制御装置は、前記複数の第２のスイッチに接続される通信機器の種類、または、該通信機器に適用される通信ポリシに従って前記制御情報を生成する、
形態１６に記載の通信方法。
［形態１８］
前記第１のスイッチのポートと、前記ポートを介して前記第１のスイッチが受信したパケットを前記第１のスイッチから受信する前記第２のスイッチのポートは、同一の識別子で識別され、
前記制御装置は、前記識別子に基づいて前記制御情報を生成する、
形態１６に記載の通信方法。
［形態１９］
上記第６の態様に係るプログラムのとおりである。
［形態２０］
第１のスイッチを集中制御する制御装置に設けられたコンピュータに対して、前記第１のスイッチに設定する制御情報を生成する処理と、
前記制御情報を前記第１のスイッチに設定する処理と、を実行させ、
前記第１のスイッチは、前記制御情報に従ってパケットを転送するとともに、前記制御情報を第２のスイッチに配信し、
前記第２のスイッチは、前記第１のスイッチにより配信された前記制御情報に従ってパケットを転送する、
ことを特徴とするプログラム。
【００７０】
なお、上記特許文献および非特許文献の全開示内容は、本書に引用をもって繰り込み記載されているものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素（各請求項の各要素、各実施形態の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【００７１】
１    制御装置
２    第１のスイッチ
３    第２のスイッチ
４    制御部
５    設定部
６    転送部
７    配信部
１０    ＯＦＣ
１１    ポリシ記憶部
１２    エントリ制御部
１３    エントリ設定部
２０    代表ＯＦＳ
２１    エントリ記憶部
２２    パケット転送部
２３    エントリ配信部
３０    ＧＷ  ＯＦＳ
３１    エントリ記憶部
３２    パケット転送部
４０    コアＯＦＳ
４１    エントリ記憶部
４２    パケット転送部
５０    スマートメータ
６０Ａ〜６０Ｃ    センサ
７０Ａ、７０Ｂ    サーバ
８０    情報処理装置
８１    中央処理装置
８２    メモリ
【図１】
2018113564.tif 000003
【図２】
2018113564.tif 000004
【図３】
2018113564.tif 000005
【図４】
2018113564.tif 000006
【図５】
2018113564.tif 000007
【図６】
2018113564.tif 000008
【図７】
2018113564.tif 000009
【図８】
2018113564.tif 000010
【図９】
2018113564.tif 000011