(57)【要約】  ネットワーク全体としての負荷分散と冗長性確保と、特定のリンクにおける負荷分散と冗長性確保とを両立する。通信システムは、パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノードと、前記ノードを含むネットワーク中のトランキングされたリンクを管理するトランクポート管理部と、任意のノードから処理規則の設定を要求されたパケットの特徴に応じて、前記トランキングされたリンクを利用するか否かを判別し、トランキングされたリンクを利用する場合は所定の規則によりトランキングされたいずれかのリンクを選択する経路制御部と、を含む。前記制御装置は、前記選択したリンクを含むパケット転送経路を計算し、前記パケット転送経路上のノードに対し、前記パケット転送経路を実現する処理規則を設定する。（図１）
2012050071.tif 000002
【特許請求の範囲】
【請求項１】
パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノードと、
前記ノードを含むネットワーク中のトランキングされたリンクを管理するトランクポート管理部と、
任意のノードから処理規則の設定を要求されたパケットの特徴に応じて、前記トランキングされたリンクを利用するか否かを判別し、トランキングされたリンクを利用する場合は所定の規則によりトランキングされたいずれかのリンクを選択する経路制御部と、を備え、
前記ネットワークのトポロジーに基づいて、前記選択したリンクを含むパケット転送経路を計算するとともに、前記パケット転送経路上のノードに対し、前記パケット転送経路を実現する処理規則を設定する制御装置と、を含むこと、
を特徴とする通信システム。
【請求項２】
前記制御装置は、前記任意のノードから処理規則の設定を要求されたパケットの出力ポートがトランキングされたポートであるか否かにより、前記トランキングされたリンクを利用するか否かを判別する請求項１の通信システム。
【請求項３】
前記制御装置は、前記トランキングされたリンクにおける負荷または障害に応じて、前記パケット転送経路中のリンクをトランキングされた他のリンクに切り替える動作を行う請求項１または２の通信システム。
【請求項４】
前記制御装置は、前記任意のノードから処理規則の設定を要求されたパケットのヘッダの所定のフィールドに書き込まれた情報に基づいて、トランキングされたリンクを利用するか否かを判別する請求項１から３いずれか一の通信システム。
【請求項５】
前記制御装置は、前記任意のノードから処理規則の設定を要求されたパケットの送信元または宛先に基づいて、トランキングされたリンクを利用するか否かを判別する請求項１から３いずれか一の通信システム。
【請求項６】
パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノードと接続され、
前記ノードを含むネットワーク中のトランキングされたリンクを管理するトランクポート管理部と、
任意のノードから処理規則の設定を要求されたパケットの特徴に応じて、前記トランキングされたリンクを利用するか否かを判別し、トランキングされたリンクを利用する場合は所定の規則によりトランキングされたいずれかのリンクを選択する経路制御部と、を備え、
前記ネットワークのトポロジーに基づいて、前記選択したリンクを含むパケット転送経路を計算するとともに、前記パケット転送経路上のノードに対し、前記パケット転送経路を実現する処理規則を設定する制御装置。
【請求項７】
前記任意のノードから処理規則の設定を要求されたパケットの出力ポートがトランキングされたポートであるか否かにより、前記トランキングされたリンクを利用するか否かを判別する請求項６の制御装置。
【請求項８】
前記トランキングされたリンクにおける負荷または障害に応じて、前記パケット転送経路中のリンクをトランキングされた他のリンクに切り替える動作を行う請求項６または７の制御装置。
【請求項９】
パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノードと、
前記ノードを含むネットワーク中のトランキングされたリンクを管理するトランクポート管理部を備えた制御装置と、を含む通信システムにおける前記処理規則の設定方法であって、
任意のノードから処理規則の設定を要求されたパケットの特徴に応じて、前記トランキングされたリンクを利用するか否かを判別するステップと、
前記トランキングされたリンクを利用する場合は所定の規則によりトランキングされたいずれかのリンクを選択するステップと、
前記ネットワークのトポロジーに基づいて、前記選択したリンクを含むパケット転送経路を計算するとともに、前記パケット転送経路上のノードに対し、前記パケット転送経路を実現する処理規則を設定するステップと、を含む
処理規則の設定方法。
【請求項１０】
パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノードと接続され、
前記ノードを含むネットワーク中のトランキングされたリンクを管理するトランクポート管理部を備えた制御装置に実行させるプログラムであって、
任意のノードから処理規則の設定を要求されたパケットの特徴に応じて、前記トランキングされたリンクを利用するか否かを判別する処理と、
前記トランキングされたリンクを利用する場合は所定の規則によりトランキングされたいずれかのリンクを選択する処理と、
前記ネットワークのトポロジーに基づいて、前記選択したリンクを含むパケット転送経路を計算するとともに、前記パケット転送経路上のノードに対し、前記パケット転送経路を実現する処理規則を設定する処理と、を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願についての記載］
本発明は、日本国特許出願：特願２０１０−２３１６３５号（２０１０年１０月１４日出願）の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、通信システム、制御装置、処理規則の設定方法およびプログラムに関し、特に、パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットの転送等を行うノードを含む通信システム、制御装置、ノード制御方法およびプログラムに関する。
【背景技術】
【０００２】
近年、オープンフロー（ＯｐｅｎＦｌｏｗ）というネットワークアーキテクチャが注目を浴びている（特許文献１、非特許文献１、２参照）。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。中継装置として機能するオープンフロースイッチは、制御装置と位置付けられるオープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチングルール（ヘッダフィールド）と、フロー統計情報（Ｃｏｕｎｔｅｒｓ）と、マッチングルール（ヘッダフィールド）に適合するパケットに適用する処理内容を定義したアクション（Ａｃｔｉｏｎｓ）と、の組が定義される（図７参照）。【０００３】
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチングルール（図７のヘッダフィールド参照）を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報（カウンタ）を更新するとともに、受信パケットに対して、当該エントリのアクションフィールドに記述された処理内容（指定ポートからのパケット送信、フラッディング、廃棄等）を実施する。一方、前記検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対して受信パケットを転送し、受信パケットの送信元・送信先に基づいたパケットの経路の決定を依頼し、これを実現するフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを処理規則として用いてパケット転送を行っている。【０００４】
また、特許文献２および非特許文献３には、トランキング（Ｔｒａｎｋｉｎｇ）、リンクアグリゲーションなどと呼ばれるリンク集約手法が記載されている。これらは、各ネットワーク機器のベンダ等により、それぞれ自社の装置を機能名称としてポートトランキング、ボンディング（Ｂｏｎｄｉｎｇ）、チーミング（Ｔｅａｍｉｎｇ）などとも呼ばれているものである。いずれも、同一区間の複数のリンクを仮想的な一つのリンクとして扱い、冗長化（可用性向上）、負荷分散、並列化等を行うものである。以下、同一区間の複数のリンクを束ね、仮想的に１つのリンクとして扱う手法を総称して「トランキング」と称し、また、トランキングされたリンクに繋がっているポートを「トランクポート」と称する。【０００５】
また、特許文献３には、各々がマルチプルスパニングツリープロトコルをサポートしている複数のスイッチで構成されているブリッジド・ネットワークにおいて、個々のスイッチが端末側から個別宛先アドレスを有するフレームを受信したとき、該デフォルト・スパニングツリーを経由して該個別アドレスの宛先端末に問合せフレームを送出するとともに、該問合せフレームを受信したとき、該宛先端末が接続されていれば、問合せ応答フレームを全スパニングツリーに送出する送受信部と、全スパニングツリーからの該応答フレーム中の情報に基づき最適なスパニングツリーを選択する最適経路選択処理部とを備えた構成が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２００８／０９５０１０号
【特許文献２】特許第３７９２７０７号公報
【特許文献３】特開２００３−８７２９０号公報
【非特許文献】
【０００７】
【非特許文献１】Nick McKeownほか７名、“OpenFlow: Enabling Innovation in Campus Networks”、［online］、［平成22(2010)年9月6日検索］、インターネット〈URL：http://www.openflowswitch.org/documents/openflow-wp-latest.pdf〉
【非特許文献２】"OpenFlow Switch Specification" Version 1.0.0. (Wire Protocol 0x01) ［平成22(2010)年9月6日検索］、インターネット〈URL：http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf〉
【非特許文献３】IEEE Standard 802.3ad, Aggregation of Multiple Link Segments, 2000.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記特許文献１−３及び非特許文献１−３の全開示内容はその引用をもって本書に繰込み記載する。
以下の分析は、本発明によってなされたものである。
特許文献１、非特許文献１、２のオープンフローアーキテクチャでは、制御装置（オープンフローコントローラ）が配下のオープンフロースイッチをあたかも一つの巨大なスイッチとして扱うものであるため、全体としての負荷分散と冗長性確保を実現することが可能であるが、ホストとオープンフロースイッチ間、オープンフロースイッチ−オープンフロースイッチ間といった特定のリンクにおける負荷分散と冗長性確保は考慮されていないという問題点がある。【０００９】
また、特許文献２、３、非特許文献３のトランキングは、上記したとおり、同一区間の複数のリンク間で負荷分散と冗長性確保を行うものであり、当該区間にある装置そのものに負荷増大や故障等が生じた場合に、対応できないという問題点がある。【００１０】
本発明は、上記した事情に鑑みてなされたものであって、その目的とするところは、上記ネットワーク全体としての負荷分散と冗長性確保（可用性向上）と、特定のリンクにおける負荷分散と冗長性確保とを両立することのできる通信システム、制御装置、処理規則の設定方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の第１の視点によれば、パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノードと、前記ノードを含むネットワーク中のトランキングされたリンクを管理するトランクポート管理部と、任意のノードから処理規則の設定を要求されたパケットの特徴に応じて、前記トランキングされたリンクを利用するか否かを判別し、トランキングされたリンクを利用する場合は所定の規則によりトランキングされたいずれかのリンクを選択する経路制御部と、を備え、前記ネットワークのトポロジーに基づいて、前記選択したリンクを含むパケット転送経路を計算するとともに、前記パケット転送経路上のノードに対し、前記パケット転送経路を実現する処理規則を設定する制御装置と、を含むこと、を特徴とする通信システムが提供される。【００１２】
本発明の第２の視点によれば、パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノードと接続され、前記ノードを含むネットワーク中のトランキングされたリンクを管理するトランクポート管理部と、任意のノードから処理規則の設定を要求されたパケットの特徴に応じて、前記トランキングされたリンクを利用するか否かを判別し、トランキングされたリンクを利用する場合は所定の規則によりトランキングされたいずれかのリンクを選択する経路制御部と、を備え、前記ネットワークのトポロジーに基づいて、前記選択したリンクを含むパケット転送経路を計算するとともに、前記パケット転送経路上のノードに対し、前記パケット転送経路を実現する処理規則を設定する制御装置が提供される。【００１３】
本発明の第３の視点によれば、パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノードと、前記ノードを含むネットワーク中のトランキングされたリンクを管理するトランクポート管理部を備えた制御装置と、を含む通信システムにおける前記処理規則の設定方法であって、任意のノードから処理規則の設定を要求されたパケットの特徴に応じて、前記トランキングされたリンクを利用するか否かを判別するステップと、前記トランキングされたリンクを利用する場合は所定の規則によりトランキングされたいずれかのリンクを選択するステップと、前記ネットワークのトポロジーに基づいて、前記選択したリンクを含むパケット転送経路を計算するとともに、前記パケット転送経路上のノードに対し、前記パケット転送経路を実現する処理規則を設定するステップと、を含む処理規則の設定方法が提供される。本方法は、上記した複数のノードを制御する制御装置という、特定の機械に結びつけられている。【００１４】
本発明の第４の視点によれば、パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノードと接続され、前記ノードを含むネットワーク中のトランキングされたリンクを管理するトランクポート管理部を備えた制御装置に実行させるプログラムであって、任意のノードから処理規則の設定を要求されたパケットの特徴に応じて、前記トランキングされたリンクを利用するか否かを判別する処理と、前記トランキングされたリンクを利用する場合は所定の規則によりトランキングされたいずれかのリンクを選択する処理と、前記ネットワークのトポロジーに基づいて、前記選択したリンクを含むパケット転送経路を計算するとともに、前記パケット転送経路上のノードに対し、前記パケット転送経路を実現する処理規則を設定する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１５】
本発明によれば、ネットワーク全体としての負荷分散と冗長性確保と、特定のリンクにおける負荷分散と冗長性確保とを両立することが可能となる。
【図面の簡単な説明】
【００１６】
【図１】本発明の概要を説明するための図である。
【図２】本発明の第１の実施形態の構成を表した図である。
【図３】本発明の第１の実施形態のトランクポート管理部に保持されるテーブルの一例である。
【図４】本発明の第１の実施形態のトランクポート管理部に保持されるテーブルの別の一例である。
【図５】本発明の第１の実施形態の動作を説明するためのシーケンス図である。
【図６】本発明の第２の実施形態の動作を説明するためのシーケンス図である。
【図７】非特許文献２に記載のフローエントリの構成を表した図である。
【発明を実施するための形態】
【００１７】
はじめに、本発明の一実施形態の概要について説明する。本発明は、その一実施形態において、図１に示すように、ホスト２０１、２０２間に配置され、パケットに適用する処理と前記処理を適用するパケットを特定するための照合規則とを対応付けた処理規則に従って受信パケットを処理するパケット処理部を備える複数のノード１０１〜１０３と、これらのノードを制御する制御装置９０１と、により実現できる。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００１８】
以下の説明では、ホスト２０１とノード１０１間およびホスト２０１とノード１０２間、それぞれ２つのリンクがトランキングされているものとして説明する（図１の「トランキング対象区間」参照）。以下、ホスト２０２がホスト２０１に宛ててパケットを送信したものとして説明する。
【００１９】
前記ホスト２０２からパケットを受信したノード１０３は、受信したパケットの情報またはパケットそのものを制御装置９０１に送信し、ノード１０１、１０２のどちらに送信すべきかを問い合わせる。
【００２０】
前記問い合わせを受けた制御装置９０１は、まず、前記問い合わせに係るパケットが上記トランキングされたリンクを経由して転送すべきものであるか否かを判別する。図１の例では、ホスト２０１とノード１０１、１０２間のリンクはすべてトランキングされているので、制御装置９０１は、前記所定のリンク選択基準を用いて、上記トランキングされたリンクの中から１つのリンクを選択し、当該リンクを含むパケット転送経路を計算する。例えば、図１のトランキング対象区間のうち、ホスト２０１のポート＃１とノード１０１のポート＃２間のリンクを選択した場合、ノード１０３のポート＃２、ノード１０１のポート＃２の順でパケットを出力するパケット転送経路が計算される。
【００２１】
制御装置９０１は、前記パケット転送経路に従い、ノード１０３に受信パケットおよび後続するパケットをポート＃２から出力させる処理規則を作成し、ノード１０３に設定する。同様に、制御装置９０１は、前記パケット転送経路に従い、ノード１０１にノード１０３から受信したパケットおよび後続するパケットをポート＃２から出力させる処理規則を作成し、ノード１０１に設定する。
【００２２】
パケット転送経路上のノード１０３、１０１にそれぞれ処理規則が設定されると、パケット転送経路に従い、ホスト２０２からホスト２０１に宛てて送信されたパケットおよび後続パケットの転送が可能となる。その後、制御装置９０１が、ホスト２０１のポート＃１とノード１０１のポート＃２間のリンクの負荷状況を考慮して、ホスト２０１のポート＃２とノード１０１のポート＃３間のリンクやノード１０２を経由するリンクに切り替える動作を行うことで、負荷分散が実現される。また、ホスト２０１とノード１０１、１０２間には、都合４つのリンクがあるので、ノード１０１のいずれか１つのトランクポート障害発生時のみならず、ノード１０１自体の障害時にも対応可能であり、冗長性も充分に確保されたものとなっている。
【００２３】
［第１の実施形態］
続いて、本発明の第１の実施形態について図面を参照して詳細に説明する。図２は、本発明の第１の実施形態の構成を表した図である。図２を参照すると、ホスト２０１、２０２間に配置され、ホスト２０１、２０２間でやり取りされるパケットを転送するノード１０１〜１０３と、経路制御部９０２およびトランクポート管理部９０３を備えた制御装置９０１と、を配置した構成が示されている。
【００２４】
図２の例では、ホスト２０１は、ポート＃１〜＃４の４つのポートを備えている。このうち、ホスト２０１のポート＃１、＃２は、ノード１０１のポート＃２、＃３と接続されている。また、ホスト２０１のポート＃３、＃４は、ノード１０２のポート＃２、＃３と接続されている。従って、ホスト２０１のポート＃１〜＃４は、トランクポートとして利用可能となっている。
【００２５】
ノード１０１のポート＃４は、ノード１０３のポート＃２と接続され、ノード１０２のポート＃４は、ノード１０３のポート＃３と接続されている。ノード１０１〜１０３のポート＃１は、制御装置９０１のノード接続ポートと接続されている。また、ホスト２０２のポート＃１は、ノード１０３のポート＃４と接続されている。
【００２６】
なお、上記したノード１０１〜１０３としては、処理規則に相当するフローエントリを格納したフローテーブルを備えてパケット処理を行う非特許文献１、２のオープンフロースイッチや、オープンフロースイッチと同様に処理規則（フローエントリ）を用いてパケット転送動作を行うネットワーク機器を用いることができる。以下の説明では、ノード１０１〜１０３は、非特許文献１、２のオープンフロースイッチであるものとして説明する。
【００２７】
制御装置９０１のトランクポート管理部９０３は、上記のようなネットワーク中のトランキングされたリンクを管理する。トランクポート管理部９０３は、例えば、ホスト２０１のポート＃１−ノード１０１のポート＃２、ホスト２０１のポート＃２−ノード１０１のポート＃３、ホスト２０１のポート＃３−ノード１０２のポート＃２、ホスト２０１のポート＃４−ノード１０２のポート＃３といったリンクを格納したテーブル等を用いてトランキングされたリンクを互いに紐付けて管理する。図３は、トランクポート管理部９０３に保持されるテーブルの一例であり、ホスト側のポートを省略し、トランキングされたノードのＩＤとポート番号を対応付けた形態となっている。図４は、トランキングされたリンクの両端のノードのＩＤとポート番号を対応付けた形態となっており、この例では、ホスト側のポート番号も記述されている。
【００２８】
制御装置９０１の経路制御部９０２は、ノード１０１〜１０３の構成情報（各ノードのポート情報）やネットワークトポロジー情報を保持している。経路制御部９０２は、ノード１０１〜１０３から処理規則の設定要求を受けると、トランクポート管理部９０３を参照して、当該パケットの最終的な出力先となるノードのポートがトランクポートであるか否かを判別し、トランクポートである場合、所定のリンク選択基準を用いて紐付けられたリンクの中から一つのリンクを選択する。さらに、制御装置９０１の経路制御部９０２は、上記したネットワークトポロジーを参照して、前記選択したリンクを含むパケット転送経路を計算し、当該パケット転送経路上のノードに、当該パケット転送経路を実現する処理規則を設定する。
【００２９】
上記のような制御装置９０１は、非特許文献１、２のオープンフローコントローラに、トランクポート管理部９０３を追加し、上記経路制御部９０２のように動作させることにより実現できる。また、非特許文献１、２のオープンフローコントローラに、前記選択したリンクを通知し、当該リンクを含んだパケット転送経路を計算させるとともに、パケット転送経路上のノードに処理規則を設定させる装置を追加した構成によっても実現できる。
【００３０】
また、上記のような制御装置９０１は、制御装置９０１を構成するコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
【００３１】
続いて、本実施形態の動作について図２、図５を参照して詳細に説明する。はじめに、ホスト２０２が、ホスト２０１に宛ててパケットを送信するケースを説明する。
【００３２】
ホスト２０１からホスト２０２に宛てて送信されたデータパケットは、ホスト２０１と接続されたノード１０３のポート＃４に入力される（図５のステップＳ１０１）。
【００３３】
ノード１０３は、自装置の記憶装置内のフローテーブル等から、受信したデータパケットに適合する照合規則（マッチングルール）を持つ処理規則（フローエントリ）を検索する。ここでは、ホスト２０１から受信したデータパケットは、最初のパケット（ノード１０３にとって未知のパケット）であるため、ホスト２０１から受信したデータパケットに適合する処理規則（フローエントリ）は見つからない。そこで、ノード１０３は、制御装置９０１に対し、当該データパケットおよび後続するデータパケットを処理するための処理規則の設定を要求する（図５のステップＳ１０２「Ｐａｃｋｅｔ−Ｉｎ」）。
【００３４】
前記処理規則の設定要求を受けた制御装置９０１は、ノード１０１〜１０３の構成情報（各ポートの接続関係等）を参照して、当該パケットの宛先に対応するエッジノード（ホストと接続されたノード）のポート（出力ポート）を特定する（図５のステップＳ１０３）。ここでは、ノード１０１のポート＃２が特定されたものとする。
【００３５】
次に、制御装置９０１は、トランクポート管理部９０３を参照して、前記特定したポートがトランクポートであるか否かを確認する（図５のステップＳ１０４）。
【００３６】
前記特定したポートがトランクポートである場合、制御装置９０１は、トランクポート管理部９０３に紐付けられたトランキングされたリンクの中から、利用するリンク（ポート）を選択する（図５のステップＳ１０５）。ここでは、ノード１０１のポート＃２は、トランクポートであるため、制御装置９０１は、ノード１０１のポート＃２、ポート＃３、ノード１０２のポート＃２、ポート＃３のトランクポートの中からいずれかを選択することになる。ここでは、制御装置９０１は、負荷状況などを考慮して、ノード１０２のポート＃３を選択したものとする。
【００３７】
なお、ステップＳ１０４で確認した結果、特定したポートがトランクポートでなかった場合（図５のステップＳ１０４のＮｏ）、ステップＳ１０３で特定したポートがそのまま選択される。
【００３８】
次に、制御装置９０１は、前記選択したトランクポート（また非トランクポート）を経由するパケット転送経路を計算する（図５のステップＳ１０６）。ここでは、前記選択結果を踏まえて、図２のノード１０３のポート＃３、ノード１０２のポート＃３の順でパケットをホスト２０１に転送するパケット転送経路が計算されたものとする。
【００３９】
次に、制御装置９０１は、前記計算したパケット転送経路に対応する処理規則を作成し、当該パケット転送経路上のノードに処理規則を設定する（図５のステップＳ１０７）。具体的には、ノード１０３には、該当パケットをポート＃３から出力するアクションを定めた処理規則が設定され、ノード１０２には、該当パケットをポート＃３から出力するアクションを定めた処理規則が設定される（ノード１０１への処理規則の設定は不要である）。
【００４０】
以上により、ステップＳ１０１で転送されたパケットおよび後続するパケットが、負荷状況等を考慮して選択されたトランクポート（例えば、ノード１０２のポート＃３）を介してホスト２０２に届けられる。
【００４１】
他方、ホスト２０１からホスト２０２に宛てて反対方向にパケットが送信された場合も、図５のシーケンスに従って処理が行われる。この場合、ステップＳ１０３で、宛先に対応するエッジノードおよびポートとしてノード１０３のポート＃４が特定されるため、ステップＳ１０５のトランクポートの選択は省略される。
【００４２】
従って、ホスト２０１からホスト２０２に宛てたパケットは、ホスト２０１が送信時に使用したポート（ホスト２０１のポート＃１〜＃４）を始点として、ノード１０１、１０２のいずれか、次いで、ノード１０３を経由して、ホスト２０２に転送される。
【００４３】
このように、逆方向においても、ホスト２０１がトランクポートを選択することにより、適宜負荷分散を実現することができる。
【００４４】
また、上記した通信を行っている場合において、ノードのトランクポートまたはノードそのものが故障した場合、制御装置９０１が、トランクポートを再度選択してパケット転送経路を計算し、処理規則を再設定することで、通信を継続することができる。制御装置９０１が、ノードのトランクポートまたはノードそのものの故障を検出する仕組みとしては、制御装置９０１が定期的にノード１０１〜１０３の構成情報を収集することや、ノード１０１〜１０３が自身のポートの異常を制御装置に通知することによって実現できる。また、処理規則を再設定するタイミングとしては、ノードのトランクポートまたはノードそのものの故障を検出したタイミングでも、再度の処理規則の設定要求を受けたときのいずれでもよい。
【００４５】
以上のように本発明の第１の実施形態によれば、一つのホストと複数のノード間に、トランキングされたリンクを設定しているため、ネットワーク全体としての負荷分散と冗長性確保と、特定のリンクにおける負荷分散と冗長性確保とを両立することが可能となる。
【００４６】
［第２の実施形態］
続いて、上記第１の実施形態に変更を加えた第２の実施形態について説明する。本発明の第２の実施形態は、上記第１の実施形態と同一の構成で実現可能であり、動作に変更を加えたものであるので、以下、その相違点を中心に説明する。
【００４７】
図６は、本発明の第２の実施形態の動作を説明するためのシーケンス図である。第１の実施形態のシーケンスを表わした図５との相違点は、ステップＳ２０３以下の処理規則の設定要求を受けた制御装置９０１の動作であるので、以下、ステップＳ２０３以降を説明する。
【００４８】
ノード１０３から処理規則の設定要求を受けた制御装置９０１は、前記設定要求を受けたパケットのヘッダ情報等に基づいて、当該パケットを経由するパケット転送経路を計算する（図６のステップＳ２０３）。
【００４９】
次に、制御装置９０１は、トランクポート管理部９０３を参照して、前記パケット転送経路上にトランクポートが含まれる否かを確認する（図６のステップＳ２０４）。
【００５０】
前記パケット転送経路上にトランクポートが含まれる場合、制御装置９０１は、トランクポート管理部９０３に紐付けられたトランキングされたリンクの中から、利用するリンク（ポート）を再選択する（図６のステップＳ２０５）。例えば、当初のパケット転送経路上のノード１０１のポート＃２に代えて、ノード１０２のポート＃３を選択するといった動作が可能である。
【００５１】
なお、ステップＳ２０４で確認した結果、前記パケット転送経路上にトランクポートが含まれない場合（図６のステップＳ２０４のＮｏ）、ステップＳ２０３で作成したパケット転送経路が採用される。
【００５２】
次に、制御装置９０１は、第１の実施形態と同様に、前記パケット転送経路に対応する処理規則を作成し、当該パケット転送経路上のノードに処理規則を設定する（図６のステップＳ１０７）。
【００５３】
以上のように、本発明は、パケット転送経路を先に計算し、その中にトランキングされたリンクが含まれている場合に、トランキングされたリンクの再選択を行うという態様でも実現することが可能である。
【００５４】
以上のように、本実施形態によれば、トランキングされている任意のノード間のリンクの利用を制御することも可能である。
【００５５】
以上、本発明の好適な実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、上記した各実施形態で示したホスト、ノード、制御装置の数およびトランキングされたリンクの数および場所はあくまで例示であり、それぞれ制限を受けないことはもちろんである。
【００５６】
また例えば、上記した第１、第２の実施形態では、ホストとエッジノード間がトランキングされている例を挙げて説明したが、任意のノード間のリンクがトランキングされている場合にも本発明を適用することは可能である。
【００５７】
最後に、本発明の好ましい形態を要約する。
［第１の形態］
（上記第１の視点による通信システム参照）
［第２の形態］
第１の形態の通信システムにおいて、
前記制御装置は、さらに、
前記任意のノードから処理規則の設定を要求されたパケットの出力ポートがトランキングされたポートであるか否かにより、前記トランキングされたリンクを利用するか否かを判別する通信システム。
［第３の形態］
第１または第２の形態の通信システムにおいて、
前記制御装置は、前記トランキングされたリンクにおける負荷または障害に応じて、前記パケット転送経路中のリンクをトランキングされた他のリンクに切り替える動作を行う通信システム。
［第４の形態］
第１〜第３いずれか一の形態の通信システムにおいて、
前記制御装置は、前記任意のノードから処理規則の設定を要求されたパケットのヘッダの所定のフィールドに書き込まれた情報に基づいて、トランキングされたリンクを利用するか否かを判別する通信システム。
［第５の形態］
第１〜第３いずれか一の形態の通信システムにおいて、
前記制御装置は、前記任意のノードから処理規則の設定を要求されたパケットの送信元または宛先に基づいて、トランキングされたリンクを利用するか否かを判別する通信システム。
［第６の形態］
（上記第２の視点による制御装置参照）
［第７の形態］
第６の形態の制御装置において、
前記任意のノードから処理規則の設定を要求されたパケットの出力ポートがトランキングされたポートであるか否かにより、前記トランキングされたリンクを利用するか否かを判別する制御装置。
［第８の形態］
第６または第７の形態の制御装置において、
前記トランキングされたリンクにおける負荷または障害に応じて、前記パケット転送経路中のリンクをトランキングされた他のリンクに切り替える動作を行う制御装置。
［第９の形態］
第６〜第８いずれか一の形態の制御装置において、
前記任意のノードから処理規則の設定を要求されたパケットのヘッダの所定のフィールドに書き込まれた情報に基づいて、トランキングされたリンクを利用するか否かを判別する制御装置。
［第１０の形態］
第６〜第８いずれか一の形態の制御装置において、
前記任意のノードから処理規則の設定を要求されたパケットの送信元または宛先に基づいて、トランキングされたリンクを利用するか否かを判別する制御装置。
［第１１の形態］
（上記第３の視点による処理規則の設定方法参照）
［第１２の形態］
（上記第４の視点によるプログラム参照）
なお、上記第１１、第１２の形態は、第１の形態と同様に、第２〜第５の形態に展開することが可能である。
なお、上記特許文献１−３および非特許文献１−３の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【００５８】
１０１〜１０４  ノード
２０１、２０２  ホスト
９０１  制御装置（コントローラ）
９０２  経路制御部
９０３  トランクポート管理部
【図１】
2012050071.tif 000003
【図２】
2012050071.tif 000004
【図３】
2012050071.tif 000005
【図４】
2012050071.tif 000006
【図５】
2012050071.tif 000007
【図６】
2012050071.tif 000008
【図７】
2012050071.tif 000009
【国際調査報告】
2012050071.tif 000010
2012050071.tif 000011