(57)【特許請求の範囲】
【請求項１】
ＯｐｅｎＦｌｏｗ通信方法であって、前記方法は、
サービスゲートウェイにより送信される転送処理要求を受信するステップであって、前記転送処理要求は、転送される必要のある動作を有する、ステップと、
前記転送される必要のある動作とネットワークトポロジ構造とに従い、仮想スイッチとして１つのサーバを選択するステップと、
前記サービスゲートウェイに第１のフローテーブルを配信するステップであって、前記第１のフローテーブルは、前記サービスゲートウェイがパケットを前記仮想スイッチへ送るために使用される、ステップと、
前記仮想スイッチに第２のフローテーブルを配信するステップであって、前記第２のフローテーブルは、前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られた前記パケットを前記パケットの宛先サーバへ送信できるように、前記パケットに対して前記動作を実行するよう前記仮想スイッチに指示するために使用される命令及び前記動作に対応するリソース情報を有する、ステップであって、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含むステップと、
を含む方法。
【請求項２】
前記方法は、前記仮想スイッチが、前記パケットの前記宛先サーバへ前記パケットを送信するためのフローテーブルを有しない場合、
前記パケットの処理ルールを要求し及び前記パケットのために前記仮想スイッチにより送信されるメッセージを受信するステップと、
前記仮想スイッチに第３のフローテーブルを配信するステップであって、前記第３のフローテーブルは、前記仮想スイッチが前記動作の実行された後に得られた前記パケットを前記パケットの前記宛先サーバへ送信するために使用される、ステップと、
を更に含む請求項１に記載の方法。
【請求項３】
制御部であって、前記制御部は、
サービスゲートウェイにより送信される転送処理要求を受信するよう構成される受信モジュールであって、前記転送処理要求は、転送される必要のある動作を有する、受信モジュールと、
前記転送される必要のある動作とネットワークトポロジ構造とに従い、仮想スイッチとして１つのサーバを選択する選択モジュールと、
前記サービスゲートウェイに第１のフローテーブルを配信するよう構成される第１のフローテーブル配信モジュールであって、前記第１のフローテーブルは、前記サービスゲートウェイがパケットを前記仮想スイッチへ送るために使用される、第１のフローテーブル配信モジュールと、
前記仮想スイッチに第２のフローテーブルを配信するよう構成される第２のフローテーブル配信モジュールであって、前記第２のフローテーブルは、前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られた前記パケットを前記パケットの宛先サーバへ送信できるように、前記パケットに対して前記動作を実行するよう前記仮想スイッチに指示するために使用される命令及び前記動作に対応するリソース情報を有する、第２のフローテーブル配信モジュールであって、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む、第２のフローテーブル配信モジュールと、
を含む制御部。
【請求項４】
前記仮想スイッチが、前記パケットの前記宛先サーバへ前記パケットを送信するためのフローテーブルを有しない場合、前記制御部は、第３のフローテーブル配信モジュールを更に含み、
前記受信モジュールは、前記パケットの処理ルールを要求し及び前記パケットのために前記仮想スイッチにより送信されるメッセージを受信し、
前記第３のフローテーブル配信モジュールは、前記仮想スイッチに第３のフローテーブルを配信し、前記第３のフローテーブルは、前記仮想スイッチが前記動作の実行された後に得られた前記パケットを前記パケットの前記宛先サーバへ送信するために使用される、
請求項３に記載の制御部。
【請求項５】
制御部であって、前記制御部は、受信機と、プロセッサと、送信機と、メモリと、を含み、
前記受信機は、サービスゲートウェイにより送信される転送処理要求を受信するよう構成され、前記転送処理要求は、転送される必要のある動作を有し、
前記メモリは、プログラムコードを格納するよう構成され、
前記プロセッサは、前記メモリに格納された前記プログラムコードを呼び出して、以下の方法：前記転送される必要のある動作とネットワークトポロジ構造とに従って仮想スイッチとして１つのサーバを選択するステップ、を実行するよう構成され、
前記送信機は、前記サービスゲートウェイに第１のフローテーブルを配信するよう更に構成され、前記第１のフローテーブルは、前記サービスゲートウェイが前記仮想スイッチへパケットを送るために使用され、
前記送信機は、前記仮想スイッチに第２のフローテーブルを配信するよう更に構成され、前記第２のフローテーブルは、前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られた前記パケットを前記パケットの宛先サーバへ送信できるように、前記仮想スイッチに指示するために使用される命令及び前記動作に対応するリソース情報を有し、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む、
制御部。
【請求項６】
前記仮想スイッチが、関連するフローテーブルを有しない場合、
前記受信機は、前記パケットの処理ルールを要求し及び前記パケットのために前記仮想スイッチにより送信されるメッセージを受信するよう更に構成され、
前記送信機は、前記仮想スイッチに第３のフローテーブルを配信し、前記第３のフローテーブルは、前記仮想スイッチが前記動作の実行された後に得られた前記パケットを前記パケットの前記宛先サーバへ送信するために使用される、
請求項５に記載の制御部。
【請求項７】
ＯｐｅｎＦｌｏｗ通信システムであって、前記システムは、制御部と、サービスゲートウェイと、少なくとも１つのサーバと、を有し、
前記サービスゲートウェイは、前記制御部へ転送処理要求を送信し、前記転送処理要求は、転送される必要のある動作を有し、
前記制御部は、前記転送される必要のある動作とネットワークトポロジ構造とに従い、仮想スイッチとして前記少なくとも１つのサーバのうちの１つのサーバを選択し、
前記制御部は、前記サービスゲートウェイに第１のフローテーブルを配信し、
前記サービスゲートウェイは、前記第１のフローテーブルに従い、パケットを前記仮想スイッチへ送り、
前記制御部は、前記仮想スイッチに第２のフローテーブルを配信し、前記第２のフローテーブルは、前記パケットに対して前記動作を実行するよう前記仮想スイッチに指示するために使用される命令及び前記動作に対応するリソース情報を有し、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含み、
前記仮想スイッチは、前記第２のフローテーブルに従い前記パケットに前記動作を実行し、前記動作が実行された後に得られたパケットを前記パケットの宛先サーバへ送信する、
システム。
【請求項８】
前記仮想スイッチが、前記パケットの前記宛先サーバへ前記パケットを送信するためのフローテーブルを有しない場合、
前記仮想スイッチは、前記制御部へ、前記パケットの処理ルールを要求するメッセージを送信するよう更に構成され、
前記制御部は、前記仮想スイッチに第３のフローテーブルを配信するよう更に構成され、前記第３のフローテーブルは、前記仮想スイッチが前記動作の実行された後に得られた前記パケットを前記パケットの前記宛先サーバへ送信するために使用される、
請求項７に記載のシステム。
【請求項９】
前記サービスゲートウェイが前記第１のフローテーブルに従い前記仮想スイッチへパケットを送るよう構成されることは、特に、前記第１のフローテーブルに従い前記仮想スイッチへ、ＩＰ＿ＩＮ＿ＩＰ方法でカプセル化された前記パケットを送ることである、請求項７に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信分野に関し、特にＯｐｅｎＦｌｏｗ通信方法及びシステム、制御部、及びサービスゲートウェイに関する。
【背景技術】
【０００２】
経済及び社会のグローバル化に伴い、益々多くの企業及び組織が、全国に更には世界中に部門を設立し、出張中の益々多くの従業員が固定された場所から本社のサービスシステムにアクセスする。さらに、サービスが絶えず拡張しアプリケーションが益々複雑になるので、組織のＩＴ（Information  Technology、情報技術）基盤は、集中管理に向けて開発され、データセンタ及びクラウドサービスの設立は、ＩＴ構造のトレンドになっている。企業サービスゲートウェイは、データセンタ及びクラウドサービスセンタへの入口である。企業サービスゲートウェイのスループット能力は、データセンタ及びクラウドサービスセンタ全体の性能に直接影響する。
【０００３】
ＯｐｅｎＦｌｏｗ（Openflow）、つまりネットワーク革新的研究をサポートする新しいネットワーク交換モデルは、米国のスタンフォード大学により提案された。ＯｐｅｎＦｌｏｗプロトコルは、徐々に改良され、実際のネットワークへの適用に成功している。ここで、ＯｐｅｎＦｌｏｗプロトコルのデータセンタネットワークへの適用は、特に有名である。図１に示すように、ＯｐｅｎＦｌｏｗネットワークのトポロジ構造は、ＯｐｅｎＦｌｏｗ制御部１１、ＯｐｅｎＦｌｏｗスイッチ１２、端末１３、ＯｐｅｎＦｌｏｗ制御部１１とＯｐｅｎＦｌｏｗスイッチ１２と端末１３とを接続するリンク、を含む。ＯｐｅｎＦｌｏｗ制御部１１は、ネットワーク全体のトポロジ構造を格納し、送られる必要のあるデータフローのためのフローテーブルを生成し、該フローテーブルを対応するスイッチへ配信する。ＯｐｅｎＦｌｏｗスイッチ１２は、ＯｐｅｎＦｌｏｗ制御部１１により配信されたフローテーブル情報を格納し、ＯｐｅｎＦｌｏｗスイッチ１２同士、及びＯｐｅｎＦｌｏｗスイッチ１２と端末１３との間のデータ転送を実行する。
【０００４】
データセンタネットワークのトポロジ構造は、概して、ツリー構造である。企業サービスゲートウェイは、データセンタの入口（ルート）として、ネットワーク転送を担い、更に、データに対して特定の処理を実行する、例えば、ネットワークセキュリティの観点で、データに対して「暗号化／復号化、ＤＰＩ（Deep  Packet  Inspection、ディープパケットインスペクション技術）、等」を実行する、及びデータ圧縮及び伸張、等を実行する必要がある。特に、処理は以下を含む。
（１）企業サービスゲートウェイは、クライアント要求を受信し、データに対してセキュリティ検出（ＩＰＳＥＣ、Internet  Protocol  Security、インターネットプロトコルセキュリティ、及びＤＰＩ）データ処理を実行する。
（２）データ処理が完了した後、処理されるべきパケットは、要求のサービス種類に従いバックエンドサーバへ送られる。
（３）サーバは、処理を実行し、処理の結果を企業サービスゲートウェイへ送る。
（４）企業サービスゲートウェイは、サービスデータを受信し、サービスデータに対して特定の処理を実行し、カプセル化されたパケットをクライアントへ送る。
【０００５】
従来の企業サービスゲートウェイは、データセンタ全体への入口として機能する。処理されるべきデータ量が企業サービスゲートウェイの能力を超えると、企業サービスゲートウェイは、システム全体のボトルネックになるが、バックエンドサーバにある大量の計算リソースはアイドルである。したがって、ボトルネック問題を解決する方法を見付ける必要がある。
【発明の概要】
【０００６】
以上に鑑み、本発明の実施形態は、ＯｐｅｎＦｌｏｗ通信方法及びシステム、制御部、並びにサービスゲートウェイを提供する。これらは、システムの中のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【０００７】
第１の態様によると、ＯｐｅｎＦｌｏｗ通信方法であって、前記方法は、サービスゲートウェイにより送信される転送処理要求を受信するステップであって、前記転送処理要求は、転送される必要のある動作を有する、ステップと、前記転送される必要のある動作とネットワークトポロジ構造とに従い、仮想スイッチとして１つのサーバを選択するステップと、前記サービスゲートウェイに第１のフローテーブルを配信するステップであって、前記第１のフローテーブルは、前記サービスゲートウェイがパケットを前記仮想スイッチへ送るために使用される、ステップと、前記仮想スイッチに第２のフローテーブルを配信するステップであって、前記第２のフローテーブルは、前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られたパケットを前記パケットの宛先サーバへ送信できるように、前記パケットに対して前記動作を実行するよう前記仮想スイッチに指示するために使用される命令を有する、ステップと、を含む方法が提供される。
【０００８】
第１の態様の実装方法に関して、第１の可能な実装方法では、前記方法は、前記仮想スイッチが、前記パケットの前記宛先サーバへ前記パケットを送信するためのフローテーブルを有しない場合、前記パケットの処理ルールを要求し及び前記パケットのために前記仮想スイッチにより送信されるメッセージを受信するステップと、前記仮想スイッチに第３のフローテーブルを配信するステップであって、前記第３のフローテーブルは、前記仮想スイッチが前記動作の実行された後に得られたパケットを前記パケットの宛先サーバへ送信するために使用される、ステップと、を更に含む。
【０００９】
第１の態様の実装方法に関して、第２の可能な実装方法では、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。
【００１０】
第２の態様によると、制御部であって、サービスゲートウェイにより送信される転送処理要求を受信するよう構成される受信モジュールであって、前記転送処理要求は、転送される必要のある動作を有する、受信モジュールと、前記転送される必要のある動作とネットワークトポロジ構造とに従い、仮想スイッチとして１つのサーバを選択する選択モジュールと、前記サービスゲートウェイに第１のフローテーブルを配信するよう構成される第１のフローテーブル配信モジュールであって、前記第１のフローテーブルは、前記サービスゲートウェイがパケットを前記仮想スイッチへ送るために使用される、第１のフローテーブル配信モジュールと、前記仮想スイッチに第２のフローテーブルを配信する第２のフローテーブル配信モジュールであって、前記第２のフローテーブルは、前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られたパケットを前記パケットの宛先サーバへ送信できるように、前記パケットに対して前記動作を実行するよう前記仮想スイッチに指示するために使用される命令を有する、第２のフローテーブル配信モジュールと、を含む制御部が提供される。
【００１１】
第２の態様の実装方法に関して、第１の可能な実装方法では、前記仮想スイッチが、前記パケットの前記宛先サーバへ前記パケットを送信するためのフローテーブルを有しない場合、前記制御部は、第３のフローテーブル配信モジュールを更に含み、前記受信モジュールは、前記パケットの処理ルールを要求し及び前記パケットのために前記仮想スイッチにより送信されるメッセージを受信し、前記第３の配信モジュールは、前記仮想スイッチに第３のフローテーブルを配信し、前記第３のフローテーブルは、前記仮想スイッチが前記動作の実行された後に得られたパケットを前記パケットの宛先サーバへ送信するために使用される。
【００１２】
第２の態様の実装方法に関して、第２の可能な実装方法では、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。
【００１３】
第３の態様によると、ＯｐｅｎＦｌｏｗ通信方法であって、負荷が所定の閾を超えると、制御部に転送処理要求を送信するステップであって、前記転送処理要求は、前記制御部が仮想スイッチとして１つのサーバを選択できるように、転送される必要のある動作を有する、ステップと、前記制御部により配信されるフローテーブルを受信するステップと、前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られたパケットを前記パケットの宛先サーバへ送信できるように、前記フローテーブルに従い、前記仮想スイッチへパケットを送るステップと、を含む方法が提供される。
【００１４】
第３の態様の実装方法に関し、第１の可能な実装方法では、前記フローテーブルに従い前記仮想スイッチへパケットを送るステップは、特に、前記フローテーブルに従い前記仮想スイッチへ、ＩＰ＿ＩＮ＿ＩＰ方法でカプセル化された前記パケットを送るステップである。
【００１５】
第３の態様の実装方法に関して、第２の可能な実装方法では、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。
【００１６】
第４の態様によると、サービスゲートウェイであって、負荷が所定の閾を超えると、制御部に転送処理要求を送信するよう構成される送信モジュールであって、前記転送処理要求は、前記制御部が仮想スイッチとして１つのサーバを選択できるように、転送される必要のある動作を有する、送信モジュールと、前記制御部により配信されるフローテーブルを受信するよう構成される受信モジュールと、前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られたパケットを前記パケットの宛先サーバへ送信できるように、前記フローテーブルに従い、前記仮想スイッチへパケットを送るよう構成される転送モジュールと、を含むサービスゲートウェイが提供される。
【００１７】
第４の態様の実装方法に関し、第１の可能な実装方法では、前記転送モジュールは、特に、前記フローテーブルに従い前記仮想スイッチへ、ＩＰ＿ＩＮ＿ＩＰ方法でカプセル化された前記パケットを送るよう構成される。
【００１８】
第４の態様の実装方法に関して、第２の可能な実装方法では、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。
【００１９】
第５の態様によると、制御部であって、受信機と、プロセッサと、送信機と、メモリと、を含み、前記受信機は、サービスゲートウェイにより送信される転送処理要求を受信するよう構成され、前記転送処理要求は、転送される必要のある動作を有し、前記メモリは、プログラムコードを格納するよう構成され、前記プロセッサは、前記受信機に接続され、前記メモリに格納された前記プログラムコードを呼び出して、以下の方法：前記転送される必要のある動作とネットワークトポロジ構造とに従って仮想スイッチとして１つのサーバを選択するステップ、を実行するよう構成され、前記送信機は、前記サービスゲートウェイに第１のフローテーブルを配信するよう更に構成され、前記第１のフローテーブルは、前記サービスゲートウェイが前記仮想スイッチへパケットを送るために使用され、前記送信機は、前記仮想スイッチに第２のフローテーブルを配信するよう更に構成され、前記第２のフローテーブルは、前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られた前記パケットを前記パケットの宛先サーバへ送信できるように、前記仮想スイッチに指示するために使用される命令を有する、制御部が提供される。
【００２０】
第５の態様の実装方法に関して、第１の可能な実装方法では、前記仮想スイッチが関連するフローテーブルを有しない場合、前記受信機は、前記パケットの処理ルールを要求し及び前記パケットのために前記仮想スイッチにより送信されるメッセージを受信するよう構成され、前記送信機は、前記仮想スイッチに第３のフローテーブルを配信し、前記第３のフローテーブルは、前記仮想スイッチが前記動作の実行された後に得られたパケットを前記パケットの前記宛先サーバへ送信するために使用される。
【００２１】
第５の態様の実装方法に関して、第２の可能な実装方法では、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。
【００２２】
第６の態様によると、サービスゲートウェイであって、送信機と、受信機と、プロセッサと、メモリとを有し、負荷が所定の閾を超えると、前記送信機は、制御部に転送処理要求を送信するよう構成され、前記転送処理要求は、前記制御部が仮想スイッチとして１つのサーバを選択できるように、転送される必要のある動作を有し、前記受信機は、前記制御部により配信されるフローテーブルを受信するよう構成され、前記メモリは、プログラムコードを格納するよう構成され、前記プロセッサは、前記メモリに格納された前記プログラムコードを呼び出して、以下の方法：前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られたパケットを前記パケットの宛先サーバへ送信できるように、前記フローテーブルに従い、前記仮想スイッチへパケットを送るステップ、を実行する、よう構成される、サービスゲートウェイが提供される。
【００２３】
第６の態様の実装方法に監視、第１の可能な実装方法では、前記プロセッサにより実行される前記方法において、前記フローテーブルに従い前記仮想スイッチへパケットを送るステップは、特に、前記フローテーブルに従い第１のデータチャネルを通じて前記仮想スイッチへ、ＩＰ＿ＩＮ＿ＩＰ方法でカプセル化された前記パケットを送るステップである。
【００２４】
第６の態様の実装方法に関して、第２の可能な実装方法では、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。
【００２５】
第７の態様によると、ＯｐｅｎＦｌｏｗ通信システムであって、前記システムは、制御部と、サービスゲートウェイと、少なくとも１つのサーバと、を有し、前記サービスゲートウェイは、前記制御部へ転送処理要求を送信し、前記転送処理要求は、転送される必要のある動作を有し、前記制御部は、前記転送される必要のある動作とネットワークトポロジ構造とに従い、仮想スイッチとして前記少なくとも１つのサーバのうちの１つのサーバを選択し、前記制御部は、前記サービスゲートウェイに第１のフローテーブルを配信し、前記サービスゲートウェイは、前記第１のフローテーブルに従い、パケットを前記仮想スイッチへ送り、前記制御部は、前記仮想スイッチに第２のフローテーブルを配信し、前記第２のフローテーブルは、前記パケットに対して前記動作を実行するよう前記仮想スイッチに指示するために使用される命令を有し、前記仮想スイッチは、前記第２のフローテーブルに従い前記パケットに前記動作を実行し、前記動作が実行された後に得られたパケットを前記パケットの宛先サーバへ送信する、システムが提供される。
【００２６】
第７の態様に監視、第１の可能な実装方法では、前記仮想スイッチが、前記パケットの前記宛先サーバへ前記パケットを送信するためのフローテーブルを有しない場合、前記仮想スイッチは、前記制御部へ、前記パケットの処理ルールを要求するメッセージを送信するよう更に構成され、前記制御部は、前記仮想スイッチに第３のフローテーブルを配信するよう更に構成され、前記第３のフローテーブルは、前記仮想スイッチが前記動作の実行された後に得られたパケットを前記パケットの前記宛先サーバへ送信するために使用される。
【００２７】
第７の態様の実装方法に関して、第２の可能な実装方法では、前記動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。
【００２８】
第７の態様の実装方法に監視、第３の可能な実装方法では、前記サービスゲートウェイが前記第１のフローテーブルに従い前記仮想スイッチへパケットを送るよう構成されることは、特に、前記第１のフローテーブルに従い前記仮想スイッチへ、ＩＰ＿ＩＮ＿ＩＰ方法でカプセル化された前記パケットを送ることである。
【００２９】
本発明によると、転送される必要のあることを示し及びサービスゲートウェイにより送信される転送処理要求が受信され、前記転送処理要求は、転送される必要のある動作を有し、前記転送される必要のある動作とネットワークトポロジ構造とに従い、仮想スイッチとして１つのサーバが選択され、第１のフローテーブルは、前記サービスゲートウェイがパケットを前記仮想スイッチへ送るために、前記サービスゲートウェイに配信され、第２のフローテーブルは、前記仮想スイッチに配信され、前記第２のフローテーブルは、前記仮想スイッチが前記パケットに対して前記動作を実行し及び前記動作が実行された後に得られたパケットを前記パケットの宛先サーバへ送信できるように、前記パケットに対して前記動作を実行するよう前記仮想スイッチに指示するために使用される命令を有する。これにより、システムにおいてネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、及び更にシステム全体の性能を向上する。
【図面の簡単な説明】
【００３０】
本発明の実施形態の又は従来技術の技術的解決策をより明確に説明するために、実施形態又は従来技術の説明に必要な図面が以下の通り導入される。明らかなことに、以下の説明中の添付の図面は、本発明の一部の実施形態であり、これらの図面に従って当業者により創造的労力を有しないで他の図面も得られる。
【図１】従来のＯｐｅｎＦｌｏｗネットワークトポロジ構造の図である。
【図２】本発明によるＯｐｅｎＦｌｏｗネットワークトポロジ構造の図である。
【図３】図２のサービスゲートウェイから制御部へ報告されるメッセージのフォーマットの概略図である。
【図４】図２の制御部により配信されるメッセージのフォーマットの概略図である。
【図５】図２の制御部により配信される第２のフローテーブルのメッセージのフォーマットの概略図である。
【図６】本発明の第１の実施形態によるＯｐｅｎＦｌｏｗ通信方法の概略的フローチャートである。
【図７】本発明の第１の実施形態による制御部の概略的構造図である。
【図８】本発明の第２の実施形態によるＯｐｅｎＦｌｏｗ通信方法の概略的フローチャートである。
【図９】本発明の第１の実施形態によるサービスゲートウェイの概略的構造図である。
【図１０】本発明の第２の実施形態による制御部の概略的構造図である。
【図１１】本発明の第２の実施形態によるサービスゲートウェイの概略的構造図である。
【図１２】本発明の第１の実施形態によるＯｐｅｎＦｌｏｗ通信システムの概略的構造図である。
【発明を実施するための形態】
【００３１】
本発明の目的、技術的解決策、及び利点を明確にするために、以下に、本発明の実施形態における技術的解決策を本発明の実施形態における添付の図面を参照して明確且つ完全に記載する。明らかに、記載される実施形態は、本発明の実施形態の一部であり、全てではない。本発明の実施形態に基づき創造的労力を有しないで当業者により得られる全ての他の実施形態は、本発明の保護範囲に包含される。
【００３２】
図２を参照すると、図２は、本発明によるＯｐｅｎＦｌｏｗネットワークトポロジ構造の図である。図２に示すように、ＯｐｅｎＦｌｏｗネットワークトポロジは、サービスゲートウェイ２２と、制御部２１と、仮想スイッチ２３と、宛先サーバ２４と、ルータ２５と、を含む。一例として復号化を取り上げると、パケット復号化要求が受信されると、サービスゲートウェイ２２は、システムの負荷を調べ、負荷が所与の閾を超える場合、つまり、サービスゲートウェイの処理能力が不十分であると、図２に関して以下の処理を実行する。
【００３３】
（１）サービスゲートウェイ２２は、制御部２１に、転送される必要のある要求リソースを報告する。転送される必要のある要求リソースは、動作（Action）に対応する。動作は、処理されるのを待機する処理、又は実行される必要のある演算、等である。ここで、動作が復号化動作であると仮定すると、転送される必要のある要求リソースは、復号化に関連する。サービスゲートウェイ２２は、制御部２１に、リソース要求メッセージの形式で、転送される必要のある要求リソースを報告する。リソース要求メッセージの特定のフォーマットは、図３に示される。ＩＰ（Internet  Protocol、インターネットプロトコル）は、送信元ＩＰ及び宛先ＩＰを含む。送信元ＩＰはサービスゲートウェイ２２のＩＰアドレスであり、宛先ＩＰは制御部２１のＩＰアドレスである。ＴＣＰ（Transmission  Control  Protocol、送信制御プロトコル）は、リソース要求メッセージが、望ましくは本実施形態では６６３３ポートであるＴＣＰプロトコルポートを通じて送信されることを示す。ＯＦは、リソース要求メッセージの送信処理が、オープンフロー（ＯｐｅｎＦｌｏｗ）プロトコルに厳密に従うことを示す。Ｓ＿ｒｅｑの値は１であり、メッセージがリソース要求であることを表す。Ｒｅｑ＿ｔｙｐｅは、メッセージ要求の種類を表す。Ｒｅｑ＿ｔｙｐｅのデータ長は４バイトであり、望ましくは、１は暗号化リソースであり、２は復号化リソースであり、３は圧縮リソースである。本発明の他の実施形態では、動作は、別の動作、例えば、伸張動作及びＤＰＩ（Deep  Packet  Inspection、ディープパケットインスペクション技術）スキャニングであっても良い。異なる動作は、転送される必要のある異なる要求リソースに対応する。本実施形態では、サービスゲートウェイ２２が制御部２１へリソース要求メッセージを送信することは、リソース、つまり復号化リソースがオープンフロープロトコルに従い要求されていることを示す。
【００３４】
（２）制御部２１は、サービスゲートウェイ２２により報告された必要なリソース及びネットワークトポロジ構造に従い、バックエンドスイッチクラスタから１つの適切なサーバを仮想スイッチ２３として選択する。ここで、仮想スイッチ２３の宛先サーバからの距離は、望ましくは、可能な場合には最短経路である。
【００３５】
（３）制御部２１は、第１のフローテーブルを配信し、サービスゲートウェイ２２と仮想スイッチ２３との間に第１のデータチャネルを確立する。ここで、第１のデータチャネルは、サービスゲートウェイ２２が仮想スイッチ２３へパケットを送るために使用される。具体的には、制御部２１は、第１のフローテーブルをサービスゲートウェイ２２に配信する。第１のフローテーブルのフォーマットは、図４の（ａ）に示される。ここで、Ｆ＿ａｄｄはフローテーブルの追加を示す。Ａｃｔｉｏｎに入れられるＰＵＳＨ＿ＩＰＨＥＡＤは、ＩＰヘッダの追加の演算を意味する。ＩＰ、ＴＣＰ、及びＯＦの意味は、図３のリソース要求メッセージにおけるものと同じであり、詳細はここで再び説明されない。制御部２１は、第１のフローテーブルを仮想スイッチ２３に更に配信する。第１のフローテーブルのフォーマットは図４の（ｂ）に示される。Ａｃｔｉｏｎに入れられるＰＯＰ＿ＩＰＨＥＡＤは、ＩＰヘッダの削除の演算を意味する。本発明の本実施形態では、データは、サービスゲートウェイ２２と仮想スイッチ２３との間で、ＩＰ＿ＩＮ＿ＩＰ（ＩＰを別のＩＰにカプセル化する）方法で送信される。送信されるべきデータは、図４の（ｃ）に示されるように、サービスゲートウェイ２２がフローテーブル動作を実行する前に存在するパケット、つまり元のパケットである。これに基づき、サービスゲートウェイ２２は、フローテーブルに従い「ＶＧＷ＿ＩＰ」をカプセル化する演算を実行して、フローテーブル動作の後に生成されたパケットフォーマットを得る。ここで、「ＶＧＷ＿ＩＰ」は、図４の（ｄ）に示すように、仮想スイッチ２３のＩＰである。サービスゲートウェイ２２は、フローテーブル演算の後に得られたパケットを仮想スイッチ２３へ送信して、図４の（ｅ）に示すように、仮想スイッチ２３がフローテーブル動作を実行する前に存在するパケットフォーマットを得る。仮想スイッチ２３は、ＩＰヘッダを削除するフローテーブル演算を実行して、図４の（ｆ）に示すように、フローテーブル動作の後に生成されるパケットフォーマットを得る。もちろん、本発明の他の実施形態では、データは、ＭＡＣ（Media  Access  Control、媒体アクセス制御）アドレスに対する直接変更のような別の方法で送信されても良い。サービスゲートウェイ２２が仮想スイッチ２３との第１のデータチャネルを確立しデータを送信するのと同時に、制御部２１は、選択された仮想スイッチ２３へ第２のフローテーブルを更に配信する。第２のフローテーブルは、パケットに対して動作を実行するよう仮想スイッチ２３に指示するために使用される命令を含む。制御部２１により仮想スイッチ２３へ配信される第２のフローテーブルのフォーマットは、図５に示される。ここで、実行されるべき動作は復号化であり、ＫＥＹ及びＫＥＹ＿ＬＥＮは、それぞれキー及び該キーの長さを意味する。
【００３６】
（４）仮想スイッチ２３は、復号化動作を実行して、元のパケット情報を得る。
【００３７】
（５）仮想スイッチ２３は、元のパケット情報に従い、宛先サーバ２４へパケットを送る。仮想スイッチ２３が関連するフローテーブルを有しない場合、パケットの処理を要求し及びパケットのためのものであるＰＡＣＫＥＴ＿ＩＮメッセージは、制御部２１へ送信される。制御部２１は、仮想スイッチ２３と宛先サーバ２４との間に第２のデータチャネルを確立するために、第３のフローテーブルを配信する。ここで、第２のデータチャネルは、仮想スイッチ２３が動作の実行された後に得られたパケットを、パケットの宛先サーバ２４へ送信するために使用される。本発明の本実施形態では、宛先サーバ２４及び仮想スイッチ２３は、同じサーバであっても良く、そうでなくても良い。制御部２１が、仮想スイッチ２３と宛先サーバ２４との間の第２のデータチャネルを確立するとき、仮想スイッチ２３は、ルータ２５を用いることにより、宛先サーバとの第２のデータチャネルを確立しても良い。
【００３８】
このように、サービスゲートウェイ２２が、システムの負荷が所与の閾を超えることを検出すると、制御部２１は、サービスゲートウェイ２２の動作を実行のために仮想スイッチ２３へ転送する。したがって、サービスゲートウェイ２２が動作要求を受信し、システムの負荷が所与の閾を超えることを検出する場合、サービスゲートウェイ２２は、前述の処理の実行を繰り返して、サービスゲートウェイ２２が動作要求を受信しなくなる又システムの負荷が所与の閾を超えることを検出しなくなるまで、サービスゲートウェイ２２の動作を実行のために仮想スイッチ２３へ転送する。本例では、システムは安定している。このように、サービスゲートウェイの処理能力が不十分なとき、データ処理サービスの一部は、実行のために、サービスゲートウェイ２２から仮想サーバ２３へ転送される。これは、システム内のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【００３９】
図６を参照すると、図６は、本発明の第１の実施形態によるＯｐｅｎＦｌｏｗ通信方法の概略的フローチャートである。図６に示すように、ＯｐｅｎＦｌｏｗ通信方法は以下のステップを含む。
【００４０】
Ｓ１０：サービスゲートウェイにより送信される転送処理要求を受信する。転送処理要求は、転送される必要のある動作を含む。
【００４１】
動作は、処理されるのを待機する処理、又は実行される必要のある演算、等である。動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。Ｓ１０で、サービスゲートウェイが、システムの負荷は所与の閾を超えことを検出するとき、動作は転送される必要がある。転送される必要のある及びサービスゲートウェイにより送信される動作を受信するステップは、動作に関連する及びサービスゲートウェイにより送信される要求リソースを受信するステップである。したがって、動作は、実行のために、別のネットワーク要素へ転送される。
【００４２】
Ｓ１１：転送される必要のある動作及びネットワークトポロジ構造に従い、仮想スイッチとして１つのサーバを選択する。
【００４３】
Ｓ１２：第１のフローテーブルをサービスゲートウェイに配信する。ここで、第１のフローテーブルは、サービスゲートウェイが仮想スイッチへパケットを転送するために使用される。
【００４４】
Ｓ１２で、第１のフローテーブルがサービスゲートウェイに配信されるのと同時に、第１のフローテーブルは、仮想スイッチに更に配信される。サービスゲートウェイに配信される第１のフローテーブルは、ＩＰヘッダの追加の演算を示す。これは、仮想スイッチのＩＰが、元のパケットに基づき、サービスゲートウェイにより仮想スイッチへ送られるパケットにカプセル化されることを意味する。仮想スイッチに配信される第１のフローテーブルは、ＩＰヘッダを削除する、つまり、カプセル化されたＩＰをサービスゲートウェイにより送られた受信パケットから除去する、演算を示す。したがって、仮想スイッチは、元のパケットを取得できる。
【００４５】
Ｓ１３：第２のフローテーブルを仮想スイッチに配信する。ここで、第２のフローテーブルは、パケットに対して動作を実行するよう仮想スイッチに指示するために使用される命令を含む。したがって、仮想スイッチは、パケットに対して動作を実行し、動作が実行された後に得られたパケットを、該パケットの宛先サーバへ送信する。望ましくは、配信された第２のフローテーブルは、動作に対応するリソース情報を更に含む。したがって、仮想スイッチは、リソース情報に従いパケットに動作を実行する。例えば、復号化演算は、復号化に関連するキー情報に従い実行される。
【００４６】
Ｓ１３で、動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。動作に対応するリソース情報は、キー、ＤＰＩルール、等を含む。このように、サービスゲートウェイの処理能力が不十分なとき、データ処理サービスの一部は、実行のために、サービスゲートウェイから仮想サーバへ転送される。これは、システム内のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【００４７】
仮想スイッチが、パケットの宛先サーバへパケットを送信するためのフローテーブルを有しない場合、仮想スイッチにより送信されるＰＡＣＫＥＴ＿ＩＮメッセージが受信され、第３のフローテーブルが生成される。第３のフローテーブルは、仮想スイッチと宛先サーバとの間に第２のデータチャネルを確立するために、仮想スイッチに配信される。ここで、第３のフローテーブルは、仮想スイッチが、動作が実行された後に得られたパケットを、パケットの宛先サーバへ送信するために使用される。本発明の本実施形態では、宛先サーバ及び仮想スイッチは、同じサーバであっても良く、そうでなくても良い。第２のデータチャネルが仮想スイッチと宛先サーバとの間に確立されるとき、第２のデータチャネルは、ルータを使用することにより、仮想スイッチと宛先サーバとの間に確立されても良い。
【００４８】
図７を参照すると、図７は、本発明の第１の実施形態による制御部の概略的構造図である。図７に示すように、制御部１０は、受信モジュール１０１と、選択モジュール１０２と、第１のフローテーブル配信モジュール１０３と、第２のフローテーブル配信モジュール１０４と、第３のフローテーブル配信モジュール１０５と、を含む。
【００４９】
受信モジュール１０１は、サービスゲートウェイにより送信される転送処理要求を受信するよう構成される。転送処理要求は、転送される必要のある動作を含む。選択モジュール１０２は、受信モジュール１０１に接続され、転送される必要のある動作及びネットワークトポロジ構造に従い、仮想スイッチとして１つのサーバを選択するよう構成される。動作は、処理されるのを待機する処理、又は実行される必要のある演算、等である。動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。第１のフローテーブル配信モジュール１０３は、選択モジュール１０２に接続され、サービスゲートウェイと仮想スイッチとの間に第１のデータチャネルを確立するために、第１のフローテーブルをサービスゲートウェイに配信するよう構成される。ここで、第１のフローテーブルは、サービスゲートウェイがパケットを仮想スイッチへ送るために使用される。本発明の本実施形態では、第１のフローテーブル配信モジュール１０３が第１のフローテーブルをサービスゲートウェイに配信するのと同時に、第１のフローテーブル配信モジュール１０３は、第１のフローテーブルを仮想スイッチに更に配信する。サービスゲートウェイに配信される第１のフローテーブルは、ＩＰヘッダの追加の演算を示す。これは、仮想スイッチのＩＰが、元のパケットに基づき、サービスゲートウェイにより仮想スイッチへ送られるパケットにカプセル化されることを意味する。仮想スイッチに配信される第１のフローテーブルは、ＩＰヘッダを削除する、つまり、カプセル化されたＩＰをサービスゲートウェイにより送られた受信パケットから除去する、演算を示す。したがって、仮想スイッチは、元のパケットを取得できる。第２のフローテーブル配信モジュール１０４は、選択モジュール１０２及び第１のフローテーブル配信モジュール１０３に接続され、第２のフローテーブルを仮想スイッチに配信する。ここで、第２のフローテーブルは、パケットに対して動作を実行するよう仮想スイッチに指示するために使用される命令を含む。したがって、仮想スイッチは、パケットに対して動作を実行し、動作が実行された後に得られたパケットを、該パケットの宛先サーバへ送信する。さらに、第２のフローテーブルは、動作に対応するリソース情報を更に含む。ここで、リソース情報は、キー又はＤＰＩルールのような動作を実行する演算に関連する情報を含む。本発明の本実施形態では、仮想スイッチは、パケットの宛先サーバへパケットを送信するためのフローテーブルを持たず、受信モジュール１０１は、パケットのために仮想スイッチにより送信されるＰＡＣＫＥＴ＿ＩＮメッセージを受信するよう更に構成される。第３のフローテーブル配信モジュール１０５は、仮想スイッチと宛先サーバとの間に第２のデータチャネルを確立するために、第３のフローテーブルを仮想スイッチに配信する。ここで、第３のフローテーブルは、仮想スイッチが、動作が実行された後に得られたパケットを、パケットの宛先サーバへ送信するために使用される。このように、サービスゲートウェイの処理能力が不十分なとき、データ処理サービスの一部は、実行のために、サービスゲートウェイから仮想サーバへ転送される。これは、システム内のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【００５０】
図８を参照すると、図８は、本発明の第２の実施形態によるＯｐｅｎＦｌｏｗ通信方法の概略的フローチャートである。図８に示すように、ＯｐｅｎＦｌｏｗ通信方法は以下のステップを含む。
【００５１】
Ｓ２０：負荷が所定の閾を超えると、転送処理要求を制御部へ送信する。ここで、転送処理要求は、制御部が仮想スイッチとして１つのサーバを選択できるように、転送される必要のある動作を含む。動作は、処理されるのを待機する処理、又は実行される必要のある演算、等である。動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。
【００５２】
Ｓ２１：制御部により配信されるフローテーブルを受信する。
【００５３】
Ｓ２２：仮想スイッチがパケットに対して動作を実行し及び動作が実行された後に得られたパケットを該パケットの宛先サーバへ送信できるように、フローテーブルに従いパケットを仮想スイッチへ送る。Ｓ３２で、ＩＰ＿ＩＮ＿ＩＰ方法でカプセル化されたパケットは、フローテーブルに従い仮想スイッチへ送られる。具体的には、仮想スイッチのＩＰは、元のパケットに基づき、サービスゲートウェイにより仮想スイッチへ送られるパケットにカプセル化される。仮想スイッチが、サービスゲートウェイにより送られたパケットを受信した後、カプセル化されたＩＰは除去され、元のパケットが得られる。
【００５４】
本発明の本実施形態では、負荷が所定の閾を超えるとき、データ処理サービスの一部は、実行のために、サービスゲートウェイから仮想サーバへ転送される。これは、システム内のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【００５５】
図９を参照すると、図９は、本発明の第１の実施形態によるサービスゲートウェイの概略的構造図である。図９に示すように、サービスゲートウェイ２０は、送信モジュール２０１と、受信モジュール２０２と、転送モジュール２０３と、を含む。
【００５６】
送信モジュール２０１は、負荷が所定の閾を超えると、転送処理要求を制御部へ送信するよう構成される。ここで、転送処理要求は、制御部が仮想スイッチとして１つのサーバを選択できるように、転送される必要のある動作を含む。動作は、処理されるのを待機する処理、又は実行される必要のある演算、等である。動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。受信モジュール２０２は、送信モジュール２０１に接続され、制御部により配信されるフローテーブルを受信するよう構成される。転送モジュール２０３は、受信モジュール２０２に接続され、仮想スイッチがパケットに対して動作を実行し及び動作が実行された後に得られたパケットを該パケットの宛先サーバへ送信できるように、フローテーブルに従いパケットを仮想スイッチへ送るよう構成される。転送モジュール２０３は、パケットに従い、ＩＰ＿ＩＮ＿ＩＰ方法でカプセル化されたパケットを仮想スイッチへ送る。具体的には、仮想スイッチのＩＰは、元のパケットに基づき、サービスゲートウェイにより仮想スイッチへ送られるパケットにカプセル化される。仮想スイッチが、サービスゲートウェイにより送られたパケットを受信した後、カプセル化されたＩＰは除去され、元のパケットが得られる。
【００５７】
本発明の本実施形態では、負荷が所定の閾を超えると、送信モジュール２０１は、制御部に転送処理要求を送信する。ここで、転送処理要求は、制御部が仮想スイッチとして１つのサーバを選択できるように、転送される必要のある動作を有する。受信モジュール２０２は、制御部により配信されるフローテーブルを受信する。転送モジュール２０３は、仮想スイッチがパケットに対して動作を実行し及び動作が実行された後に得られたパケットをパケットの宛先サーバへ送信できるように、データフローテーブルに従い、仮想スイッチへパケットを送る。このように、サービスゲートウェイの処理能力が不十分なとき、データ処理サービスの一部は、実行のために、サービスゲートウェイから仮想サーバへ転送される。これは、システム内のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【００５８】
図１０を参照すると、図１０は、本発明の第２の実施形態による制御部の概略的構造図である。図１０に示すように、制御部２０は、受信機２０１と、プロセッサ３０２と、送信機３０３と、メモリ３０４と、データバス３０５と、を含む。受信機３０１と、プロセッサ３０２と、送信機３０３と、メモリ３０４は、データバス３０５を使用することにより相互通信のために接続される。
【００５９】
本発明の本実施形態では、受信機３０１は、サービスゲートウェイにより送信される転送処理要求を受信するよう構成される。ここで、転送処理要求は、転送される必要のある動作を含む。メモリは、プログラムコードを格納するよう構成される。プロセッサ３０２は、メモリに格納されたプログラムコードを呼び出し、以下の方法を実行するよう構成される：転送される必要のある動作及びネットワークトポロジ構造に従い、仮想スイッチとして１つのサーバを選択する。動作は、処理されるのを待機する処理、又は実行される必要のある演算、等である。動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。送信機３０３は、サービスゲートウェイと仮想スイッチとの間に第１のデータチャネルを確立するために、第１のフローテーブルをサービスゲートウェイに配信する。ここで、第１のデータチャネルは、サービスゲートウェイが仮想スイッチへパケットを送るために使用される。本発明の本実施形態では、送信機３０３が第１のフローテーブルをサービスゲートウェイに配信するのと同時に、第１のフローテーブルは、仮想スイッチに更に配信される。サービスゲートウェイに配信される第１のフローテーブルは、ＩＰヘッダの追加の演算を示す。これは、仮想スイッチのＩＰが、元のパケットに基づき、サービスゲートウェイにより仮想スイッチへ送られるパケットにカプセル化されることを意味する。仮想スイッチに配信される第１のフローテーブルは、ＩＰヘッダを削除する、つまり、カプセル化されたＩＰをサービスゲートウェイにより送られた受信パケットから除去する、演算を示す。したがって、仮想スイッチは、元のパケットを取得できる。
【００６０】
送信機３０３は、第２のフローテーブルを仮想スイッチに配信する。ここで、第２のフローテーブルは、パケットに対して動作を実行するよう仮想スイッチに指示するために使用される命令を含む。したがって、仮想スイッチは、パケットに対して動作を実行し、動作が実行された後に得られたパケットを、該パケットの宛先サーバへ送信する。第２のフローテーブルは、動作に対応するリソース情報を更に含んでも良い。ここで、動作に対応するリソース情報は、キー、ＤＰＩルール、等を含む。メモリ３０４は、ネットワークトポロジ構造、送信機４０３によりサービスゲートウェイに配信される第１のフローテーブル、送信機４０３により仮想スイッチに配信される第２のフローテーブル、を格納するよう更に構成される。仮想スイッチが関連するフローテーブルを有しない場合、受信機は、仮想スイッチにより送信されるＰＡＣＫＥＴ＿ＩＮメッセージを受信する。送信機は、第３のフローテーブルを仮想スイッチに配信する。ここで、第３のフローテーブルは、仮想スイッチが、動作の実行された後に得られたパケットをパケットの宛先サーバへ送信するために使用される。本発明の本実施形態では、データ処理サービスの一部が実行のためにサービスゲートウェイから仮想スイッチへ転送される。これは、システム内のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【００６１】
図１１を参照すると、図１１は、本発明の第２の実施形態によるサービスゲートウェイの概略的構造図である。図１１に示すように、サービスゲートウェイ４０は、受信機４０１と、プロセッサ４０２と、送信機４０３と、メモリ４０４と、通信バス４０５と、を含む。受信機４０１と、プロセッサ４０２と、送信機４０３と、メモリ４０４は、データバス４０５を使用することにより相互通信のために接続される。
【００６２】
本発明の本実施形態では、負荷が所定の閾を超えると、送信機４０３は、転送処理要求を制御部へ送信するよう構成される。ここで、転送処理要求は、制御部が仮想スイッチとして１つのサーバを選択できるように、転送される必要のある動作を含む。動作は、処理されるのを待機する処理、又は実行される必要のある演算、等である。動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。受信機４０１は、制御部により配信されるフローテーブルを受信するよう構成される。メモリは、プログラムコードを格納するよう構成される。メモリは、フローテーブルを格納するよう更に構成される。プロセッサ４０２は、以下の方法を実行するために、メモリに格納されたプログラムコードを呼び出す：仮想スイッチがパケットに対して動作を実行し及び動作が実行された後に得られたパケットを該パケットの宛先サーバへ送信できるように、フローテーブルに従いパケットを仮想スイッチへ送る。プロセッサ４０２により実行される方法では、ＩＰ＿ＩＮ＿ＩＰ方法でカプセル化されたパケットは、フローテーブルに従い仮想スイッチへ送られる。具体的には、仮想スイッチのＩＰは、元のパケットに基づき、サービスゲートウェイにより仮想スイッチへ送られるパケットにカプセル化される。仮想スイッチが、サービスゲートウェイにより送られたパケットを受信した後、カプセル化されたＩＰは除去され、元のパケットが得られる。メモリ４０４は、転送される必要のある動作と、制御部により配信されるフローテーブルと、を格納する。本発明の本実施形態では、負荷が予め設定された閾を超えるとき、データ処理サービスの一部は、実行のために、サービスゲートウェイから仮想サーバへ転送される。これは、システム内のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【００６３】
図１２を参照すると、図１２は、本発明の第１の実施形態によるＯｐｅｎＦｌｏｗ通信システムの概略的構造図である。図１２に示すように、ＯｐｅｎＦｌｏｗ通信システム５０は、制御部５０１と、サービスゲートウェイ５０２と、サーバ５０３と、を含む。複数のサーバ５０３があり、複数のサーバのうちの１つは、仮想スイッチ５０４又は宛先サーバ５０５として選択されても良い。サービスゲートウェイ５０２は、転送処理要求を制御部５０１に送信する。ここで、転送処理要求は、転送される必要のある動作を含む。動作は、処理されるのを待機する処理、又は実行される必要のある演算、等である。動作は、パケット暗号化、パケット復号化、ディープパケット検査、データ圧縮、又はデータ伸張、のうちの少なくとも１つを含む。制御部５０１は、転送される必要のある動作及びネットワークトポロジ構造に従い、仮想スイッチ５０４として１つのサーバ５０３を選択する。制御部５０１は、第１のフローテーブルをサービスゲートウェイ５０２に配信する。サービスゲートウェイ５０２は、第１のフローテーブルに従い、パケットを仮想スイッチ５０４へ送る。具体的には、サービスゲートウェイ５０２は、第１のフローテーブルに従い、ＩＰ＿ＩＮ＿ＩＰ方法でカプセル化されたパケットを仮想スイッチ５０４へ送る。具体的には、仮想スイッチのＩＰは、元のパケットに基づき、サービスゲートウェイにより仮想スイッチへ送られるパケットにカプセル化される。仮想スイッチが、サービスゲートウェイにより送られたパケットを受信した後、カプセル化されたＩＰは除去され、元のパケットが得られる。制御部５０１は、第２のフローテーブルを仮想スイッチ５０４に配信する。ここで、第２のフローテーブルは、パケットに対して動作を実行するよう仮想スイッチ５０４に指示するために使用される命令を含む。仮想スイッチ５０４は、第２のフローテーブルに従いパケットに対して動作を実行し、動作が実行された後に得られたパケットをパケットの宛先サーバ５０５へ送信する。さらに、第２のフローテーブルは、仮想スイッチ５０４がリソース情報に従いパケットに動作を実行できるように、復号化に関連するキー情報のような、動作に対応するリソース情報を更に含む。仮想スイッチ５０４が、パケットの宛先サーバ５０５へパケットを送信するフローテーブルを有しない場合、仮想スイッチ５０４は、制御部５０１へ、パケットの処理ルールを要求するＰＡＣＫＥＴ＿ＩＮメッセージを送信する。制御部５０１は、第３のフローテーブルを仮想スイッチ５０４に配信する。ここで、第３のフローテーブルは、仮想スイッチ５０４が、動作の実行された後に得られたパケットをパケットの宛先サーバ５０５へ送信するために使用される。したがって、サービスゲートウェイ５０２の処理能力が不十分なとき、データ処理サービスの一部は、実行のために、サービスゲートウェイ５０２から仮想サーバへ転送される。これは、システム内のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【００６４】
結論として、本発明によると、サービスゲートウェイにより送信される転送処理要求が受信される。ここで、転送処理要求は、転送される必要のある動作を有する。転送される必要のある動作とネットワークトポロジ構造とに従い、仮想スイッチとして１つのサーバが選択される。次に、第１のフローテーブルがサービスゲートウェイに配信される。ここで、第１のフローテーブルは、サービスゲートウェイがパケットを仮想スイッチへ送るために使用される。第２のフローテーブルは仮想スイッチに配信される。ここで、第２のフローテーブルは、仮想スイッチがパケットに対して動作を実行し及び動作が実行された後に得られたパケットをパケットの宛先サーバへ送信できるように、パケットに対して動作を実行するよう仮想スイッチに指示するために使用される命令を有する。サービスゲートウェイの処理能力が不十分なとき、データ処理サービスの一部は、実行のために、サービスゲートウェイから仮想サーバへ転送される。これは、システム内のネットワーク要素間の負荷平衡を実施し、システムの利用率及びスループットを向上し、更にシステム全体の性能を向上できる。
【００６５】
上述の説明は、本発明の単なる実施形態であり、本発明の保護範囲はこれに限定されない。本発明の本明細書及び添付の図面の内容に従い又は本発明を他の関連技術分野に直接若しくは間接的に適用することにより行われる全ての等価な構造又は処理の変更は、本発明の保護範囲に包含されるべきである。
【図１】
0006395867.tif 000002
【図２】
0006395867.tif 000003
【図３】
0006395867.tif 000004
【図４ａ）】
0006395867.tif 000005
【図４ｂ）】
0006395867.tif 000006
【図４ｃ）】
0006395867.tif 000007
【図４ｄ）】
0006395867.tif 000008
【図４ｅ）】
0006395867.tif 000009
【図４ｆ）】
0006395867.tif 000010
【図５】
0006395867.tif 000011
【図６】
0006395867.tif 000012
【図７】
0006395867.tif 000013
【図８】
0006395867.tif 000014
【図９】
0006395867.tif 000015
【図１０】
0006395867.tif 000016
【図１１】
0006395867.tif 000017
【図１２】
0006395867.tif 000018