(57)【要約】【課題】ＭＣＬＡＧを実現するために必要なスイッチへのスタックポートの設定を自動化する通信システムを提供する。【解決手段】通信システムは、第１及び第２のスイッチと、制御装置と、を含む。第１及び第２のスイッチは、ＭＣＬＡＧを構築する。制御装置は、第２のスイッチを介して第１のスイッチに送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、第２のスイッチの識別情報を設定する、トポロジ管理部と、第２のスイッチの識別情報が設定されたフレームを第２のスイッチに向けて出力する、通信部と、を備える。第１のスイッチは、第２のスイッチが出力するフレームから、第２のスイッチの識別情報を抽出する、フレーム処理部と、抽出された第２のスイッチの識別情報に基づき、第２のスイッチが出力するフレームを受信したポートをスタックポートに設定する、スタック処理部と、を備える。【選択図】図１
2017050708.tif 000002
【特許請求の範囲】
【請求項１】
マルチシャーシリンクアグリゲーションを構築する、少なくとも第１及び第２のスイッチと、
前記第１及び第２のスイッチによるパケット転送を制御する制御装置と、を含み、
前記制御装置は、
前記第２のスイッチを介して前記第１のスイッチに送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、前記第２のスイッチの識別情報を設定する、トポロジ管理部と、
前記第２のスイッチの識別情報が設定されたフレームを前記第２のスイッチに向けて出力する、通信部と、
を備え、
前記第１のスイッチは、
前記第２のスイッチが出力するフレームから、前記第２のスイッチの識別情報を抽出する、フレーム処理部と、
前記抽出された第２のスイッチの識別情報に基づき、前記第２のスイッチが出力するフレームを受信したポートをスタックポートに設定する、スタック処理部と、
を備える、通信システム。
【請求項２】
前記制御装置は、
前記第１及び第２のスイッチからなるマルチシャーシリンクアグリゲーションに関する情報を管理し、前記第１のスイッチの識別情報と、前記第１のスイッチのポートであって、マルチシャーシリンクアグリゲーションのメンバポートを特定する情報と、前記第２のスイッチの識別情報と、前記第２のスイッチのポートであって、マルチシャーシリンクアグリゲーションのメンバポートを特定する情報と、を少なくとも含む設定情報を、前記第１及び第２のスイッチに対し、前記通信部を介して送信する、マルチシャーシリンクアグリゲーション管理部をさらに含む、請求項１の通信システム。
【請求項３】
前記スタック処理部は、
前記制御装置から受信した前記設定情報により、前記第２のスイッチを対向するスイッチとして特定する、請求項２の通信システム。
【請求項４】
前記第１のスイッチは、
前記制御装置から受信した前記設定情報に基づき、マルチシャーシリンクアグリゲーションのメンバポートを設定する、請求項２又は３の通信システム。
【請求項５】
前記マルチシャーシリンクアグリゲーション管理部は、少なくとも前記第２のスイッチの識別情報を生成し、
前記トポロジ管理部は、前記生成された前記第２のスイッチの識別情報を、前記フレームの一部に設定し、
前記第２のスイッチは、前記第２のスイッチの識別情報を前記フレームから抽出し、自身の識別情報として扱う、請求項２乃至４のいずれか一項に記載の通信システム。
【請求項６】
前記トポロジ管理部が、前記第２のスイッチを介して前記第１のスイッチに送信するフレームは、ＬＬＤＰ（Link Layer Discovery Protocol）によるフレームである、請求項１乃至５のいずれか一項に記載の通信システム。
【請求項７】
マルチシャーシリンクアグリゲーションを構築する、少なくとも第１及び第２のスイッチによるパケット転送を制御する制御装置であって、
前記第２のスイッチを介して前記第１のスイッチに送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、前記第２のスイッチの識別情報を設定する、トポロジ管理部と、
前記第２のスイッチの識別情報が設定されたフレームを前記第２のスイッチに向けて出力する、通信部と、
を備える、制御装置。
【請求項８】
他のスイッチとマルチシャーシリンクアグリゲーションを構築するスイッチであって、
ネットワークのトポロジを検出するために、制御装置から前記他のスイッチを介して前記スイッチに送信されるフレームであって、一部に前記他のスイッチの識別情報が設定されたフレームから、前記他のスイッチの識別情報を抽出する、フレーム処理部と、
前記抽出された他のスイッチの識別情報に基づき、前記他のスイッチが出力するフレームを受信したポートをスタックポートに設定する、スタック処理部と、
を備える、スイッチ。
【請求項９】
マルチシャーシリンクアグリゲーションを構築する、少なくとも第１及び第２のスイッチと、
前記第１及び第２のスイッチによるパケット転送を制御する制御装置と、を含む通信システムにおいて、
前記制御装置が、
前記第２のスイッチを介して前記第１のスイッチに送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、前記第２のスイッチの識別情報を設定する、ステップと、
前記第２のスイッチの識別情報が設定されたフレームを前記第２のスイッチに向けて出力するステップと、
前記第１のスイッチが、
前記第２のスイッチが出力するフレームから、前記第２のスイッチの識別情報を抽出する、ステップと、
前記抽出された第２のスイッチの識別情報に基づき、前記第２のスイッチが出力するフレームを受信したポートをスタックポートに設定する、ステップと、
を含む、通信方法。
【請求項１０】
マルチシャーシリンクアグリゲーションを構築する、少なくとも第１及び第２のスイッチによるパケット転送を制御する制御装置に搭載されたコンピュータに実行させるプログラムであって、
前記第２のスイッチを介して前記第１のスイッチに送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、前記第２のスイッチの識別情報を設定する処理と、
前記第２のスイッチの識別情報が設定されたフレームを前記第２のスイッチに向けて出力する処理と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、制御装置、スイッチ、通信方法及びプログラムに関する。特に、制御装置により集中制御されるネットワークにおいてマルチシャーシリンクアグリゲーション（ＭＣＬＡＧ；Multi-Chassis Link Aggregation）機能を実現する通信システム、制御装置、スイッチ、通信方法及びプログラムに関する。
【背景技術】
【０００２】
複数台のスイッチを組として扱うスタック機能と、複数のリンクを論理的に１本であるかのように扱うリンクアグリゲーション機能を組み合わせて、冗長化・負荷分散を実現する機能として、マルチシャーシリンクアグリゲーション機能が知られている。
【０００３】
特許文献１において、ＭＣＬＡＧが設定される２台のネットワーク中継装置（スイッチ装置）において、アドレステーブルを共有化する技術が開示されている。
【０００４】
また、非特許文献１、２に、集中制御型のネットワークを実現するオープンフローという技術が提案されている。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。非特許文献２に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチ条件（Ｍａｔｃｈ  Ｆｉｅｌｄｓ）と、フロー統計情報（Ｃｏｕｎｔｅｒｓ）と、処理内容を定義したインストラクション（Ｉｎｓｔｒｕｃｔｉｏｎｓ）と、の組が定義される（非特許文献２の「５．２  Ｆｌｏｗ  Ｔａｂｌｅ」の項参照）。
【０００５】
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチ条件（非特許文献２の「５．３  Ｍａｔｃｈｉｎｇ」参照）を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報（カウンタ）を更新するとともに、受信パケットに対して、当該エントリのインストラクションフィールドに記述された処理内容（指定ポートからのパケット送信、フラッディング、廃棄等）を実施する。一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求、即ち、受信パケットを処理するための制御情報の送信要求（Ｐａｃｋｅｔ−Ｉｎメッセージ）を送信する。オープンフロースイッチは、処理内容が定められたフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを制御情報として用いてパケット転送を行う。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１４−１０７５９２号公報
【非特許文献】
【０００７】
【非特許文献１】Ｎｉｃｋ  ＭｃＫｅｏｗｎほか７名、“ＯｐｅｎＦｌｏｗ：  Ｅｎａｂｌｉｎｇ  Ｉｎｎｏｖａｔｉｏｎ  ｉｎ  Ｃａｍｐｕｓ  Ｎｅｔｗｏｒｋｓ”、［ｏｎｌｉｎｅ］、［平成２７（２０１５）年８月１２日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉
【非特許文献２】“ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”  Ｖｅｒｓｉｏｎ  １．３．１  （Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ  ０ｘ０４）、［ｏｎｌｉｎｅ］、［平成２７（２０１５）年８月１２日検索］、インターネット〈URL:https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.3.1.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００８】
なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。
【０００９】
ＭＣＬＡＧが適用されたネットワークを運用する際には、予めスイッチ間の物理的な接続を決定した上で、スタックポートの設定（コンフィグ）を各スイッチに行う必要がある。つまり、ネットワークの管理者は、スイッチ間の物理的な接続を決定するという制御装置（コントローラ）の設定と、スタックポートを決定するというスイッチの設定と、を実施する必要がある。１つの機能を実現するために、異なる装置（スイッチ、コントローラ）に情報を設定すると、ヒューマンエラーが生じやすく、ネットワークの円滑な運用が阻害される可能性がある。
【００１０】
本発明は、マルチシャーシリンクアグリゲーションを実現するために必要なスイッチへのスタックポートの設定を自動化する、通信システム、制御装置、スイッチ、通信方法及びプログラムを、提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の第１の視点によれば、マルチシャーシリンクアグリゲーションを構築する、少なくとも第１及び第２のスイッチと、前記第１及び第２のスイッチによるパケット転送を制御する制御装置と、を含み、前記制御装置は、前記第２のスイッチを介して前記第１のスイッチに送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、前記第２のスイッチの識別情報を設定する、トポロジ管理部と、前記第２のスイッチの識別情報が設定されたフレームを前記第２のスイッチに向けて出力する、通信部と、を備え、前記第１のスイッチは、前記第２のスイッチが出力するフレームから、前記第２のスイッチの識別情報を抽出する、フレーム処理部と、前記抽出された第２のスイッチの識別情報に基づき、前記第２のスイッチが出力するフレームを受信したポートをスタックポートに設定する、スタック処理部と、を備える、通信システムが提供される。
【００１２】
本発明の第２の視点によれば、マルチシャーシリンクアグリゲーションを構築する、少なくとも第１及び第２のスイッチによるパケット転送を制御する制御装置であって、前記第２のスイッチを介して前記第１のスイッチに送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、前記第２のスイッチの識別情報を設定する、トポロジ管理部と、前記第２のスイッチの識別情報が設定されたフレームを前記第２のスイッチに向けて出力する、通信部と、を備える、制御装置が提供される。
【００１３】
本発明の第３の視点によれば、他のスイッチとマルチシャーシリンクアグリゲーションを構築するスイッチであって、ネットワークのトポロジを検出するために、制御装置から前記他のスイッチを介して前記スイッチに送信されるフレームであって、一部に前記他のスイッチの識別情報が設定されたフレームから、前記他のスイッチの識別情報を抽出する、フレーム処理部と、前記抽出された他のスイッチの識別情報に基づき、前記他のスイッチが出力するフレームを受信したポートをスタックポートに設定する、スタック処理部と、を備える、スイッチが提供される。
【００１４】
本発明の第４の視点によれば、マルチシャーシリンクアグリゲーションを構築する、少なくとも第１及び第２のスイッチと、前記第１及び第２のスイッチによるパケット転送を制御する制御装置と、を含む通信システムにおいて、前記制御装置が、前記第２のスイッチを介して前記第１のスイッチに送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、前記第２のスイッチの識別情報を設定する、ステップと、前記第２のスイッチの識別情報が設定されたフレームを前記第２のスイッチに向けて出力するステップと、前記第１のスイッチが、前記第２のスイッチが出力するフレームから、前記第２のスイッチの識別情報を抽出する、ステップと、前記抽出された第２のスイッチの識別情報に基づき、前記第２のスイッチが出力するフレームを受信したポートをスタックポートに設定する、ステップと、を含む、通信方法が提供される。
【００１５】
本発明の第５の視点によれば、マルチシャーシリンクアグリゲーションを構築する、少なくとも第１及び第２のスイッチによるパケット転送を制御する制御装置に搭載されたコンピュータに実行させるプログラムであって、前記第２のスイッチを介して前記第１のスイッチに送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、前記第２のスイッチの識別情報を設定する処理と、前記第２のスイッチの識別情報が設定されたフレームを前記第２のスイッチに向けて出力する処理と、を実行させるプログラムが提供される。
なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント（non-transient）なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１６】
本発明の各視点によれば、マルチシャーシリンクアグリゲーションを実現するために必要なスイッチへのスタックポートの設定を自動化する、通信システム、制御装置、スイッチ、通信方法及びプログラムが、提供される。
【図面の簡単な説明】
【００１７】
【図１】一実施形態の概要を説明するための図である。
【図２】第１の実施形態に係る通信システムの概略構成の一例を示す図である。
【図３】第１の実施形態に係る制御装置がネットワークのトポロジを検出する際の動作を説明するための図である。
【図４】ネットワークに形成されたＭＣＬＡＧを説明するための図である。
【図５】第１の実施形態に係る制御装置の内部構成の一例を示す図である。
【図６】トポロジ管理部が生成するＬＬＤＰフレームのフォーマットの一例を示す図である。
【図７】ＭＣＬＡＧ情報記憶部が記憶するＭＣＬＡＧ情報の一例を示す図である。
【図８】第１の実施形態に係るスイッチの内部構成の一例を示す図である。
【図９】スタック情報記憶部に格納されたスタック情報の一例を示す図である。
【図１０】第１の実施形態に係るネットワークシステムの動作の一例を示すフローチャートである。
【図１１】第１の実施形態に係るネットワークシステムの動作の一例を示すフローチャートである。
【図１２】スイッチが、Ｅｔｈｅｒｎｅｔ（登録商標；以下、同じ）フレームを受信したときの動作の一例を示す図である。
【発明を実施するための形態】
【００１８】
初めに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。
【００１９】
一実施形態に係る通信システムは、第１のスイッチ１０１と、第２のスイッチ１０２と、制御装置１０３と、を含む。第１のスイッチ１０１と第２のスイッチ１０２は、マルチシャーシリンクアグリゲーションを構築する。制御装置１０３は、第１のスイッチ１０１と第２のスイッチ１０２によるパケット転送を制御する。制御装置１０３は、第２のスイッチ１０２を介して第１のスイッチ１０１に送信されるフレームであって、ネットワークのトポロジを検出するためのフレームの一部に、第２のスイッチ１０２の識別情報を設定する、トポロジ管理部１１１と、第２のスイッチ１０２の識別情報が設定されたフレームを第２のスイッチ１０２に向けて出力する、通信部１１２と、を備える。第１のスイッチ１０１は、第２のスイッチ１０２が出力するフレームから、第２のスイッチ１０２の識別情報を抽出する、フレーム処理部１２１と、抽出された第２のスイッチ１０２の識別情報に基づき、第２のスイッチ１０２が出力するフレームを受信したポートをスタックポートに設定する、スタック処理部１２２と、を備える。
【００２０】
図１に示す通信システムでは、制御装置１０３がネットワークのトポロジを検出する際に利用するフレーム（トポロジ検出用フレーム；例えば、ＬＬＤＰフレーム）の一部に、ＭＣＬＡＧを構成するスイッチの識別情報（例えば、Ｃｈａｓｓｉｓ  ＩＤ）を設定する。当該トポロジ検出用フレームは、指定されたポートから他のスイッチに向けて送信される。この他のスイッチから送信されてくるトポロジ検出用フレームを受信したスイッチは、当該トポロジ検出用フレームを受信したポートと、トポロジ検出用フレームを送信するスイッチの識別情報を対応付けることができる。その結果、スイッチは、上記トポロジ検出用フレームを送信するスイッチと対となってマルチシャーシリンクアグリゲーションを構築する際には、上記トポロジ検出用フレームを受信したポートがスタックポートとして設定されるべきポートであると判断できる。そのため、マルチシャーシリンクアグリゲーションを実現するために必要なスイッチへのスタックポートの設定が、人手を介さず自動的に行える。即ち、一実施形態に係る通信システムでは、ネットワーク内のトポロジを検出する方法を利用して、ＭＣＬＡＧを構築するスイッチのスタックポートを自動的に設定することができる。
【００２１】
以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。なお、各実施形態において同一構成要素には同一の符号を付し、その説明を省略する。
【００２２】
［第１の実施形態］
第１の実施形態について、図面を用いてより詳細に説明する。
【００２３】
図２は、第１の実施形態に係る通信システムの概略構成の一例を示す図である。図２を参照すると、通信システムには、制御装置１０と、スイッチ２０−１及び２０−２と、が含まれる。なお、以降の説明において、スイッチ２０−１、２０−２を区別する特段の理由がない場合には、単に「スイッチ２０」と表記する。
【００２４】
制御装置１０がオープンフローコントローラ（ＯＦＣ；Open Flow Controller）に相当し、スイッチ２０がオープンフロースイッチ（ＯＦＳ；Open Flow Switch）に相当する。また、スイッチ２０−１とスイッチ２０−２がペアとなって、マルチシャーシリンクアグリゲーションを構築する。
【００２５】
制御装置１０とスイッチ２０は、セキュアな制御チャネル（コントロールプレーン；図の点線）により接続されている。また、スイッチ２０同士は、パケット転送用のチャネル（ユーザプレーン；図の実線）により接続されている。制御装置１０は、少なくともスイッチ２０−１、２０−２によるパケット転送を制御する。
【００２６】
次に、図３を参照しつつ、制御装置１０がネットワークシステム（ＯｐｅｎＦｌｏｗネットワーク）のトポロジを検出する際の動作を概説する。
【００２７】
制御装置１０は、トポロジ情報（スイッチ２０間の接続関係に関する情報）を収集するために、ＬＬＤＰ（Link Layer Discovery Protocol）に係るフレーム（即ち、ネットワークのトポロジ検出用フレーム）を利用する。例えば、スイッチ２０−２のポート２６の接続先を調べたい場合には、制御装置１０は、スイッチ２０−２を特定する情報（識別子、ＩＤ；Identifier）とポート２６のポート番号を含むＬＬＤＰフレームを生成する。
【００２８】
次に、制御装置１０は、スイッチ２０−２に対し、生成したＬＬＤＰフレームをポート２６から送出する指示を行う。より具体的には、制御装置１０は、非特許文献２に記載のＰａｃｋｅｔ−Ｏｕｔメッセージ（ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＯＵＴメッセージ３０１）を用いて、ＬＬＤＰフレームの出力を指示する。
【００２９】
スイッチ２０−２は、受信したメッセージに従い、ポート２６から、ＬＬＤＰフレーム３０２を出力する。
【００３０】
ＬＬＤＰフレーム３０２は、スイッチ２０−１のポート２３に到着する。その際、スイッチ２０−１は、自身のフローテーブルを参照し、受信したＬＬＤＰフレーム３０２に合致するマッチ条件の有無を検索する。スイッチ２０−１には、ＬＬＤＰフレーム３０２に対する処理（フロー）は設定されていないので、スイッチ２０−１は、受信したＬＬＤＰフレーム３０２を添えて制御情報の設定を制御装置１０に要求する。具体的には、スイッチ２０−１は、非特許文献２に記載のＰａｃｋｅｔ−Ｉｎメッセージ（ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＩＮメッセージ３０３）を制御装置１０に向けて送信する。
【００３１】
制御装置１０は、受信したＯＦＰＴ＿ＰＡＣＫＥＴ＿ＩＮメッセージ３０３を解析することで、スイッチ２０−１とスイッチ２０−２の間のリンクを検出する（トポロジを検出する）。
【００３２】
制御装置１０は、スイッチ２０−１及び２０−２の各ポートについて、上記の処理を適用し、ネットワークトポロジを収集する。収集されたネットワークトポロジ情報は、内部の記憶部（後述するトポロジ情報記憶部３４）に格納される。
【００３３】
次に、図４を参照しつつ、スイッチ２０−１及び２０−２によるＭＣＬＡＧの構築について説明する。なお、ＭＣＬＡＧの構築には、各スイッチ２０−１、２０−２の識別情報（Ｃｈａｓｓｉｓ  ＩＤ）が必要となる。第１の実施形態では、制御装置１０がスイッチ２０−１、２０−２に問い合わせることで、各スイッチのＣｈａｓｓｉｓ  ＩＤを取得する前提で説明を行う。
【００３４】
初めに、制御装置１０は、図示しない管理端末等からＭＣＬＡＧに関する情報（以下、ＭＣＬＡＧ情報と表記する）を入力し、内部の記憶部に格納する。ＭＣＬＡＧ情報には、ＭＣＬＡＧを構成するスイッチの組（Ｔｒｕｎｋ−Ｇｒｏｕｐ）と、当該ＭＣＬＡＧを構成するスイッチ（Ｔｒｕｎｋ−Ｍｅｍｂｅｒ）を特定する識別子（Ｃｈａｓｓｉｓ  ＩＤ）と、上記ＭＣＬＡＧを構成するスイッチによりリンクアグリゲーションを行う、論理的に１つとみなす仮想ポート（Ｔｒｕｎｋ−Ｐｏｒｔ）と、当該仮想ポートを構成する実在のポート（Ｔｒｕｎｋ−Ｐｏｒｔ−Ｍｅｍｂｅｒ）と、に関する情報が少なくとも含まれる。
【００３５】
制御装置１０は、上記のＭＣＬＡＧ情報に基づき、ＭＣＬＡＧ制御メッセージ３１１、３１２を生成し、ＭＣＬＡＧを構成する各スイッチ２０−１、２０−２に送信する。具体的には、制御装置１０は、ＭＣＬＡＧのメンバポートと、スイッチ２０−１、２０−２のＣｈａｓｓｉｓ  ＩＤと、を含む形式にてＭＣＬＡＧ制御メッセージを生成し、スイッチ２０−１、２０−２のそれぞれに送信する。図４に示す例では、「スイッチ２０−１のＣｈａｓｓｉｓ  ＩＤ、ポート２２のポートＩＤ」と「スイッチ２０−２のＣｈａｓｓｉｓ  ＩＤ、ポート２５のポートＩＤ」がＭＣＬＡＧメンバとして送信される。
【００３６】
スイッチ２０は、上記ＭＣＬＡＧ制御メッセージと、図３を参照して説明したＬＬＤＰフレームから抽出する情報と、に基づいて、スタックポート（Ｓｔａｃｋ−Ｐｏｒｔ）の設定を行う。ＬＬＤＰフレームから抽出する情報やＭＣＬＡＧの設定に関する詳細は後述する。
【００３７】
例えば、上記スタックポートの設定が完了し、スイッチ２０−１のポート２２とスイッチ２０−２のポート２５のそれぞれが、ＭＣＬＡＧに所属させる処理が終了すると、スイッチ２０−１、２０−２によるＭＣＬＡＧ３２０が構築される。
【００３８】
ここで、リンクアグリゲーション（ＬＡＧ；Ｌｉｎｋ  Ａｇｇｒｅｇａｔｉｏｎ）では、ＫｎｏｗｎＵｎｉｃａｓｔフレームを送信する場合には、受信ポートやフレーム情報に基づき、どのメンバポートを送信ポートとするか決定する。
【００３９】
対して、ＭＣＬＡＧでは、メンバポートをＣｈａｓｓｉｓ  ＩＤまで含めて制御し、ＫｎｏｗｎＵｎｉｃａｓｔフレームの送信ポートが自Ｃｈａｓｓｉｓのポートではない場合（自ＣｈａｓｓｉｓのＣｈａｓｓｉｓ  ＩＤではない場合）に、送信ポートのＣｈａｓｓｉｓ  ＩＤを宛先とするスタックポートにフレームを送信する。その際のフレーム送信時には、スタック専用ヘッダ（例えば、Ｈｉｇｉｇ２）によりフレームはエンキャップ（ヘッダによるカプセル化）される。スタック専用ヘッダは、フレームを最初に受信したスイッチが転送方法を判断し、スタックポート経由で他のスイッチに転送方法を伝えるために使用される。ＭＣＬＡＧでは、ヘッダ情報に送信ポート情報を含める。エンキャップされたフレームを受信した対向スイッチは、ヘッダ内の送信ポート情報から、送信ポートを判断する。
【００４０】
なお、図３及び図４を用いて説明したように、スイッチ２０には役割の異なる複数のポートが存在する。具体的には、ＭＣＬＡＧメンバポート（ポート２２、ポート２５）と、スタックポート（ポート２３、ポート２６）と、その他のポート（ポート２１、ポート２４、ポート２７）と、である。
【００４１】
図５は、制御装置１０の内部構成の一例を示す図である。図５を参照すると、制御装置１０は、スイッチ２０と通信を行う通信制御部３１と、制御メッセージ処理部３２と、トポロジ管理部３３と、トポロジ情報記憶部３４と、ＭＣＬＡＧ管理部３５と、ＭＣＬＡＧ情報記憶部３６と、を含んで構成される。なお、制御装置１０は、スイッチに設定するパケット転送経路を計算する手段や、当該パケット転送経路を実現するために各スイッチに設定する制御規則（制御情報）を計算する手段等を含むが、図示を省略している。
【００４２】
制御メッセージ処理部３２は、スイッチ２０や管理端末等から受信したメッセージを解析して、制御装置１０内部の該当する処理手段に引き渡す手段である。あるいは、制御装置１０内部の各処理手段から取得したメッセージを、通信制御部３１を介して、外部に出力する。
【００４３】
トポロジ管理部３３は、通信制御部３１及び制御メッセージ処理部３２を介して、制御装置１０が制御対象とするスイッチ２０の接続情報を集約し、ネットワークのトポロジを管理する手段である。より具体的には、トポロジ管理部３３は、図３を用いて説明したＬＬＤＰフレームを生成し、トポロジ情報を収集する。例えば、トポロジ管理部３３は、スイッチ２０−２を介してスイッチ２０−１に送信されるＬＬＤＰフレーム（ネットワークのトポロジを検出するためのフレーム）の一部に、スイッチ２０−２の識別情報（Ｃｈａｓｓｉｓ  ＩＤ）を設定する。
【００４４】
図６は、トポロジ管理部３３が生成するＬＬＤＰフレームのフォーマットの一例を示す図である。トポロジ管理部３３は、ＬＬＤＰフレームの各種フィールドのうち、装置識別子を格納するフィールド３３１−３に、トポロジの検出対象となるスイッチの識別子（ＤＡＴＡ  ＰＡＴＨ  ＩＤ）を設定（付与）し、ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＩＮメッセージ３０３を受信した際にスイッチ２０−１、２０−２間の接続を検知可能とする。
【００４５】
さらに、トポロジ管理部３３は、ＭＣＬＡＧ情報記憶部３６を参照し、トポロジ検出対象のスイッチがＭＣＬＡＧのメンバとなっている場合には、当該スイッチのＣｈａｓｓｉｓ  ＩＤをＬＬＤＰフレームの生成に利用する（スイッチ２０から取得したＣｈａｓｓｉｓ  ＩＤを利用する）。例えば、図３、図４において、スイッチ２０−２に関するトポロジを検出する場合であって、スイッチ２０−２によりＭＣＬＡＧが構築される場合には、スイッチ２０−２のＣｈａｓｓｉｓ  ＩＤを使用する。
【００４６】
トポロジ管理部３３は、上記取得したスイッチのＣｈａｓｓｉｓ  ＩＤ（例えば、スイッチ２０−２のＣｈａｓｓｉｓ  ＩＤ）をフィールド３３１−６に設定する。例えば、スイッチ２０−２のＣｈａｓｓｉｓ  ＩＤをＬＬＤＰフレームの一領域（フィールド３３１−６）に設定することで、当該ＬＬＤＰフレームを受信したスイッチ２０−１は、対向装置であるスイッチ２０−２のＣｈａｓｓｉｓ  ＩＤを取得（検知）できる。つまり、ＬＬＤＰフレームの一領域に、スイッチのＣｈａｓｓｉｓ  ＩＤを埋め込むことで、ＬＬＤＰフレームを受信したスイッチは、自装置に直接接続されているスイッチのＣｈａｓｓｉｓ  ＩＤを取得することができる。
【００４７】
なお、ＬＬＤＰフレームのフィールド３３１の領域は、制御装置１０が参照するフィールドと、スイッチ２０が参照するフィールドと、に区分される。具体的には、フィールド３３１−１〜３３１−３は制御装置１０が参照する領域、フィールド３３１−４〜３３１−６はスイッチ２０が参照する領域、とそれぞれ定義されている。換言するならば、フィールド３３１−１〜３３１−３は、制御装置１０がネットワークのトポロジを検出するための領域であり、フィールド３３１−４〜３３１−６は、スイッチがＭＣＬＡＧのスタックポートを設定するための領域である。
【００４８】
ＭＣＬＡＧ管理部３５は、スイッチ２０−１、２０−２からなるＭＣＬＡＧに関する情報を管理する手段である。ＭＣＬＡＧ管理部３５は、外部から入力されるＭＣＬＡＧ情報を管理し、スイッチ２０へのＭＣＬＡＧ設定を制御する手段である。ＭＣＬＡＧ管理部３５は、外部から取得したＭＣＬＡＧ情報を、ＭＣＬＡＧ情報記憶部３６に格納する。
【００４９】
図７は、ＭＣＬＡＧ情報記憶部３６が記憶するＭＣＬＡＧ情報の一例を示す図である。ＭＣＬＡＧ管理部３５は、スイッチ２０−１、２０−２によるＭＣＬＡＧを構築する際、ＭＣＬＡＧ情報記憶部３６を参照し、少なくともＭＣＬＡＧメンバに関する情報（図７のTrunk-Port-Member）をスイッチ２０−１、２０−２に、ＭＣＬＡＧに関する設定情報として送信する。つまり、ＭＣＬＡＧ管理部３５は、スイッチ２０−１の識別情報と、スイッチ２０−１のポートであって、マルチシャーシリンクアグリゲーションのメンバポートを特定する情報（例えば、ポートＩＤ）と、スイッチ２０−２の識別情報と、スイッチ２０−２のポートであって、マルチシャーシリンクアグリゲーションのメンバポートを特定する情報と、を少なくとも含む設定情報を、スイッチ２０−１、２０−２それぞれに対し、通信制御部３１を介して送信する。
【００５０】
図８は、スイッチ２０−１の内部構成の一例を示す図である。なお、スイッチ２０−１とスイッチ２０−２は同様の内部構成とすることが可能であるので、スイッチ２０−２に関する詳細な説明は省略する。
【００５１】
図８を参照すると、スイッチ２０−１は、各種のポート２１〜２４と、フレーム処理部４１と、スタック処理部４２と、ポート処理部４３と、スタック情報記憶部４４と、を含んで構成される。なお、図８において、制御装置１０から送信される制御情報（フローエントリ）を記憶する記憶部の図示を省略している。
【００５２】
各種のポート２１〜２４からなるポート群は、ＮＩＣ（Network Interface Card）等のハードウェアの一部として構成される。フレーム処理部４１、スタック処理部４２及びポート処理部４３は、ＣＰＵ（Central Processing Unit）上にて実行されるプログラム（ソフトウェア）により実現される機能モジュールである。
【００５３】
ここでは、図８を参照しつつ、各種機能モジュールの動作とモジュール間の制御、及びフレーム転送の流れ（動き）を説明する。なお、図８において、実線の矢印は機能モジュール間のデータ授受や制御を示し、点線の矢印はフレームの転送（移動）を示す。
【００５４】
スイッチ２０−１のポート２１〜２４は、上記機能モジュールからの指示により、各ポート２１〜２４で受信したフレームを他のポートに転送する、又は、機能モジュールに送信する。なお、フレームの送信時には、フレームの一部が変更される場合もある。具体的には、スタックポートにてスタック専用のヘッダがエンキャップされたフレームを受信した場合には、当該ヘッダはデキャップされて転送される。
【００５５】
フレーム処理部４１等の機能モジュールは、各ポート２１〜２４（ハードウェア）を制御するために構成されている。
【００５６】
フレーム処理部４１は、ポートからフレームを受信すると、制御装置１０により設定されたフロー制御に従ったフレームの送受信を行う。また、フレーム処理部４１は、ポートからフレームを受信した場合に、フレームの一部から情報を抽出する。具体的には、フレーム処理部４１は、スイッチ２０−２からＬＬＤＰフレームを受信した場合には、当該ＬＬＤＰフレームの所定領域を参照し、対向するスイッチ２０−２の識別情報（Ｃｈａｓｓｉｓ  ＩＤ）を抽出する。
【００５７】
フレーム処理部４１は、抽出した情報をスタック処理部４２に引き渡す。また、フレーム処理部４１は、制御装置１０に対しＯＰＦＴ＿ＰＡＣＫＥＴ＿ＩＮメッセージを送信する指示をポート（ハードウェア）に行う。さらに、フレーム処理部４１は、制御装置１０からＯＰＦＴ＿ＰＡＣＫＥＴ＿ＯＵＴメッセージを受信した場合には、他のスイッチ２０に向けたフレーム送信をポート（ハードウェア）に指示する。
【００５８】
スタック処理部４２は、フレーム処理部４１から取得した情報（フレーム処理部４１が抽出した情報）に基づき、スタックポートに関する処理を行う。また、スタック処理部４２は、フレーム処理部４１から取得したスタックポート設定に必要な情報を、スタック情報記憶部４４に格納する。具体的には、スタック処理部４２は、スイッチ２０−１と対向するスイッチであるスイッチ２０−２のＣｈａｓｓｉｓ  ＩＤと、ＬＬＤＰフレームの受信ポートのＩＤと、を関連付けてスタック情報としてスタック情報記憶部４４に格納する（図９参照）。
【００５９】
また、スタック処理部４２は、ポート処理部４３からのスタックポート設定の依頼を受信すると、スタック情報記憶部４４に格納されたスタック情報に基づき、スタックポート設定をポート処理部４３に指示する。より具体的には、スタック処理部４２は、フレーム処理部４１により抽出されたスイッチ２０−２の識別情報（Ｃｈａｓｓｉｓ  ＩＤ）に基づき、スイッチ２０−２が出力するＬＬＤＰフレームを受信したポートを特定し、当該受信ポートをスタックポートとして設定するように、ポート処理部４３に指示する。
【００６０】
なお、後述するように、スタック処理部４２は、ポート処理部４３からスタックポート設定の依頼を受信する際には、合わせて、制御装置１０が送信する設定情報（ＭＣＬＡＧ制御メッセージにより送信される設定情報）をポート処理部４３から取得する。スタック処理部４２は、当該設定情報により、自スイッチ（ここでは、スイッチ２０−１）に対向するスイッチを特定可能（対向するスイッチ２０−２のＣｈａｓｓｉｓ  ＩＤを特定可能）であり、スタック情報を参照することで、スタックポートに設定すべきポートを決定できる。
【００６１】
ポート処理部４３は、フレーム処理部４１を経由して制御装置１０からＭＣＬＡＧ制御メッセージを受信した場合に、スタック処理部４２に対してスタックポートの設定を依頼（スタック制御を指示）する。その際、ポート処理部４３は、ＭＣＬＡＧ制御メッセージをスタック処理部４２に引き渡す。また、ポート処理部４３は、スタック処理部４２からの指示に従い、ポート（ハードウェア）にスタックポートの設定やＭＣＬＡＧ設定を指示する。
【００６２】
上記機能モジュールの働きにより、スイッチ２０−１の各ポート２１〜２４が受信するフレームは、以下のように転送、送受信される。
【００６３】
ＬＬＤＰフレーム３０２は、フレーム処理部４１を経由してＯＦＰＴ＿ＰＡＣＫＥＴ＿ＩＮメッセージ３０３として制御装置１０に送信される。Ｅｔｈｅｒｎｅｔフレーム３２１は、スタックポートとして設定されたポート２３からスイッチ２０−２に送信される場合に、スタック専用のヘッダがエンキャップされたフレーム３２２として送信される。
【００６４】
ここで、スイッチ２０−１のポート２３と、スイッチ２０−２のポート２６に対するスタックポートに係る設定と、スイッチ２０−１のポート２２とスイッチ２０−２のポート２５により構築されるＭＣＬＡＧ３２０の設定が完了すると、図４に示すフレーム転送が実現される。図４に示すＥｔｈｅｒｎｅｔフレーム３２１は、スイッチ２０−１のスタックポートであるポート２３を経由することで、フレーム３２２にエンキャップされる。当該フレーム３２２が、スイッチ２０−２のスタックポートであるポート２６を経由することで、フレーム３２２はデキャップされ、Ｅｔｈｅｒｎｅｔフレーム３２３としてシステム外装置であるＬ２スイッチ３０に到達する。
【００６５】
次に、図１０及び図１１を参照しつつ、スタックポートの自動設定に関する説明を行う。図１０は、制御装置１０が、ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＯＵＴメッセージ３０１をスイッチ２０−２に送信した場合の動作を示す。
【００６６】
ステップＳ１０１において、制御装置１０は、ＬＬＤＰフレーム３０２をＯＦＰＴ＿ＰＡＣＫＥＴ＿ＯＵＴメッセージ３０１に付与して、スイッチ２０−２に送信する。その際、制御装置１０は、図６に示すＬＬＤＰフレームのフィールド３３１−６に、予めＭＣＬＡＧ設定のためにスイッチ２０−２から取得しておいたＣｈａｓｓｉｓ  ＩＤを設定する。
【００６７】
ステップＳ１０２において、スイッチ２０−２は、ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＯＵＴメッセージ３０１に従い、ＬＬＤＰフレーム３０２をスイッチ２０−１に向けて送信する。
【００６８】
ステップＳ１０３において、スイッチ２０−１は、ＬＬＤＰフレーム３０２を、ポート２３にて受信する。
【００６９】
ステップＳ１０４において、フレーム処理部４１は、制御装置１０から指示されているフロー制御に従い、スイッチ２０−１のポート２３からＬＬＤＰフレーム３０２を受信する。
【００７０】
ステップＳ１０５において、フレーム処理部４１は、受信したＬＬＤＰフレーム３０２から対向するスイッチであるスイッチ２０−２のＣｈａｓｓｉｓ  ＩＤを抽出し、ＬＬＤＰフレーム３０２の受信ポートであるポート２３のＩＤ（ポートＩＤ）と合わせて、スタック処理部４２に引き渡す。
【００７１】
ステップＳ１０６において、スタック処理部４２は、上記の情報（Ｃｈａｓｓｉｓ  ＩＤ、ポートＩＤ）をスタック情報記憶部４４に格納し、フレーム処理部４１に情報の格納が完了した旨を通知する（制御を返却する）。
【００７２】
ステップＳ１０７において、フレーム処理部４１は、制御装置１０から指示されていたフロー制御に従い、ＬＬＤＰフレーム３０２をＯＦＰＴ＿ＰＡＣＫＥＴ＿ＩＮメッセージ３０３に付与し、ポート２４からの送信を指示する。
【００７３】
ステップＳ１０８において、ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＩＮメッセージ３０３がポート２４から制御装置１０に向けて送信される。
【００７４】
なお、図１０のフローチャートは、スイッチ２０−２からスイッチ２０−１に向けたＬＬＤＰフレームの送信時の動作を示すものであるが、逆方向（スイッチ２０−１からスイッチ２０−２）のＬＬＤＰフレーム送信時の操作も、ステップＳ１０１〜Ｓ１０８に係る処理が実行される。その結果、スイッチ２０−２においても、スタック情報（Ｃｈａｓｓｉｓ  ＩＤ、ポートＩＤ）がスタック情報記憶部４４に格納される。
【００７５】
図１１は、制御装置１０が、ＭＣＬＡＧ制御メッセージ３１２をスイッチ２０−１に送信した場合の動作を示す。
【００７６】
ステップＳ２０１において、制御装置１０は、スイッチ２０−１のポート２２とスイッチ２０−２のポート２５により構築されるＭＣＬＡＧの設定情報を、ＭＣＬＡＧ制御メッセージ３１２に付与し、スイッチ２０−１に向けて送信する。
【００７７】
ステップＳ２０２において、スイッチ２０−１のポート処理部４３は、フレーム処理部４１を経由してＭＣＬＡＧ制御メッセージ３１２を受信し、その後、スタック制御をスタック処理部４２に指示する。なお、スイッチ２０−１が受信するＭＣＬＡＧ制御メッセージ３１２には、ＭＣＬＡＧのメンバポートがスイッチ２０のＣｈａｓｓｉｓ  ＩＤを含む形式にて記載されている。具体的には、ＭＣＬＡＧメンバとして、（スイッチ２０−１のＣｈａｓｓｉｓＩＤ、ポート２２のポートＩＤ）、（スイッチ２０−２のＣｈａｓｓｉｓＩＤ、ポート２５のポートＩＤ）といった情報が、ＭＣＬＡＧ制御メッセージ３１２に含まれる。
【００７８】
ステップＳ２０３において、スタック処理部４２は、スタック情報記憶部４４から、対向するスイッチであるスイッチ２０−２のＣｈａｓｓｉｓ  ＩＤを取得し、ポート処理部４３に対して、ポート２３をスタックポートに設定する指示を行う。
【００７９】
ステップＳ２０４において、ポート処理部４３は、ポート（ハードウェア）に、スイッチ２０−２のＣｈａｓｓｉｓ  ＩＤ宛てフレームをスタック専用ヘッダでエンキャップし、スイッチ２０−１のポート２３からスイッチ２０−２のポート２６に向けて送信するスタックポート設定を行う。
【００８０】
ステップＳ２０５において、ポート処理部４３は、スタック制御の完了に伴い、ポート（ハードウェア）に、スイッチ２０−１のポート２２と、スイッチ２０−２のポート２５を、ＭＣＬＡＧ３２０に所属させる設定を行う。
【００８１】
スイッチ２０−２においても同様に、ステップＳ２０１〜Ｓ２０５の処理が実行され、ポート２６のスタックポート設定とＭＣＬＡＧ３２０の設定が実施される。
【００８２】
次に、図１２を参照しつつ、スタックポート設定後のフレーム転送動作を説明する。図１２は、スイッチ２０−１が、Ｅｔｈｅｒｎｅｔフレーム３２１を受信したときの動作の一例を示す図である。
【００８３】
ステップＳ３０１において、スイッチ２０−１は、ポート２１にてＥｔｈｅｒｎｅｔフレーム３２１を受信する。
【００８４】
ステップＳ３０２において、スイッチ２０−１は、Ｅｔｈｅｒｎｅｔフレーム３２１の転送先が、スイッチ２０−２のＣｈａｓｓｉｓ  ＩＤである場合に、Ｅｔｈｅｒｎｅｔフレーム３２１をスタック専用ヘッダでエンキャップしたフレーム３２２を、ポート２３からポート２６に向けて送信する。
【００８５】
ステップＳ３０３において、スイッチ２０−２は、ポート２６で受信したフレーム３２２の転送先を、スタック専用ヘッダから判断し、スタック専用ヘッダをデキャップしたＥｔｈｅｒｎｅｔフレーム３２３をポート２５から送信する。
【００８６】
以上のように、第１の実施形態に係る通信システムでは、制御装置１０がネットワークのトポロジを検出する際に利用するＬＬＤＰフレームの一部（一領域）に、ＭＣＬＡＧを構成するスイッチの識別情報（Ｃｈａｓｓｉｓ  ＩＤ）を設定する。ＬＬＤＰフレームを受信したスイッチは、当該ＬＬＤＰフレームを指定されたポートから他のスイッチに向けて送信する。転送されてくるＬＬＤＰフレームを受信したスイッチは、当該ＬＬＤＰフレームを受信したポートと、ＬＬＤＰフレームを転送するスイッチの識別情報（Ｃｈａｓｓｉｓ  ＩＤ）を対応付けることができる。その結果、スイッチは、上記ＬＬＤＰフレームを転送するスイッチとＭＣＬＡＧを構築する際には、上記ＬＬＤＰフレームを受信したポートがスタックポートとして設定されるべきポートであると判断できる。そのため、マルチシャーシリンクアグリゲーションを実現するために必要なスイッチへのスタックポートの設定が、人手を介さず自動的に行える。
【００８７】
また、上記構成により、ユーザ（ネットワーク管理者）は、スタックポートを意識して実施していたコンフィグが不要となり、ネットワーク局を構築する際の工数を削減することができる。さらに、スタックポートに障害が発生した場合に、代替ポートへの経路切り替えが、制御装置１０から制御することも可能となる。
【００８８】
［変形例］
なお、第１実施形態にて説明したシステムの構成や動作は例示であって、システムの構成を限定する趣旨ではない。
【００８９】
例えば、第１の実施形態では、予め制御装置１０がスイッチ２０からＣｈａｓｓｉｓ  ＩＤを取得することを前提としている。しかし、制御装置１０において、Ｃｈａｓｓｉｓ  ＩＤまで含めて集中制御する方法であってもよい。
【００９０】
具体的には、制御装置１０は、以下の手順にてＣｈａｓｓｉｓ  ＩＤまで含めた集中制御を行う。
【００９１】
初めに、制御装置１０のＭＣＬＡＧ管理部３５は、各スイッチのＣｈａｓｓｉｓ  ＩＤを生成する。次に、トポロジ管理部３３は、当該生成されたＣｈａｓｓｉｓ  ＩＤをＬＬＤＰフレームに付与して、ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＯＵＴメッセージを各スイッチに送信する。
【００９２】
次に、例えば、スイッチ２０−２が、ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＯＵＴメッセージを受信した際、スタック情報記憶部４４に、ＬＬＤＰフレームに含まれるＣｈａｓｓｉｓ  ＩＤを、自装置（スイッチ２０−２）のＣｈａｓｓｉｓ  ＩＤとして格納する。
【００９３】
その後、スイッチ２０−２が、制御装置１０からＭＣＬＡＧ制御メッセージを受信した際に、スタック情報記憶部４４に存在する自装置のＣｈａｓｓｉｓ  ＩＤをポート（ハードウェア）に設定した上で、スタックポート設定とＭＣＬＡＧ設定を実施する。つまり、スイッチ２０−２は、自身の識別情報をＬＬＤＰフレームから抽出し、自身の識別情報として扱う。
【００９４】
また、第１の実施形態では、スイッチ２０−１とスイッチ２０−２間の１つの物理ポートがスタックポートとして機能する場合を説明した。しかし、２つ以上の物理ポートが使用されてスタックポート設定が行われてもよい。
【００９５】
この場合、初めに、各物理ポートでＬＬＤＰフレームを受信した時にスタック情報記憶部４４に、各ポートのＩＤとＣｈａｓｓｉｓ  ＩＤの情報が格納される。その後、各スイッチにてＭＣＬＡＧ制御メッセージ３１１、３１２を受信した場合に、スタック情報記憶部４４の異なるポートＩＤで同じＣｈａｓｓｉｓ  ＩＤの情報が抽出され、それらのポートをＬｉｎｋ  Ａｇｇｒｅｇａｔｉｏｎポートとして設定した上で、当該Ｌｉｎｋ  Ａｇｇｒｅｇａｔｉｏｎポートにスタックポート設定が実施されればよい。
【００９６】
制御装置１０のトポロジ管理部３３、ＭＣＬＡＧ管理部３５等の各部が行う処理は、制御装置１０に搭載されたコンピュータに、そのハードウェアを用いて、上述した各処理を実行させるコンピュータプログラムにより実現できる。同様に、スイッチ２０のフレーム処理部４１、スタック処理部４２、ポート処理部４３等の各部が行う処理は、スイッチ２０に搭載されたコンピュータに、そのハードウェアを用いて、上述した各処理を実行させるコンピュータプログラムにより実現できる。
【００９７】
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
［付記１］
上述の第１の視点に係る通信システムのとおりである。
［付記２］
前記制御装置は、
前記第１及び第２のスイッチからなるマルチシャーシリンクアグリゲーションに関する情報を管理し、前記第１のスイッチの識別情報と、前記第１のスイッチのポートであって、マルチシャーシリンクアグリゲーションのメンバポートを特定する情報と、前記第２のスイッチの識別情報と、前記第２のスイッチのポートであって、マルチシャーシリンクアグリゲーションのメンバポートを特定する情報と、を少なくとも含む設定情報を、前記第１及び第２のスイッチに対し、前記通信部を介して送信する、マルチシャーシリンクアグリゲーション管理部をさらに含む、付記１の通信システム。
［付記３］
前記スタック処理部は、
前記制御装置から受信した前記設定情報により、前記第２のスイッチを対向するスイッチとして特定する、付記２の通信システム。
［付記４］
前記第１のスイッチは、
前記制御装置から受信した前記設定情報に基づき、マルチシャーシリンクアグリゲーションのメンバポートを設定する、付記２又は３の通信システム。
［付記５］
前記マルチシャーシリンクアグリゲーション管理部は、少なくとも前記第２のスイッチの識別情報を生成し、
前記トポロジ管理部は、前記生成された前記第２のスイッチの識別情報を、前記フレームの一部に設定し、
前記第２のスイッチは、前記第２のスイッチの識別情報を前記フレームから抽出し、自身の識別情報として扱う、付記２乃至４のいずれか一に記載の通信システム。
［付記６］
前記トポロジ管理部が、前記第２のスイッチを介して前記第１のスイッチに送信するフレームは、ＬＬＤＰ（Link Layer Discovery Protocol）によるフレームである、付記１乃至５のいずれか一に記載の通信システム。
［付記７］
上述の第２の視点に係る制御装置のとおりである。
［付記８］
上述の第３の視点に係るスイッチのとおりである。
［付記９］
上述の第４の視点に係る通信方法のとおりである。
［付記１０］
上述の第５の視点に係るプログラムのとおりである。
なお、付記７〜付記１０の形態は、付記１の形態と同様に、付記２の形態〜付記６の形態に展開することが可能である。
【００９８】
なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【００９９】
１０、１０３  制御装置
２０、２０−１、２０−２  スイッチ
２１〜２７  ポート
３０  Ｌ２スイッチ
３１  通信制御部
３２  制御メッセージ処理部
３３、１１１  トポロジ管理部
３４  トポロジ情報記憶部
３５  ＭＣＬＡＧ管理部
３６  ＭＣＬＡＧ情報記憶部
４１、１２１  フレーム処理部
４２、１２２  スタック処理部
４３  ポート処理部
４４  スタック情報記憶部
１０１  第１のスイッチ
１０２  第２のスイッチ
１１２  通信部
３０１  ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＯＵＴメッセージ
３０２  ＬＬＤＰフレーム
３０３  ＯＦＰＴ＿ＰＡＣＫＥＴ＿ＩＮメッセージ
３１１、３１２  ＭＣＬＡＧ制御メッセージ
３２０  マルチシャーシリンクアグリゲーション（ＭＣＬＡＧ）
３２１、３２３  Ｅｔｈｅｒｎｅｔフレーム
３２２  フレーム
３３１、３３１−１〜３３１−６  ＬＬＤＰフレームのフィールド
【図１】
2017050708.tif 000003
【図２】
2017050708.tif 000004
【図３】
2017050708.tif 000005
【図４】
2017050708.tif 000006
【図５】
2017050708.tif 000007
【図６】
2017050708.tif 000008
【図７】
2017050708.tif 000009
【図８】
2017050708.tif 000010
【図９】
2017050708.tif 000011
【図１０】
2017050708.tif 000012
【図１１】
2017050708.tif 000013
【図１２】
2017050708.tif 000014