(57)【要約】【課題】  転送経路を冗長化しても、設定可能な転送経路数が減少することを防止できる制御装置、通信装置、通信システム、通信方法及びプログラムを提供する。【解決手段】  本発明の制御装置は、通信データの転送経路を決定する制御部と、前記通信データの転送経路を記憶する記憶部と、を備え、前記制御部は、前記記憶部を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択することを特徴とする。【選択図】      図２
2015192260.tif 000002
【特許請求の範囲】
【請求項１】
通信データの転送経路を決定する制御部と、
前記通信データの転送経路を記憶する記憶部と、を備え、
前記制御部は、前記記憶部を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択することを特徴とする制御装置。
【請求項２】
前記記憶部は、前記通信データの転送経路と、前記通信データの属性とを対応付けて記憶し、
前記制御部は、前記記憶部を参照して、前記冗長経路を、前記第１の通信データとは属性の異なる前記第２の通信データに対応する転送経路から選択することを特徴とする請求項１に記載の制御装置。
【請求項３】
前記記憶部は、前記通信データの転送経路と、前記通信データの優先度とを対応付けて記憶し、
前記制御部は、前記記憶部を参照して、前記冗長経路を、前記第１の通信データとは優先度の異なる前記第２の通信データに対応する転送経路から選択することを特徴とする請求項１又は２に記載の制御装置。
【請求項４】
前記制御部は、前記冗長経路を、前記第１の通信データよりも優先度の高い前記第２の通信データに対応する転送経路から選択することを特徴とする請求項３に記載の制御装置。
【請求項５】
前記制御部は、前記冗長経路を識別するためのラベルを、前記第２の通信データの転送経路に割り当てられたラベルと共有させることを特徴とする請求項１乃至４のいずれかに記載の制御装置。
【請求項６】
前記制御部は、前記冗長経路を、前記第２の通信データに対応する転送経路のうち、前記冗長経路に要求される有効期間よりも長い有効期間が設定されている転送経路から選択することを特徴とする請求項１乃至５のいずれかに記載の制御装置。
【請求項７】
前記制御部は、前記冗長経路として選択した前記第２の通信データの転送経路の有効期間が終了したことに応じて、前記冗長経路を、第３の通信データの転送経路から選択することを特徴とする請求項１乃至５のいずれかに記載の制御装置。
【請求項８】
前記制御部は、前記冗長経路を、前記第１の通信データと送信元及び宛先が同一である前記第２の通信データに対応する転送経路から選択することを特徴とする請求項１乃至７のいずれかに記載の制御装置。
【請求項９】
通信データの転送経路を決定し、
前記通信データの転送経路を記憶し、
記憶した前記通信データの転送経路を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択することを特徴とする通信方法。
【請求項１０】
通信データの転送経路を決定する処理と、
前記通信データの転送経路を記憶する処理と、
記憶した前記通信データの転送経路を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択する処理と
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、通信システム、通信方法及びプログラムに関する。
【背景技術】
【０００２】
通信システムにおいて、ネットワークに障害が発生した場合であってもパケットの転送を継続するために、パケットの転送経路を冗長化する技術がある。
【０００３】
特許文献１には、正常系のパスと迂回系のパスとを設定し、それぞれのパスを異なるラベルによって識別する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２６０３２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記の通り、特許文献１に記載の技術は、正常系のパスに加え、迂回系のパスに対してもラベルを設定するため、ラベルが余分に必要となる。そのため、特許文献１に記載の技術は、例えばラベルの数に限りがある場合、パスに設定するラベルが不足し、設定可能な転送経路の数が減少してしまうという問題がある。
【０００６】
本発明の目的は、上記の問題を解決し、設定可能な転送経路の数が減少することを防止できる制御装置、通信システム、通信方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００７】
本発明の制御装置は、通信データの転送経路を決定する制御部と、前記通信データの転送経路を記憶する記憶部と、を備え、前記制御部は、前記記憶部を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択することを特徴とする。
【０００８】
本発明の通信システムは、通信データの転送経路を決定する制御部と、前記通信データの転送経路を記憶する記憶部と、を備え、前記制御部は、前記記憶部を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択する制御装置と、決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送する複数のノードと、を含むことを特徴とする。
【０００９】
本発明の通信方法は、通信データの転送経路を決定し、前記通信データの転送経路を記憶し、記憶した前記通信データの転送経路を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択することを特徴とする。
【００１０】
本発明のプログラムは、通信データの転送経路を決定する処理と、前記通信データの転送経路を記憶する処理と、記憶した前記通信データの転送経路を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択する処理とをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１１】
本発明の制御装置、通信システム、通信方法及びプログラムは、設定可能な転送経路の数が減少することを防止できる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施形態における通信システムの構成例を示す図である。
【図２】本発明の第１の実施形態における制御装置１の構成例を示す図である。
【図３】本発明の第１の実施形態におけるトラヒック情報記憶部１４が記憶する、経路管理テーブル１１０の例である。
【図４】本発明の第１の実施形態において、制御部１２が転送経路を設定した後の、経路管理テーブル１１０の例である。
【図５】本発明の第１の実施形態における制御装置１の動作例を示すフローチャートである。
【図６】本発明の第２の実施形態における、制御装置１の構成例を示す図である。
【図７】本発明の第２の実施形態における、属性管理テーブル１１１の構成例を示す図である。
【図８】本発明の第２の実施形態における、経路管理テーブル１１０に、フローの属性に関する情報を記憶した場合の当該経路管理テーブル１１０の例である。
【図９】本発明の第２の実施形態における、制御部１２が冗長経路を選択した後の経路管理テーブル１１０の例である。
【図１０】本発明の第２の実施形態における、ノード２の構成例を示す図である。
【図１１】本発明の第２の実施形態における、転送ノード２−１のポリシー記憶部２３に記憶される、ポリシー管理テーブル２３０の例である。
【図１２】本発明の第２の実施形態における、制御装置１の動作例を示すフローチャートである。
【図１３】本発明の第３の実施形態における、属性管理テーブル１１１の構成例を示す図である。
【図１４】本発明の第３の実施形態における、経路管理テーブル１１０に、フローの優先度に関する情報を記憶した場合の当該経路管理テーブル１１０の例である。
【図１５】本発明の第３の実施形態における、制御部１２が冗長経路を選択した後の経路管理テーブル１１０の例である。
【図１６】本発明の第３の実施形態における、制御装置１の動作例を示すフローチャートである。
【図１７】本発明の第４の実施形態における、制御装置１の構成例を示す図である。
【図１８】本発明の第４の実施形態における、記憶部１１が記憶する、ＶＬＡＮ−ＩＤ管理テーブル１１２の例である。
【図１９】本発明の第４の実施形態における、制御部１２がＶＬＡＮ経路（主経路及び冗長経路）を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の例である。
【図２０】本発明の第４の実施形態における、通信システムの動作例を示すシーケンス図である。
【図２１】本発明の第５の実施形態における、通信システムの構成例を示す図である。
【図２２】本発明の第５の実施形態における、制御装置１の記憶部１１に記憶されるＶＬＡＮ−ＩＤ管理テーブル１１２の構成例である。
【図２３】本発明の第５の実施形態における、制御部１２が転送経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の例である。
【図２４】本発明の第５の実施形態における、制御装置１の動作例を示すフローチャートである。
【図２５】本発明の第５の実施形態における、制御部１２が転送経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の他の例である。
【図２６】本発明の第５の実施形態における、制御部１２が転送経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の他の例である。
【図２７】本発明の第５の実施形態における、制御部１２が転送経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の他の例である。
【図２８】本発明の第５の実施形態における、制御部１２が転送経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の他の例である。
【図２９】本発明の第６の実施形態における、制御部１２が転送経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の他の例である。
【図３０】オープンフロー技術により構成された通信システムの概要を示す図である。
【図３１】フローテーブル３１０の各エントリ（フローエントリ）の構成例を示す図である。
【図３２】本発明の第７の実施形態における、通信システムの例を示す。
【図３３】本発明の第７の実施形態における、コントローラ３の構成例を示す図である。
【図３４】本発明の第７の実施形態における、処理規則決定部４２０が生成する処理規則の例を示す。
【図３５】本発明の第７の実施形態における、スイッチ４の構成の例を示す。
【図３６】本発明の第７の実施形態における、通信システムの動作例を示すシーケンス図である。
【発明を実施するための形態】
【００１３】
＜第１の実施形態＞
本発明の第１の実施形態について、図面を参照して説明する。
【００１４】
本発明の第１の実施形態は、通信データのフローの転送経路を冗長化する場合に、冗長経路を、他の通信データのフローに対応する転送経路から選択する実施形態である。ここで、フローとは、所定の属性（通信の宛先や送信元等の情報や、それらの情報の組み合わせに基づいて識別される属性）を有する一連の通信パケット群である。
【００１５】
図１は、本発明の第１の実施形態における通信システムの構成例を示す図である。図１に示すように、通信システムは、制御装置１と、ノード２−１乃至２−５（特に分ける必要が無い場合は、「ノード２」と記載する）と、を含む。
【００１６】
制御装置１は、通信データのフローの転送経路を決定する。ノード２は、当該制御装置が決定した転送経路に沿って、通信データのフローを転送する。
【００１７】
図２は、本発明の第１の実施形態における制御装置１の構成例を示す図である。制御装置１は、記憶部１１と、制御部１２とを備える。
【００１８】
記憶部１１は、通信データのフローの転送経路を記憶する。転送経路は、例えば、後述する図３の「Ｈｏｐ  Ｉｎｆｏｒｍａｔｉｏｎ」のような形式で示される。
【００１９】
図３は、本発明の第１の実施形態における、記憶部１１に記憶される経路管理テーブル１１０の例である。図３の例において、記憶部１１には、例えば、フローαの転送経路「ノード２−１→ノード２−２→ノード２−４」が記憶される。
【００２０】
記憶部１１には、転送経路に対して、当該転送経路を主経路として用いるフローを記憶する欄（図３の「主経路」）と、当該転送経路を冗長経路として用いるフローを記憶する欄（図３の「冗長経路」）とが設けられている。図３の例において、フローαは、転送経路「ノード２−１→ノード２−２→ノード２−４」を主経路として、転送経路「ノード２−１→ノード２−３→ノード２−４」を冗長経路として用いる。
【００２１】
制御部１２は、通信データのフローの主経路となる転送経路を決定する。制御部１２は、例えば、フローβの主経路として、転送経路「ノード２−１→ノード２−５→ノード２−４」を決定する。
【００２２】
また、制御部１２は、記憶部１１を参照して、第１の通信データのフローの冗長経路を、第２の通信データのフローに対応する転送経路から選択する。制御部１２は、例えば、フローβの冗長経路として、フローαに対応する転送経路の一つである「ノード２−１→ノード２−２→ノード２−４」を選択する。制御部１２がフローβの冗長経路をフローαに対応する転送経路から選択することにより、フローβの冗長経路とフローαの転送経路とが重複する。よって、制御部１２は、フローβの冗長経路にために新たな経路を設定することなく、当該フローβの冗長経路を設定することができる。
【００２３】
なお、制御部１２は、例えば、第１の通信データのフローの冗長経路を、当該第１の通信データのフローと送信元及び宛先が同一である第２のフローに対応する転送経路から選択してもよい。
【００２４】
図４は、本発明の第１の実施形態において、制御部１２が冗長経路を選択した後の、記憶部１１の例である。記憶部１１は、転送経路「ノード２−１→ノード２−５→ノード２−４」の主経路の欄に、フローβを記憶する。また、記憶部１１は、フローαに対応する転送経路の一つである「ノード２−１→ノード２−２→ノード２−４」の冗長経路の欄に、フローβを記憶する。
【００２５】
制御部１２は、複数のノード２の少なくとも1つに、通信データのフローの主経路に沿って、当該通信データのフローを転送するためのポリシーを通知する。
【００２６】
また、制御部１２は、複数のノード２の少なくとも１つに、主経路に対する冗長経路に沿って当該通信データのフローを転送するためのポリシーを通知する。例えば、制御部１２は、通信データフローの主経路に沿って当該通信データのフローを転送できない場合に、冗長経路に対応するポリシーを、複数のノード２の少なくとも１つに通知する。また、例えば、制御部１２は、冗長経路に対応するポリシーを、予め、複数のノード２の少なくとも１つに通知してもよい。
【００２７】
図５は、本発明の第１の実施形態における、制御装置１の動作例を示すフローチャートである。
【００２８】
制御部１２は、第１の通信データのフロー（フローβ）の主経路を決定する（Ｓ１０１）。
【００２９】
制御部１２は、記憶部１１を参照して、第１の通信データのフロー（フローβ）の冗長経路を、第２の通信データのフロー（フローα）に対応する転送経路から選択する（Ｓ１０２）。なお、制御部１２は、例えば、第１の通信データのフロー（フローβ）の冗長経路を、当該第１の通信データのフロー（フローβ）と送信元及び宛先が同一である第２のフロー（フローα）に対応する転送経路から選択してもよい。
【００３０】
制御部１２は、第１の通信データのフロー（フローβ）の主経路と、冗長経路として選択した第２の通信データのフロー（フローα）の転送経路とに関する情報を、記憶部１１に記憶する（Ｓ１０３）。
【００３１】
制御部１２は、複数のノード２の少なくとも1つに対して、第１の通信データのフロー（フローβ）の主経路に沿って当該第１の通信データのフロー（フローβ）を転送するためのポリシーを通知する（Ｓ１０４）。
【００３２】
上記のとおり、本発明の第１の実施形態の制御装置１は、冗長経路を既存の転送経路から選択することにより、当該冗長経路のラベルを、当該既存の転送経路のラベルと共有させることができる。したがって、当該制御装置１は、冗長経路を設定してもラベルを余分に消費せず、ラベルの不足を抑制することができ、例えばラベルに限りがある場合であっても、設定可能な転送経路の数が減少することを防止できる。
【００３３】
＜第２の実施形態＞
本発明の第２の実施形態について、図面を参照して説明する。
【００３４】
本発明の第２の実施形態は、第１の通信データのフローの冗長経路を、当該第１の通信データのフローとは属性の異なる第２の通信データのフローに対応する転送経路から選択するものである。
【００３５】
ここで、属性は、フローに含まれるパケットの宛先や送信元等に基づいて識別される当該フロー（当該フローに含まれるパケット）の性質や特徴である。例えば、属性は、フローに要求される通信品質（ＱｏＳ：Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）や、フローに関連する通信アプリケーションの種別、フローに要求されるＳＬＡ（Ｓｅｒｖｉｃｅ  Ｌｅｖｅｌ  Ａｇｒｅｅｍｅｎｔ）等である。
【００３６】
本発明の第２の実施形態における通信システムは、図１に示す、本発明の第１の実施形態と同様である。
【００３７】
図６は、本発明の第２の実施形態における、制御装置１の構成例を示す図である。図６に示すように、制御装置１は、記憶部１１と、制御部１２と、通信部１３と、トポロジー記憶部１４とを有する。
【００３８】
トポロジー記憶部１４は、ノード２間の隣接情報や、リンクの帯域などのネットワークに関する情報を記憶する。トポロジー記憶部１４は、所定の周期又は任意のタイミングで、記憶する情報を更新する。
【００３９】
記憶部１１は、図３に示す経路管理テーブル１１０に加えて、フローと、当該フローの属性とを対応付けて記憶する属性管理テーブル１１１を有する。図７は、属性管理テーブル１１１の構成例を示す図である。図７の例では、属性管理テーブル１１１は、フローと、その属性とを対応付けて記憶する。
【００４０】
なお、記憶部１１は、経路管理テーブル１１０に、フローの属性に関する情報を記憶してもよい。図８は、経路管理テーブル１１０に、フローの属性に関する情報を記憶した場合の当該経路管理テーブル１１０の例である。図８の例において、記憶部１１には、例えば、フローαと当該フローαの属性とを対応付けた情報「フローα（属性：Ｘ）」と、当該フローαの転送経路「２−１→２−２→２−４」とが対応付けて記憶される。
【００４１】
なお、記憶部１１は、管理テーブル１１０の他に、例えば、転送経路毎の使用帯域や、設定した転送経路の有効期間（設定した転送経路によりパケットを転送できる期間）などを記憶してもよい。記憶部１１は、制御部１２がフローの転送経路を決定する毎に、記憶する情報を更新してもよい。
【００４２】
制御部１２は、ノード２から、ノード２が受信したパケットが属するフローの転送経路の設定の要求を受ける。なお、制御部１２は、ノード２から、当該フローの転送経路の設定の要求とともに、当該フローの属性の通知を受けてもよい。
【００４３】
制御部１２は、第１のフローの主経路を、例えば最短経路を計算するためのダイクストラ法を用いて決定する。制御部１２は、例えば、図１の「Ａ」から「Ｂ」までのフローβ（第１のフロー）の主経路を、「ノード２−１→ノード２−５→ノード２−４」と決定する。
【００４４】
制御部１２は、第１のフローの冗長経路を、記憶部１１の経路管理テーブル１１０及び属性管理テーブル１１１（又は、経路管理テーブル１１０だけ）を参照して、当該第１のフローとは属性の異なる第２のフローに対応する転送経路から選択する。図３又は図８の例において、制御部１２は、例えば、フローβ（第１のフロー）のパケットの冗長経路として、属性が異なるフローα（第２のフロー）に対応する転送経路の一つである「ノード２−１→ノード２−２→ノード２−４」を選択する。
【００４５】
なお、制御部１２は、第１のフローの冗長経路を、当該第１のフローと送信元及び宛先が同一であり、当該第１のフローとは属性の異なる第２のフローに対応する転送経路から選択してもよい。
【００４６】
また、制御部１２は、第１のフローの冗長経路として選択可能な第２のフローの転送経路が設定されていない場合、当該冗長経路のために、新たに転送経路を設定してもよい。この場合において、制御部１２は、第１のフローの主経路とは異なる転送経路が無い場合（第１のフローの転送経路が一つしか設定できない場合）には、冗長経路を設定しなくてもよい。
【００４７】
図９は、本発明の第２の実施形態において、制御部１２が冗長経路を選択した後の経路管理テーブル１１０の例である。図９に示すように、経路管理テーブル１１０は、転送経路「ノード２−１→ノード２−５→ノード２−４」の主経路の欄に、フローβと当該フローβの属性とを対応付けた情報「フローβ（属性：Ｙ）」を記憶する。また、経路管理テーブル１１０は、フローαに対応する転送経路の一つである「ノード２−１→ノード２−２→ノード２−４」の冗長経路の欄に、フローβと当該フローβの属性とを対応付けた情報「フローβ（属性：Ｙ）」を記憶する。
【００４８】
図１０は、本発明の第２の実施形態における、ノード２の構成例を示す図である。図１０に示すように、ノード２は、通信部２１と、制御部２２と、ポリシー記憶部２３とを有する。
【００４９】
ポリシー記憶部２３は、パケットを処理するためのポリシーを記憶する。当該ポリシーは、制御装置１から通知される。
【００５０】
図１１は、転送ノード２−１のポリシー記憶部２３に記憶される、ポリシー管理テーブル２３０の例である。ポリシー管理テーブル２３０は、フローと、当該フローに属するパケットに対する「処理内容」を対応付けて記憶する。ポリシー管理テーブル２３０は、例えば、フローαに対して、処理内容「ポート＃１から転送する」を記憶する。
【００５１】
ポリシー記憶部２３は、制御装置１からポリシーが通知されることに応じて、ポリシー管理テーブル２３０を更新する。
【００５２】
制御部２２は、受信したパケットを処理するためのポリシーがポリシー管理テーブル２３０に記憶されていない場合、当該受信したパケットを処理するためのポリシーを制御装置１に要求する。制御部２２は、当該要求を行う場合、制御装置１に対して、受信したパケットが属するフローの属性を通知する。
【００５３】
制御部２２は、制御装置１から通知されたポリシーが記憶されたポリシー管理テーブル２３０を参照し、当該受信したパケットを処理する。制御部２２は、例えば、フローαに属するパケットを受信した場合、図１１のポリシー管理テーブル２３０を参照して、当該パケットをポート＃１から転送する。
【００５４】
通信部２１は、パケットを送受信する。また、通信部２１は、制御装置１に対してパケットを処理するためのポリシーの要求を送信し、当該要求に対する応答として制御装置１からポリシーを受信する。
【００５５】
図１２は、本発明の第２の実施形態における、制御装置１の動作例を示すフローチャートである。
【００５６】
制御部１２は、ノード２から、当該ノード２が受信したパケットが属するフローの転送経路の設定の要求を受ける（Ｓ２０１）。
【００５７】
制御部１２は、トポロジー記憶部１３を参照して、当該フロー（第１のフロー）の主経路を決定する（Ｓ２０２）。
【００５８】
制御部１２は、経路管理テーブル１１０を参照して、第１のフローと送信元及び宛先が同一であり、当該第１のフローとは属性の異なる第２のフローに対応する転送経路が設定されているか否かを判定する（Ｓ２０３）。
【００５９】
制御部１２は、第１のフローと、送信元及び宛先が同一であり、属性の異なる第２のフローに対応する転送経路が設定されていると判定した場合（Ｓ２０３のＹＥＳ）、第１のフローの冗長経路を、当該第２のフローに対応する転送経路から選択する（Ｓ２０４）。
【００６０】
一方、第１のフローと送信元及び宛先が同一の第２のフローに対応する転送経路が設定されていないと判定した場合（Ｓ２０３のＮＯ）、第１のフローの冗長経路として、新たな転送経路を設定する（Ｓ２０５）。
【００６１】
制御部１２は、決定した第１のフローの主経路と、冗長経路として選択又は新たに設定した転送経路とに関する情報を、記憶部１１に記憶する（Ｓ２０６）。
【００６２】
制御部１２は、複数のノード２の少なくとも1つに対して、決定した第１のフローの主経路に沿って第１のフローを転送するためのポリシーを通知する（Ｓ２０７）。
【００６３】
上記のとおり、本発明の第２の実施形態の制御装置１は、第１のフローの冗長経路を、当該第１のフローとは属性の異なる第２のフローに対応する転送経路から選択することにより、当該冗長経路のラベルを、当該第２のフローの転送経路のラベルと共有させることができる。したがって、当該制御装置１は、冗長経路を設定してもラベルを余分に消費せず、ラベルの不足を抑制することができ、例えばラベルに限りがある場合であっても、設定可能な転送経路の数が減少することを防止できる。
【００６４】
＜第３の実施形態＞
本発明の第３の実施形態について、図面を参照して説明する。
【００６５】
本発明の第３の実施形態では、フローの属性として、優先度が用いられる。本発明の第３の実施形態は、第１のフローの冗長経路を、当該第１のフローとは優先度の異なる第２のフローに対応する転送経路から選択するものである。
【００６６】
ここで、フローの優先度は、例えば、数値によって表される。優先度が高いフローは、優先度が低いフローに比べて優先して転送される。フローの優先度は、数値に限られることなく、フローの優先度を表すことができれば、例えばアルファベットなど、どのような形式で表現されていてもよい。フローの優先度は、例えば、パケットのヘッダに格納されているＶＬＡＮタグに含まれる優先度を表す情報（ＰＣＰ：Ｐｒｉｏｒｉｔｙ  Ｃｏｄｅ  Ｐｏｉｎｔ）である。ＰＣＰは、ＶＬＡＮタグにおいて優先度を指定する３ビットのフィールドであり、パケットの優先度を０（最低）から７（最高）で示し、各種トラフィック（音声、動画、データなど）の優先順位付けに利用できる。
【００６７】
本発明の第３の実施形態における通信システムは、図１に示す、本発明の第１の実施形態と同様である。また、本発明の第３の実施形態における通信装置１は、図６に示す本発明の第２の実施形態と同様である。さらに、本発明の第３の実施形態におけるノード２は、図１０に示す本発明の第２の実施形態と同様である。
【００６８】
本発明の第３の実施形態において、記憶部１１の属性管理テーブル１１０は、フローと、当該フローの優先度に関する情報とを対応付けて記憶する。図１３は、属性管理テーブル１１１の構成例を示す図である。図１３に示すように、属性管理テーブル１１１は、「フローα」と、その優先度「７」とを対応付けて記憶する。
【００６９】
なお、記憶部１１は、経路管理テーブル１１０に、フローの優先度に関する情報を記憶してもよい。図１４は、フローの優先度に関する情報を記憶した場合の当該経路管理テーブル１１０の例である。図１４の例において、記憶部１１には、例えば、フローαと当該フローαの優先度とを対応付けた情報「フローα（優先度：７）」と、当該フローαの転送経路「ノード２−１→ノード２−２→ノード２−４」とが対応付けて記憶される。
【００７０】
制御部１２は、ノード２から、ノード２が受信したパケットが属するフローの転送経路の設定の要求を受ける。なお、制御部１２は、ノード２から、当該フローの転送経路の設定の要求とともに、当該フローの優先度の通知を受けてもよい。
【００７１】
制御部１２は、図１の「Ａ」から「Ｂ」までのフローβ（第１のフロー）の主経路を、「ノード２−１→ノード２−５→ノード２−４」と決定する。
【００７２】
制御部１２は、第１のフローの冗長経路を、記憶部１１の経路管理テーブル１１０及び属性管理テーブル１１１（又は、経路管理テーブル１１０だけ）を参照して、当該第１のフローとは優先度の異なる第２のフローに対応する転送経路から選択する。図３又は図１４の例において、制御部１２は、例えば、フローβ（優先度「１」）のパケットの冗長経路として、優先度が異なるフローα（優先度「７」）に対応する転送経路の一つである「ノード２−１→ノード２−２→ノード２−４」を選択する。
【００７３】
なお、制御部１２は、第１のフローの冗長経路を、当該第１のフローよりも優先度の高い第２のフローに対応する転送経路から選択してもよい。優先度が互いに異なる複数のフローは、同一の転送経路に沿って転送されたとしても、キュー制御において分離して処理される。そのため、優先度の高いフロー（第２のフロー）が利用している転送経路に、優先度の低いフロー（第１のフロー）を共有させても、当該優先度の高いフローの転送処理に影響が生じることはない。したがって、優先度の低いフローの冗長経路を、優先度の高いフローの転送経路に共有させ、当該優先度の高いフローの転送に影響を与えずに、転送経路の集約を図ることができる。
【００７４】
なお、制御部１２は、第１のフローよりも優先度の高い第２のフローに対応する転送経路のうち、当該第１のフローと優先度が同一の他のフローの冗長経路として設定されていない転送経路から、当該第１のフローの冗長経路を選択する。優先度が同一のフロー同士は、同一の転送経路に沿って転送されると、キュー制御において分離して処理されず、互いにフローの転送に影響を与えてしまう。そのため、同じ優先度のフローの冗長経路どうしが、同じ転送経路に設定されないようにして、例えば両者が同じタイミングで冗長経路に切り替わったとしても、互いに影響を与えないようにする。
【００７５】
図１５は、制御部１２が冗長経路を選択した後の経路管理テーブル１１０の例である。なお、図１５は、経路管理テーブル１１０に、フローの優先度に関する情報を記憶する場合の例である。図１５に示すように、経路管理テーブル１１０は、フローβの主経路として、転送経路「ノード２−１→ノード２−５→ノード２−４」に関する情報を記憶する。また、経路管理テーブル１１０は、フローαに対応する転送経路の一つである「ノード２−１→ノード２−２→ノード２−４」の冗長経路の欄に、フローβを記憶する。
【００７６】
図１６は、本発明の第３の実施形態における制御装置１の動作例を示すフローチャートである。なお、図１６の例は、第１のフローの冗長経路を、当該第１のフローよりも優先度の高い第２のフローに対応する転送経路から選択する場合の例である。
【００７７】
制御部１２は、ノード２から、当該ノード２が受信したパケットが属するフローの転送経路の設定の要求を受ける（Ｓ３０１）。
【００７８】
制御部１２は、トポロジー記憶部１３を参照して、当該フロー（第１のフロー）の主経路を決定する（Ｓ３０２）。
【００７９】
制御部１２は、経路管理テーブル１１０を参照して、第１のフローと送信元及び宛先が同一であって、当該第１のフローよりも優先度の高い第２のフローに対応する転送経路が設定されているか否かを判定する（Ｓ３０３）。
【００８０】
制御部１２は、第２のフローに対応する転送経路が設定されている場合（Ｓ３０３のＹＥＳ）、当該第２のフローに対応する転送経路のうち、第１のフローと優先度が同一の他のフローの冗長経路に設定されていない転送経路の有無を判定する（Ｓ３０４）。一方、制御部１２は、第２のフローに対応する転送経路が設定されていないと判定した場合（Ｓ３０３のＮＯ）、第１のフローの冗長経路として、新たな転送経路を設定する（Ｓ３０６）。
【００８１】
制御部１２は、第２のフローに対応する転送経路のうち、第１のフローと優先度が同一の他のフローの冗長経路に設定されていない転送経路がある場合（Ｓ３０４のＹＥＳ）、第１のフローの冗長経路を、当該転送経路から選択する（Ｓ３０５）。一方、制御部１２は、第２のフローに対応する転送経路の全てが、第１のフローと優先度が同一の他のフローの冗長経路として設定されている場合（Ｓ３０４のＹＥＳ）、第１のフローの冗長経路として、新たな転送経路を設定する（Ｓ３０６）。
【００８２】
制御部１２は、決定した第１のフローの主経路と、冗長経路として選択又は新たに設定した転送経路とに関する情報を、記憶部１１に記憶する（Ｓ３０７）。
【００８３】
制御部１２は、複数のノード２の少なくとも1つに対して、決定した第１のフローの主経路に沿って第１のフローを転送するためのポリシーを通知する（Ｓ３０８）。
【００８４】
上記のとおり、本発明の第３の実施形態の制御装置１は、第１のフローの冗長経路を、当該第１のフローとは優先度の異なる第２のフローに対応する転送経路から選択することにより、当該冗長経路のラベルを、当該第２のフローに対応する転送経路のラベルと共有させることができる。したがって、当該制御装置１は、冗長経路を設定してもラベルを余分に消費せず、ラベルの不足を抑制することができ、例えばラベルに限りがある場合であっても、設定可能な転送経路の数が減少することを防止できる。
【００８５】
＜第４の実施形態＞
本発明の第４の実施形態について、図面を用いて説明する。本発明の第４の実施形態は、フローの転送経路がＶＬＡＮ（Ｖｉｒｔｕａｌ Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）である場合の実施形態である。
【００８６】
本発明の第４の実施形態における通信システムは、図１に示す、本発明の第１の実施形態と同様である。また、本発明の第４の実施形態におけるノード２は、図１０に示す本発明の第２の実施形態と同様である。
【００８７】
図１７は、本発明の第４の実施形態における、通信装置１の構成例を示す図である。
【００８８】
本発明の第４の実施形態において、トポロジー記憶部１４が記憶するネットワークに関する情報は、各ノード２の機能に関する情報を含んでもよい。ノード２の機能に関する情報は、例えば、ノード２がＶＬＡＮ  ＩＤの付け替えが可能であるか否かを示す情報である。また、ノード２の機能に関する情報は、ノード２が設定可能なＶＬＡＮ−ＩＤの数を示す情報を含んでいてもよい。
【００８９】
図１７に示すように、制御装置１の記憶部１１は、経路管理テーブル１１０の代わりに、ＶＬＡＮ−ＩＤ管理テーブル１１２を有する。
【００９０】
図１８は、本発明の第４の実施形態における記憶部１１が記憶する、ＶＬＡＮ−ＩＤ管理テーブル１１２の例である。ＶＬＡＮ−ＩＤ管理テーブル１１２は、ＶＬＡＮ経路毎に割り当てられる「ＶＬＡＮ−ＩＤ」と、転送経路を示す「Ｈｏｐ  Ｉｎｆｏｒｍａｔｉｏｎ」と、当該転送経路で転送されるフローとを対応付けて記憶する。ＶＬＡＮ−ＩＤは、制御部１２が計算するＶＬＡＮ経路毎に割り当てられる。
【００９１】
図１８の例において、ＶＬＡＮ−ＩＤ管理テーブル１１２は、ＶＬＡＮ−ＩＤ「１１０」と、「ノード２−１→ノード２−２→ノード２−４」の経路のＶＬＡＮと、フローα（主経路）とが対応付けて記憶されている。
【００９２】
制御部１２は、例えば、ノード２からの要求があったことに応じて、フローβの主経路として、「ノード２−１→ノード２−５→ノード２−４」を決定する。制御部１２は、決定したフローβの主経路に対して、ＶＬＡＮ−ＩＤ「１０１」を割り当てる。
【００９３】
制御部１２は、ＶＬＡＮ−ＩＤと、決定した第１のフローの主経路を、ＶＬＡＮ−ＩＤ管理テーブル１１２に通知して、記憶させる。
【００９４】
制御部１２は、第１のフローの冗長経路を、第２のフローに対応する転送経路から選択する。制御部１２は、例えば、ＶＬＡＮ−ＩＤ管理テーブル１１２を参照して、フローβの冗長経路を、フローαに対応する転送経路の一つである「ＶＬＡＮ−ＩＤ「１１０」のＶＬＡＮ」を選択する。
【００９５】
図１９は、制御部１２が第１のフローの主経路及び冗長経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の例である。ＶＬＡＮ−ＩＤ管理テーブル１１２は、フローβの主経路として、転送経路「ノード２−１→ノード２−５→ノード２−４」に関する情報を記憶する。また、ＶＬＡＮ−ＩＤ管理テーブル１１２は、フローαに対応する転送経路の一つである「ノード２−１→ノード２−２→ノード２−４」の冗長経路の欄に、フローβを記憶する。
【００９６】
制御部１２は、複数のノード２それぞれに、第１のフロー（フローβ）の主経路を用いてパケットを転送するためのポリシーを通知する。
【００９７】
制御部１２は、例えば、ノード２−１に対して、「ＶＬＡＮ−ＩＤ「１０１」を含むパケットは、ノード２−５宛のポートから転送する」旨のポリシーを設定する。また、制御部１２は、ノード２−５に対して、「ＶＬＡＮ−ＩＤ「１０１」を含むパケットを、ノード２−４宛のポートから転送する」旨のポリシーを設定する。さらに、制御部１２は、ノード２−４に対して、「ＶＬＡＮ−ＩＤ「１０１」を含むパケットは、後段の装置（図示しない）に対応するポートから転送する」旨を設定する。
【００９８】
制御部１２は、第１のフローの主経路を用いてパケットを転送できなくなった場合、ノード２の少なくとも1つに対して、冗長経路として選択した第２のフローの転送経路を用いてパケットを転送するためのポリシーを通知し、パケットの転送経路を変更する。
【００９９】
なお、制御部１２は、パケットの送信元のノード（例えば、エッジのノード。図１の例では、ノード２−１）以外のノード２に対して、予め、冗長経路として選択した第２のフローの転送経路でパケットを転送するためのポリシーを通知してもよい。この場合、制御部１２は、第１のフローの主経路を用いてパケットを転送できなくなった場合、パケットの送信元のノード２（ノード２−１）だけにポリシーを通知すれば、パケットの転送経路を冗長経路として選択した第２のフローの転送経路に変更できる。
【０１００】
図２０は、本発明の第４の実施形態における、通信システムの動作例を示すシーケンス図である。
【０１０１】
ノード２の少なくとも1つは、パケットを受信すると（Ｓ４０１）、制御装置１に対して転送経路の設定を要求する（Ｓ４０２）。
【０１０２】
制御装置１は、第１のフローの主経路を設定し、当該第１のフローの冗長経路を第２のフローの転送経路から選択する（Ｓ４０３）。制御装置１は、ノード２に対して、当該主経路で受信したパケットを転送するためのポリシーを通知する（Ｓ４０４）。
【０１０３】
ポリシーを受信したノード２（ノード２−１）は、ポリシーに基づいて、当該受信したパケットを所定のポートから転送する（Ｓ４０５）。
【０１０４】
各ノード２は、受信したポリシーに基づいて、パケットを転送する（Ｓ４０６）。
【０１０５】
本発明の第４の実施形態によれば、本発明は、ＶＬＡＮ経路に関する技術を適用して実施することができる。
【０１０６】
なお、本発明の第４の実施形態において、ＶＬＡＮ−ＩＤの代わりに「ラベル」と呼ばれる短い固定長の識別標識を用いてもよい。「ラベル」は、例えば、ＭＰＬＳラベル（Ｍｕｌｔｉ−Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ  ラベル）である。すなわち、本発明は、ＶＬＡＮを、ＭＰＬＳ等のラベルスイッチング技術に置き換えても実施することができる。
【０１０７】
＜第５の実施形態＞
本発明の第５の実施形態について、図面を用いて説明する。本発明の第５の実施形態は、フローの転送経路が、異なる２つのＶＬＡＮにまたがっている場合の実施形態である。
【０１０８】
図２１は、本発明の第５の実施形態における、通信システムの構成例を示す図である。図２１に示すように、本発明の第５の実施形態における通信システムは、第１のＶＬＡＮ―ＩＤによりパケットを転送するノード２−１乃至２−５と、第２のＶＬＡＮ―ＩＤによりパケットを転送する第２のノード２０−１及び２０−２（特に分ける必要が無い場合は、「第２のノード２０」と記載する）とを含む。つまり、ノード２−１乃至２−５で構成されるネットワークと、第二のノード２０で構成されるネットワークは、互いに異なるＶＬＡＮネットワークで構成される。
【０１０９】
第２のノード２０は、ノード２−１乃至２−５が利用する第１のＶＬＡＮ−ＩＤ（図２２の例では、１１０、１１１）とは異なる第２のＶＬＡＮ−ＩＤ（図２２の例では、１０）により、パケットを転送する。この場合、制御装置１は、ノード２０−１及び２０−４との接点に位置するノード２−１及びノード２−４に対して、ＶＬＡＮ−ＩＤの書き換えを指示する。
【０１１０】
なお、本発明の第５の実施形態における通信装置１は、図６に示す本発明の第２の実施形態と同様である。さらに、本発明の第５の実施形態におけるノード２及びノード２０は、図１０に示す本発明の第２の実施形態と同様である。
【０１１１】
なお、本発明の第５の実施形態において、制御装置１は、パケットの冗長経路を、当該パケットが属するフローよりも高優先度のフローが利用する転送経路から選択する。
【０１１２】
図２２は、本発明の第５の実施形態における、記憶部１１が記憶するＶＬＡＮ−ＩＤ管理テーブル１１２の例である。ＶＬＡＮ−ＩＤ管理テーブル１１２は、「第１のＶＬＡＮ−ＩＤ」と、経路を示す「Ｈｏｐ  Ｉｎｆｏｒｍａｔｉｏｎ」と、パケットが属するフローの「第２のＶＬＡＮ−ＩＤ及び優先度を示す情報との組」との対応表である。また、ＶＬＡＮ−ＩＤ管理テーブル１１２には、主経路として用いるフローを記憶する欄と、冗長経路として用いるフローを記憶する欄とが設けられている。
【０１１３】
図２２のＶＬＡＮ−ＩＤ管理テーブル１１２の例では、ＶＬＡＮ−ＩＤが「１１０」のＶＬＡＮは、その経路が「ノード２−１→ノード２−２→ノード２−４」であり、第２のＶＬＡＮ−ＩＤ「１０」及び優先度「７」のフローに属するパケットの主経路として用いられる。
【０１１４】
制御装置１の制御部１２は、ノード２からの要求に応じて、該ノード２から受け取ったパケットに関する情報と、トポロジー記憶部１４に記憶されている情報とに基づいて、パケットを転送するための第１のフローの主経路を決定する。制御部１２は、例えば、第１のフローの主経路として「ノード２−１→ノード２−５→ノード２−４」を決定し、決定した主経路に対して、第１のＶＬＡＮ−ＩＤ「１０１」を割り当てる。
【０１１５】
本発明の第５の実施形態において、制御部１２は、第１のフローの冗長経路として、送信元及び宛先が同一であり、当該第１のフローよりも優先度の高い第２のフローに対応する転送経路から選択する。図２２の例では、制御部１２は、第１のフローの転送経路を、送信元及び宛先が同一であり、当該第１のフローよりも優先度の高い第２のフローに対応する転送経路である「ＶＬＡＮ−ＩＤ「１１０」及び「１１１」のＶＬＡＮ」から選択する。
【０１１６】
図２３は、制御部１２が第１のフローの主経路及び冗長経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の例である。ＶＬＡＮ−ＩＤ管理テーブル１１２は、フローβの主経路として、転送経路「ノード２−１→ノード２−５→ノード２−４」に関する情報を記憶する。また、ＶＬＡＮ−ＩＤ管理テーブル１１２は、フローαに対応する転送経路の一つである「ノード２−１→ノード２−２→ノード２−４」の冗長経路の欄に、第２のＶＬＡＮ−ＩＤ「２０」と優先度「１」とを対応付けて記憶する。
【０１１７】
一方、制御部１２は、冗長経路として利用可能な第２のフローの転送経路が設定されていない場合、冗長経路を新たに設定するか否かを判定する。具体的には、制御部１２は、第１のフローの優先度と、優先度に関する所定の閾値とを比較し、フローの優先度が所定の閾値以上であれば、冗長経路を新たに設定する。一方、制御部１２は、比較の結果、フローの優先度が所定の閾値未満であれば、冗長経路の設定を行わない。所定の閾値は、予め定められており、例えば優先度「６」である。
【０１１８】
制御部１２は、複数のノード２のそれぞれに、主経路であるＶＬＡＮ−ＩＤ「１０１」の転送経路「ノード２−１→ノード２−５→ノード２−４」に沿って、パケットを転送するためのポリシーを通知する。
【０１１９】
制御部１２は、接点に位置するノード２−１に対して、「第２のＶＬＡＮ−ＩＤ「２０」を含むパケットは、ＶＬＡＮ−ＩＤを第１のＶＬＡＮ−ＩＤ「１０１」に書き換えて、ノード２−５宛のポートから転送する」旨のポリシーを設定する。
【０１２０】
また、制御部１２は、ノード２−５に対して、「第１のＶＬＡＮ−ＩＤ「１０１」を含むパケットを、ノード２−４宛のポートから転送する」旨のポリシーを設定する。
【０１２１】
さらに、制御部１２は、接点に位置するノード２−４に対して、「第１のＶＬＡＮ−ＩＤ「１０１」を含むパケットは、ＶＬＡＮ−ＩＤを第２のＶＬＡＮ−ＩＤ「２０」に書き換えて、後段の装置（図示しない）に転送する」旨を設定する。
【０１２２】
制御部１２は、ＶＬＡＮ−ＩＤ「１０１」の転送経路「ノード２−１→ノード２−５→ノード２−４」に沿ってパケットを転送できなくなった場合、第１のＶＬＡＮ−ＩＤが「１１０」の転送経路に沿ってパケットを転送するためのポリシーを各ノード２に通知する。これによって、制御部１２は、パケットの転送経路を、選択した冗長経路に変更する。
【０１２３】
図２４は、本発明の第５の実施形態における、通信システムの動作例を示すシーケンス図である。
【０１２４】
送信元側の接点に位置するノード２（図１の例では、ノード２−１）は、外部ネットワーク（第２のノード２０−１）からパケットを受信すると（Ｓ５０１）、制御装置１に対して転送経路の設定を要求する（Ｓ５０２）。
【０１２５】
制御装置１は、ノード２が受信したパケットが属するフローに対して主経路を決定し、ノード２が受信したパケットが属するフロー（第１のフロー）の冗長経路を、他のフロー（第２のフロー）に対応する転送経路から選択する（Ｓ５０３）。制御装置１は、主経路に沿ってパケットを転送するためのポリシーをノード２に対して通知する（Ｓ５０４）。
【０１２６】
ポリシーを受信したエッジのノード２（ノード２−１）は、ポリシーに基づいて、受信したパケットのＶＬＡＮ−ＩＤを付け替え、所定のポートから転送する（Ｓ５０５）。
【０１２７】
各ノード２は、受信したポリシーに基づいて、パケットを転送する（Ｓ５０６）。
【０１２８】
宛先側の接点に位置するエッジのノード２（図１の例では、ノード２−４）は、パケットを受信すると、ポリシーに基づいて、受信したパケットのＶＬＡＮ−ＩＤを付け替え、外部ネットワーク（第２のノード２０−２）に転送する（Ｓ５０７）。
【０１２９】
続いて、図２３の状態において、制御部１２が、さらに、ノード２からの要求に応じて、第２のＶＬＡＮ−ＩＤ「３０」及び優先度「３」のフローの転送経路を設定する場合について説明する。
【０１３０】
制御部１２は、第２のＶＬＡＮ−ＩＤ「３０」及び優先度「３」のフローの主経路として、「ノード２−１→ノード２−５→ノード２−４」を決定する。制御部１２は、決定した転送経路に対して、第１のＶＬＡＮ−ＩＤ「１０２」を割り当てる。
【０１３１】
制御部１２は、第２のＶＬＡＮ−ＩＤ「３０」及び優先度「３」のフローの冗長経路として、当該フローよりも高優先度のフローの転送経路である「第１のＶＬＡＮ−ＩＤ「１１１」のＶＬＡＮ」を選択する。
【０１３２】
図２５は、図２３の状態から制御部１２がさらに転送経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の例である。ＶＬＡＮ−ＩＤ管理テーブル１１２は、第２のＶＬＡＮ−ＩＤ「３０」及び優先度「３」のフローの主経路として、「ノード２−１→ノード２−５→ノード２−４」のＶＬＡＮに関する情報を記憶する。また、ＶＬＡＮ−ＩＤ管理テーブル１１２は、「第１のＶＬＡＮ−ＩＤ「１１１」のＶＬＡＮ」の冗長経路の欄に、第２のＶＬＡＮ−ＩＤ「３０」と優先度「３」とを対応付けて記憶する。
【０１３３】
続いて、図２５の状態において、制御部１２が、さらに、ノード２からの要求に応じて、第２のＶＬＡＮ−ＩＤ「４０」及び優先度「３」のフローの転送経路を設定する場合について説明する。
【０１３４】
制御部１２は、第２のＶＬＡＮ−ＩＤ「４０」及び優先度「３」のフローの主経路として、「ノード２−１→ノード２−２→ノード２−４」を決定する。制御部１２は、決定した転送経路に対して、第１のＶＬＡＮ−ＩＤ「１０３」を割り当てる。
【０１３５】
制御部１２は、第２のＶＬＡＮ−ＩＤ「４０」及び優先度「３」のフローの冗長経路を、当該フローの優先度よりも高い優先度のフローの転送経路から選択しようとする。なお、制御部１２は、冗長経路を、主経路と同じ転送経路からは選択しない。
【０１３６】
しかし、制御部１２は、そのようなＶＬＡＮは設定されていないため、第２のＶＬＡＮ−ＩＤ「４０」のフローの優先度「３」と、優先度の閾値「６」とを比較する。制御部１２は、比較の結果、フローの優先度は所定の閾値未満であるため、冗長経路の設定を行わない。
【０１３７】
図２６は、図２５の状態から、制御部１２がさらに転送経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の例である。ＶＬＡＮ−ＩＤ管理テーブル１１２は、第２のＶＬＡＮ−ＩＤ「４０」及び優先度「３」のフローの主経路として、「ノード２−１→ノード２−２→ノード２−４」のＶＬＡＮに関する情報だけを記憶する。
【０１３８】
続いて、図２６の状態において、制御部１２が、さらに、ノード２からの要求に応じて、第２のＶＬＡＮ−ＩＤ「５０」及び優先度「７」のフローの転送経路を設定する場合について説明する。
【０１３９】
制御部１２は、第２のＶＬＡＮ−ＩＤ「５０」及び優先度「７」のフローの主経路として、「ノード２−１→ノード２−２→ノード２−４」を決定する。制御部１２は、決定した転送経路に対して、第１のＶＬＡＮ−ＩＤ「１２０」を割り当てる。
【０１４０】
制御部１２は、第２のＶＬＡＮ−ＩＤ「５０」及び優先度「７」のフローの冗長経路を、当該フローの優先度よりも高い優先度のフローに対応する転送経路であるＶＬＡＮから選択しようとする。なお、制御部１２は、フローよりも優先度の高いフローに対応する転送経路のうち、当該第１のフローと優先度が同一の他のフローの冗長経路として設定されていない転送経路から、当該第１のフローの冗長経路を選択する。同一の優先度のフローの冗長経路どうしが、同じ転送経路に設定されないようにするためである。
【０１４１】
しかし、制御部１２は、そのようなＶＬＡＮは設定されていないため、第２のＶＬＡＮ−ＩＤ「５０」のフローの優先度「７」と、優先度の閾値「６」とを比較する。制御部１２は、比較の結果、フローの優先度は所定の閾値以上であるため、冗長経路として新たな転送経路を設定する。制御部１２は、第２のＶＬＡＮ−ＩＤ「５０」及び優先度「７」のフローの冗長経路として、「ノード２−１→ノード２−３→ノード２−４」を新たに設定する。制御部１２は、冗長経路として設定した新たな冗長経路に対して、第１のＶＬＡＮ−ＩＤ「１２１」を割り当てる。
【０１４２】
制御部１２は、第１のＶＬＡＮ−ＩＤ「１２１」の転送経路を決定した結果、第２のＶＬＡＮ−ＩＤ「４０」及び優先度「３」のフローの冗長経路を、第１のＶＬＡＮ−ＩＤ「１２０」又は「１２１」の転送経路から選択できるようになる。制御部１２は、例えば、第２のＶＬＡＮ−ＩＤ「４０」及び優先度「３」のフローの冗長経路として、第１のＶＬＡＮ−ＩＤ「１２１」のＶＬＡＮを選択する。
【０１４３】
図２７は、図２６の状態から制御部１２がさらに転送経路を設定した後の、ＶＬＡＮ−ＩＤ管理テーブル１１２の例である。ＶＬＡＮ−ＩＤ管理テーブル１１２は、第２のＶＬＡＮ−ＩＤ「５０」及び優先度「７」のフローの主経路として、「ノード２−１→ノード２−３→ノード２−４」のＶＬＡＮに関する情報を記憶する。また、ＶＬＡＮ−ＩＤ管理テーブル１１２は、「第１のＶＬＡＮ−ＩＤ「１２１」のＶＬＡＮ」の冗長経路の欄に、第２のＶＬＡＮ−ＩＤ「４０」と優先度「３」とを対応付けて記憶する。
【０１４４】
最後に、図２７の状態において、制御部１２が、第２のＶＬＡＮ−ＩＤ「１０」及び優先度「７」のパケットの転送に用いていた転送経路（ＶＬＡＮ−ＩＤ「１１０」及び「１１１」のＶＬＡＮ）を削除する場合について説明する。
【０１４５】
制御部１２は、ＶＬＡＮ−ＩＤ管理テーブル１１２から、ＶＬＡＮ−ＩＤ「１１０」及び「１１１」のＶＬＡＮに関する情報を削除する。また、制御部１２は、ノード２に対して、ＶＬＡＮ−ＩＤ「１１０」及び「１１１」のＶＬＡＮに関するポリシーを削除する旨を要求する。
【０１４６】
制御部１２は、削除した転送経路を冗長経路としていた「第２のＶＬＡＮ−ＩＤ「２０」及び優先度「１」のフロー」及び「第２のＶＬＡＮ−ＩＤ「３０」及び優先度「３」のフロー」について、冗長経路を再設定する。制御部１２は、第２のＶＬＡＮ−ＩＤ「２０」及び優先度「１」のフローとして、優先度「７」のフローの主経路であり、優先度「３」のフローの冗長経路である「第１のＶＬＡＮ−ＩＤ「１２１」のＶＬＡＮ」を選択する。また、制御部１２は、第２のＶＬＡＮ−ＩＤ「３０」及び優先度「３」のフローとして、優先度「７」のフローの主経路である「第１のＶＬＡＮ−ＩＤ「１２０」のＶＬＡＮ」を選択する。
【０１４７】
図２８は、図２７の状態から制御部１２が転送経路を削除した後のＶＬＡＮ−ＩＤ管理テーブル１１２の例である。ＶＬＡＮ−ＩＤ管理テーブル１１２は、「第１のＶＬＡＮ−ＩＤ「１２０」のＶＬＡＮ」の冗長経路の欄に、第２のＶＬＡＮ−ＩＤ「３０」及び優先度「３」のフローを記憶する。またＶＬＡＮ−ＩＤ管理テーブル１１２は、「第１のＶＬＡＮ−ＩＤ「１２１」のＶＬＡＮ」の冗長経路の欄に、第２のＶＬＡＮ−ＩＤ「２０」及び優先度「１」のフローを記憶する。
【０１４８】
本発明の第５の実施形態によれば、本発明は、フローの転送経路が異なる２つのＶＬＡＮに跨っている場合にも適用できる。
【０１４９】
＜第６の実施形態＞
本発明の第６の実施形態について、図面を用いて説明する。本発明の第６の実施形態は、制御部１２が、第１のフローの冗長経路を、第２のフローに対応する転送経路の中から選択する際に、転送経路の有効期間を考慮する実施形態である。第６の実施形態は、上述の実施形態のいずれにも適用することができる。
【０１５０】
本発明の第６の実施形態における通信システムは、図１に示す第１の実施形態における通信システムの構成例と同様である。また、本発明の第６の実施形態における制御装置１の構成例は、図２又は図６に示す上記の各実施形態における制御装置１の構成例と同様である。さらに、本発明の第６の実施形態におけるノード２は、図１０に示す第２の実施形態におけるノード２の構成例と同様である。
【０１５１】
制御部１２は、転送経路を決定する毎に、当該決定した転送経路に対して、有効期間を設定する。有効期間は、その転送経路によりパケットを転送できる期間である。
【０１５２】
記憶部１１は、転送経路毎に、有効期間を記憶する。
【０１５３】
図２９は、本発明の第６の実施形態における、記憶部１１のＶＬＡＮ−ＩＤ管理テーブル１１２の構成例を示す図である。図２９に示すように、記憶部１１のＶＬＡＮ−ＩＤ管理テーブル１１２は、転送経路毎に、有効期間に関する情報を対応付けて記憶する。有効期間に関する情報は、例えば、有効期間の残り時間である。図２９に示すように、ＶＬＡＮ−ＩＤ管理テーブル１１２は、第１のＶＬＡＮ−ＩＤ「１１０」の転送経路について、有効期間の残り時間が「１００分」であることが記憶されている。
【０１５４】
制御部１２は、第１のフローの冗長経路を、第２のフローに対応する転送経路から、当該第２のフローに対応する転送経路の各々の有効期間に基づいて選択する。制御部１２は、例えば、第２のフローに対応する転送経路のうち、有効期間の残り時間がより長い転送経路を優先して選択する。図２９の例において、制御部１２が、冗長経路として、第１のＶＬＡＮ−ＩＤ「１１０」又は「１１１」の転送経路のいずれかを選択する場合、転送経路の有効時間の残り時間がより長い第１のＶＬＡＮ−ＩＤ「１１０」の転送経路を選択する。
【０１５５】
また、制御部１２は、例えば、第１のフローの冗長経路として、当該冗長経路に求められる有効期間よりも長い有効期間である第２のフローに対応する転送経路から選択してもよい。この場合において、制御部１２は、例えば、冗長経路に求められる有効期間よりも長い有効期間である第２のフローに対応する転送経路が無い場合、当該冗長経路として、新たな転送経路を設定してもよい。
【０１５６】
上記のとおり、制御部１２は、第１のフローの冗長経路を選択する場合において、第２のフローに対応する転送経路の有効期間を考慮するので、冗長経路に求められる有効期間の終了前に、選択した第２のフローの転送経路が消滅することを防止できる。そのため、制御部１２は、選択した第２のフローの転送経路の消滅に伴って、冗長経路を再選択する必要がなくなり、当該制御部１２の負荷を低減できる。
【０１５７】
＜第７の実施形態＞
本発明の第７の実施形態について、図面を用いて説明する。本発明の第７の実施形態は、本発明を、集中制御型のネットワークアーキテクチャであるオープンフロー（ＯｐｅｎＦｌｏｗ）という技術を改良して実施する実施形態である。第７の実施形態は、上述の実施形態のいずれにも適用することができる。
【０１５８】
オープンフローは、通信をエンドツーエンドのフローとして認識し、フロー単位で経路制御等を実行できる。
【０１５９】
図３０及び図３１を参照し、オープンフローについて説明する。
【０１６０】
図３０に、オープンフロー技術により構成された通信システムの概要を示す。なお、フローとは、例えば、所定の属性（通信の宛先や送信元等に基づいて識別される属性）を有する一連の通信パケット群である。オープンフロースイッチ１０１は、オープンフロー技術を採用したネットワークスイッチである。オープンフローコントローラ１００は、オープンフロースイッチ１０１を制御する情報処理装置である。
【０１６１】
オープンフロースイッチ１０１は、オープンフローコントローラ１００との間に設定されたセキュアチャネル１０２を介して、オープンフローコントローラ１００と通信する。オープンフローコントローラ１００は、セキュアチャネル１０２を介して、オープンフロースイッチ１０１のフローテーブル１０３の設定を行う。なお、セキュアチャネル３２は、スイッチとコントローラ間の通信の盗聴や改ざん等を防止するための処置がなされた通信経路である。
【０１６２】
図３１は、フローテーブル１０３の各エントリ（フローエントリ）の構成例を示す。フローエントリは、スイッチが受信したパケットのヘッダに含まれる情報（例えば、宛先ＩＰアドレスやＶＬＡＮ  ＩＤ等）と照合するためのマッチングルール（Ｍａｔｃｈ  Ｆｉｅｌｄｓ）と、パケットフロー毎の統計情報である統計情報（Ｃｏｕｎｔｅｒｓ）と、マッチングルールにマッチするパケットの処理方法を規定するインストラクション（Ｉｎｓｔｒｕｃｔｉｏｎｓ）とで構成される。
【０１６３】
オープンフロースイッチ１０１は、パケットを受信すると、フローテーブル１０３を参照する。オープンフロースイッチ１０１は、受信したパケットのヘッダ情報にマッチするフローエントリを検索する。受信パケットのヘッダ情報にマッチするエントリが検索された場合、オープンフロースイッチ１０１は、検索されたエントリのインストラクションフィールドに定義された処理方法に従って、受信パケットを処理する。処理方法は、例えば、“受信パケットを所定のポートから転送する”、“受信したパケットを破棄する”、“受信パケットのヘッダの一部を書き換えて、所定のポートから転送する”といったことが規定されている。
【０１６４】
一方、受信パケットのヘッダ情報にマッチするエントリが見つからない場合、オープンフロースイッチ１０１は、例えば、セキュアチャネル１０２を介して、オープンフローコントローラ１００に対して受信パケットを転送する。オープンフロースイッチ１０１は、受信パケットを転送することにより、オープンフローコントローラ１００に対して、受信パケットの処理方法を規定したフローエントリの設定を要求する。オープンフロースイッチ１０１は、パケットの処理方法として、コントローラに要求を送信することを規定したフローエントリにパケットがマッチした場合、その処理方法に従って、コントローラに対してフローエントリの設定を要求してもよい。
【０１６５】
オープンフローコントローラ１００は、受信パケットの処理方法を決定し、決定した処理方法を含むフローエントリをフローテーブル１０３に設定する。その後、オープンフロースイッチ１０１は、設定されたフローエントリにより、受信パケットと同一のフローに属する後続のパケットを処理する。
【０１６６】
図３２は、本発明の第７の実施形態における、通信システムの例を示す。
【０１６７】
本発明の第７の実施形態は、図３２に示すように、コントローラ３と、スイッチ４−１乃至４−５（特に分ける必要が無い場合は、「ノード２」と記載する）とを含む。コントローラ３は、スイッチ４と、ＯｐｅｎＦｌｏｗプロトコルに従って通信することが可能である。
【０１６８】
図３３は、本発明の第７の実施形態における、コントローラ３の構成例を示す図である。コントローラ３は、記憶部３１と、制御部３２と、通信部３３と、トポロジー記憶部３４と、処理規則記憶部３５とを有する。
【０１６９】
記憶部３１は、上記の各実施形態における記憶部１１と同様であり、転送経路管理テーブル３１０は、上記の各実施形態における経路管理テーブル１１０又はＶＬＡＮ−ＩＤ管理テーブル１１２と同様の構成である。なお、記憶部３１は、上記の各実施形態の属性管理テーブル１１１を備えていてもよい。
【０１７０】
通信部３３は、スイッチ４と、ＯｐｅｎＦｌｏｗプロトコルに基づいて通信する機能を有する。通信部３３は、スイッチ４から、パケットの処理規則（上述の“フローエントリ”に対応）の要求を受信する。また、通信部３３は、スイッチ４に処理規則を通知する。本発明の第７の実施形態において、処理規則は、上記の各実施形態におけるポリシーを、ＯｐｅｎＦｌｏｗという技術に適用したものである。
【０１７１】
トポロジー記憶部３４は、上記の各実施形態におけるトポロジー記憶部１４と同様である。トポロジー記憶部３４は、スイッチ４間の隣接情報や、リンクの帯域などのネットワークに関する情報を記憶する。
【０１７２】
なお、ＯｐｅｎＦｌｏｗに準拠した通信機器（ネットワークスイッチ等）は、通信機器のポートのステータスをコントローラに通知する機能（Ｐｏｒｔ  Ｓｔａｔｕｓ）や、スイッチの特性をコントローラに通知する機能（Ｆｅａｔｕｒｅ  Ｒｅｑｕｅｓｔ／Ｒｅｐｌｙ）を有する。トポロジー記憶部３４が記憶する情報は、上記の機能を用いて取集してもよい。
【０１７３】
制御部３２の処理規則決定部３２０は、スイッチ４に設定する処理規則を決定する。処理規則決定部３２０は、記憶部３１、トポロジー記憶部３４、処理規則記憶部３５が有する情報を参照し、スイッチ４に設定する処理規則を生成する。
【０１７４】
処理規則決定部３２０は、スイッチ４からの要求に応じて、スイッチ４が受信したパケットを転送するための第１のフローの主経路を決定し、決定した第１のフローの転送経路を用いてパケットを転送するための処理規則を生成する。
【０１７５】
制御部３２は、第１のフローの冗長経路を、第２のフローに対応する転送経路から選択する。
【０１７６】
制御部３２は、冗長経路として利用可能な第２のフローに対応する転送経路が設定されていない場合、当該冗長経路として、新たな転送経路を設定してもよい。
【０１７７】
処理規則決定部３２０は、第１のフローの主経路を用いてパケットを転送できなくなった場合、スイッチ４に対して、冗長経路を用いてパケットを転送するための処理規則を通知し、転送経路を切り替える。
【０１７８】
なお、処理規則決定部３２０は、パケットを冗長経路で転送するための処理規則を作成し、予め、スイッチ４の少なくとも１つに設定しておいてもよい。処理規則決定部３２０は、第１のフローの主経路を用いてパケットを転送できなくなった場合、送信元のスイッチ４（図３２では、スイッチ４−１）の処理規則を変更するだけで、転送経路を切り替えることができる。
【０１７９】
図３４は、本発明の第７の実施形態における処理規則決定部３２０が生成する処理規則の例を示す。図３４の例は、スイッチ４−１に設定する処理規則である。処理規則決定部３２０は、例えば、パケットの宛先アドレスと、当該パケットのポート番号をマッチングルールとして規定する。処理規則決定部３２０は、例えば、マッチングルールに対応する処理方法“Ｉｎｓｔｒｕｃｔｉｏｎ”として、スイッチ４−２宛のポート＃１からパケットを転送する処理方法を規定する。
【０１８０】
図３４の例では、１行目の処理規則のマッチングルールは、「フローα（宛先アドレスが“Ａ”で、ポート番号が“８０”）」である。また、１行目の処理規則のインストラクションは、「スイッチ４−２宛のポート＃１にパケットを転送する」ことを示す。
【０１８１】
図３４の例では、２行目の処理規則のマッチングルールは、「フローβ（宛先アドレスが“Ｂ”で、ポート番号が“２５”）」である。また、２行目の処理規則のインストラクションは、「スイッチ４−５宛のポート＃２にパケットを転送する」ことを示す。
【０１８２】
図３５は、本発明の第７の実施形態におけるスイッチ４の構成の例を示す。図３５に示すように、スイッチ４は、通信部４１と、処理規則ＤＢ４２と、処理部４３とを有する。処理部４３は、処理検索部４３１と、アクション実行部４３２とを有する。
【０１８３】
通信部４１は、ＯｐｅｎＦｌｏｗプロトコルに従って、コントローラ３と通信する。
【０１８４】
処理規則ＤＢ４２は、コントローラ３から通知された処理規則を記憶する。
【０１８５】
処理部４３は、コントローラ３から通知された処理規則に従って、パケットを処理する。
【０１８６】
処理検索部４３１は、処理規則ＤＢ４２から、受信したパケットに対応する処理規則を検索する。処理検索部４３１は、パケットと、処理規則ＤＢ４２に記憶された処理規則の“Ｍａｔｃｈｉｎｇ  Ｆｉｅｌｄ”とを照合し、パケットに対応する処理規則を検索する。
【０１８７】
アクション実行部４３２は、検索された処理規則の“Ｉｎｓｔｒｕｃｔｉｏｎ”フィールドに規定された処理方法に従って、パケットを処理する。
【０１８８】
処理検索部４３１は、例えば、処理規則ＤＢ４２に、受信したパケットに対応する処理規則が存在しない場合、処理規則の設定をコントローラ３に要求する。
【０１８９】
図３６は、本発明の第７の実施形態の動作例を示すシーケンス図である。
【０１９０】
本発明の第７の実施形態において、スイッチ４は、パケットを受信したことに応じて（Ｓ６０１）、コントローラ３に対して、受信したパケットを処理するための処理規則を要求する（Ｓ６０２）。
【０１９１】
コントローラ３は、要求に応じて、スイッチ４が受信したパケットが属する第１のフローに対して、当該第１のフローの主経路を設定し、冗長経路を選択する（Ｓ６０３）。
【０１９２】
コントローラ３は、第１のフローの主経路によりパケットを転送するための処理規則を、スイッチ４に通知する（Ｓ６０４のＦｌｏｗ  Ｍｏｄ）。
【０１９３】
スイッチ４は、コントローラ３から通知された処理規則に基づいて、第１のフローの主経路により、受信したパケットを転送する（Ｓ６０５）。
【０１９４】
コントローラ３は、第１のフローの主経路によりパケットを転送することができなくなったことに応じて、冗長経路によりパケットを転送するための処理規則を、スイッチ４に通知する（Ｓ６０６のＦｌｏｗ  Ｍｏｄ）。
【０１９５】
スイッチ４は、コントローラ３から通知された処理規則に基づいて、冗長経路により、受信したパケットを転送する（Ｓ６０７）。
【０１９６】
本発明の第７の実施形態によれば、本発明は、集中制御型のネットワークアーキテクチャであるオープンフロー（ＯｐｅｎＦｌｏｗ）という技術を改良して実施することができる。
【０１９７】
＜第８の実施形態＞
本発明の第８の実施形態において、制御装置又はコントローラ３のコンピュータ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）又はＭＰＵ（Ｍｉｃｒｏ−Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等は、上述した各実施形態の機能を実現するソフトウェア（プログラム）を実行する。
【０１９８】
本発明の第８の実施形態において、制御装置１又はコントローラ３は、例えばＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅｃｏｒｄａｂｌｅ）等の各種記憶媒体又はネットワークを介して、上述した各実施形態の機能を実現するソフトウェア（プログラム）を取得する。制御装置１又はコントローラ３が取得するプログラム、又は、該プログラムを記憶した記憶媒体は、本発明を構成することになる。なお、該ソフトウェア（プログラム）は、例えば、制御装置１又はコントローラ３に含まれる所定の記憶部に、予め記憶されていてもよい。
【０１９９】
制御装置１又はコントローラ３のコンピュータ、ＣＰＵ又はＭＰＵ等は、取得したソフトウェア（プログラム）のプログラムコードを読み出して実行する。したがって、制御装置１又はコントローラ３は、上述した各実施形態における制御装置１、コントローラ３又は制御装置５の処理と同一の処理を実行する。
【０２００】
本発明の第８の実施形態によれば、制御装置１又はコントローラ３のコンピュータ、ＣＰＵ又はＭＰＵ等に実現するためのプログラムといった用途に適用できる。
【０２０１】
以上、本発明の実施形態を説明したが、本発明は、上記したそれぞれの実施形態に限定されるものではない。本発明は、各実施形態の変形・置換・調整に基づいて実施できる。また、本発明は、各実施形態を任意に組み合わせて実施することもできる。即ち、本発明は、本明細書の全ての開示内容、技術的思想に従って実現できる各種変形、修正を含む。
【０２０２】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０２０３】
［付記１］
通信データの転送経路を決定する制御部と、
前記通信データの転送経路を記憶する記憶部と、を備え、
前記制御部は、前記記憶部を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択することを特徴とする制御装置。
【０２０４】
［付記２］
前記記憶部は、前記通信データの転送経路と、前記通信データの属性とを対応付けて記憶し、
前記制御部は、前記記憶部を参照して、前記冗長経路を、前記第１の通信データとは属性の異なる前記第２の通信データに対応する転送経路から選択することを特徴とする付記１に記載の制御装置。
【０２０５】
［付記３］
前記記憶部は、前記通信データの転送経路と、前記通信データの優先度とを対応付けて記憶し、
前記制御部は、前記記憶部を参照して、前記冗長経路を、前記第１の通信データとは優先度の異なる前記第２の通信データに対応する転送経路から選択することを特徴とする付記１又は２に記載の制御装置。
【０２０６】
［付記４］
前記制御部は、前記冗長経路を、前記第１の通信データよりも優先度の高い前記第２の通信データに対応する転送経路から選択することを特徴とする付記３に記載の制御装置。
【０２０７】
［付記５］
前記制御部は、前記冗長経路を識別するためのラベルを、前記第２の通信データに対応する転送経路に割り当てられたラベルと共有させることを特徴とする付記１乃至４のいずれかに記載の制御装置。
【０２０８】
［付記６］
前記制御部は、前記冗長経路を、前記第２の通信データに対応する転送経路のうち、前記冗長経路に要求される有効期間よりも長い有効期間が設定されている転送経路から選択することを特徴とする付記１乃至５のいずれかに記載の制御装置。
【０２０９】
［付記７］
前記制御部は、前記冗長経路として選択した前記第２の通信データに対応する転送経路の有効期間が終了したことに応じて、前記冗長経路を、第３の通信データに対応する転送経路から選択することを特徴とする付記１乃至５のいずれかに記載の制御装置。
【０２１０】
［付記８］
前記制御部は、前記冗長経路を、前記第１の通信データと送信元及び宛先が同一である前記第２の通信データに対応する転送経路から選択することを特徴とする付記１乃至７のいずれかに記載の制御装置。
【０２１１】
［付記９］
前記制御部は、決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送できないことに応じて、前記第１の通信データを転送する複数のノードに対して、選択した前記第２の通信データの転送経路に沿って前記第１の通信データを転送するためのポリシーを通知することを特徴とする付記１乃至８のいずれかに記載の制御装置。
【０２１２】
［付記１０］
前記制御部は、
前記第１の通信データを転送する複数のノードからの前記要求に応じて、決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送するための処理規則を前記複数のノードの少なくとも1つに通知し、
決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送できないことに応じて、選択した前記第２の通信データの転送経路に沿って前記第１の通信データを転送するための処理規則を前記複数のノードの少なくとも1つに通知する
ことを特徴とする付記１乃至９のいずれかに記載の制御装置。
【０２１３】
［付記１１］
付記１乃至１０のいずれかに記載の制御装置と、
決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送する複数のノードと、を含むことを特徴とする通信システム。
【０２１４】
［付記１２］
前記複数のノードの各々は、前記制御装置から通知されるポリシーに基づいて、前記第１のパケットを転送することを特徴とする付記１１に記載の通信システム。
【０２１５】
［付記１３］
前記複数のノードの各々は、受信したパケットに含まれるラベルに対応する転送経路に沿って、前記受信したパケットを転送することを特徴とする付記１１又は１２に記載の通信システム。
【０２１６】
［付記１４］
通信データの転送経路を決定し、
前記通信データの転送経路を記憶し、
記憶した前記通信データの転送経路を参照して、第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択する
ことを特徴とする通信方法。
【０２１７】
［付記１５］
前記通信データの転送経路と、前記通信データの属性とを対応付けて記憶し、
記憶した前記通信データの転送経路を参照して、前記冗長経路を、前記第１の通信データとは属性の異なる前記第２の通信データに対応する転送経路から選択する
ことを特徴とする付記１４に記載の通信方法。
【０２１８】
［付記１６］
前記通信データの転送経路と、前記通信データの優先度とを対応付けて記憶し、
記憶した前記通信データの転送経路を参照して、前記冗長経路を、前記第１の通信データとは優先度の異なる前記第２の通信データに対応する転送経路から選択する
ことを特徴とする付記１４又は１５に記載の通信方法。
【０２１９】
［付記１７］
前記冗長経路を、前記第１の通信データよりも優先度の高い前記第２の通信データに対応する転送経路から選択することを特徴とする付記１６に記載の通信方法。
【０２２０】
［付記１８］
前記冗長経路を識別するためのラベルを、前記第２の通信データに対応する転送経路に割り当てられたラベルと共有させることを特徴とする付記１４乃至１７のいずれかに記載の通信方法。
【０２２１】
［付記１９］
前記冗長経路を、前記第２の通信データに対応する転送経路のうち、前記冗長経路に要求される有効期間よりも長い有効期間が設定されている転送経路から選択することを特徴とする付記１４乃至１８のいずれかに記載の通信方法。
【０２２２】
［付記２０］
前記冗長経路として選択した前記第２の通信データの転送経路の有効期間が終了したことに応じて、前記冗長経路を、第３の通信データに対応する転送経路から選択することを特徴とする付記１４乃至１８のいずれかに記載の通信方法。
【０２２３】
［付記２１］
前記冗長経路を、前記第１の通信データと送信元及び宛先が同一である前記第２の通信データに対応する転送経路から選択することを特徴とする付記１４乃至２０のいずれかに記載の通信方法。
【０２２４】
［付記２２］
決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送できないことに応じて、前記第１の通信データを転送する複数のノードに対して、選択した前記第２の通信データの転送経路に沿って前記第１の通信データを転送するためのポリシーを通知することを特徴とする付記１４乃至２１のいずれかに記載の通信方法。
【０２２５】
［付記２３］
前記第１の通信データを転送する複数のノードからの前記要求に応じて、決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送するための処理規則を前記複数のノードに通知し、
決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送できないことに応じて、選択した前記第２の通信データの転送経路に沿って前記第１の通信データを転送するための処理規則を前記複数のノードに通知する
ことを特徴とする付記１４乃至２２のいずれかに記載の通信方法。
【０２２６】
［付記２４］
通信データの転送経路を決定する処理と、
前記通信データの転送経路を記憶する処理と、
記憶した前記通信データの転送経路を参照して、前記第１の通信データの冗長経路を、第２の通信データに対応する転送経路から選択する処理と
をコンピュータに実行させることを特徴とするプログラム。
【０２２７】
［付記２５］
前記通信データの転送経路と、前記通信データの属性とを対応付けて記憶する処理と、
記憶した前記通信データの転送経路を参照して、前記第１の通信データとは属性の異なる前記第２の通信データに対応する転送経路から選択する処理と
を含むことを特徴とする付記２４に記載のプログラム。
【０２２８】
［付記２６］
前記通信データの転送経路と、前記通信データの優先度とを対応付けて記憶する処理と、
記憶した前記通信データの転送経路を参照して、前記冗長経路を、前記第１の通信データとは優先度の異なる前記第２の通信データに対応する転送経路から選択する処理と
を含むことを特徴とする付記２４又は２５に記載のプログラム。
【０２２９】
［付記２７］
前記冗長経路を、前記第１の通信データよりも優先度の高い前記第２の通信データに対応する転送経路から選択する処理を含むことを特徴とする付記２６に記載のプログラム。
【０２３０】
［付記２８］
前記冗長経路を識別するためのラベルを、前記第２の通信データに対応する転送経路に割り当てられたラベルと共有させる処理を含むことを特徴とする付記２４乃至２７のいずれかに記載のプログラム。
【０２３１】
［付記２９］
前記冗長経路を、前記第２の通信データに対応する転送経路のうち、前記冗長経路に要求される有効期間よりも長い有効期間が設定されている転送経路から選択する処理を含むことを特徴とする付記２４乃至２８のいずれかに記載のプログラム。
【０２３２】
［付記３０］
前記冗長経路として選択した前記第２の通信データの転送経路の有効期間が終了したことに応じて、前記冗長経路を、第３の通信データに対応する転送経路から選択する処理を含むことを特徴とする付記２４乃至２８のいずれかに記載のプログラム。
【０２３３】
［付記３１］
前記冗長経路を、前記第１の通信データと送信元及び宛先が同一である前記第２の通信データに対応する転送経路から選択する処理を含むことを特徴とする付記２４乃至３０のいずれかに記載のプログラム。
【０２３４】
［付記３２］
決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送できないことに応じて、前記第１の通信データを転送する複数のノードに対して、選択した前記第２の通信データの転送経路に沿って前記第１の通信データを転送するためのポリシーを通知する処理を含むことを特徴とする付記２４乃至３１のいずれかに記載のプログラム。
【０２３５】
［付記３３］
前記第１の通信データを転送する複数のノードからの前記要求に応じて、決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送するための処理規則を前記複数のノードに通知する処理と、
決定した前記第１の通信データの転送経路に沿って前記第１の通信データを転送できないことに応じて、選択した前記第２の通信データの転送経路に沿って前記第１の通信データを転送するための処理規則を前記複数のノードに通知する処理と
を含むことを特徴とする付記２４乃至３２のいずれかに記載のプログラム。
【符号の説明】
【０２３６】
１  制御装置
２、２−１、２−２、２−３、２−４、２−５  ノード
３  コントローラ
４、４−１、４−２、４−３、４−４、４−５  スイッチ
５  制御装置
１１  記憶部
１２  制御部
１３  通信部
１４  トポロジー記憶部
２０、２０−１、２０−２  第２のノード
２１  通信部
２２  制御部
２３  ポリシー記憶部
３１  記憶部
３２  制御部
３３  通信部
３４  トポロジー記憶部
３５  処理規則記憶部
４１  通信部
４２  処理規則ＤＢ
４３  処理部
１００  ＯｐｎｅＦｌｏｗ  Ｃｏｎｔｒｏｌｌｅｒ
１０１  ＯｐｎｅＦｌｏｗ  Ｓｗｉｔｃｈ
１０２  Ｓｅｃｕｒｅ  Ｃｈａｎｎｅｌ
１０３  Ｆｌｏｗ  Ｔａｂｌｅ
１１０  経路管理テーブル
１１１  属性管理テーブル
１１２  ＶＬＡＮ−ＩＤ管理テーブル
２３０  ポリシー管理テーブル
３２０  処理記憶決定部
３１０  転送経路管理テーブル
４３１  処理検索部
４３２  アクション実行部
【図１】
2015192260.tif 000003
【図２】
2015192260.tif 000004
【図３】
2015192260.tif 000005
【図４】
2015192260.tif 000006
【図５】
2015192260.tif 000007
【図６】
2015192260.tif 000008
【図７】
2015192260.tif 000009
【図８】
2015192260.tif 000010
【図９】
2015192260.tif 000011
【図１０】
2015192260.tif 000012
【図１１】
2015192260.tif 000013
【図１２】
2015192260.tif 000014
【図１３】
2015192260.tif 000015
【図１４】
2015192260.tif 000016
【図１５】
2015192260.tif 000017
【図１６】
2015192260.tif 000018
【図１７】
2015192260.tif 000019
【図１８】
2015192260.tif 000020
【図１９】
2015192260.tif 000021
【図２０】
2015192260.tif 000022
【図２１】
2015192260.tif 000023
【図２２】
2015192260.tif 000024
【図２３】
2015192260.tif 000025
【図２４】
2015192260.tif 000026
【図２５】
2015192260.tif 000027
【図２６】
2015192260.tif 000028
【図２７】
2015192260.tif 000029
【図２８】
2015192260.tif 000030
【図２９】
2015192260.tif 000031
【図３０】
2015192260.tif 000032
【図３１】
2015192260.tif 000033
【図３２】
2015192260.tif 000034
【図３３】
2015192260.tif 000035
【図３４】
2015192260.tif 000036
【図３５】
2015192260.tif 000037
【図３６】
2015192260.tif 000038