(57)【特許請求の範囲】
【請求項１】
ソフトウェアディファインドネットワークＳＤＮに適用されるネットワーク経路算出方法であって、
ＳＤＮコントローラが、ＯＦスイッチの能力情報と制約条件に基づいて、ソーススイッチから宛先スイッチまでの転送経路を算出すること、を含み、ここで、前記制約条件はリンクコストを含み、
前記ＳＤＮコントローラが前記ＯＦスイッチの能力情報と制約条件に基づいて、前記ソーススイッチから前記宛先スイッチまでの転送経路を算出することが、
前記ＳＤＮコントローラが、前記ソーススイッチのノード情報を経路リストに入れることと、
前記ソーススイッチのノード情報を前記経路リストに入れた後、前記ＳＤＮコントローラが、前記経路リストから入れられた経路ノードを取り出し、前記経路ノードの隣接ノードをすべて候補リストに入れること、前記候補リストから最低コストの隣接ノードを確定して前記経路リストに加えること、を繰り返することと、前記隣接ノードが前記経路リストまたは前記候補リストにあって、かつ前記隣接ノードのリンクコストが最低である、及び/または前記隣接ノードが前記ＳＤＮコントローラの転送要求をサポートしない場合、前記隣接リストを前記候補リストに入れず、
前記宛先スイッチのノートが前記経路リストにあると、前記ＳＤＮコントローラが、ソーススイッチから宛先スイッチへの転送経路を配置することと、を含む
ネットワーク経路算出方法。
【請求項２】
前記能力情報は、スイッチ特徴、フローテーブル特徴、グループテーブル特徴、及びｍｅｔｅｒテーブル特徴のうちの少なくとも一つを含むＯＦスイッチの能力情報を含む
請求項１に記載の方法。
【請求項３】
前記スイッチ特徴は、サポートする最大ｂｕｆｆｅｒ、サポートするテーブル数、統計能力、ＩＰフラグメンテーション・リアセンブリ能力、及びループ回避能力のうちの少なくとも一つを含み、
前記フローテーブル特徴は、フローテーブルの最大エントリ数、サポート・マッチングするドメイン及びマスク、マッチングが許可されるメタデータ、書き込みが許可されるメタデータ、サポートするｉｎｓｔｒｕｃｔｉｏｎｓ、サポートするａｃｔｉｏｎｓ、及びｔａｂｌｅ−ｍｉｓｓ能力のうちの少なくとも一つを含み、
前記グループテーブル特徴は、サポートするグループテーブルのエントリ数、グループテーブルがサポートするａｃｔｉｏｎｓ、サポートするグループテーブルタイプ、及びグループテーブル能力のうちの少なくとも一つを含み、
前記ｍｅｔｅｒテーブル特徴は、ｍｅｔｅｒテーブル数、サポートする帯域幅タイプ、及びｍａｘ＿ｃｏｌｏｒのうちの少なくとも一つを含む
請求項２に記載の方法。
【請求項４】
前記リンクコストは、ホップ数を含み、或いは、
前記制約条件は、前記リンクコスト、及び、リンク優先順位を含むリンク属性と、リンク帯域幅と、管理重みと、ネットワークリソース情報とのうちの少なくとも一つをさらに含む
請求項１乃至３のうち何れか一項に記載の方法。
【請求項５】
ソフトウェアディファインドネットワークＳＤＮに適用されＳＤＮコントローラに位置するネットワーク経路算出装置であって、
ＯＦスイッチの能力情報と外部制約条件に基づいて、ソーススイッチから宛先スイッチまでの転送経路を算出するように構成される算出モジュールを備え、ここで、前記制約条件はリンクコストを含み、
前記算出モジュールは、前記ソーススイッチのノード情報を経路リストに入れるように構成され、
前記算出モジュールは、前記経路リストから入れられた経路ノードを取り出し、前記経路ノードの隣接ノードをすべて候補リストに入れることと、前記候補リストから最低コストの隣接ノードを確定して前記経路リストに加えることと、を繰り返し、前記隣接ノードが前記経路リストまたは前記候補リストにあって、かつ前記隣接ノードのリンクコストが最低である、及び/または前記隣接ノードが前記ＳＤＮコントローラの転送要求をサポートしない場合、前記隣接リストを前記候補リストに入れず、
前記宛先スイッチのノートが前記経路リストにあると、ソーススイッチから宛先スイッチへの転送経路を配置するネットワーク経路算出装置。
【請求項６】
前記能力情報は、スイッチ特徴、フローテーブル特徴、グループテーブル特徴、及びｍｅｔｅｒテーブル特徴のうちの少なくとも一つを含むＯＦスイッチの能力情報を含む
請求項５に記載の装置。
【請求項７】
前記スイッチ特徴は、サポートする最大ｂｕｆｆｅｒ、サポートするテーブル数、統計能力、ＩＰフラグメンテーション・リアセンブリ能力、及びループ回避能力のうちの少なくとも一つを含み、
前記フローテーブル特徴は、フローテーブルの最大エントリ数、サポート・マッチングするドメイン及びマスク、マッチングが許可されるメタデータ、書き込みが許可されるメタデータ、サポートするｉｎｓｔｒｕｃｔｉｏｎｓ、サポートするａｃｔｉｏｎｓ、及びｔａｂｌｅ−ｍｉｓｓ能力のうちの少なくとも一つを含み、
前記グループテーブル特徴は、サポートするグループテーブルのエントリ数、グループテーブルがサポートするａｃｔｉｏｎｓ、サポートするグループテーブルタイプ、及びグループテーブル能力のうちの少なくとも一つを含み、
前記ｍｅｔｅｒテーブル特徴は、ｍｅｔｅｒテーブル数、サポートする帯域幅タイプ、及びｍａｘ＿ｃｏｌｏｒのうちの少なくとも一つを含む
請求項６に記載の装置。
【請求項８】
前記リンクコストは、ホップ数を含み、或いは、
前記制約条件は、リンクコスト、及び、リンク優先順位を含むリンク属性と、リンク帯域幅と、管理重みと、ネットワークリソース情報とのうちの少なくとも一つをさらに含む
請求項５乃至７のうち何れか一項に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信分野に関し、具体的には、ネットワーク経路算出方法及び装置に関する。
【背景技術】
【０００２】
現在のネットワークにますます多くの欠点が表面化する一方、人々のネットワーク性能に対する要求がますます高まっていくため、研究者は、例えば、ＯＳＰＦ（Open Shortest Path First、開放型最短経路優先）、ＢＧＰ（Border Gateway Protocol、ボーダゲートウェイプロトコル）、マルチキャスト、ディフサーブ、トラフィックエンジニアリング、ＮＡＴ（Network Address，Translation、ネットワークアドレス変換）、ファイアウォール、ＭＰＬＳ（Multi-protocol Label Switching、マルチプロトコルラベルスイッチング）など多くの複雑な機能をルータのシステム構造に加えなければならない。これにより、ルータ等のスイッチング装置が肥大化していくとともに、性能向上の可能性がますます小さくなる。
【０００３】
しかし、ネットワーク分野での行き詰まりとは反対に、コンピュータ分野では大きな発展を遂げている。コンピュータ分野の発展を真剣に振り返って明らかとなるように、肝心なのは、コンピュータ分野において簡単かつ利用可能なハードウェア最下層（ｘ８６命令セット）が見つかった。このような共用のハードウェア最下層があるからこそ、ソフトウェアにおいて、アプリケーションプログラムにしてもオペレーションシステムにしても急速に発展している。現在、コンピュータネットワークシステム構造の再設計の主唱者の多くは、ネットワークにおいて、コンピュータ分野の成功をレプリカすることで現在ネットワークの面しているすべての問題を解決することができる、と主張している。このような精神のもとで、ネットワークは、将来、最下層のデータ通路（スイッチ、ルータ）が「ダム、シンプルで、最小化」され、フローテーブルに関する外方にオープンな共用のＡＰＩ（Application Program Interface、アプリケーションプログラムインタフェース）が定義されるとともに、コントローラを用いてネットワーク全体が制御されるようなものになるに決まっている。研究者は、将来、コントローラ上で最下層のＡＰＩを自由に呼び出してプログラミングすることができ、ネットワークを革新させることができる。
【０００４】
上記理念に基づいて、アメリカスタンフォード大学のｃｌｅａｎ  ｓｌａｔｅ研究ゼミにより最初に提唱された新型ネットワーク革新構造であるＳＤＮ（Software Defined Network、ソフトウェアディファインドネットワーク）が誕生した。現在、その中核技術であるＯｐｅｎ  Ｆｌｏｗプロトコルは、ネットワーク機器のコントロールプレーン（OpenFlow Controllerを含む）とデータプレーン（OpenFlow Capable Switchを含む）とを分離させることで、ネットワークトラフィックへの柔軟な制御を実現し、中核ネットワーク及びアプリケーションの革新のために良好なプラットフォームを提供している。
【０００５】
Ｏｐｅｎ  Ｆｌｏｗプロトコルは、コントローラ（制御ユニット）とスイッチ（転送ユニット）との間のインタラクションに使用される情報の標準及びコントローラとスイッチのインタフェース標準を記述するためのものである。Ｏｐｅｎ  Ｆｌｏｗプロトコル情報構造のための集合がプロトコルの中核部分となっている。Ｏｐｅｎ  ＦｌｏｗスイッチとコントローラとがＴＣＰ（Transmission Control Protocol、伝送制御プロトコル）接続を確立してハンドシェイクに成功した後、コントローラが要求メッセージを送信することで、ＯＦＳ（OpenFlow Switch、OpenFlowスイッチであり、DataPath（データ経路）とも呼ばれる）の能力を取得し、このＯＦＳ（ＯＦスイッチ）の能力は以下のものを含む。
【０００６】
（１）スイッチ特徴：サポートする最大ｂｕｆｆｅｒ、サポートするテーブル数、統計能力（フロー統計能力、テーブル統計能力、ポート統計能力、グループ統計能力、キュー統計能力を含む）、ＩＰフラグメンテーション・リアセンブリ能力、ループ回避能力。
【０００７】
（２）フローテーブル特徴：フローテーブルの最大エントリ数、サポート・マッチングするドメイン及びマスク（ポート、メタデータ、メッセージフィールド（DMAC、SMAC、Ether Type、VLAN ID、VLAN priority、IP DSCP、IP ECN、IP PROTO、SIP、DIP、TCP/UDPソースポート番号と宛先ポート番号、ICMP type、ICMP code、ARP opcode、ARP source IPv4 address、ARP target IPv4 address、ARP source hardware address、ARP target hardware address、IPv6 source address、IPv6 destination address、IPv6 Flow Label、ICMPv6 type、ICMPv6 code、Target address for ND、Source link-layer for ND、Target link-layer for ND、MPLS label、MPLS TC、MPLS BoS bit、PBB I-SID、Logical Port Metadata、IPv6 Extension Header pseudo-field、PBB UCA header field等）を含む）、マッチングが許可されるｍｅｔａｄａｔａ（メタデータ）、書き込みが許可されるｍｅｔａｄａｔａ、サポートするｉｎｓｔｒｕｃｔｉｏｎｓ（Meter、Apply-Actions、Clear-Actions、Write-Actions、Write-Metadata、Goto-Table等を含む命令リスト）、サポートするａｃｔｉｏｎｓ（Output、Set-Queue、Drop、Group、Push-Tag、Pop-Tag、Set-Field、Change-TTL等を含むアクションリスト）、ｔａｂｌｅ−ｍｉｓｓ（テーブルミス）能力。
【０００８】
（３）グループテーブル特徴（group features）：サポートするグループテーブルのエントリ数、グループテーブルがサポートするａｃｔｉｏｎｓ（Output、Set-Queue、Drop、Group、Push-Tag、Pop-Tag、Set-Field、Change-TTL等を含むアクション）、サポートするグループテーブルタイプ（OFPGT_ALL、OFPGT_SELECT、OFPGT_INDIRECT、OFPGT_FFを含む）、グループテーブル能力（OFPGFC_SELECT_WEIGHT、OFPGFC_SELECT_LIVENESS、OFPGFC_CHAINING、OFPGFC_CHAINING_CHECKS）等。
【０００９】
（４）ｍｅｔｅｒテーブル特徴（meter features）：ｍｅｔｅｒテーブル数、サポートする帯域幅タイプ（メッセージ廃棄、DSCP remark等を含む）、ｍａｘ＿ｃｏｌｏｒ（最大の色）等。
【００１０】
図１は、関連技術による経路算出の結果及びフローテーブルの設定を示す図であり、図１を参照して、図１に示す経路算出の結果及びフローテーブルの設定過程において、ＳＤＮネットワークの経路算出方法は、主として、リンクコスト（例えば、ホップ数）、リンク帯域幅、リンク属性等の外部制約条件を考慮するものであり、ＳＤＮコントローラが従来の経路アルゴリズムに基づいて転送経路を算出した後、一定の策略に従ってフローテーブルを経路上の各Ｏｐｅｎ  Ｆｌｏｗスイッチに配布することになる。しかし、各スイッチの能力が異なるため、コントローラの転送要求をサポートしないスイッチがある可能性があり、その結果、フローテーブルの設定エラーが発生し、メッセージ転送の失敗を招き、この場合、スイッチがフローテーブル設定エラーメッセージをコントローラに送っても、コントローラが新経路を算出することができない。
【００１１】
関連技術において、各スイッチの能力が異なることから、フローテーブル設定エラーが発生し、コントローラが新経路を算出することができない問題に対して、未だに有効な対策が提示されていない。
【発明の概要】
【発明が解決しようとする課題】
【００１２】
本発明は、上述したように各スイッチの能力が異なることから、フローテーブル設定エラーが発生し、コントローラが新経路を算出することができない問題を少なくとも解決するネットワーク経路算出方法及び装置を提供する。
【課題を解決するための手段】
【００１３】
本発明の一態様によれば、ネットワーク制御ノードが、転送ノードの能力情報と制約条件に基づいて、ソースノードから宛先ノードまでの転送経路を算出することを含むネットワーク経路算出方法が提供される。
【００１４】
上述した本発明の一態様において、該方法は、ソフトウェアディファインドネットワーク（ＳＤＮ）に適用され、ネットワーク制御ノードがＳＤＮコントローラを含み、転送ノードがＯＦスイッチを含む。
【００１５】
上述した本発明の一態様において、能力情報は、スイッチ特徴、フローテーブル特徴、グループテーブル特徴、及びｍｅｔｅｒテーブル特徴のうちの少なくとも１つを含むＯＦスイッチの能力情報を含む。
【００１６】
上述した本発明の一態様において、スイッチ特徴は、サポートする最大ｂｕｆｆｅｒ、サポートするテーブル数、統計能力、ＩＰフラグメンテーション・リアセンブリ能力、及びループ回避能力のうちの少なくとも１つを含み、
フローテーブル特徴は、フローテーブルの最大エントリ数、サポート・マッチングするドメイン及びマスク、マッチングが許可されるメタデータ、書き込みが許可されるメタデータ、サポートするｉｎｓｔｒｕｃｔｉｏｎｓ、サポートするａｃｔｉｏｎｓ、及びｔａｂｌｅ−ｍｉｓｓ能力のうちの少なくとも１つを含み、
グループテーブル特徴は、サポートするグループテーブルのエントリ数、グループテーブルがサポートするａｃｔｉｏｎｓ、サポートするグループテーブルタイプ、及びグループテーブル能力のうちの少なくとも１つを含み、
ｍｅｔｅｒテーブル特徴は、ｍｅｔｅｒテーブル数、サポートする帯域幅タイプ、及びｍａｘ＿ｃｏｌｏｒのうちの少なくとも１つを含む。
【００１７】
上述した本発明の一態様において、制約条件は、ホップ数を含むリンクコストを含み、或いは、制約条件は、リンクコスト、及び、リンク優先順位を含むリンク属性と、リンク帯域幅と、管理重みと、ネットワークリソース情報とのうちの少なくとも１つを含む。
【００１８】
上述した本発明の一態様において、ＳＤＮコントローラは、転送経路を算出する際に、最短経路優先／制約付きの最短経路優先（ＳＰＦ／ＣＳＰＦ）の経路選択アルゴリズムを用いる。
【００１９】
本発明の他の一態様によれば、転送ノードの能力情報と外部制約条件に基づいて、ソースノードから宛先ノードまでの転送経路を算出するように構成される算出モジュールを備えるネットワーク経路算出装置が提供される。
【００２０】
上述した本発明の他の一態様において、該装置は、ソフトウェアディファインドネットワーク（ＳＤＮ）に適用され、ネットワーク制御ノードがＳＤＮコントローラを含み、転送ノードがＯＦスイッチを含む。
【００２１】
上述した本発明の他の一態様において、能力情報は、スイッチ特徴、フローテーブル特徴、グループテーブル特徴、及びｍｅｔｅｒテーブル特徴のうちの少なくとも１つを含むＯＦスイッチの能力情報を含む。
【００２２】
上述した本発明の他の一態様において、スイッチ特徴は、サポートする最大ｂｕｆｆｅｒ、サポートするテーブル数、統計能力、ＩＰフラグメンテーション・リアセンブリ能力、及びループ回避能力のうちの少なくとも１つを含み、
フローテーブル特徴は、フローテーブルの最大エントリ数、サポート・マッチングするドメイン及びマスク、マッチングが許可されるメタデータ、書き込みが許可されるメタデータ、サポートするｉｎｓｔｒｕｃｔｉｏｎｓ、サポートするａｃｔｉｏｎｓ、及びｔａｂｌｅ−ｍｉｓｓ能力のうちの少なくとも１つを含み、
グループテーブル特徴は、サポートするグループテーブルのエントリ数、グループテーブルがサポートするａｃｔｉｏｎｓ、サポートするグループテーブルタイプ、及びグループテーブル能力のうちの少なくとも１つを含み、
ｍｅｔｅｒテーブル特徴は、ｍｅｔｅｒテーブル数、サポートする帯域幅タイプ、及びｍａｘ＿ｃｏｌｏｒのうちの少なくとも１つを含む。
【００２３】
上述した本発明の他の一態様において、制約条件は、ホップ数を含むリンクコストを含み、或いは、制約条件は、リンクコスト、及び、リンク優先順位を含むリンク属性と、リンク帯域幅と、管理重みと、ネットワークリソース情報とのうちの少なくとも１つを含む。
【００２４】
上述した本発明の他の一態様において、算出モジュールは、転送経路を算出する際に、最短経路優先／制約付きの最短経路優先ＳＰＦ／ＣＳＰＦの経路選択アルゴリズムを用いる。
【発明の効果】
【００２５】
本発明によれば、ネットワーク制御ノードが従来の制約条件に加え、転送ノードの能力情報をもネットワーク経路を算出する際の制約条件とすることにより、関連技術において、各スイッチの能力が異なることから、フローテーブル設定エラーが発生し、コントローラが新経路を算出することができない問題を解決し、さらに、ＳＤＮネットワークの経路算出の正確性とネットワークの適用性を向上させる効果を達成している。
【図面の簡単な説明】
【００２６】
ここで説明する図面は、本発明をさらに理解させるためのものであり、本願の一部を構成し、また、本発明における模式的実施例及びその説明は本発明を説明するものであり、本発明を不当に限定するものではない。図面において、
【図１】関連技術における経路算出の結果及びフローテーブルの設定を示す図である。
【図２】本発明の実施例によるネットワーク経路算出方法を示すフローチャートである。
【図３】本発明の実施例によるネットワーク経路算出装置の構成を示すブロック図である。
【図４】本発明の好適な実施例によるスイッチ能力に基づく経路算出の結果及びフローテーブルの設定を示す図である。
【図５】本発明の好適な実施例によるＮＡＴ能力を備えるスイッチ及び経路算出の流れを示す図である。
【発明を実施するための形態】
【００２７】
以下、図面を参照しつつ実施例を結合して本発明を詳しく説明する。なお、衝突しない限り、本願の実施例及び実施例中の構成要件を組み合わせることができる。
【００２８】
上記課題を解決するために、本発明で提供される技術案の主旨は、スイッチの能力情報を経路算出のための制約条件として従来の制約条件の一部又は全部と結合すると提案することにある。このような経路算出方式によって、経路算出の正確性とネットワーク（例えば、ＳＤＮネットワークであり、もちろん、実際の応用において、このネットワークに限定されず、他のネットワークのいずれにも該方式をネットワーク経路の算出に用いることができる）の適用可能性を向上させることができる。
【００２９】
本実施例においてネットワーク経路算出方法が提供される。図２は、本発明の実施例によるネットワーク経路算出方法を示すフローチャートであり、図２に示すように、当該方法は、主として、以下のステップ（ステップＳ２０２）を含む。
【００３０】
ステップＳ２０２：ネットワーク制御ノードが、転送ノードの能力情報と制約条件に基づいて、ソースノードから宛先ノードまでの転送経路を算出する。
【００３１】
該ステップによって、ネットワーク制御ノードが従来の制約条件に加え、転送ノードの能力情報をもネットワーク経路を算出する際の考慮要素（制約条件）とすることになり、このようにして、経路算出の正確性とネットワークの適用可能性を向上させることができる。
【００３２】
本実施例において、該方法は、ソフトウェアディファインドネットワーク（ＳＤＮ）に適用されることができ、ネットワーク制御ノードがＳＤＮコントローラを含み、転送ノードがＯＦスイッチを含む。もちろん、実際の応用において、このネットワークに限定されず、他のネットワークのいずれにも当該方法をネットワーク経路の算出に用いることができる。
【００３３】
本実施例において、能力情報は、スイッチ特徴、フローテーブル特徴、グループテーブル特徴、及びｍｅｔｅｒテーブル特徴のうちの少なくとも１つを備えることができるＯＦスイッチの能力情報を含むことができる。本実施例の好適な一実施形態において、スイッチ特徴は、サポートする最大ｂｕｆｆｅｒ、サポートするテーブル数、統計能力、ＩＰフラグメンテーション・リアセンブリ能力、及びループ回避能力の中の少なくとも１つを含むことができ、フローテーブル特徴は、フローテーブルの最大エントリ数、サポート・マッチングするドメイン及びマスク、マッチングが許可されるメタデータ、書き込みが許可されるメタデータ、サポートするｉｎｓｔｒｕｃｔｉｏｎｓ、サポートするａｃｔｉｏｎｓ、及びｔａｂｌｅ−ｍｉｓｓ能力の中の少なくとも１つを含むことができ、グループテーブル特徴は、サポートするグループテーブルのエントリ数、グループテーブルがサポートするａｃｔｉｏｎｓ、サポートするグループテーブルタイプ、及びグループテーブル能力の中の少なくとも１つを含むことができ、また、ｍｅｔｅｒテーブル特徴は、ｍｅｔｅｒテーブル数、サポートする帯域幅タイプ、及びｍａｘ＿ｃｏｌｏｒの中の少なくとも１つを含むことができる。
【００３４】
本実施例において、制約条件は、ホップ数を含むリンクコストを含むことができ、或いは、制約条件は、リンクコスト、及び、リンク優先順位を含むリンク属性と、リンク帯域幅と、管理重みと、ネットワークリソース情報とのうちの少なくとも１つを含むことができる。
【００３５】
本実施例において、ＳＤＮコントローラは、転送経路を算出する際に、最短経路優先／制約付きの最短経路優先（ＳＰＦ／ＣＳＰＦ）の経路選択アルゴリズムを用いることができる。
【００３６】
本実施例において、上記ネットワーク経路算出方法を実現するためのネットワーク経路算出装置が提供される。図３は、本発明の実施例によるネットワーク経路算出装置の構成を示すブロック図であり、図３に示すように、該装置は、主として、転送ノードの能力情報と外部制約条件に基づいて、ソースノードから宛先ノードまでの転送経路を算出するように構成される算出モジュール１０を備える。
【００３７】
本実施例において、該装置は、ソフトウェアディファインドネットワーク（ＳＤＮ）に適用されることができ、ネットワーク制御ノードがＳＤＮコントローラを含み、転送ノードがＯＦスイッチを含む。もちろん、実際の応用において、このネットワークに限定されず、他のネットワークのいずれにも当該方法をネットワーク経路の算出に用いることができる。
【００３８】
本実施例において、能力情報は、スイッチ特徴、フローテーブル特徴、グループテーブル特徴、及びｍｅｔｅｒテーブル特徴のうちの少なくとも１つを備えることができるＯＦスイッチの能力情報を含むことができる。本実施例の好適な一実施形態において、スイッチ特徴は、サポートする最大ｂｕｆｆｅｒ、サポートするテーブル数、統計能力、ＩＰフラグメンテーション・リアセンブリ能力、及びループ回避能力の中の少なくとも１つを含むことができ、フローテーブル特徴は、フローテーブルの最大エントリ数、サポート・マッチングするドメイン及びマスク、マッチングが許可されるメタデータ、書き込みが許可されるメタデータ、サポートするｉｎｓｔｒｕｃｔｉｏｎｓ、サポートするａｃｔｉｏｎｓ、及びｔａｂｌｅ−ｍｉｓｓ能力の中の少なくとも１つを含むことができ、グループテーブル特徴は、サポートするグループテーブルのエントリ数、グループテーブルがサポートするａｃｔｉｏｎｓ、サポートするグループテーブルタイプ、及びグループテーブル能力の中の少なくとも１つを含むことができ、また、ｍｅｔｅｒテーブル特徴は、ｍｅｔｅｒテーブル数、サポートする帯域幅タイプ、及びｍａｘ＿ｃｏｌｏｒの中の少なくとも１つを含むことができる。
【００３９】
本実施例において、制約条件は、ホップ数を含むリンクコストを含むことができ、或いは、制約条件は、リンクコスト、及び、リンク優先順位を含むリンク属性と、リンク帯域幅と、管理重みと、ネットワークリソース情報とのうちの少なくとも１つを含むことができる。
【００４０】
本実施例において、算出モジュールは、転送経路を算出する際に、最短経路優先／制約付きの最短経路優先（ＳＰＦ／ＣＳＰＦ）の経路選択アルゴリズムを用いることができる。
【００４１】
実際の応用において、ＳＤＮコントローラとネットワークにおけるＯＦスイッチとが接続確立に成功した後、ＳＤＮコントローラがネットワークにおける各ＯＦスイッチへ要求メッセージを送信することができ、このようにすれば、ＳＤＮコントローラがネットワークにおける各ＯＦスイッチの能力情報を取得することができ、さらに各ＯＦスイッチのノード情報を取得することもできる。
【００４２】
ＳＤＮがネットワーク経路を算出する前に、何らかのトリガー条件にトリガーされる必要があり、例えば、ＳＤＮコントローラは、最初のパケットを受信した後、或いは、ある策略に基づいて転送経路を設定した後、メッセージに含まれているアドレッシング情報を解析してから、取得した各ＯＦスイッチの能力情報と従来の制約条件の一部又は全部とを結合し、ソーススイッチから宛先スイッチまでの転送経路を算出することができ、さらに、コントローラは、最初のパケットの情報及び設定した策略に基づいてメッセージの転送行為を決定し、転送経路に位置する各ＯＦスイッチごとに転送経路を設定することができる。
【００４３】
なお、経路を算出する中、スイッチ能力及び従来の制約条件の一部（リンクコスト）に加え、他の従来の制約条件（例えば、リンク帯域幅、リンク属性、管理重み、ネットワークリソース情報等）を経路算出のための制約条件として結合することもできる。
【００４４】
上述した実施例で提供されるネットワーク経路算出方法及び装置によると、従来のＳＰＦ／ＣＳＰＦ経路算出方法を拡張し、ＯｐｅｎＦｌｏｗスイッチの能力情報と従来の制約条件を経路算出のための制約条件としてネットワーク経路を算出し、ＳＤＮネットワークの経路算出の正確性を向上させる。
【００４５】
以下、図４と図５及び第１の好適な実施例と第２の好適な実施例を結合しながら、上述した実施例で提供されるネットワーク経路算出方法及び装置についてより詳しく説明する。
【００４６】
（第１の好適な実施例）
図４は、本発明の好適な実施例によるスイッチ能力に基づく経路算出の結果及びフローテーブルの設定を示す図であり、図４に示すように、当該経路算出及び転送の流れは、以下のステップを含む。
【００４７】
ステップ１：ＳＤＮコントローラとネットワークにおける各ＯＦスイッチとがＴＣＰ接続を確立してハンドシェイクに成功した後、コントローラが要求メッセージを送信し、ネットワークにおける各ＯＦスイッチのノード情報、能力を取得し、そして、コントローラがスイッチＤを除いたいずれのスイッチもＭＰＬＳ転送をサポートすることを知る。
【００４８】
ステップ２：スイッチＡがメッセージを受け取った後、フローテーブルが見つからないため、このメッセージを最初のパケットとしてコントローラへ送り、処理させる。
【００４９】
ステップ３：コントローラが最初のパケットを受け取った後、メッセージのアドレス情報を解析し、改良したスイッチ能力に基づく経路アルゴリズムを実行し、Ａから目的地Ｆまでの最低コストの転送経路として、Ａ−Ｃ−Ｅ−Ｆという経路を算出する。
【００５０】
具体的には、（１）ＳＤＮコントローラがスイッチ能力を制約条件とするＳＦＰ経路選択アルゴリズムを実行した後、ソーススイッチのノード情報を経路リスト（ＰＡＴＨ  ｌｉｓｔ、リストにおけるノードを経路ノードＰＡＴＨ  ｎｏｄｅと称する）に入れ、コストを０に設定し、ソーススイッチの能力をＮ／Ａに設定する。（２）経路リストから入れたばかりの経路ノードを取り出し、経路ノードの隣接ノードをすべて候補リスト（ＴＥＮＴ  ｌｉｓｔ）に入れ、隣接ノードが経路リスト又は候補リストに既に存在し、かつより低い経路コストを有するものであれば、この隣接ノードを候補リストに入れず、隣接ノードの能力がコントローラに要求される転送行為をサポートしなければ、この隣接ノードを候補リストに入れない。（３）候補リストから最低コストの隣接ノードを見つけて経路リストに加える。上記ステップ（２）を繰り返し、目標となるスイッチノードが経路リスト内にあれば、算出を停止する。メッセージの転送経路を算出した後、コントローラがフローテーブルを経路上の各スイッチに配布し、ソーススイッチから宛先スイッチまでの転送経路を設定し、メッセージがＯＦスイッチに入り、設定されたフローテーブルに基づく転送が行われる。
【００５１】
分かりやすいように、下の表を参考に供する。
【００５２】
【表１】
0006444410.tif 000002
【００５３】
ステップ４：コントローラがフローテーブルをスイッチＡ、Ｃ、Ｅ、Ｆに配布し、転送通路を設定する。
【００５４】
ステップ５：Ａ、Ｃ、Ｅ、ＦのいずれもＭＰＬＳ転送をサポートし、フローテーブルの設定に成功する。
【００５５】
ステップ６：メッセージがスイッチＡに入り、コントローラが設定したフローテーブルに基づく転送が行われ、Ｃ、Ｅを経てＦに到達し、転送に成功する。
【００５６】
（第２の好適な実施例）
図５は、本発明の好適な実施例によるＮＡＴ能力を備えるスイッチ及び経路算出の流れを示す図であり、図５に示すように、公衆ネットワークルータには、一方がＮＡＴ能力を備え、他方がＮＡＴ能力を備えない２台のスイッチが接続されている。該経路算出の流れは、以下のステップを含む。
【００５７】
ステップ１：ＳＤＮコントローラとネットワークにおける各ＯＦスイッチとがＴＣＰ接続を確立してハンドシェイクに成功した後、コントローラが要求メッセージを送信し、ネットワークにおける各ＯＦスイッチのノード情報、能力を取得し、そして、コントローラは、物理スイッチ３を除いたいずれのスイッチもＮＡＴをサポートすること、即ち、ＮＡＴ能力を備えるスイッチがフローテーブルのｓｅｔ−ｆｉｅｌｄアクションに基づいて、メッセージにおけるデスティネーションＩＰアドレスとソースＩＰアドレスを変更することができることを知る。
【００５８】
ステップ２：ユーザがｗｅｂを通じでｖｍ３にアクセスすると、ｖｍ３がｈｔｔｐ  ｒｅｑｕｅｓｔメッセージを送信し（デスティネーションＩＰ＝１７２．１００．５．１０で、ソースｉｐ＝１９２．１６８．２００．５１）、このメッセージを最初のパケットとしてＳＤＮコントローラへ送り、処理させる。
【００５９】
ステップ３：コントローラが最初のパケットのｄｉｐとｓｉｐ情報に基づいて、上述したスイッチ能力に基づく経路アルゴリズムを実行し、スイッチ３ではなく、スイッチ４を公衆ネットワークにアクセスするためのスイッチとして選択し、算出した経路は図３に赤線で示される。
【００６０】
ステップ４：コントローラがフローテーブルを転送経路上のｖＳｗｉｔｃｈと物理スイッチに配布し、そして、スイッチ４でフローテーブルを下し、ＳＮＡＴ操作、即ち、ｈｔｔｐ  ｒｅｑｕｅｓｔメッセージのｓｉｐであるｓｉｐ＝１９２．１６８．２００．５１を２０２．２０．６５．１００に変更することを達成する。
【００６１】
ステップ５：ユーザがｈｔｔｐ  ｒｅｑｕｅｓｔを受信すると、ｈｔｔｐ  ｒｅｐｌｙを返信する（ｄｉｐ＝２０２．２０．６５．１００で、ｓｉｐ＝１７２．１００．５．１０）。
【００６２】
ステップ６：メッセージがデータセンターのコントローラに到達し、コントローラが上述したスイッチ能力に基づく経路アルゴリズムを実行し、スイッチ３ではなく、スイッチ４を公衆ネットワークにアクセスするためのスイッチとして選択し、算出した経路は図５に太い線で示される。
【００６３】
ステップ７：コントローラがフローテーブルをスイッチ４に下し、ＤＮＡＴ操作、即ち、ｈｔｔｐ  ｒｅｐｌｙメッセージのｄｉｐであるｄｉｐ＝２０２．２０．６５．１００を１９２．１６８．２００．５１に変更することを達成する。
【００６４】
ステップ８：変更後のｈｔｔｐ  ｒｅｐｌｙメッセージを、中間スイッチを介してＶＭ３までに転送し、処理させる。
【００６５】
もちろん、上述した２つの実施例は、２つの好適な実施形態に過ぎず、本実施例では、他にも複数の実施形態を用いることができ、例えば、サポートする最大ｂｕｆｆｅｒと、最大のフローテーブル数と、統計能力と、ＩＰフラグメンテーション・リアセンブリ能力と、ループ回避能力と、フローテーブルの最大エントリ数と、マッチングがサポートされるメッセージフィールドと、サポートするｍｅｔａｄａｔａと、サポートするｉｎｓｔｒｕｃｔｉｏｎｓ及びａｃｔｉｏｎｓと、サポートするグループテーブルのエントリ数と、ｍｅｔｅｒテーブル数と、帯域幅タイプと、色値等を含む他の能力に基づいて経路を算出することもできる。
【００６６】
なお、上述した各モジュールは、ハードウェアで実現されてもよい。例えば、上述した各モジュールを備えるプロセッサで実現され、或いは、上述した各モジュールがそれぞれ１つのプロセッサに備えられるように構成される。
【００６７】
他の一実施例において、上述した実施例及び好適な実施形態で説明した技術案を実行するためのソフトウェアがさらに提供される。
【００６８】
他の一実施例において、上記ソフトウェアが格納されている記憶媒体がさらに提供され、該記憶媒体は、光ディスク、ソフトディスク、ハードディスク、消去可能なメモリ等を含むが、これらに限定されない。
【００６９】
以上の説明から分かるように、本発明は、以下の技術効果を達成している。即ち、ネットワーク制御ノードが従来の制約条件に加え、転送ノードの能力情報をもネットワーク経路を算出する際の制約条件として、ソースノードから宛先ノードまでの最適なネットワーク経路を算出するようにし、このように改良することにより、関連技術において、各スイッチの能力が異なることから、フローテーブル設定エラーが発生し、コントローラが新経路を算出することができない問題を解決し、ＳＤＮネットワークの経路算出の正確性とネットワークの適用性を向上させる。
【００７０】
もちろん、当業者にとって、上記の本発明に係る各モジュール又は各ステップは汎用の演算装置によって実現することができ、単独の演算装置に集中させることができるし、或いは、複数の演算装置からなるネットワークに分布させることもでき、或いは、演算装置が実行可能なプログラムコードによって実現することで、それらを記憶装置に記憶させて演算装置によって実行することもでき、また、場合によって、ここで示した又は説明したステップを異なる順で実行することもでき、或いは、それらを夫々集積回路モジュールに作製し、或いはそのうちの複数のモジュール又はステップを単一の集積回路モジュールに作製して実現可能であることは明らかなことである。このように、本発明は如何なる特定のハードウェアとソフトウェアの組み合わせにも限定されない。
【００７１】
以上、あくまでも本発明の好適な実施例を説明したが、本発明を限定することは意図していない。当業者であれば、本発明に様々な変更や変形が可能である。本発明の思想や原則内の如何なる修正、均等の置き換え、改良なども、すべて本発明の保護範囲内に含まれるべきである。
【産業上の利用可能性】
【００７２】
上述したように、本発明の実施例及び好適な実施形態によれば、従来のＳＰＦ／ＣＳＰＦ経路算出方法を拡張し、ＯｐｅｎＦｌｏｗスイッチの能力情報と従来の制約条件を経路算出のための制約条件としてネットワーク経路を算出することにより、ＳＤＮネットワークの経路算出の正確性とネットワークの適用性を効果的に向上させる。
【図１】
0006444410.tif 000003
【図２】
0006444410.tif 000004
【図３】
0006444410.tif 000005
【図４】
0006444410.tif 000006
【図５】
0006444410.tif 000007