(57)【要約】      （修正有）【課題】ＳＤＮネットワークにセキュリティポリシーを実装する方法を提供する。【解決手段】ＳＤＮネットワーク内のコントローラで、ポリシー作成者から、少なくとも１つのセキュリティポリシーが取得される。セキュリティポリシーは、セキュリティポリシーの特性、セキュリティポリシー作成者の役割、および、セキュリティポリシー作成者の役割のセキュリティ特権レベルを指定する１つまたは複数の属性に基づき、コントローラを介してＳＤＮネットワークに実装される。【選択図】図２
2019205192.tif 000002
【特許請求の範囲】
【請求項１】
方法であって、
ソフトウェア定義ネットワーク内のコントローラで、ポリシー作成者から少なくとも１つのセキュリティポリシーを取得するステップと、
セキュリティポリシーを、セキュリティポリシーの特性、セキュリティポリシー作成者の役割、および、セキュリティポリシー作成者の役割のセキュリティ特権レベルを指定する、１つまたは複数の属性に基づき、コントローラを介して、ソフトウェア定義ネットワークに実装するステップと
を含み、セキュリティポリシーの特性の属性が、セキュリティポリシーがリアルタイムポリシーであるかを記述する、方法。
【請求項２】
セキュリティポリシー作成者の役割が、セキュリティポリシー作成者に割り当てられるネットワーク上の役割を指定する、請求項１に記載の方法。
【請求項３】
セキュリティポリシー作成者の役割のセキュリティ特権レベルが、ポリシー作成者に割り当て可能な異なる役割のそれぞれに対して異なる階層的セキュリティ特権レベルを指定する、請求項１に記載の方法。
【請求項４】
ポリシー作成者から少なくとも１つのセキュリティポリシーを取得するステップが、
ポリシー作成者に、認証操作、認可操作、完全性検証操作、および秘密性検証操作のうちの少なくとも１つをコントローラが行うステップと、
認証操作、認可操作、完全性検証操作、および秘密性検証操作のうちの少なくとも１つに失敗した状況で、コントローラがセキュリティポリシーを破棄するステップとをさらに含む、請求項１に記載の方法。
【請求項５】
セキュリティポリシーを実装するステップが、コントローラがセキュリティポリシーを、セキュリティポリシーの特性、セキュリティポリシー作成者の役割、および、セキュリティポリシー作成者の役割のセキュリティ特権レベルを指定する１つまたは複数の属性に基づいて、少なくとも１つのフロー規則に変換するステップをさらに含む、請求項１に記載の方法。
【請求項６】
セキュリティポリシーを実装するステップが、コントローラが、
セキュリティポリシーから変換されたフロー規則とフローテーブル内の既存のフロー規則の間に矛盾があるか決定して、セキュリティポリシーから変換されたフロー規則とフローテーブル内の既存のフロー規則の間の矛盾を、セキュリティポリシー作成者の役割のセキュリティ特権レベルに基づいて解決することと、
フローテーブルをセキュリティポリシーから変換されたフロー規則で更新することと、
１つまたは複数のスイッチがフロー規則に従ってソフトウェア定義ネットワーク内でデータフローを遂行できるようにセキュリティポリシーから変換されたフロー規則をソフトウェア定義ネットワーク内の１つまたは複数のスイッチに配信することと、
１つまたは複数のスイッチにフロー規則を配信する前に、１つまたは複数のスイッチに、認証操作、完全性検証操作、および秘密性検証操作のうちの少なくとも１つを行うこと
のうちの１つまたは複数を行うことを含む、請求項５に記載の方法。
【請求項７】
取得されたセキュリティポリシーが、ソフトウェア定義ネットワークのセキュリティ機器によって検出された新しいセキュリティ脅威に応答して開発されたセキュリティポリシーである、請求項１に記載の方法。
【請求項８】
取得されたセキュリティポリシーがパケットスキャン検出命令を含み、セキュリティポリシーを実装するステップが、ソフトウェア定義ネットワーク内の、変換されたフロー規則が配信される１つまたは複数のスイッチがそこを通過する１つまたは複数の指定されたパケットをソフトウェア定義ネットワーク内のセキュリティ機器に転送するように命令されるように、コントローラがパケットスキャン検出命令を含むセキュリティポリシーを、データフロー条件およびパケットスキャンパターンに基づいてフロー規則に変換するステップをさらに含む、請求項１に記載の方法。
【請求項９】
実行可能プログラムコードを具体化したプロセッサ可読記憶媒体を含む製造品であって、実行可能プログラムコードは、処理デバイスによって実行されると、処理デバイスに、
ソフトウェア定義ネットワークのコントローラで、ポリシー作成者から少なくとも１つのセキュリティポリシーを取得するステップと、
コントローラを介して、セキュリティポリシーを、セキュリティポリシーの特性、セキュリティポリシー作成者の役割、および、セキュリティポリシー作成者の役割のセキュリティ特権レベルを指定する１つまたは複数の属性に基づいて、ソフトウェア定義ネットワーク内に実装するステップとを行わせ、
セキュリティポリシーの特性の属性が、セキュリティポリシーがリアルタイムポリシーであるかを記述する、製造品。
【請求項１０】
装置であって、
メモリと、
メモリに動作可能に結合されてソフトウェア定義ネットワークのコントローラを形成するプロセッサとを備え、コントローラが、
ポリシー作成者から少なくとも１つのセキュリティポリシーを取得し、
セキュリティポリシーを、セキュリティポリシーの特性、セキュリティポリシー作成者の役割、および、セキュリティポリシー作成者の役割のセキュリティ特権レベルを指定する１つまたは複数の属性に基づいてソフトウェア定義ネットワーク内に実装するように構成され、
セキュリティポリシーの特性の属性が、セキュリティポリシーがリアルタイムポリシーであるかを記述する、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は一般に通信ネットワークに関し、より具体的には、ソフトウェア定義ネットワーキングに基づく通信ネットワークにおけるセキュリティ技法に関する。
【背景技術】
【０００２】
このセクションでは、本発明のよりよい理解を促進するために役立ち得る見解を紹介する。したがって、このセクションの文言はこの観点から読まれるべきであり、従来技術に何が含まれるか、または、従来技術に何が含まれないかに関する承認された事実と理解されてはならない。
【０００３】
ソフトウェア定義ネットワーキング（ＳＤＮ）は、ネットワーク制御が直接プログラム可能になるように、ネットワーク制御をアンダーレイのネットワーク交換インフラストラクチャから切り離すネットワークアーキテクチャフレームワークである。この切り離しによって、アンダーレイのネットワークインフラストラクチャを、そのネットワーク上で実行するアプリケーションおよびサービスに対して抽象化することが可能になる。ＳＤＮコントローラは、ＳＤＮネットワーク内でフロー制御を管理するために使用される。例えば、ＳＤＮコントローラは通常、ＯｐｅｎＦｌｏｗ（Ｏｐｅｎ  Ｎｅｔｗｏｒｋｉｎｇ  Ｆｏｕｎｄａｔｉｏｎ）プロトコルなどの、制御サーバがネットワーク要素（例えばスイッチ）にパケットの送り先を指示することを可能にするプロトコルに基づく。そのようなシナリオでは、ＳＤＮコントローラはＯｐｅｎＦｌｏｗコントローラと呼ばれ、スイッチはＯｐｅｎＦｌｏｗスイッチと呼ばれる。そのようなコントローラは、ＳＤＮネットワークのために一種のオペレーティングシステムとして働く。制御プレーンをネットワークハードウェアと分離し、その代わりに制御プレーンをソフトウェアとして実行させることによって、コントローラは自動化されたネットワーク管理、ならびにアプリケーションとサービスの統合および管理を促進する。
【０００４】
しかし、ＳＤＮネットワークには、既存のセキュリティ機構によっては対処されない難しいセキュリティ問題がある。
【発明の概要】
【課題を解決するための手段】
【０００５】
ＳＤＮネットワーク内で使用するためのセキュリティ技法が例示的実施形態により提供される。
【０００６】
例えば、一実施形態では、方法が下記のステップを含む。ＳＤＮネットワーク内のコントローラで、ポリシー作成者から、少なくとも１つのセキュリティポリシーが取得される。セキュリティポリシーは、セキュリティポリシーの特性、セキュリティポリシー作成者の役割、および、セキュリティポリシー作成者の役割のセキュリティ特権レベルを指定する、１つまたは複数の属性に基づき、コントローラを介してＳＤＮネットワークに実装される。
【０００７】
別の実施形態では、１つまたは複数のソフトウェアプログラムの実行可能コードがその内部に符号化されたプロセッサ可読記憶媒体を含む、製造品が提供される。この１つまたは複数のソフトウェアプログラムは、少なくとも１つの処理デバイスによって実行されると、前述した方法のステップを実装する。
【０００８】
さらに別の実施形態では、装置が、前述した方法のステップを行うように構成されたメモリおよびプロセッサを備える。
【０００９】
有利には、例示的実施形態が、ＳＤＮネットワーク内でセキュリティ問題に対処する技法を提供し、これらは、ネットワークポリシーをフロー規則に正確に変換すること、新しいフロー規則が以前のフロー規則と矛盾するというシナリオに対処すること、新しいセキュリティ攻撃に自動的かつ即座に反応すること、およびパケットデータスキャン検出を支援することを含むが、これらに限定されない。
【００１０】
本明細書に記載される実施形態のこれらおよび他の特徴および利点は、添付図面および下記の詳細説明から、より明らかになる。
【図面の簡単な説明】
【００１１】
【図１】一実施形態による、セキュリティアーキテクチャを有するＳＤＮネットワークを示す図である。
【図２】一実施形態による、ＳＤＮネットワーク内で使用するためのセキュリティの方法を示す図である。
【図３】１つまたは複数の実施形態による、セキュリティアーキテクチャを有するＳＤＮネットワークが実装される処理プラットフォームを示す図である。
【発明を実施するための形態】
【００１２】
本明細書では、コンピューティングシステム、データストレージシステム、通信ネットワーク、処理プラットフォーム、システム、ユーザデバイス、ネットワークノード、ネットワーク要素、クライアント、サーバ、および関連する通信プロトコルの例を参照しながら、例示的実施形態について説明する。例えば、例示的実施形態は、ソフトウェア定義ネットワーキング（ＳＤＮ）環境での使用に特に良く適している。ただし、実施形態が、記載された特定の構成での使用に限定されず、その代わりに通信ネットワーク内のセキュリティの改善のための機構および方法論を提供することが望ましいどのような環境にも広く一般的に適用可能であることが理解されるべきである。
【００１３】
前述したように、ＳＤＮネットワークには、既存のセキュリティ機構および方法論を使用して対処されない難しいセキュリティ問題がある。例示的実施形態は、そのような難しいセキュリティ問題に対処する。
【００１４】
例えば、本明細書で対処される１つのセキュリティ問題は、ＳＤＮコントローラが安全な様式でネットワークポリシーをどのようにして受け取れるようにするか、ということである。ポリシー作成者（例えば、アプリケーション、ネットワーク管理者、および管理サーバ）が真正であることをＳＤＮコントローラが保証すべきであることが認識されている。さらに、送信中のこれらのポリシーに対して秘密性および完全性が保証されなければならない。下記に詳細に説明するように、例示的実施形態はこれらの保証を提供する。
【００１５】
本明細書で対処される別のセキュリティ問題は、どのようにしてネットワークポリシーを正確にフロー規則に変換するか、ということである。ネットワークポリシー（この場合はセキュリティポリシー）が、ポリシー作成者の識別子、役割、およびセキュリティ特権レベルなどの属性に基づいて正確にフロー規則に変換されなければならないことが認識されている。このようにして、バイパスなしで、セキュリティ対抗策のうちの１つまたは複数を運用することができる。下記に詳細に説明するように、例示的実施形態は、この正確な変換を提供する。
【００１６】
本明細書で対処されるさらに別のセキュリティ問題は、どのようにしてパケットデータスキャン検出を実装するのか、ということである。現状では、ＳＤＮサウスバウンドインタフェースの実装のうちの１つの一部として、ＯｐｅｎＦｌｏｗプロトコルは、パケットヘッダスキャン検出のみを支援している。ＯｐｅｎＦｌｏｗスイッチでは、フローはＯｐｅｎＦｌｏｗテーブル内のマッチフィールドとパケットヘッダをマッチングすることによって、転送または破棄（ｄｒｏｐ）される。しかし、ワームやスパム情報などのいくつかの攻撃を防ぐためには、パケットデータスキャン検出が行われなければならないことが認識されている。下記に詳細に説明するように、例示的実施形態はこれらの問題に対処するパケットスキャン検出を提供する。
【００１７】
本明細書で対処されるさらに別のセキュリティ問題は、古いフロー規則と矛盾する新しいフロー規則をどのように扱うか、ということである。例えば、スイッチ＿１で作成された新しいフロー規則では、ＶＬＡＮ＿ＩＤ＿４を有するパケットがポート５に転送されると指定されると仮定する。さらに、ＶＬＡＮ＿ＩＤ＿４を有するパケットがポート６に転送されると指定するスイッチ＿１の古いフロー規則を、新しいフロー規則に置き換えると仮定する。しかし、古いフロー規則は、パケットスキャン検出を強制的に行うためにセキュリティ管理者によって作成されたものである。この古いフロー規則は、新しいフロー規則に置き換えられてはならない。下記に詳細に説明するように、例示的実施形態はこの種の矛盾の問題に対処する。
【００１８】
本明細書で対処されるさらに別のセキュリティ問題は、ＳＤＮコントローラからネットワークスイッチに伝送されるフロー規則をどのようにして安全化するか、ということである。ＯｐｅｎＦｌｏｗプロトコルには、伝送を安全化するには、トランスポート層セキュリティ（ＴＬＳ）が使用されてもよいと述べられている。しかし、どのバージョンおよび暗号スイートを使用できるかなどの実装の詳細については論じられていない。下記に詳細に説明するように、例示的実施形態はこの問題に対処する。
【００１９】
本明細書で対処される別のセキュリティ問題は、どのようにして新しい攻撃に自動的かつ即座に反応するか、ということである。下記に詳細に説明するように、例示的実施形態はこの問題に対処する。
【００２０】
本明細書で対処されるさらに別のセキュリティ問題は、ＳＤＮコントローラの実行環境が安全であることをどのようにして保証するか、ということである。論理的に集中されたＳＤＮコントローラによって、オペレータは、より柔軟に自身のネットワークをプログラムすることができるようになる。しかし、論理的に集中されたＳＤＮコントローラは攻撃者に対して単一の高価値な資産を露呈する可能性もある。ＳＤＮコントローラを安全な実行環境に配備することにより、脅威をいくらか緩和することはオペレータにとって重要である。下記に詳細に説明するように、例示的実施形態はこの問題に対処する。
【００２１】
例示的実施形態は、前述および他のセキュリティ問題に対処するＳＤＮセキュリティアーキテクチャを提供する。具体的には、例示的実施形態は、ＳＤＮコントローラ内のフロー規則に関連する属性を導入して、そのようなセキュリティ問題に対処する。一実施形態では、これらのセキュリティ属性は：（ｉ）ネットワークポリシーの特性、（ｉｉ）ポリシー作成者の役割、および（ｉｉｉ）その役割のセキュリティ特権レベルを含む。これらの３つのセキュリティ特徴のそれぞれが、例示的に本明細書に記載されるように、別々の属性として指定されるが、セキュリティ特徴のうちの１つまたは複数を合わせて１つの属性として指定できることが理解される。
【００２２】
ネットワークポリシーの特性の属性は、新しいネットワークポリシーがリアルタイムポリシーなのか、いくらかの遅延をもって運用されることが可能なのかを表すために使用される。リアルタイムポリシーの場合、ポリシーはいかなる遅延もなく、フロー規則に変換され、フローテーブル内で更新され、次にＳＤＮスイッチに同期されなければならない。これらのリアルタイムポリシーは、セキュリティ機器（例えば、ファイヤウォール、ＤＰＩ、およびＩＤＰ）によってオンラインで検出されたセキュリティ攻撃に対して反応してもよい。いくらかの遅延をもって運用されてもよいこれらのポリシーの場合、システムパフォーマンスを改善するために、ポリシーは定期的にバッチでフロー規則に変換され、フローテーブル内で更新され、次にＳＤＮスイッチに同期される。
【００２３】
ポリシー作成者の役割の属性は、所与のネットワークポリシーを作成した管理者／アプリケーションの役割を定めるために使用される。作成者の役割は、セキュリティ管理者、一般管理者、ユーザ、またはゲストであってもよい。
【００２４】
役割のセキュリティ特権レベルの属性は、ポリシー作成者の異なる役割に異なるセキュリティ特権レベルを指定するために使用される。階層的レベルは、高い方から低い方へ、Ｌ５、Ｌ４、Ｌ３、Ｌ２、Ｌ１およびＬ０であってもよい。比較的高いセキュリティ特権レベルをもつ役割には、ＳＤＮコントローラにアクセスする権利がより多く与えられる。例えば、比較的低いセキュリティ特権レベルをもつ作成者によって作成されたポリシーは、より高いレベルをもつ作成者によって作成されたポリシーによって置き換えられる。例示的一実施形態では、役割のセキュリティ特権レベルは下記：セキュリティ管理者−Ｌ５（最高）、一般管理者−Ｌ４、ユーザ−Ｌ２、およびゲスト−Ｌ１として設定することができる。この例示的実施形態では、セキュリティ特権レベルＬ３およびＬ０には専用の役割がないことが理解される。ただし、セキュリティ特権レベルの量および割り当ては開発者に対して開かれており、ＳＤＮネットワーク設計の特定の必要に基づいてインスタンス化されることができる。
【００２５】
例示的実施形態は、改善されたフローテーブル管理機能もまた提供する。この機能は、新しいフロー規則が古いフロー規則と矛盾したときの状況に対処するために使用される。現状では、ＯｐｅｎＦｌｏｗテーブル内のフロー項目は、新しいフロー規則を生成するアプリケーションと古い規則を生成するアプリケーションを区別しない。よって、アプリケーションサーバの乗っ取りを謀る攻撃者が、セキュリティ検出をバイパスするために、新しいフロー規則を作成して、セキュリティ管理者によって作成されたフロー規則と置き換えることができる。前述した、ＳＤＮコントローラ内に定められる３つの新しい属性に基づいて、前述したセキュリティ問題を解決することができる。その理由は、高いセキュリティ特権レベルをもつセキュリティ管理者によって作成されたフロー規則を、低いセキュリティ特権レベルをもつ新しいフロー規則に置き換えることはできないからである。
【００２６】
例示的実施形態は、改善されたパケットデータスキャン検出もまた提供する。現在のＯｐｅｎＦｌｏｗプロトコルｖ１．４によれば、パケットデータスキャン検出の実現可能な１つの方策は、スキャン検出のために対象のフローの連続したｎ個の各パケットから連続したｍ個のパケットを選択することである。この方策は、すべてのフローに対して、または、一定の宛先に向けられたパケットや指定された仮想ローカルエリアネットワーク（ＶＬＡＮ）識別子をもつパケットなどの、なんらかの条件を満たすフローのみに対して設計されることができる。例示的実施形態によれば、パケットデータスキャン検出を支援するために、ＯｐｅｎＦｌｏｗプロトコルが拡張される。下記で詳しく説明される、新しいアクション（ＯＦＰＡＴ＿ＤＥＴＥＣＴＩＯＮ）が、セキュリティ管理機能によって設定された条件を満たすすべてのフローに割り当てられる。
【００２７】
例示的実施形態は、新しいセキュリティ攻撃への自動的かつ即座の反応もまた提供する。例えば、ネットワークのデータ転送プレーンに配備されたセキュリティ機器（例えば、ファイヤウォール、侵入検出システム（ＩＤＳ）、侵入防止システム（ＩＰＳ）、ディープパケットインスペクション（ＤＰＩ））がセキュリティ攻撃を検出して、セキュリティ管理機能に報告することができる。これらの攻撃に対して反応するために、セキュリティ管理機能は直ちに対抗策を定め、これらの対抗策はＳＤＮコントローラ内のフロー規則の中へ変換されてから、ＳＤＮスイッチと同期される。その後、これらの攻撃パケットは、ネットワークの外に転送される前に破棄されるか、または、さらなる検出のためにセキュリティ機器に転送される。このようにして、ＳＤＮコントローラは自動的にセキュリティ攻撃に反応することができる。
【００２８】
図１を参照すると、例示的一実施形態による、ＳＤＮネットワーク１００のためのセキュリティアーキテクチャが示されている。この例示的実施形態には、第１のＳＤＮコントローラ１０２−１、すなわちＯｐｅｎＦｌｏｗコントローラ＿１が示されている。ＳＤＮコントローラ１０２−１は、第２のＳＤＮコントローラ１０２−２、すなわちＯｐｅｎＦｌｏｗコントローラ＿２ならびに、複数のＳＤＮスイッチ１０４−１（ＯｐｅｎＦｌｏｗスイッチ＿１）、１０４−２（ＯｐｅｎＦｌｏｗスイッチ＿２）、および（１０４−３ＯｐｅｎＦｌｏｗスイッチ＿３）と動作可能に結合されている。ＳＤＮスイッチにはホストコンピューティングデバイス１０６−１（ホスト１）および１０６−２（ホスト２）が動作可能に結合されている。ホストコンピューティングデバイスは、例えば、データサーバまたはエンドユーザのコンピュータであることができる。ＳＤＮネットワーク１００が、コントローラ、ＳＤＮスイッチ、および／またはホストコンピューティングデバイスを、図１に例示的に示されるよりも多く、または少なく含んでもよいことが理解される。例えば、ＳＤＮコントローラ１０２−２および／または追加のＳＤＮコントローラ（明示的には示されていない）は、追加のホストコンピューティングデバイス（明示的には示されていない）に接続する追加のＳＤＮスイッチ（明示的には示されていない）を安全に制御するために、ＳＤＮコントローラ１０２−１と同様に構成されることができる。
【００２９】
ＳＤＮネットワーク１００は、１つまたは複数のセキュリティ機器１０８もまた含む。前述したように、そのようなセキュリティ機器は、ファイヤウォール（ＦＷ）、ＤＰＩ、ＩＰＳおよび／またはＩＤＳ機能をＳＤＮネットワークに提供する。さらにまた、ＳＤＮネットワーク１００は自動セキュリティ管理モジュール１１０、１つまたは複数の一般アプリケーション１１２、ロードバランスモジュール１１４、管理者管理モジュール１１６、ネットワークセキュリティモニタ１１８、および１つまたは複数の他のサーバ１１９を含む。
【００３０】
ＳＤＮコントローラ１０２−１は、前述したセキュリティ機能のうちの１つまたは複数を提供するように構成される。そのような機能を提供するために、ＳＤＮコントローラ１０２−１は、ポリシー変換モジュール１２２、ポリシーモジュール１２４、ポリシーの特性属性モジュール１２６、ポリシー作成者の役割属性モジュール１２８、役割のセキュリティ特権レベル属性モジュール１３０、フローテーブルマネージャ１３２、フローテーブル１３４、規則同期モジュール１３６、ネットワークセキュリティモニタ支援モジュール１３８、認証と認可のモジュール１４０、完全性と秘密性のモジュール１４２、システムセキュリティ管理モジュール１４４、ログと監査のモジュール１４６、および、信頼される実行環境１４８を含む。
【００３１】
ポリシーモジュール１２４は、そのノースバウンドインタフェースから（すなわちモジュール１１０、１１２および１１４から）、およびその管理インタフェースから（すなわちモジュール１１６および１１８から）、１つまたは複数のポリシー（ネットワークポリシー、この場合はセキュリティポリシーを含む）を受信するように構成される。受け取ったポリシーが安全であることを保証するために、ポリシー作成者（例えば、自動セキュリティ管理モジュール１１０、一般アプリケーション１１２、ロードバランスモジュール１１４、および管理者管理モジュール１１６）はＳＤＮコントローラ１０２−１のモジュール１４０によって認証される。さらに、伝送でのこれらのポリシーに関してモジュール１４２によって秘密性と完全性のチェックが施される。
【００３２】
ポリシーの特性属性モジュール１２６は、ポリシーがＳＤＮコントローラ１０２−１からＳＤＮスイッチ１０４−１、１０４−２、および１０４−３にリアルタイムで送信されるか定期的に送信されるかを指定するように構成される。例えば、この属性は、緊急条件、一般条件、およびデフォルト条件を指定してもよい。緊急の属性は、このポリシーが遅延なくリアルタイムでスイッチに同期される必要があることを指定する。例えば、このポリシーは、セキュリティ機器１０８のファイヤウォールまたはＤＰＩ機能によって検出されたセキュリティ攻撃を阻止または緩和するためのセキュリティ対抗策であってもよい。
【００３３】
ポリシー作成者の役割属性モジュール１２８はポリシー作成者の役割を指定するように構成される。前述したように、ポリシー作成者は、自動セキュリティ管理モジュール１１０、１つまたは複数の一般アプリケーション１１２、ロードバランスモジュール１１４、管理者管理モジュール１１６、であってもよい。よって、作成者の役割属性は、セキュリティ管理者、一般管理者、ユーザ、またはゲストとして設定されてもよい。一例では、自動セキュリティ管理モジュール１１０の役割はセキュリティ管理者であり、ロードバランスモジュール１１４の役割は一般管理者であり、１つまたは複数の一般アプリケーション１１２の役割はユーザであり、１つまたは複数の第３者アプリケーション（明示的には示されていない）の役割はゲストである。
【００３４】
役割のセキュリティ特権レベル属性モジュール１３０はモジュール１２８によって各役割セットに与えられたセキュリティ特権レベルを指定するように構成される。例として前述したように、役割のセキュリティ特権レベルの属性は、Ｌ５を最高のセキュリティ特権レベル、Ｌ０を最低のセキュリティ特権レベルとするセキュリティ特権レベルＬ５、Ｌ４、Ｌ３、Ｌ２、Ｌ１およびＬ０のうちの１つに設定することができる。例示的一実施形態では、役割のセキュリティ特権レベルは以下：セキュリティ管理者−Ｌ５（最高）、一般管理者−Ｌ４、ユーザ−Ｌ２、およびゲスト−Ｌ１として設定することができる。高いセキュリティ特権レベルをもつ役割には、ＳＤＮコントローラにアクセスする権利がより多く与えられる。例えば、ゲストの役割をもつ作成者によって作成されたポリシーは、セキュリティ管理者の役割をもつ作成者によって作成されたポリシーによって置き換えられる。
【００３５】
ポリシー変換モジュール１２２で、セキュリティポリシーが新しいフロー規則に転換される。つまり、モジュール１２２は、ノースバウンドインタフェースおよび／または管理インタフェースから受け取ったポリシーを、下記に詳細に説明するように、ポリシーの特性、ポリシー作成者の役割、およびセキュリティ特権レベルの属性と組み合わせて新しいフロー規則に転換（変換）するように構成される。
【００３６】
フローテーブルマネージャ１３２は、フローテーブル１３４内のフロー項目の検索、追加、更新、および削除を管理するように構成される。フローテーブルマネージャ１３２は、新しいフロー規則がフローテーブル１３４に正しく挿入されたか確認する。例えば、ある指定されたデータフローについて、フローテーブルマネージャ１３２は、新しいフロー規則が、新しいフロー規則を挿入する前の古い（以前の）フロー規則と矛盾するかチェックする。矛盾する場合には、比較的高いセキュリティ特権レベルをもつ作成者によって設定された新しいフロー規則のみが、矛盾する、比較的低いセキュリティ特権レベルをもつ作成者によって設定された古いフロー規則と置き換わることを許可される。
【００３７】
フローテーブル１３４は、ＳＤＮスイッチ１０４−１、１０４−２、および１０４−３のためのフロー規則を格納する。
【００３８】
規則同期モジュール１３６は新しい規則を、モジュール１２６によって指定された属性に応じて定期的に、またはリアルタイムでＳＤＮスイッチ１０４−１、１０４−２、および１０４−３と同期させる。ＳＤＮコントローラ１０２−１と所与のＳＤＮスイッチとの間の通信のパフォーマンスを改善するために、「一般」および「デフォルト」の属性をもつフロー規則は定期的に同期される。しかし、「緊急」属性をもつフロー規則は、そのフロー規則がフローテーブルに挿入されると直ちにスイッチに送られる。
【００３９】
ネットワークセキュリティモニタ支援モジュール１３８は、管理者がＳＤＮネットワーク全体を監視するときに、特にセキュリティ問題に関して支援するように構成される。例えば、セキュリティ管理者が、ネットワークセキュリティモニタ１１８を通して指定されたデータフローのためのセキュリティポリシーに関する詳細を知りたいと仮定する。ネットワークセキュリティモニタ１１８がネットワークセキュリティモニタ支援モジュール１３８に要求を送信する。ネットワークセキュリティモニタ支援モジュール１３８は、フローテーブル１３４から関連情報（例えば、フロー規則、フロー規則ジェネレータなど）を取り込み、取り込んだ情報を分析してネットワークセキュリティモニタ１１８に応答する。ネットワークセキュリティモニタ１１８はレポートを生成し、そのレポートをセキュリティ管理者に対して表示する。
【００４０】
認証と認可のモジュール１４０は、ＳＤＮネットワーク１００のための相互認証、認証および認可の機構を提供するように構成される。例えば、モジュール１４０は：ＳＤＮコントローラ１０２−１とＳＤＮスイッチ１０４−１、１０４−２および１０４−３のそれぞれとの間のサウスバウンドインタフェースを介した相互認証、ＳＤＮコントローラ１０２−１と１つまたは複数の一般アプリケーション１１２との間のノースバウンドインタフェースを介した相互認証、ならびに、ＳＤＮコントローラ１０２−１と管理者管理モジュール１１６およびネットワークセキュリティモニタ１１８との間の管理インタフェースを介した相互認証を提供する。認証機構は、ユーザ名／パスワード、事前共有キー、証明書などの検証を含むが、これらに限定されない。認可機構は、ブラックリスト／ホワイトリスト、アクセス制御リスト（ＡＣＬ）、および役割に基づくアクセス制御（ＲＢＡＣ）に対する検証を含むが、これらに限定されない。
【００４１】
完全性と秘密性のモジュール１４２は、暗号化／復号、デジタル署名、トランスポート層セキュリティ（ＴＬＳ）、およびインターネットプロトコルセキュリティ（ＩＰｓｅｃ）を含むがこれらに限定されない機能を提供するように構成される。
【００４２】
システムセキュリティ管理モジュール１４４は、ソフトウェアパッチのインストール、サービス拒否（ＤｏＳ）攻撃の検出と回避、ならびにアンチウィルスおよびマルウェア検出と回避を含むがこれらに限定されない機能を提供するように構成される。
【００４３】
ログと監査のモジュール１４６は、管理者の活動（例えば、ログイン活動、ファイルアクセス、コマンド実行など）の捕捉およびセキュリティポリシー作成者の活動（例えば、セキュリティポリシー、作成者、作成者の役割などの設定時刻）の捕捉を含むがこれらに限定されない機能を提供するように構成される。
【００４４】
信頼される実行環境１４８は、機密データ（例えば、ＳＤＮコントローラのオペレーティングシステム、ソフトウェア、フローテーブル、セキュリティポリシーの特性、セキュリティポリシー作成者の役割、セキュリティポリシー作成者の役割のセキュリティ特権レベル、認証クレデンシャル、および認可ポリシー）が、信頼される環境で確実に格納、処理および保護されるようにするように構成される。
【００４５】
図１の状況で前述されたＳＤＮネットワーク１００の例示的なセキュリティアーキテクチャを仮定して、次に、実施形態によって対処される４つのセキュリティシナリオについて詳細に説明する。
【００４６】
シナリオ１：ＳＤＮコントローラ１０２−１が、どのようにしてポリシーを新しい規則に変換し、次にＳＤＮスイッチ１０４−１、１０４−２、および１０４−３に同期するか。ホスト＿１  １０６−１からホスト＿２  １０６−２へのデータフローがＯｐｅｎＦｌｏｗスイッチ＿２  １０４−２を通して進み、データフローがコピーされてからセキュリティ機器１０８（例えばファイヤウォール）へデータ検出のために転送されるというポリシーを自動セキュリティ管理モジュール１１０が設定すると仮定する。これは、バイパスなしのセキュリティポリシーである。ＳＤＮネットワーク１００に実装される、このポリシーの手順は下記のとおりである：
【００４７】
１．１）自動セキュリティ管理モジュール１１０がポリシーをＳＤＮコントローラ１０２−１に送信する前に、両者間で相互認証が行われる。認証機構は下記：ａ）証明書、ｂ）事前共有キー、ｃ）ユーザ名／パスワード、およびｄ）物理層セキュリティ保護のうちの１つまたは複数であってもよい。相互認証に成功した後に、自動セキュリティ管理モジュール１１０とＳＤＮコントローラ１０２−１の間のセッションキーが取得される。
【００４８】
１．２）自動セキュリティ管理モジュール１１０は、このポリシーに秘密性（暗号化）および完全性保護（メッセージ／データ署名）をもたせてＳＤＮコントローラ１０２−１に送信する。上記のステップ１．１）で取得されたセッションキーから、秘密性のキーおよび完全性のキーが生成される。
【００４９】
１．３）自動セキュリティ管理モジュール１１０が行うのと同じ方法で生成されたキーを使用してデータ完全性の検証および復号を行った後、ＳＤＮコントローラ１０２−１は自動セキュリティ管理モジュール１１０からこのポリシーを受け取る。ＳＤＮコントローラ１０２−１は、自動セキュリティ管理モジュール１１０がＳＤＮネットワーク１００のためにポリシーを設定する権利を有するか（つまり、モジュール１１０が認可されているか）チェックする。例えば、自動セキュリティ管理モジュール１１０がブラックリストに入っているか、またはポリシーを設定するためのそのような権利を有さない場合には、このポリシーは破棄される。ＳＤＮコントローラとポリシー作成者の間の通信チャネルが安全な通信チャネルであることが知られている場合には認証、認可、完全性検証、および／または秘密性検証が行われないことが、理解される。
【００５０】
１．４）ＳＤＮコントローラ１０２−１がこのポリシーを、下記の追加属性をもつフロー規則に変換する：
−  ポリシーの特性：リアルタイム（このポリシーがいかなる遅延もなくネットワークに適用されなければならないことを意味する）
−  ポリシー作成者の役割：セキュリティ管理者、および
−  役割のセキュリティ特権化レベル：Ｌ５（最高レベル）
【００５１】
よって、ＳＤＮコントローラ１０２−１内の現在のフローテーブル書式が、少なくとも上記の３つの属性を反映するように拡張される。ただし、ＳＤＮスイッチ１０４−１、１０４−２および１０４−３のいずれのフローテーブルでも書式は変更されない。
【００５２】
１．５）フローテーブルマネージャ１３２がトリガされて、指定されたデータフローに対して既存または利用可能なフロー規則が現在のフローテーブル１３４内にあるかチェックする（例えば、発信元インターネットプロトコル（ＩＰ）アドレス／ポートおよび宛先ＩＰアドレス／ポートによって識別される）。ここでは、ホスト＿１  １０６−１からホスト＿２  １０６−２へのデータフローのためのフロー規則が存在していないと仮定される。フローテーブルマネージャ１３２は、このフロー規則をフローテーブル１３４に追加する。
【００５３】
１．６）規則シンクロナイザモジュール１３６がトリガされて、このフロー規則を関連ＳＤＮスイッチ１０４−１、１０４−２、および／または１０４−３にいかなる遅延もなく配信する（このフロー規則の特性がリアルタイムと設定されているため）。新しいフロー規則を受け取る前に、各ＳＤＮスイッチはＳＤＮコントローラ１０２−１と相互に認証する。認証機構は下記：ａ）証明書、ｂ）事前共有キー、ｃ）ユーザ名／パスワード、およびｄ）物理層セキュリティ保護のうちの１つまたは複数であってもよい。相互認証に成功した後に、各ＳＤＮスイッチとＳＤＮコントローラの間のセッションキーが取得される。このセッションキーを使用して、ＳＤＮコントローラから各ＳＤＮスイッチへ伝送される新しいフロー規則に秘密性と完全性の保護が提供される。ＳＤＮコントローラとＳＤＮスイッチの間の通信チャネルが安全な通信チャネルであることが知られている場合には認証、認可、完全性検証、および／または秘密性検証が行われないことが、理解される。
【００５４】
１．７）ＳＤＮコントローラ１０２−１が行うのと同じ方法で生成されたキーを使用してデータ完全性のチェックおよび復号を行った後に、各ＳＤＮスイッチはこの新しいフロー規則を取得して、ＳＤＮスイッチのフローテーブルに追加する。
【００５５】
次に、自動セキュリティ管理モジュール１１０によって設定された、この新しいポリシーセットに従って、ホスト＿１  １０６−１からホスト＿２  １０６−２へのデータフローが送信される。
【００５６】
シナリオ２：ＳＤＮコントローラ１０２−１は、古いフロー規則と矛盾する新しいフロー規則をどのように扱うか。ＯｐｅｎＦｌｏｗスイッチ＿１  １０４−１からＯｐｅｎＦｌｏｗスイッチ＿３  １０４−３への経路が短いことを理由として、ホスト＿１  １０６−１からホスト＿２  １０６−２へのデータフローが、より高いサービス品質（ＱｏＳ）を求めてこの経路を進むというポリシーを、一般アプリケーション１１２が設定すると仮定する。ＳＤＮネットワーク１００に実装される、このポリシーの手順は下記のとおりである：
【００５７】
２．１）シナリオ１のステップ１．１）と同じ。
【００５８】
２．２）シナリオ１のステップ１．２）と同じ。
【００５９】
２．３）シナリオ１のステップ１．３）と同じ。
【００６０】
２．４）ＳＤＮコントローラ１０２−１がこのポリシーを、下記の追加属性をもつ新しいフロー規則（第２の新しいフロー規則と呼ばれる）に変換する：
−  ポリシーの特性：リアルタイム
−  ポリシー作成者の役割：ユーザ、および
−  役割のセキュリティ特権化レベル：Ｌ２
【００６１】
２．５）フローテーブルマネージャ１３２がトリガされて、指定されたデータフロー（ホスト＿１からホスト＿２へのデータフロー）に対して既存または利用可能なフロー規則が現在のフローテーブル１３４内にあるかチェックする。まず、フローテーブルマネージャ１３２は、指定されたデータフロー（ホスト＿１からホスト＿２へのデータフロー）に対して既存のフロー規則（シナリオ１で生成された第１の新しいフロー規則）がフローテーブル１３４内にあるかどうか決定する。次に、フローテーブルマネージャ１３２は、第１の新しいフロー規則のセキュリティ特権レベルが第２の新しいフロー規則のものよりも高いかチェックし、そのように決定する。よって、第２の新しいフロー規則は破棄される。ＳＤＮコントローラ１０２−１から一般アプリケーション１１２に故障通知が送信される。
【００６２】
したがって、自動セキュリティ管理により設定されたバイパスなしのセキュリティポリシーは、一般アプリケーションにより設定されたＱｏＳポリシーで上書きされない。
【００６３】
シナリオ３：ＳＤＮコントローラ１０２−１は、どのようにして自動的かつ即座に新しいセキュリティ攻撃に反応するか。まず図２の方法２００を参照すると、この手順は下記のとおりに説明される：
【００６４】
１）ステップ２０２で、１つまたは複数のセキュリティ機器１０８がセキュリティインシデントを検出して、自動セキュリティ管理モジュール１１０に報告する。
【００６５】
２）ステップ２０４で、自動セキュリティ管理モジュール１１０がインシデント報告を受け取り、分析する。次に、自動セキュリティ管理モジュール１１０は、その分析から学んだ知識に基づいて対抗策およびセキュリティポリシーを生成する。これらのセキュリティポリシーがＳＤＮコントローラ１０２−１に送信される。
【００６６】
３）ステップ２０４で、ＳＤＮコントローラ１０２−１がこれらのセキュリティポリシーを受け取り、新しいフロー規則に変換する。これらのフロー規則は、ＳＤＮスイッチ２０６−１、２０６−２、…、２０６−ｎに配信される。
【００６７】
４）ＳＤＮスイッチ２０６−１、２０６−２、…、２０６−ｎは、ステップ１で前述したセキュリティインシデントまたは脅威を緩和または阻止できるように、新しいフロー規則に従ってフローを処理する（転送、破棄、またはＳＤＮコントローラに報告）。
【００６８】
シナリオ４：パケットスキャン検出。管理者管理モジュール１１６が、ホスト＿１からホスト＿２へのフローの連続したｎ個の各パケットから第１の連続したｍ個のパケットがコピーされて、データ検出のためにセキュリティ機器１０８（例えば、ＦＷ、ＤＰＩ、ＩＰＳ、ＩＤＳ）の１つまたは複数に転送されるというポリシーを作成すると仮定する。ＳＤＮネットワーク１００に実装される、このポリシーの手順は下記のとおりである：
【００６９】
４．１）シナリオ１のステップ１．１）と同じ。
【００７０】
４．２）シナリオ１のステップ１．２）と同じ。
【００７１】
４．３）シナリオ１のステップ１．３）と同じ。
【００７２】
４．４）ＳＤＮコントローラ１０２−１がこのポリシーを、下記の追加属性をもつ新しいフロー規則（第２の新しいフロー規則と呼ばれる）に変換する：
−  ポリシーの特性：定期的、
−  ポリシー作成者の役割：一般管理者
−  役割のセキュリティ特権化レベル：Ｌ４、
−  条件：ホスト＿１からホスト＿２へのデータフロー
−  パターン：フローの連続したｎ個の各パケットから連続したｍ個のパケットを選択すること
【００７３】
よって、このシナリオ４では、ＳＤＮコントローラ１０２−１内の現在のフローテーブル書式が、少なくとも上記の５つの属性を反映するように拡張される。最後の属性、すなわちパターンは、ＳＤＮスイッチ内のフローテーブルの書式に反映されてもよい。
【００７４】
さらに、上記の条件を満たすフローには、新しいアクション（ＯＦＰＡＴ＿ＤＥＴＥＣＴＩＯＮ）が割り当てられる。
【００７５】
４．５）シナリオ１のステップ１．５）と同じ。
【００７６】
４．６）シナリオ１のステップ１．６）と同じだが、このポリシーの特性がリアルタイムではなく定期的である点だけが異なる。
【００７７】
４．７）シナリオ１のステップ１．７）と同じ。
【００７８】
例示的一実施形態では、いくつかの変更がＳＤＮスイッチに実装されてもよい。例えば、パケット数を計数するためにカウンタが使用され、フローテーブルの書式にパターン属性が追加される。
【００７９】
例示的一実施形態では、１つまたは複数の実施形態を実装するために、その開示が引用によりその全体が本明細書に組み込まれているＯＮＦ仕様「ＯｐｅｎＦｌｏｗＳｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｖｅｒｓｉｏｎ  １．４」に、いくつかの変更が加えられてもよい。より具体的には、そのＯＮＦ仕様のパラグラフ５．１２および７．２．４が下記で説明するとおりに修正されてもよい。
【００８０】
セクション「５．１２  Ａｃｔｉｏｎｓ」には、下記のとおりのオプションのアクションが追加されてもよい：
オプションのアクション：検出アクションは、パケットを指定されたＯｐｅｎＦｌｏｗポートに転送し、次いでセキュリティ機器（例えば、ＦＷ、ＩＤＰ、ＤＰＩなど）に転送する。
【００８１】
セクション「７．２．４  Ａｃｔｉｏｎ  Ｓｔｒｕｃｔｕｒｅｓ」では、アクション構造体が下記のとおりに変更されてもよい：
【００８２】
【表１】
2019205192.tif 000003
【００８３】
新しいアクション、すなわち検出アクションは、下記の構造体およびフィールドを使用する：
【００８４】
【表２】
2019205192.tif 000004
【００８５】
ここで図３を参照すると、１つまたは複数の実施形態による、ＳＤＮネットワークおよびセキュリティアーキテクチャ（例えば、図１の１００）が実装された処理プラットフォームが示されている。この実施形態の処理プラットフォーム３００は、３０２−１、３０２−２、３０２−３、…、３０２−Ｐと印された複数の処理デバイスを含み、これらはネットワーク３０４を介して相互に通信する。したがって、ＳＤＮネットワーク１００の構成要素および／またはモジュール（例えば、ＳＤＮコントローラ、ＳＤＮスイッチ、ホストコンピューティングデバイス、セキュリティ機器、および様々なモジュール）のうちの１つまたは複数はそれぞれ、１つまたは複数のコンピュータ上または他の処理プラットフォーム要素上で実行してもよく、そのそれぞれが、本明細書でより一般的に「処理デバイス」と呼ばれているものの例と考えられてもよい。図３に示されるように、そのようなデバイスは一般に、少なくとも１つのプロセッサおよび関連するメモリを含み、本明細書に記載されるシステムおよび方法論の特徴をインスタンス化および／または制御するための１つまたは複数の機能モジュールを実装する。複数の要素またはモジュールが単一の処理デバイスによって所与の実施形態に実装されてもよい。
【００８６】
処理プラットフォーム３００内の処理デバイス３０２−１は、メモリ３１２に結合されたプロセッサ３０１を含む。プロセッサ３１０は、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または、他のタイプの処理回路、ならびにそのような回路要素の一部または組合せを含んでもよい。本明細書に開示されるシステムの構成要素は、少なくとも部分的には、メモリに記憶され、プロセッサ３１０などの処理デバイスのプロセッサによって実行される、１つまたは複数のソフトウェアプログラムの形で実装されることができる。そのようなプログラムコードを自身の中に具体化したメモリ３１２（または他のストレージデバイス）は、本明細書でより一般的に、プロセッサ可読記憶媒体と呼ばれるものの一例である。そのようなプロセッサ可読記憶媒体を含む製造品は、実施形態と考えられる。所与のそのような製造品は、例えば、ストレージディスク、ストレージアレイ、またはメモリを含む集積回路のストレージデバイスを含んでもよい。本明細書で使用されるとき、「製造品」という用語は、一時的な伝播信号を除外すると理解されなければならない。
【００８７】
さらに、メモリ３１２は、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）または、他のタイプのメモリなどの電子メモリを任意の組合せで含んでもよい。１つまたは複数のソフトウェアプログラムは処理デバイス３０２−１などの処理デバイスによって実行されると、そのデバイスに、システム／方法３００の構成要素／ステップのうちの１つまたは複数に関連する機能を実行させる。当業者は、本明細書に提供される教示があれば、そのようなソフトウェアを容易に実装することができるであろう。プロセッサ可読記憶媒体を具体化する実施形態の他の例には、例えば、光ディスクまたは磁気ディスクが含まれ得る。
【００８８】
処理デバイス３０２−１にはまた、ネットワークインタフェース回路３１４も含まれ、これを使用して処理デバイスとネットワーク３０４または他のシステム構成要素とのインタフェースがとられる。そのような回路は、当技術分野でよく知られているタイプの従来型トランシーバを含んでもよい。
【００８９】
処理プラットフォーム３００の他の処理デバイス３０２は、図に示される処理デバイス３０２−１のための様式と同様に構成されると仮定される。
【００９０】
図３に示される処理プラットフォーム３００は、バッチ処理システム、並列処理システム、物理マシン、仮想マシン、仮想スイッチ、ストレージボリューム、論理ユニットなどの、知られている追加構成要素を含んでもよい。ここでも、図３に示される特定の処理プラットフォームは単に例として示されており、図１のＳＤＮネットワーク１００は、追加または代替の処理プラットフォーム、ならびに多数の独立した処理プラットフォームを任意の組合せで含んでもよい。
【００９１】
また、サーバ、コンピュータ、ストレージデバイスまたは他の構成要素の、他の多数の構成が可能である。そのような構成要素は、広域ネットワーク（ＷＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、衛星ネットワーク、電話もしくはケーブルネットワーク、ストレージネットワーク、集中型ネットワーク、または、それらおよび他のタイプのネットワークの様々な部分もしくは組合せなどの、任意のタイプのネットワークを介して、システムの他の要素と通信することができる。
【００９２】
さらに、図３の処理プラットフォーム３００がハイパーバイザを使用して実装された仮想マシン（ＶＭ）を含むことができることが理解される。ハイパーバイザは、本明細書でより一般的に「仮想化インフラストラクチャ」と呼ばれるものの一例である。ハイパーバイザは物理インフラストラクチャ上で実行する。処理プラットフォーム３００はまた、それぞれが各自の物理インフラストラクチャ上で実行している複数のハイパーバイザを含んでもよい。知られているように、ＶＭは、１つまたは複数の物理処理要素（例えば、サーバ、コンピュータ、処理デバイス）上でインスタンス化されてもよい論理処理要素である。つまり、ＶＭは一般に、物理マシンのようにプログラムを実行する、マシンのソフトウェア実装（すなわちコンピュータ）を指す。よって、異なるＶＭは同一の物理コンピュータ上で複数の異なるオペレーティングシステムおよび複数のアプリケーションを実行することができる。仮想化はハイパーバイザによって実装され、ハイパーバイザは、物理コンピュータのハードウェアリソースを動的かつ透過的に割り振るために、コンピュータハードウェアの上に直接挿入される。ハイパーバイザは、複数のオペレーティングシステムが単一の物理コンピュータ上で同時に実行し、相互にハードウェアリソースを共有することができるようにはからう。
【００９３】
本明細書で、特定の例示的実施形態は特定の通信プロトコルを利用する通信ネットワークを背景として説明されているが、他のタイプのネットワークが他の実施形態で使用されることもできる。したがって、上述したように、本明細書で使用されるとき、「ネットワーク」という用語は、広義に解釈されると意図される。さらに、前述の実施形態が例示のみを目的とし、決して限定として解釈されてはならないことが強調されるべきである。他の実施形態は、ロードバランシング機能を実装するために、ネットワーク、デバイスおよびモジュールの異なるタイプの構成、ならびに、代替の通信プロトコル、プロセスステップおよび操作を使用してもよい。ネットワークノードが通信する特定の様式は、他の実施形態では変更され得る。また、例示的実施形態を説明する上で立てられた特定の仮定が本発明の必要条件として解釈されてはならないことが理解されるべきである。本発明は、これらの特定の仮定が適用されない他の実施形態に実装されることができる。添付の特許請求の範囲内にある、これらおよび他の多数の代替実施形態は当業者には容易に明らかになる。
【図１】
2019205192.tif 000005
【図２】
2019205192.tif 000006
【図３】
2019205192.tif 000007