(57)【要約】  本発明は、未設定フレームのブロードキャストの範囲を限定し、スイッチやリンク等の転送系にかかる負荷を軽減する。スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムは、ネットワークシステムを複数の第１のドメインに分割したときの各第１のドメインに対して設けられ、各第１のドメインに含まれるスイッチを制御する複数の第１の制御装置と、複数の第１のドメインを集約した第２のドメインに対して設けられ、複数の第１の制御装置を制御する第２の制御装置とを備え、端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含み、複数の第１の制御装置は、端末のアドレスと該端末を収容するスイッチポートの識別子とを関連付けて保持するデータベースを有し、経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、フレームの宛先アドレスが自ドメインであるかどうかを判定し、自ドメインでない場合、フレームを第２の制御装置に転送する。
2015093478.tif 000002
【特許請求の範囲】
【請求項１】
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムであって、
前記ネットワークシステムを複数の第１のドメインに分割したときの各第１のドメインに対して設けられ、各第１のドメインに含まれるスイッチを制御する複数の第１の制御装置と、
前記複数の第１のドメインを集約した第２のドメインに対して設けられ、前記複数の第１の制御装置を制御する第２の制御装置と、を備え、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含み、
前記複数の第１の制御装置は、端末のアドレスと該端末を収容するスイッチポートの識別子とを関連付けて保持するデータベースを有し、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定し、自ドメインでない場合、前記フレームを前記第２の制御装置に転送する、ネットワークシステム。
【請求項２】
前記複数の第１の制御装置は、前記フレームの宛先アドレスが自ドメインであり、かつ、前記宛先アドレスから前記フレームの転送先のスイッチポートが前記データベースに基づいて解決できない場合、自ドメインに含まれるスイッチに対して前記フレームを転送する、請求項１に記載のネットワークシステム。
【請求項３】
前記第２の制御装置は、第１の制御装置から前記フレームを受信すると、前記フレームの宛先アドレスに基づいて前記フレームの着ドメインを識別し、識別した着ドメインに対して設けられた第１の制御装置に対して前記フレームを転送するとともに、前記フレームの送信元アドレスに基づいて識別した発ドメインに相当する第１のドメインと、前記着ドメインに相当する第１のドメインとの間の経路を決定し、決定した経路上の第１のドメインに設けられた第１の制御装置に対して経路の設定を指示する、請求項１または２に記載のネットワークシステム。
【請求項４】
複数の前記第２のドメインを集約した第３のドメインに対して設けられ、複数の前記第２の制御装置を制御する第３の制御装置を備え、
前記複数の第２の制御装置は、第１の制御装置から前記フレームを受信すると、前記フレームの宛先アドレスに基づいて前記フレームの着ドメインを識別し、識別した着ドメインが自ドメインに属するかどうかを判定し、識別した着ドメインが自ドメインに属さない場合、前記フレームを前記第３の制御装置に転送する、請求項１ないし３のいずれか１項に記載のネットワークシステム。
【請求項５】
前記第３の制御装置は、第２の制御装置から前記フレームを受信すると、前記フレームの宛先アドレスに基づいて前記フレームの着ドメインを識別し、識別した着ドメインが属するドメインに対して設けられた第２の制御装置に対して前記フレームを転送するとともに、前記フレームの送信元アドレスに基づいて識別した発ドメインが属する第２のドメインと、前記着ドメインが属する第２のドメインとの間の経路を決定し、決定した経路上の第２のドメインに設けられた第２の制御装置に対して経路の設定を指示する、請求項４に記載のネットワークシステム。
【請求項６】
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムを複数の第１のドメインに分割したときの一の第１のドメインに対して設けられ、該第１のドメインに含まれるスイッチを制御する第１の制御装置であって、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含み、
前記第１の制御装置は、端末のアドレスと該端末を収容するスイッチポートの識別子とを関連付けて保持するデータベースを有し、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定し、自ドメインでない場合、前記複数の第１のドメインを集約した第２のドメインに対して設けられ、前記複数の第１の制御装置を制御する第２の制御装置に対して、前記フレームを転送する、制御装置。
【請求項７】
前記第１の制御装置は、前記フレームの宛先アドレスが自ドメインであり、かつ、前記宛先アドレスから前記フレームの転送先のスイッチポートが前記データベースに基づいて解決できない場合、自ドメインに含まれるスイッチに対して前記フレームを転送する、請求項６に記載の制御装置。
【請求項８】
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムを複数の第１のドメインに分割したときの各第１のドメインに対して設けられ、各第１のドメインに含まれるスイッチを制御する複数の第１の制御装置を制御するように構成され、前記複数の第１のドメインを集約した第２のドメインに対して設けられた第２の制御装置であって、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含み、
前記複数の第１の制御装置は、端末のアドレスと前記端末を収容するスイッチポートの識別子とを関連付けて保持するデータベースを有し、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定し、自ドメインでない場合、前記フレームを前記第２の制御装置に転送する、制御装置。
【請求項９】
前記第２の制御装置は、前記複数の第１の制御装置から前記フレームを受信すると、前記フレームの宛先アドレスに基づいて前記フレームの着ドメインを識別し、識別した着ドメインに対して設けられた第１の制御装置に対して前記フレームを転送するとともに、前記フレームの送信元アドレスに基づいて識別した発ドメインに相当する第１のドメインと、前記着ドメインに相当する第１のドメインとの間の経路を決定し、決定した経路上の第１のドメインに設けられた第１の制御装置に対して経路の設定を指示する、請求項８に記載の制御装置。
【請求項１０】
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムを複数の第１のドメインに分割したときの一の第１のドメインに対して設けられ、該第１のドメインに含まれるスイッチを制御する第１の制御装置による制御方法であって、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含み、
前記第１の制御装置が、端末のアドレスと該端末を収容するスイッチポートの識別子とを関連付けてデータベースに保持する工程と、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定する工程と、
自ドメインでない場合、前記複数の第１のドメインを集約した第２のドメインに対して設けられ、前記複数の第１の制御装置を制御する第２の制御装置に対して、前記フレームを転送する工程と、を含む、制御方法。
【請求項１１】
前記第１の制御装置が、前記フレームの宛先アドレスが自ドメインであり、かつ、前記宛先アドレスから前記フレームの転送先のスイッチポートが前記データベースに基づいて解決できない場合、自ドメインに含まれるスイッチに対して前記フレームを転送する工程を含む、請求項１０に記載の制御方法。
【請求項１２】
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムを複数の第１のドメインに分割したときの一の第１のドメインに対して設けられ、該第１のドメインに含まれるスイッチを制御する第１の制御装置に対して、
端末のアドレスと該端末を収容するスイッチポートの識別子とを関連付けてデータベースに保持する処理と、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定する処理と、
自ドメインでない場合、前記複数の第１のドメインを集約した第２のドメインに対して設けられ、前記複数の第１の制御装置を制御する第２の制御装置に対して、前記フレームを転送する処理と、を実行させ、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含む、プログラム。
【請求項１３】
前記フレームの宛先アドレスが自ドメインであり、かつ、前記宛先アドレスから前記フレームの転送先のスイッチポートが前記データベースに基づいて解決できない場合、自ドメインに含まれるスイッチに対して前記フレームを転送する処理を、前記第１の制御装置に実行させる、請求項１２に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願についての記載）
本発明は、日本国特許出願：特願２０１３−２６１１３３号（２０１３年１２月１８日出願）の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、制御装置、ネットワークシステム、制御方法およびプログラムに関し、特に、複数のドメインを含むネットワークシステム、かかるネットワークシステムにおいて集中型の経路制御を行う制御装置、制御方法およびプログラムに関する。
【背景技術】
【０００２】
パケット交換網、特に、宛先ＭＡＣ（Media Access Control）アドレスに基づいて次に転送すべきスイッチを決定するコネクションレス型のＬ２（Layer 2）ネットワークにおいては、次のように経路制御が行われる（非特許文献１）。以下では、ＭＡＣアドレスを単に「アドレス」ともいう。【０００３】
スイッチは、Ｌ２のデータ転送単位であるフレームを他のスイッチから受信すると、送信元アドレスと受信したスイッチポートの組を転送データベース（以下、データベース（Database）を「ＤＢ」ともいう。）に登録する。転送ＤＢに対する高速な登録、および、転送ＤＢの高速な参照を可能とするために、転送ＤＢは一般にサーバマシンのメモリ上に実現される。【０００４】
その後、スイッチは、フレームを受信して宛先ポートを決定する際に、転送ＤＢを参照する。スイッチは、転送ＤＢを参照した際、宛先ＭＡＣアドレスに対応する宛先端末を収容するスイッチポートが登録されていない場合、ネットワークに接続されたすべての端末に対して受信したフレームを転送（ブロードキャスト）する。【０００５】
複数のスイッチから成るネットワークにおいてブロードキャストを行う場合、転送経路にループが生じてブロードキャストが無限に循環するのを防ぐため、スパニングツリープロトコルが用いられる。スパニングツリープロトコルによると、あるスイッチをルートとして、与えられたコストに対する最小全域木が分散的な手順により形成され、隣接するスイッチ間では、この木に沿ってフレームが転送される。【０００６】
一方、Ｌ２ネットワークの経路制御方式として、上記の分散型の経路制御方法とは異なり、非特許文献６に記載されたオープンフロー（OpenFlow）プロトコルを用いた集中型の制御が知られている（非特許文献２）。【０００７】
オープンフロープロトコルによると、経路設定制御のみならず、転送ＤＢも集中的に管理される。制御装置(Controller、以下「ＣＴＬ」ともいう。）は、送信端末を収容するスイッチから未設定フレーム（すなわち、スイッチにアクションを起こすためのマッチング条件が登録されていないフレーム）を受信する。未設定フレームには、送信端末を収容するスイッチによって、フレームを受信したポートの識別子（ＩＤ：Identifier）が書き込まれている。制御装置は、未設定フレームを参照して、スイッチポートのＩＤと送信ＭＡＣアドレスとの組み合わせを転送ＤＢに登録する。転送ＤＢに登録された情報は、当該情報が参照されない期間が所定の期間を超えると削除される。【０００８】
ここで、経路設定の対象となるのは、同一の宛先ＭＡＣアドレスを持つフレームではなく、同一の送信元および宛先アドレスの対を持つフレームの集合である。【０００９】
次に、図１６および図１７を参照して、オープンフローに基づくネットワーク制御について説明する。図１６を参照すると、Ｌ２ネットワークは、制御装置４０、転送ＤＢ６０、および、スイッチ（オープンフロースイッチ）Ａ〜Ｊを備えている。【００１０】
オープンフロースイッチＡ（ここでは、発スイッチ）は、送信元の端末からフレームを受信する（ステップＥ１）。オープンフロースイッチＡは、受信したフレームのヘッダ情報にマッチするフローがない場合、Packet Inメッセージを用いて制御装置４０に未設定フレームを転送する（ステップＥ２）。ここで、Packet inメッセージは、未設定フレームと、当該フレームを受信したスイッチポートの識別子を含む。【００１１】
制御装置４０は、未設定フレームを受け取ると、発信元ＭＡＣアドレスと、未設定フレームを受信したスイッチポートの組合せを転送ＤＢ６０に登録する。【００１２】
次に、制御装置４０は、Packet Inメッセージに記載された宛先ＭＡＣアドレスに基づいて転送ＤＢ６０を参照し、対応するスイッチの出力ポートを解決できる場合、Packet Inを送信してきた発スイッチ（図１６の例では、オープンフロースイッチＡ）とアドレス解決で得られた着スイッチ（図１６の例では、オープンフロースイッチＦ）との間の経路を算出する。次に、制御装置４０は、Flow Modメッセージを用いて、経路上の各スイッチに対して、フロー識別条件を示すヘッダフィールドと、ヘッダフィールドにマッチしたフレームの処理を指定するアクション（例えば、指定ポートへの転送）を含むフローを設定するよう指示する（ステップＥ３）。【００１３】
次に、制御装置４０は、受信した未設定フローをPacket Outメッセージを用いて着スイッチＦに転送して（ステップＥ４）、着スイッチＦの指定ポートから宛先端末に向けて、未設定フローを送信させる（ステップＥ５）。【００１４】
一方、図１７に示すように、アドレスが未解決の場合、制御装置４０は、制御装置４０と各スイッチとを接続するミニマムスパニングツリー（ＭＳＴ：Minimum Spanning Tree）を用いて、各スイッチにフレームを転送（フラッディング）する（ステップＥ６、Ｅ７）。次に、各スイッチは、フレームを受信すると、自身に接続されたすべての端末にフレームを転送する。【００１５】
図１６および図１７に示したような集中型の制御によると、制御装置４０はネットワークに含まれるすべての端末間の経路制御を行うことになる。したがって、端末数、スイッチ数、リンク数が増大すると、制御装置４０の負荷が増大し、処理完了に要する時間が長期化し、処理が正常に完了しないおそれがある。【００１６】
例えば、スイッチ数ｎが増えるに従って、フロー設定要求の可能性のある発着スイッチのペア数もO(n2)のオーダで増大するため、制御装置４０によるフロー設定の負荷が増大する。【００１７】
一方、スイッチ数ｎ、リンク数ｅが増えるに従って、制御装置４０が経路を算出するための計算量が増大する。一例として、ダイクストラのアルゴリズムによると、あるスイッチ間の経路に含まれるリンク数が最小となる最短経路を算出する際の計算量はO(e + nlogn)となる（非特許文献８）。【００１８】
また、端末数mが増えるに従って、一般に、転送ＤＢ６０の記憶量およびアドレス検索時間はO(m)のオーダで増大する。したがって、端末数の増大に伴い、サーバマシン単体のメモリサイズやＣＰＵ（Central Processing Unit）の処理速度の物理的限界に達するおそれがある。【００１９】
これらの問題に対処するために、一例として、非特許文献３には、制御装置を階層化することにより、フロー設定の負荷を分散する方法が記載されている。また、非特許文献４には、ドメインを集約化、階層化して、各階層に制御装置を設置し、フロー設定の負荷を分散する方法が記載されている。図１８を参照して、非特許文献４に記載された方法について説明する。【００２０】
図１８を参照すると、ネットワーク全体は３つのドメイン３１〜３３に分割され、これらのドメイン３１〜３３を集約したドメイン３０が設定されている。上位層の制御装置４０は、ＭＡＣアドレスを保持する転送ＤＢ６０を備えている。また、制御装置４０は、下位ドメインに含まれるスイッチのうちの他の下位ドメインと接続するスイッチと、当該スイッチと他の下位ドメインに含まれるスイッチを接続するリンクの識別子とを保持する。これにより、制御装置４０は、下位ドメイン間の接続関係を把握している。【００２１】
上位層の制御装置４０は、エッジスイッチＡから未設定フレームを受け取ると、転送ＤＢ６０を参照する。転送ＤＢ６０中に未設定フレームの宛先ＭＡＣアドレスに対応するエントリーが存在し、着信スイッチのポートを解決できた場合、制御装置４０は、発信端末を収容する下位の発ドメイン３１と、着信端末を収容する下位の着ドメイン３３の間の経路を決定する。制御装置４０は、両ドメイン間の経路として、例えば、最短ホップ数の経路を求めてもよい。制御装置４０は、さらに、各下位ドメインの境界におけるスイッチペアを決定し、決定したスイッチペアとヘッダフィールドを指定して、下位層の制御装置５１〜５３にフロー設定を指示する。【００２２】
下位層の制御装置５１〜５３は、フロー設定の指示を受け取ると、指定されたスイッチ間の経路を決定し、決定した経路上の各スイッチにフロー設定を行う。ここで、下位層の制御装置５１〜５３は、指定されたスイッチ間の経路として、例えば、最短ホップ数の経路を求めてもよい。【００２３】
次に、上位層の制御装置４０は、エッジスイッチから受信した先の未設定フレームを、着ドメイン３３の制御装置５３に送出する。下位層の制御装置５３は、さらに、未設定フレームを着スイッチＦに送出して、受信端末に向けて転送させる。【００２４】
このとき、上位層の制御装置４０は、経路算出に際して、下位層を仮想的な１つのノードとみなすため、ネットワーク内に含まれる個々のスイッチやリンクを考慮する必要がなくなる。したがって、制御装置４０による経路算出の計算量を削減することが可能となる。また、スイッチへのフロー設定の負荷は、下位層の制御装置に分散することができ、上位層の制御装置４０の負荷が軽減される。
【先行技術文献】
【特許文献】
【００２５】
【特許文献１】国際公開第２０１２／１０８３８２号
【特許文献２】国際公開第２０１３／０２６０５０号
【特許文献３】特表２０１３−５２２９３４号公報
【非特許文献】
【００２６】
【非特許文献１】Radia Perlman, "Interconnections: Bridges, Routers, Switches, and Internetworking Protocols (2nd Edition)," pp. 47-59, Addison-Wesley Professional, 1999.
【非特許文献２】L. Sun, K. Suzuki, Y. Suzuki, H. Shimonisi, "A Network Management Solution Based on OpenFlow Towards New Challenges of Multitenant Data Center," Information and Telecommunication Technologies (APSITT), 2012 9th Asia-Pacific Symposium on. IEEE, 2012.
【非特許文献３】H. Shimonishi, et al., "Building Hierarchical Switch Network Using OpenFlow," Intelligent Networking and Collaborative Systems, 2009, INCOS'09, International Conference on. IEEE, 2009.
【非特許文献４】芦田、小出、下西、「OpenFlowネットワークにおけるドメイン縮約を用いた階層型ネットワーク構築手法の提案」、信学会技報、ＣＱ、コミュニケーションクオリティ、112(10)、 35-40、2012-04-12
【非特許文献５】ATM Forum Technical Committee, "Private Network-Network Interface Specification Version 1.0 (PNNI 1.0)," af-pnni-0055.000, March 1996, [online], [平成25年11月15日検索］,インターネット<URL: http://www.broadband-forum.org/ftp/pub/approved-specs/af-pnni-0055.000.pdf>.
【非特許文献６】OpenFlow Switch Specification Version 1.3.1 (Wire Protocol 0x04) September 6, 2012, [online], [平成25年11月15日検索],インターネット<URL: https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.3.1.pdf>.
【非特許文献７】Wikipedia, the free encyclopedia, "MAC address," [online], [平成25年11月15日検索],インターネット<URL: http://en.wikipedia.org/wiki/MAC_address#Address_details>.
【非特許文献８】M. Barbehenn, "A Note on the Complexity of Dijkstra's Algorithm for Graphs with Weighted Vertices," IEEE Transactions on Computers, Volume 47, Issue 2, February 1998, p.263.
【発明の概要】
【発明が解決しようとする課題】
【００２７】
上記特許文献および非特許文献の全開示内容は、本書に引用をもって繰り込み記載されているものとする。以下の分析は、本発明者によってなされたものである。【００２８】
非特許文献４に記載された制御系を階層化する技術では、未設定フレームは発信端末を除くすべての下位ドメインの端末にブロードキャストされる。したがって、非特許文献４に記載された技術によると、端末を収容するスイッチ数の増大に伴い、ネットワークにおいて、未設定フレームが転送される範囲が広がる。このとき、スイッチやリンクにかかる負荷が増大して輻輳が発生し、転送性能の劣化（フレームの転送遅延、廃棄率の増大等）が生じるおそれがある。【００２９】
そこで、未設定フレームのブロードキャストの範囲を限定し、スイッチ、リンク等の転送系にかかる負荷を軽減することが要望される。【００３０】
本発明の目的は、かかる要望に寄与するネットワークシステム、制御装置、制御方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００３１】
本発明の第１の視点に係るネットワークシステムは、
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムであって、
前記ネットワークシステムを複数の第１のドメインに分割したときの各第１のドメインに対して設けられ、各第１のドメインに含まれるスイッチを制御する複数の第１の制御装置と、
前記複数の第１のドメインを集約した第２のドメインに対して設けられ、前記複数の第１の制御装置を制御する第２の制御装置と、を備え、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含み、
前記複数の第１の制御装置は、端末のアドレスと該端末を収容するスイッチポートの識別子とを関連付けて保持するデータベースを有し、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定し、自ドメインでない場合、前記フレームを前記第２の制御装置に転送する。【００３２】
本発明の第２の視点に係る制御装置は、
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムを複数の第１のドメインに分割したときの一の第１のドメインに対して設けられ、該第１のドメインに含まれるスイッチを制御する第１の制御装置であって、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含み、
前記第１の制御装置は、端末のアドレスと該端末を収容するスイッチポートの識別子とを関連付けて保持するデータベースを有し、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定し、自ドメインでない場合、前記複数の第１のドメインを集約した第２のドメインに対して設けられ、前記複数の第１の制御装置を制御する第２の制御装置に対して、前記フレームを転送する。【００３３】
本発明の第３の視点に係る制御装置は、
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムを複数の第１のドメインに分割したときの各第１のドメインに対して設けられ、各第１のドメインに含まれるスイッチを制御する複数の第１の制御装置を制御するように構成され、前記複数の第１のドメインを集約した第２のドメインに対して設けられた第２の制御装置であって、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含み、
前記複数の第１の制御装置は、端末のアドレスと前記端末を収容するスイッチポートの識別子とを関連付けて保持するデータベースを有し、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定し、自ドメインでない場合、前記フレームを前記第２の制御装置に転送する。【００３４】
本発明の第４の視点に係る制御方法は、
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムを複数の第１のドメインに分割したときの一の第１のドメインに対して設けられ、該第１のドメインに含まれるスイッチを制御する第１の制御装置による制御方法であって、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含み、
前記第１の制御装置が、端末のアドレスと該端末を収容するスイッチポートの識別子とを関連付けてデータベースに保持する工程と、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定する工程と、
自ドメインでない場合、前記複数の第１のドメインを集約した第２のドメインに対して設けられ、前記複数の第１の制御装置を制御する第２の制御装置に対して、前記フレームを転送する工程と、を含む。【００３５】
本発明の第５の視点に係るプログラムは、
スイッチとスイッチ間を接続するリンクとを備えたネットワークシステムを複数の第１のドメインに分割したときの一の第１のドメインに対して設けられ、該第１のドメインに含まれるスイッチを制御する第１の制御装置に対して、
端末のアドレスと該端末を収容するスイッチポートの識別子とを関連付けてデータベースに保持する処理と、
経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、前記フレームの宛先アドレスが自ドメインであるかどうかを判定する処理と、
自ドメインでない場合、前記複数の第１のドメインを集約した第２のドメインに対して設けられ、前記複数の第１の制御装置を制御する第２の制御装置に対して、前記フレームを転送する処理と、を実行させ、
端末のアドレスは、該アドレスが付与された端末を収容するスイッチが属する第１のドメインの識別子を含む。【００３６】
なお、プログラムは、非一時的なコンピュータ可読記録媒体（non-transitory computer-readable storage medium）に記録されたプログラム製品として提供することができる。
【発明の効果】
【００３７】
本発明に係るネットワークシステム、制御装置、制御方法およびプログラムによると、未設定フレームのブロードキャストの範囲を限定し、スイッチやリンク等の転送系にかかる負荷を軽減することが可能となる。
【図面の簡単な説明】
【００３８】
【図１】第１の実施形態に係るネットワークシステムの構成を一例として示す図である。
【図２】第１の実施形態において最下位以外のドメインに設けられる制御装置の構成を一例として示すブロック図である。
【図３】第１の実施形態において最下位のドメインに設けられる制御装置の構成を一例として示すブロック図である。
【図４】第１の実施形態において最下位以外のドメインに設けられる制御装置の動作を一例として示すフロー図である。
【図５】第１の実施形態において最下位以外のドメインに設けられる制御装置の動作を一例として示すフロー図である。
【図６】第１の実施形態において最下位のドメインに設けられる制御装置の動作を一例として示すフロー図である。
【図７】第１の実施形態において最下位のドメインに設けられる制御装置の動作を一例として示すフロー図である。
【図８】第２の実施形態において最下位以外のドメインに設けられる制御装置の動作を一例として示すフロー図である。
【図９】第２の実施形態において最下位のドメインに設けられる制御装置の動作を一例として示すフロー図である。
【図１０】第２の実施形態において最下位のドメインに設けられる制御装置の動作を一例として示すフロー図である。
【図１１】第１の実施形態の実施例（実施例１）について説明するための図である。
【図１２】第１の実施形態の実施例（実施例１）について説明するための図である。
【図１３】第１の実施形態の他の実施例（実施例２）について説明するための図である。
【図１４】第２の実施形態の実施例（実施例３）について説明するための図である。
【図１５】第２の実施形態の他の実施例（実施例４）について説明するための図である。
【図１６】オープンフローに基づくネットワーク制御について説明するための図である。
【図１７】オープンフローに基づくネットワーク制御について説明するための図である。
【図１８】オープンフローに基づくネットワーク制御について説明するための図である。
【発明を実施するための形態】
【００３９】
はじめに、一実施形態の概要について説明する。なお、この概要に付記する図面参照符号は、専ら理解を助けるための例示であり、本発明を図示の態様に限定することを意図するものではない。
【００４０】
図１４は、一実施形態に係るネットワークシステムの構成を示す図である。図１４を参照すると、ネットワークシステムは、スイッチ（７０１〜７０７）とスイッチ間を接続するリンク（８）とを備えている。ネットワークシステムは、さらに、ネットワークシステムを複数の第１のドメイン（３１〜３３）に分割したときの各第１のドメインに対して設けられ、各第１のドメインに含まれるスイッチを制御する第１の制御装置（５０２〜５０４）と、第１のドメイン（３１〜３３）を集約した第２のドメイン（３０）に対して設けられ、第１の制御装置（３１〜３３）を制御する第２の制御装置（４０１）と、を備えている。
【００４１】
また、端末（例えば、端末１０１）のアドレスは、当該アドレスが付与された端末を収容するスイッチ（７０１）が属する第１のドメイン（３１）の識別子を含む。さらに、第１の制御装置（例えば、制御装置５０２）は、端末（１０１）のアドレスと当該端末を収容するスイッチポートの識別子とを関連付けて保持するデータベース（６０２）を有する。また、第１の制御装置（５０２〜５０４）は、経路が未設定のフレームを自ドメインに含まれるスイッチから受信すると、当該フレームの宛先アドレスが自ドメインであるかどうかを判定し、自ドメインでない場合、当該フレームを第２の制御装置（４０１）に転送する。
【００４２】
さらに、第１の制御装置（５０２〜５０４）は、前記フレームの宛先アドレスが自ドメインであり、かつ、前記宛先アドレスから前記フレームの転送先のスイッチポートがデータベース（６０２〜６０４）に基づいて解決できない場合、自ドメインに含まれるスイッチに対して前記フレームを転送する。
【００４３】
また、第２の制御装置（４０１）は、第１の制御装置（５０２〜５０４）から前記フレームを受信すると、前記フレームの宛先アドレスに基づいて前記フレームの着ドメイン（例えば、ドメイン３３）を識別し、識別した着ドメイン（３３）に対して設けられた第１の制御装置（５０４）に対して前記フレームを転送するとともに、前記フレームの送信元アドレスに基づいて識別した発ドメインに相当する第１のドメイン（例えば、ドメイン３１）と、着ドメインに相当する第１のドメイン（３３）との間の経路を決定し、決定した経路上の第１のドメイン（３１〜３３）に設けられた第１の制御装置（５０２〜５０４）に対して経路の設定を指示する。
【００４４】
図１５は、一実施形態に係るネットワークシステムの他の構成を示す図である。図１５を参照すると、ネットワークシステムは、第２のドメイン（３１０、３２０）を集約した第３のドメイン（３００）に対して設けられ、第２の制御装置（４１２、４１３）を制御する第３の制御装置（４１１）を備えている。ここで、第２の制御装置（４１２、４１３）は、第１の制御装置（５１４〜５１６、５１７〜５１９）から前記フレームを受信すると、前記フレームの宛先アドレスに基づいて前記フレームの着ドメインを識別し、識別した着ドメインが自ドメインに属するかどうかを判定し、識別した着ドメインが自ドメインに属さない場合、前記フレームを第３の制御装置（４１１）に転送する。
【００４５】
また、第３の制御装置（４１１）は、第２の制御装置（４１２、４１３）から前記フレームを受信すると、前記フレームの宛先アドレスに基づいて前記フレームの着ドメイン（例えば、ドメイン３２３）を識別し、識別した着ドメイン（３２３）が属するドメイン（３２）に対して設けられた第２の制御装置（４１３）に対して前記フレームを転送するとともに、前記フレームの送信元アドレスに基づいて識別した発ドメイン（例えば、ドメイン３１１）が属する第２のドメイン（３１０）と、前記着ドメイン（３２３）が属する第２のドメイン（３２０）との間の経路を決定し、決定した経路上の第２のドメイン（３１０、３２０）に設けられた第２の制御装置（４１２、４１３）に対して経路の設定を指示する。
【００４６】
上記のように、他の実施形態において、ネットワークはドメインに分割され、同階層のドメインを複数集約して上位層のドメインが形成され、各ドメインには識別子を付与れるとともに制御装置が設置される。また、端末のアドレスは、最下位のドメイン識別子を含む。さらに、最下位層のドメインの制御装置には、ドメイン内の端末のアドレス・位置情報を登録したデータベースが設置される。また、最下位層の制御装置は、端末のアドレスから位置への解決ができない場合、上位層の制御装置に未設定フレームを転送する。制御装置は、未設定フレームの宛先アドレスを参照して、着ドメインが自ドメインに含まれない場合、上位層の制御装置に転送し、一方、着ドメインが自ドメインに含まれる場合、発着ドメイン間の経路を決定して経路上の各制御装置にスイッチペアを指定して経路設定を指示する。
【００４７】
このように、端末のアドレスにドメインを識別する識別子を含める（例えば、アドレスを表すビット列の一部のビットを、ドメインを識別するためのビットとする）ことにより、未設定フレームのブロードキャストの範囲を着ドメイン内に限定することができ、スイッチ、リンク等の転送系にかかる負荷を軽減することが可能となる。
【００４８】
＜実施形態１＞
第１の実施形態に係るネットワークシステムについて、図面を参照して詳細に説明する。
【００４９】
図１は、本実施形態に係るネットワークシステムの構成を一例として示す図である。図１を参照すると、ネットワークシステムは、端末１０１、スイッチ７０１〜７１０、リンク８、制御装置（ＣＴＬ：Controller）４、および、最下位制御装置５を備えている。スイッチ間のリンク８は、物理リンクであってもよいし、ＭＰＬＳ（Multi-Protocol Label Switching）のような仮想パスであってもよい。
【００５０】
次に、多階層のネットワークシステムの構成方法について説明する。
【００５１】
まず、スイッチ７０１〜７１０とリンク８から成る転送ネットワーク２は、複数の最下位ドメインに分割される。図１においては、転送ネットワーク２は、３つのドメイン３１〜３３に分割されている。最下位のドメイン３１〜３３は、集約されて上位層のドメイン３０を構成する。
【００５２】
各ドメインには、制御装置４０１または最下位制御装置５０２〜５０４が設置される。図１においては、上位層ドメイン３０には制御装置４０１が設置されている。一方、最下位層ドメイン３１〜３３には、それぞれ、最下位制御装置５０２〜５０４が設置されている。
【００５３】
以上のように、ドメインの集約化をドメインが１つになるまで再帰的に（Ｎ回）行うことにより、多階層（Ｎ＋１階層）の経路制御システムが構成される。
【００５４】
ここで、最下位層のドメインの例として、多数のサーバマシンやデータストレージを収容するデータセンター内のネットワーク、異なるデータセンター間を接続する広域ネットワークが挙げられる。
【００５５】
各ドメインには、ドメインを識別するドメイン識別子が付与されている。制御装置４は、ドメイン識別子を参照することにより、そのドメインが自ドメインに含まれるか否かを判別できるものとする。これを実現するための方法として、例えば、以下の２つの方法が考えられる。
【００５６】
１つ目の方法として、従来の電話番号体系のように、ドメイン識別子を階層的に付与し、上位層のドメイン識別子は、下位層のドメイン識別子との間で上位ビットが共通の番号フィールドを持つようにする方法が考えられる。かかる多階層化の例として、ＡＴＭ（Asynchronous Transfer Mode）フォーラムで規定されたＰＮＮＩ（Private Network to Network Interface）が非特許文献５に記載されている。
【００５７】
２つ目の方法として、後述する隣接制御装置ＤＢ１５が自ドメインに含まれる最下位ドメインの識別子をすべて保持する方法が考えられる。
【００５８】
以下では、１つ目の方法に基づいて説明するが、本発明はかかる方法に限定されない。
【００５９】
最下位層の制御装置５０２〜５０４には、各制御装置からドメインに含まれるすべてのスイッチに対して未設定フレームのフラッディングが効率的に行われるように、最下位層の制御装置をルートとする最小全域木（ＭＳＴ：Minimum Spanning Tree）が設定されている。一例として、全域木に含まれるリンクの総数が最小となるようにしてもよい。
【００６０】
図２は、最下位ドメインよりも上位の階層のドメインに設置される制御装置４（例えば、図１の制御装置４０１）の構成を一例として示すブロック図である。図２を参照すると、制御装置４は、入出力部９、経路設定手段１０、経路決定手段１２、隣接制御装置ＤＢ１５、および、ドメイン間トポロジーＤＢ１３を備えている。
【００６１】
入出力部９は、他の制御装置またはスイッチに対する通信インタフェイスとして機能し、他の制御装置またはスイッチから受信した通信データからメッセージを取り出して経路設定手段１０に渡す。また、入出力部９は、経路設定手段１０が生成したメッセージを他の制御装置またはスイッチへ送信するための通信データを作成する。
【００６２】
経路設定手段１０は、受信したアドレス解決応答に含まれる発ドメイン識別子が自ドメインに含まれる場合、経路決定手段１２に経路を算出させる。また、経路設定手段１０は、算出された経路に基づいて、経路上の下位ドメインに設置された各下位制御装置に経路設定を指示する。
【００６３】
さらに、経路設定手段１０は、未設定フレーム情報を受信すると、当該未設定フレームの送信元の制御装置以外の隣接するすべての制御装置に対して、受信した未設定フレーム情報を転送する。
【００６４】
未設定フレーム情報は、未設定フレームと、フローのマッチング条件を示すヘッダフィールドと、発ドメイン識別子と、着ドメイン識別子（未解決の場合、ワイルドカードを指定）と、未設定フレームを受信したスイッチポートの識別子を含む。
【００６５】
一方、アドレス解決応答は、受信した未設定フレーム情報に含まれるヘッダフィールドと、発ドメイン識別子と、着ドメイン識別子（解決できない場合、ワイルドカードを指定）を含む。
【００６６】
ドメイン間トポロジーＤＢ１３は、自ドメインよりも１つ下の階層のドメインに関する情報を保持する。具体的には、ドメイン間トポロジーＤＢ１３は、他のドメインと接する境界スイッチと、境界スイッチ間を接続する外部リンクと、境界スイッチ間をドメイン内部で接続する内部リンクに関する情報を保持する。
【００６７】
ドメイン間トポロジーＤＢ１３が保持する情報は、下位ドメインの境界スイッチ、ドメイン間の外部リンク、および、下位ドメイン内の境界スイッチ間を接続する論理的な内部リンクの情報を下位層の制御装置から収集することによって更新される。
【００６８】
経路決定手段１２は、ドメイン間トポロジーＤＢ１３に格納されたデータに基づいて、上位層の制御装置によって指定された境界スイッチ間の経路を決定する。決定される経路は、一例として、境界スイッチの識別子のリストで記述される。
【００６９】
経路決定手段１２は、例えば、下位層ドメインにおける外部リンクおよび内部リンクにそれぞれ付与されたコストの総和が最小になるような経路を、ダイクストラのアルゴリズムに基づいて求めるようにしてもよい。
【００７０】
隣接制御装置ＤＢ１５は、下位ドメインのＩＤと、下位ドメインに設置された制御装置のアドレスと、上位層ドメインのＩＤと、上位層に設置された制御装置のアドレスを保持する。
【００７１】
経路設定手段１０は、受信した未設定フローについて、経路決定手段１２が出力した経路上のスイッチに対してフローを設定する。
【００７２】
図３は、最下位層のドメインに設けられる制御装置５の構成を一例として示すブロック図である。図３を参照すると、制御装置５は、入出力部９、フロー設定手段１１、経路決定手段１２、ドメイン内トポロジーＤＢ１４、および、転送ＤＢ６を備えている。
【００７３】
ドメイン内トポロジーＤＢ１４は、スイッチおよびスイッチを接続するリンクに関する情報を保持する。これらの情報は、一例として、非特許文献２に記載されたＬＬＤＰ（Link Layer Discovery Protocol）を用いて適宜更新される。ただし、本発明は、ＬＬＤＰに基づく情報の更新に限定されるものではない。
【００７４】
転送ＤＢ６は、ＭＡＣアドレスと、ＭＡＣアドレスを発信ＭＡＣアドレスに含むフレームの送信元の端末を収容するスイッチとポートのＩＤを記憶している。
【００７５】
次に、本実施形態に係るネットワークシステムの動作ついて、図面を用いて詳細に説明する。
【００７６】
図４および図５は、最下位層の以外のドメインに設置された制御装置４（図２）の動作を一例として示すフロー図である。
【００７７】
図４を参照すると、制御装置４は、下制位層の制御装置から未設定フレーム情報を受信すると（ステップＳ５１）、発ドメインに設けられた制御装置以外の隣接関係にあるすべての制御装置に対して、受信した未設定フレーム情報を送信する（ステップＳ５２）。
【００７８】
図５を参照すると、制御装置４は、下位層の制御装置からアドレス解決応答を受信すると（ステップＳ５３）、アドレス解決応答に含まれる発ドメインが自ドメインに含まれるかどうかを調べる（ステップＳ５４）。
【００７９】
アドレス解決応答の送信元の制御装置、または、その下位層の制御装置は着ドメインとして、自ドメインに含まれる。したがって、発ドメインが自ドメインに含まれる場合には（ステップＳ５４のＹｅｓ）、発ドメインと着ドメインはいずれも自ドメインに含まれる。この場合、制御装置４は経路設定のためのトポロジー情報を把握していることになる。
【００８０】
そこで、制御装置４は、ドメイン間トポロジーＤＢ１３を参照して、発着ドメイン間の経路と、経路上の各ドメインでの境界スイッチペアを決定する（ステップＳ５５）。さらに、制御装置４は、経路上に含まれる各ドメインの制御装置に対して、境界スイッチポートとアドレス解決応答に含まれているヘッダフィールドを指定して、経路設定を指示する（ステップＳ５６）。
【００８１】
一方、発ドメインが自ドメインに含まれない場合（ステップＳ５４のＮｏ）、制御装置４は、上位層の制御装置に対して、アドレス解決応答を転送する（ステップＳ５７）。
【００８２】
図４を参照すると、制御装置４は、上位層の制御装置からフロー設定指示を受けると（ステップＳ６１）、ドメイン間トポロジーＤＢ１３を参照して、指定されたスイッチペア間の経路を決定する（ステップＳ６２）。次に、制御装置４は、決定した経路に含まれる各ドメインの制御装置に対して、スイッチペアを指定してフロー設定を指示する（ステップＳ６３）。
【００８３】
図６および図７は、最下位層に設けられた制御装置５（図３）の動作を一例として示すフロー図である。
【００８４】
図６を参照すると、制御装置５は、発スイッチから未設定フレームを受信すると（ステップＳ７１）、未設定フレームの発信元アドレスと、発スイッチが未設定フレームを受信したポートの組を転送ＤＢ６に登録する（ステップＳ７２）。
【００８５】
次に、制御装置５は、転送ＤＢ６を参照して、宛先アドレスを有する端末が収容されているスイッチポートを解決できるかどうかを調べる（ステップＳ７３）。
【００８６】
制御装置５は、スイッチポートを解決できた場合（ステップＳ７３のＹｅｓ）、ドメイン内トポロジーＤＢ１４を参照して発着スイッチ間の経路を決定する（ステップＳ７４）。次に、制御装置４は、経路上の各スイッチにフロー設定を行う（ステップＳ７５）。
【００８７】
一方、スイッチポートを解決ができなかった場合（ステップＳ７３のＮｏ）、制御装置５は、上位層の制御装置に未設定フレーム情報を送信する（ステップＳ７６）。次に、制御装置５は、ドメイン内において、制御装置５に接続するスイッチポートから他のスイッチに設定されている最小全域木上で、未設定フレームのフラッディング（flooding）を指示する（ステップＳ７７）。これにより、各スイッチから先において、発スイッチの未設定フレームの受信ポート以外のすべてのポートに、未設定フレームが転送される。
【００８８】
また、制御装置５は、上位層の制御装置から未設定フレーム情報を受信すると（ステップＳ７８）、転送ＤＢ６を参照して、受信ＭＡＣアドレスからスイッチポートを解決できるかどうかを調べる（ステップＳ７９）。
【００８９】
制御装置５は、受信ＭＡＣアドレスからスイッチポートを解決できる場合（ステップＳ７９のＹｅｓ）、上位層の制御装置に着ドメインＩＤを書き込んだアドレス解決応答を送信する（ステップＳ８０）。
【００９０】
一方、受信ＭＡＣアドレスからスイッチポートを解決できない場合（ステップＳ７９のＮｏ）、制御装置５は、着スイッチに出力ポートを指定して未設定フレーム情報を転送する（ステップＳ８１）。
【００９１】
図７を参照すると、制御装置５は、上位層の制御装置からスイッチペアを指定してフロー設定の指示を受けると（ステップＳ８２）、境界スイッチが未指定かどうかを調べる（ステップＳ８３）。
【００９２】
境界スイッチが指定されている場合（ステップＳ８３のＮｏ）、ステップＳ８４に遷移する。一方、境界スイッチが指定されてない場合（ステップＳ８３のＹｅｓ）、制御装置５は転送ＤＢ６を参照して、ヘッダフィールドから発スイッチの識別子または着スイッチの識別子を解決して（ステップＳ８６）、ステップＳ８４に遷移する。
【００９３】
次に、制御装置５は、ドメイン内トポロジーＤＢ１４を参照して、ドメイン内のスイッチペア間の経路を決定する（ステップＳ８４）。制御装置５は、一例として、スイッチ間のリンク数の総和が最小になる経路をダイクストラのアルゴリズムに基づいて決定する。ただし、本発明における経路の決定方法は、かかる方法に限定されない。
【００９４】
次に、制御装置５は、経路上の各スイッチに対して、フローを設定する（ステップＳ８５）。
【００９５】
本実施形態では、ネットワークを複数のドメインに分割して階層化し、スイッチへのフロー設定を直接行う最下位層の制御装置に転送データベースを設置する。これにより、上位層の制御装置によるアドレス検索の所要時間および転送ＤＢの記憶量を削減することが可能となる。また、スイッチを直接制御する最下位ドメインの制御装置によってアドレスを解決できる場合、上位の制御装置には未設定フレームが転送されないため、上位の制御装置の負荷を軽減することができる。
【００９６】
＜実施形態２＞
次に、第２の実施形態に係るネットワークシステムついて、図面を参照して詳細に説明する。
【００９７】
本実施形態のネットワークシステムの構成は、第１の実施形態のネットワークシステムの構成（図１）と同様である。また、本実施形態において、最下位のドメイン以外のドメインに設置される制御装置の構成は、第１の実施形態において最下位のドメイン以外のドメインに設置される制御装置の構成（図２）と同様である。さらに、本実施形態において、最下位のドメインに設置される制御装置の構成は、第１の実施形態において最下位のドメインに設置される制御装置の構成（図３）と同様である。
【００９８】
ただし、本実施形態では、第１の実施形態とは異なり、ＭＡＣアドレスとしてローカルアドレスを用いるものとする。このときのビット割当ての方法は、一例として、非特許文献７に記載されている。また、本実施形態では、ＭＡＣアドレス中にドメインを識別するドメイン識別子を含ませる。このとき、制御装置は、ＭＡＣアドレスを参照することにより、当該ＭＡＣアドレスが付与された端末が収容されているドメインを把握することができる。
【００９９】
また、本実施形態において、制御装置４（図２）に設けられた経路設定手段１０は、第１の実施形態とは異なり、受信した未設定フレーム情報に含まれる宛先アドレスに基づいて識別した着ドメインが自ドメインに含まれる場合、経路決定手段１２に経路を算出させる。また、経路設定手段１０は、経路の算出結果を用いて、経路上の各下位ドメインに設置された制御装置に経路設定を指示する。
【０１００】
さらに、本実施形態では、未設定フレーム情報は、未設定フレームと、フローのマッチング条件を示すヘッダフィールドと、未設定フレームを受信したスイッチポートの識別子を含む。
【０１０１】
なお、本実施形態では、第１の実施形態とは異なり、アドレスにドメイン識別子が含まれるため、第１の実施形態のように、未設定フレーム情報に対して、発ドメイン識別子および着ドメイン識別子を含める必要がない。
【０１０２】
また、最下位のドメイン以外のドメインに設置された制御装置４は、第１の実施形態とは異なり、着ドメインが自ドメインに含まれない場合、未設定フレーム情報を上位層の制御装置に転送する。
【０１０３】
以下、本実施形態に係るネットワークシステムの動作について、図面を参照して詳細に説明する。
【０１０４】
図８は、最下位のドメイン以外のドメインに設置された制御装置４（図２）の動作を一例として示すフロー図である。
【０１０５】
図８を参照すると、制御装置４は、下位層の制御装置から未設定フレーム情報を受信すると（ステップＳ１１）、宛先ＭＡＣアドレスを参照して着ドメインを解決する（ステップＳ１２）。
【０１０６】
次に、制御装置４は、着ドメインが自ドメインに含まれるかどうかを調べる（ステップＳ１３）。
【０１０７】
制御装置４は、着ドメインが自ドメインに含まれる場合（ステップＳ１３のＹｅｓ）、着ドメインを配下に持つ下位層の制御装置に対して、着ドメインを指定して未設定フレーム情報を転送する（ステップＳ１４）。
【０１０８】
次に、制御装置４は、ステップＳ１２で求められた発着ドメイン間の経路を、ドメイン間トポロジーＤＢを参照して算出し（ステップＳ１５）、各ドメインの境界スイッチとドメイン間のリンクを収容するポートを決定する。
【０１０９】
次に、制御装置４は、経路上の各ドメインに設置された下位層の制御装置に対して、境界スイッチポートのペアとヘッダフィールド指定して経路設定を指示する（ステップＳ１６）。
【０１１０】
一方、着ドメインが自ドメインに含まれない場合（ステップＳ１３のＮｏ）、制御装置４は、上位の制御装置に対して、未設定フレーム情報を転送する（ステップＳ１７）。
【０１１１】
また、制御装置４は、上位層の制御装置から着ドメインを指定して未設定フレーム情報送信の指示を受けると（ステップＳ１８）、着ドメインを配下に持つ下位層の制御装置に対して、未設定フレーム情報を送信するように指示する（ステップＳ１９）。
【０１１２】
図９および図１０は、本実施形態において、最下位層に設置される制御装置５（図３）の動作を一例として示すフロー図である。
【０１１３】
図９を参照すると、制御装置５は、発スイッチから未設定フレームを受信すると（ステップＳ２１）、未設定フレーム情報の宛先アドレスと、発スイッチが未設定フレームを受信したポートの組を転送ＤＢ６に登録する（ステップＳ２２）。
【０１１４】
次に、制御装置５は、宛先アドレス参照して、宛先アドレスが自ドメインであるか否かを調べる（ステップＳ２３）。宛先アドレスが自ドメインである場合（ステップＳ２３のＹｅｓ）、ステップＳ２４へ遷移する。一方、宛先アドレスのドメインが自ドメインでない場合（ステップＳ２３のＮｏ）、制御装置５は、上位層の制御装置に未設定フレーム情報を送信する（ステップＳ２９）。
【０１１５】
次に、制御装置５は、転送ＤＢ６を参照して、宛先アドレスに対応するスイッチポートが存在するかどうかを調べる（ステップＳ２４）。転送ＤＢ６に宛先アドレスに対応するスイッチポートがない場合（ステップＳ２４のＮｏ）、ステップＳ２８に遷移する。一方、転送ＤＢ６に宛先アドレスに対応するスイッチポートがある場合（ステップＳ２４のＹｅｓ）、制御装置５の経路決定手段１２は、ドメイン内トポロジーＤＢ１４を参照して、発着スイッチ間の経路を決定する（ステップＳ２５）。
【０１１６】
次に、制御装置５は、経路上の各スイッチにフロー設定を指示する（ステップＳ２６）。また、制御装置５は、未設定フレームを送信するように着スイッチに指示する（ステップＳ２７）。
【０１１７】
ステップＳ２８において、制御装置５に接続するスイッチから他のスイッチに予め設定してある最小全域木を用いて、ドメイン内に未設定フレームをフラッディング（flooding）する。各スイッチは、送信端末を収容しているポート以外のすべてのポートに未設定フレームを転送する。
【０１１８】
ステップＳ２９において、制御装置５は、上位層の制御装置に未設定フレームを転送する。
【０１１９】
図１０において、上位層の制御装置からスイッチペアを指定してフロー設定指示を受けた場合のステップＳ３１〜Ｓ３５は、図７に示したステップＳ８２〜Ｓ８６と同様である。また、図１０を参照すると、制御装置５は、上位層の制御装置から未設定フレームの送信指示を受信すると（ステップＳ３６）、転送ＤＢ６を参照して着スイッチポートを解決し、着スイッチに対して未設定フレームの送信を指示する（ステップＳ３７）。
【０１２０】
本実施形態では、端末のアドレスに対してドメインを識別する識別子を含める。これにより、未設定フレームのブロードキャストの範囲を着ドメイン内に限定することができ、スイッチ、リンク等の転送系にかかる負荷を軽減することが可能となる。
【実施例１】
【０１２１】
次に、第１の実施形態に係るネットワークシステムの第１の実施例（「実施例１」という。）について図面を参照して説明する。【０１２２】
図１１および図１２は、制御系が２つの階層に階層化されたネットワークにおいて、送受信端末をそれぞれ収容するスイッチ間にフローを設定する際の制御装置およびスイッチの動作を説明するための図である。【０１２３】
図１１を参照すると、ネットワークシステム全体のドメイン対して、識別子「３０」が付与されている。ドメイン３０は、さらに「３１」、「３２」、「３３」の識別子を付与された３つのドメインに分割されている。これらの３つのドメイン３１〜３３は、下位層を構成する。上位層のドメイン３０には、制御装置４０１が設置されている。一方、下位層のドメイン３１〜３３には、それぞれ、制御装置５０２〜５０４が設置されている。【０１２４】
また、下位層の制御装置５０２〜５０４には、それぞれ、転送ＤＢ６０２〜６０４が設けられている。【０１２５】
ここでは、送信元の端末１０１からスイッチ７０１に向けて、スイッチ７０２に接続する端末１０２宛てのフレームが初めて転送されたものとする（ステップＡ１）。【０１２６】
スイッチ７０１は、送信元の端末１０１と宛先の端末１０２の間のフローが設定されていないため、ドメイン３１の制御装置５０２に対して、未設定フレームを転送する（ステップＡ２）。【０１２７】
制御装置５０２は、転送ＤＢ６０２を参照して、宛先の端末１０２のアドレスが未登録であるため、上位のドメイン３０の制御装置４０１に対して、未設定フレーム情報（発ドメイン識別子３１と未設定フレームを含む）を転送する（ステップＡ３）。また、制御装置５０２は、スイッチ７０７をルートとするスパニングツリーを用いて、ドメイン内のすべてのスイッチ７０１、７０３、７０７に対して未設定フレームをブロードキャストする。さらに、未設定フレームを受信した各スイッチは、発信端末１０１以外の収容するすべての端末に対して未設定フレームを転送する。【０１２８】
制御装置４０１は、未設定フレームの送信元の制御装置５０２以外の隣接する制御装置５０３、５０４に対して、未設定フレームを転送する（ステップＡ４）。【０１２９】
制御装置５０４は、転送ＤＢ６０４を参照すると、宛先の端末１０２のアドレスに対して端末１０２を収容するスイッチ７０２とそのポートの識別子が登録されているため、スイッチ７０２に未設定フレームを転送する（ステップＡ５）。また、制御装置５０３は、スイッチ７０８をルートとするスパニングツリーを用いて、ドメイン内のすべてのスイッチ７０４、７０５、７０８に対して、未設定フレームをブロードキャストする。さらに、未設定フレームを受信した各スイッチは、収容するすべての端末に対して、未設定フレームを転送する。【０１３０】
スイッチ７０２は、未設定フレームを端末１０２に転送する（ステップＡ６）。【０１３１】
図１２を参照すると、ステップＡ４で未設定フレームを受信した制御装置５０４は、未設定フレームに含まれる宛先アドレスに対するスイッチポートの識別子を、転送ＤＢ６０４を参照して解決する。宛先アドレスに対するスイッチポートの識別子を解決することができたため、制御装置５０４は、アドレス解決応答を上位の制御装置４０１に送信する（ステップＡ７）。ここで、アドレス解決応答は、発ドメイン識別子３１と、着ドメイン識別子３３と、未設定フレームに関するヘッダフィールドを含む。【０１３２】
制御装置４０１は、発ドメイン識別子３１および着ドメイン識別子３３から、発ドメインおよび着ドメインが自ドメイン３０に含まれることを判別する。そこで、制御装置４０１は、ドメイン３１からドメイン３３まで経路を算出する。また、制御装置４０１は、経路上に存在するドメイン３１、３２、３３の制御装置５０２、５０３、５０４に対して、それぞれ、境界スイッチペアとして（＊、７０３）、（７０４、７０５）、（７０６、＊）を指定して、フロー設定を指示する（ステップＡ８）。ここで、「＊」は未指定であることを表す。【０１３３】
次に、制御装置５０２〜５０４は、それぞれ、指定されたスイッチ間の経路を算出して、経路上のスイッチにフローを設定する（ステップＡ９）。なお、制御装置５０２は、転送ＤＢ６０２を参照して、ヘッダフィールドから対応する発スイッチ７０１を解決し、スイッチ（７０１、７０３）間で上記の処理を行う。同様に、制御装置５０４は、転送ＤＢ６０４を参照して、ヘッダフィールドから対応する着スイッチ７０２を解決し、スイッチ（７０６、７０２）間で上記の処理を行う。
【実施例２】
【０１３４】
次に、第１の実施形態に係るネットワークシステムの第２の実施例（「実施例２」という。）について、図面を参照して説明する。【０１３５】
図１３は、制御系が３階層に階層化されたネットワークにおいて、フロー設定指示を行う最上位の制御装置が決定される動作について説明するための図である。【０１３６】
図１３を参照すると、ネットワークシステム全体のドメインに対してドメイン識別子「３００」が付与されている。ドメイン３００は、ドメイン３１０とドメイン３２０に分割されている。また、ドメイン３１０は、最下位層のドメイン３１１〜３１３に分割されている。同様に、ドメイン３２０は、最下位層のドメイン３２１〜３２３に分割されている。【０１３７】
最上位層のドメイン３００には、制御装置４１１が設置されている。また、中間層のドメイン３１０、３２０には、それぞれ、制御装置４１２、４１３が設置されている。さらに、下位層のドメイン３１１〜３１３、３２１〜３２３には、それぞれ、制御装置５１４〜５１９が設置されている。【０１３８】
また、下位層の制御装置５１４〜５１９には、それぞれ、転送ＤＢ６１４〜６１９が設けられている。【０１３９】
まず、送信端末（非図示）は、スイッチ７０７にフレームを送信する（ステップＢ１）。【０１４０】
次に、スイッチ７０７は、フロー設定がないため、未設定フレームを制御装置５１４に転送する（ステップＢ２）。【０１４１】
次に、制御装置５１４は、転送ＤＢ６１４に基づいて、宛先アドレスからスイッチポートを解決することができないため、未設定フレームを発ドメイン識別子３１１とともに、上位層の制御装置４１２に送出する（ステップＢ３）。【０１４２】
次に、制御装置４１２は、未設定フレームを受信すると、隣接する他の制御装置５１５、５１６および制御装置４１１に対して、受信した未設定フレーム情報を転送する（ステップＢ４）。【０１４３】
次に、制御装置４１１は、未設定フレーム情報を受信すると、隣接する他の制御装置４１３に対して、受信した未設定フレーム情報を転送する（ステップＢ５）。【０１４４】
次に、制御装置４１３は、未設定フレーム情報を受信すると、隣接する他の制御装置５１７〜５１９に対して、受信した未設定フレーム情報を転送する（ステップＢ６）。【０１４５】
次に、制御装置５１９は、受信した未設定フレーム情報に含まれる宛先アドレスに対するスイッチポートを解決する。また、スイッチポートを解決できたため、制御装置５１９は、上位層の制御装置４１３に対して、アドレス解決応答を送信する（ステップＢ７）。ここで、アドレス解決応答は、発ドメイン３１１、着ドメイン３２３、および、未設定フレームのヘッダフィールドを含む。【０１４６】
制御装置４１３は、発ドメイン３１１が自ドメイン３２０に含まれないため、上位層の制御装置４１１に対して、アドレス解決応答を転送する（ステップＢ８）。【０１４７】
制御装置４１１は、アドレス解決応答を受信すると、発ドメイン３１１が自ドメイン３００に含まれるため、フロー設定動作を開始する。【０１４８】
本実施例では、一例として、ネットワークを３階層に階層化した場合について説明したが、第１の実施形態に係るネットワークシステムは、４階層以上に階層化された制御系を有するネットワークシステムに対しても適用可能である。
【実施例３】
【０１４９】
次に、第２の実施形態に係るネットワークシステムの第１の実施例（「実施例３」という。）について図面を参照して説明する。【０１５０】
図１４は、制御系が２階層に階層化されたネットワークにおいて、送受信端末をそれぞれ収容するスイッチ間にフローを設定する際の制御装置およびスイッチの動作を説明するための図である。【０１５１】
図１４を参照すると、ネットワークシステム全体のドメインに対して、識別子「３０」が付与されている。ドメイン３０は、さらに、「３１」、「３２」、「３３」の識別子を付与された３つのドメインに分割され、これらの３つのドメイン３１〜３３は下位層を構成する。上位層のドメイン３０には、制御装置４０１が設置されている。一方、下位層のドメイン３１〜３３には、それぞれ、制御装置５０２〜５０４が設置されている。端末１０１、１０２のアドレスには、これらの各端末が収容されるスイッチが属するドメインの識別子が埋め込まれている。【０１５２】
送信元の端末１０１からスイッチ７０１に向けて、スイッチ７０２に接続する端末１０２宛てのフレームが初めて転送される（ステップＣ１）。【０１５３】
スイッチ７０１は、送受信端末１０１、１０２のアドレスのペアで規定されるフローに対して経路が設定されていないため、ドメイン３１の制御装置５０２に対して、未設定フレームを転送する（ステップＣ２）。【０１５４】
制御装置５０２は、転送ＤＢ６０２を参照すると、宛先の端末１０２のアドレスが自ドメインではなく、かつ、未登録であるため、上位のドメイン３０の制御装置４０１に対して未設定フレームを転送する（ステップＣ３）。【０１５５】
制御装置４０１は、未設定フレームを参照して、着ドメインがドメイン３３であることを把握し、ドメイン３３に設けられた制御装置５０４のみに向けて、未設定フレームを転送する（ステップＣ４）。【０１５６】
制御装置５０４は、転送ＤＢ６０４を参照して、宛先アドレスに対応するスイッチ７０２とポートを判別し、スイッチ７０２に向けて未設定フレームを転送する（ステップＣ５）。【０１５７】
スイッチ７０２は、受信した未設定フレームを受信端末１０２に転送する（ステップＣ６）。【０１５８】
ステップＣ３の後、制御装置４０１は、未設定フレームの宛先アドレスに含まれるドメイン識別子３３が自ドメイン３０に含まれることを判別し、発ドメイン３１から着ドメイン３３までの経路を算出する。次に、制御装置４０１は、経路上の各ドメイン３１、３２、３３に設けられた制御装置５０２、５０３、５０４に対して、それぞれ、境界スイッチペアとして（＊、７０３）、（７０４、７０５）、（７０６、＊）を指定して、フロー設定を指示する（ステップＣ７）。ここで、「＊」は未指定であることを表す。【０１５９】
制御装置５０２〜５０４は、それぞれ、指定されたスイッチ間の経路を算出して、経路上のスイッチに対してフローを設定する（ステップＣ８）。なお、制御装置５０２は、転送ＤＢ６０２を参照して、ヘッダフィールドの発アドレスから対応する発スイッチ７０１を解決し、スイッチ（７０１、７０３）間で上記の処理を行う。同様に、制御装置５０４は、転送ＤＢ６０４を参照して、ヘッダフィールドの着アドレスから対応する着スイッチ７０２を解決し、スイッチ（７０６、７０２）間で上記の処理を行う。
【実施例４】
【０１６０】
次に、第２の実施形態に係るネットワークシステムの第２の実施例（「実施例４」という。）について、図面を参照して説明する。【０１６１】
図１５は、制御系が３階層に階層化され、端末のＭＡＣアドレスにはドメイン識別子が含まれるネットワークにおいて、フロー設定指示を行う最上位の制御装置が決定される動作を説明するための図である。【０１６２】
本実施例のネットワークの階層化ドメインの構成は、実施例２（図１３）と同様である。【０１６３】
まず、送信端末（非図示）は、スイッチ７０７にフレームを送信する（ステップＤ１）。【０１６４】
次に、スイッチ７０７は、フロー設定がないため、未設定フレームを制御装置５１４に転送する（ステップＤ２）。【０１６５】
次に、制御装置５１４は、宛先アドレスが自ドメイン内ではなく、かつ、転送ＤＢ６１４を参照して発アドレスからスイッチポートを解決できないため、上位層の制御装置４１２に対して、未設定フレームを転送する（ステップＤ３）。【０１６６】
次に、制御装置４１２は、宛先アドレスを参照して、宛先アドレスが属するドメイン３２３は自ドメイン３１０に含まれないことを判別し、上位層の制御装置４１１に対して、受信した未設定フレームを転送する（ステップＤ４）。【０１６７】
次に、制御装置４１１は、宛先アドレスを参照して、宛先アドレスが付与された端末を収容するスイッチを含むドメイン３２３が自ドメインに含まれることを判別し、フロー設定動作を開始する。【０１６８】
本実施例では、一例として、ネットワークを３階層に階層化した場合について説明したが、第２の実施形態に係るネットワークシステムは、４階層以上に階層化された制御系を有するネットワークシステムに対しても適用可能である。【０１６９】
なお、上記特許文献および非特許文献の全開示内容は、本書に引用をもって繰り込み記載されているものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施形態の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【０１７０】
２    転送ネットワーク
４、５    制御装置
６    転送ＤＢ
８    リンク
９    入出力部
１０    経路設定手段
１１    フロー設定手段
１２    経路決定手段
１３    ドメイン間トポロジーＤＢ
１４    ドメイン内トポロジーＤＢ
１５    隣接制御装置ＤＢ
３０、３１〜３３    ドメイン
４０、５１〜５３    制御装置
６０    転送ＤＢ
１０１、１０２    端末
３００、３１０、３１１〜３１３、３２１〜３２３、３２０    ドメイン
４０１、４１１〜４１３、５０２〜５０４、５１４〜５１９    制御装置
６０２〜６０４、６１４〜６１９    転送ＤＢ
７０１〜７１０、Ａ〜Ｊ    スイッチ
【図１】
2015093478.tif 000003
【図２】
2015093478.tif 000004
【図３】
2015093478.tif 000005
【図４】
2015093478.tif 000006
【図５】
2015093478.tif 000007
【図６】
2015093478.tif 000008
【図７】
2015093478.tif 000009
【図８】
2015093478.tif 000010
【図９】
2015093478.tif 000011
【図１０】
2015093478.tif 000012
【図１１】
2015093478.tif 000013
【図１２】
2015093478.tif 000014
【図１３】
2015093478.tif 000015
【図１４】
2015093478.tif 000016
【図１５】
2015093478.tif 000017
【図１６】
2015093478.tif 000018
【図１７】
2015093478.tif 000019
【図１８】
2015093478.tif 000020
【国際調査報告】
2015093478.tif 000021
2015093478.tif 000022
2015093478.tif 000023
2015093478.tif 000024