特許第6720211号(P6720211)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インテル コーポレイションの特許一覧

特許6720211仮想ネットワーク機能の安全なブートストラップ技術
<>
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000002
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000003
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000004
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000005
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000006
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000007
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000008
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000009
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000010
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000011
  • 特許6720211-仮想ネットワーク機能の安全なブートストラップ技術 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6720211
(24)【登録日】2020年6月19日
(45)【発行日】2020年7月8日
(54)【発明の名称】仮想ネットワーク機能の安全なブートストラップ技術
(51)【国際特許分類】
   H04L 12/70 20130101AFI20200629BHJP
【FI】
   H04L12/70 D
【請求項の数】24
【全頁数】39
(21)【出願番号】特願2017-556687(P2017-556687)
(86)(22)【出願日】2016年4月11日
(65)【公表番号】特表2018-520538(P2018-520538A)
(43)【公表日】2018年7月26日
(86)【国際出願番号】US2016026888
(87)【国際公開番号】WO2016182656
(87)【国際公開日】20161117
【審査請求日】2019年4月1日
(31)【優先権主張番号】14/709,170
(32)【優先日】2015年5月11日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】593096712
【氏名又は名称】インテル コーポレイション
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】スード,カピル
(72)【発明者】
【氏名】ウォーカー,ジェシ
【審査官】 中川 幸洋
(56)【参考文献】
【文献】 米国特許出願公開第2012/0265976(US,A1)
【文献】 ETSI GS NFV-SEC 003 V1.1.1 Network Functions Virtualisation(NFV); NFV Security; Security and Trust Guidance,GROUP SPECIFICATION,ETSI,2014年12月,URL,http://www.etsi.org/deliver/etsi_gs/NFV-SEC/001_099/003/01.01.01_60/gs_NFV-SEC003v010101p.pdf
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/70
(57)【特許請求の範囲】
【請求項1】
想ネットワーク機能をブートストラップする仮想ネットワーク機能(VNF)ブートストラップサービス(VBS)エージェントを含むVNFインスタンスを有するネットワーク機能仮想化(NFV)ネットワークシステムであって、
一以上のハードウェアプロセッサと、
複数の命令を記憶した一以上のデータ記憶デバイスであって、前記複数の命令は、前記一以上のハードウェアプロセッサにより実行されると、前記VBSエージェントに、
前記NFVネットワークシステムのVBSに開始メッセージを送信し、ここで前記VBSは前記VBSエージェントに通信可能に結合され、前記開始メッセージは前記VBSエージェントがインスタンス化されるとの情報を提供し、
前記開始メッセージの送信に応答して前記VBSから開始応答メッセージを受信し、
トラステッド実行環境(TEE)により前記TEEの秘密鍵を用いて署名されたセキュリティクォートを読み出し、前記TEEは前記VNFインスタンスがインスタンス化されるプラットフォームにあり、
前記開始応答メッセージの受信に応答して前記VBSに登録要求メッセージを送信し、ここで前記登録要求メッセージは前記VBSエージェントを前記登録要求メッセージの送信者として認証するのに使用し得る前記セキュリティクォートと、前記VBSにセキュリティ証明を要求するセキュリティ証明要求とを含み、
前記VBSから登録応答メッセージを受信し、ここで前記登録応答メッセージは前記セキュリティクォートと前記セキュリティ証明要求とが前記VBSにより検証されたことを示すセキュリティ証明を含む、NVFネットワークシステム。
【請求項2】
前記開始メッセージは第1ノンスを含み、
前記開始応答メッセージは前記VBSの秘密鍵を用いて前記VBSにより署名され、前記第1ノンスと、前記VBSにより生成された第2ノンスとを含み、
前記セキュリティ証明要求は前記VNFインスタンスにより前記VNFインスタンスの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VNFインスタンスの公開鍵とを含み、
前記登録応答メッセージは、前記VBSにより前記VBSの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VBSエージェントを管理するNFVネットワークシステムのVNFマネージャの識別子と、ホワイトリストされたVNFマネージャのセットと、前記VBSにより認証されたVNFコンポーネント(VMFC)のセットと、ユニークなVNFインスタンス識別子と、1つ以上のポリシーとをさらに含み、
前記1つ以上のポリシーは前記VBSエージェントが機能を実行するのに使用できる命令を含む、
請求項1に記載のNFVネットワークシステム
【請求項3】
前記複数の命令は、前記一以上のハードウェアプロセッサにより実行されると、前記VBSエージェントに、(i)前記NFVネットワークシステムのNFVオーケストレータからインスタンス化トリガーを受け取り、(ii)前記インスタンス化トリガーの受信に応答して前記VBSエージェントを初期化し、ここで前記開始メッセージの送信は前記インスタンス化トリガーの受信に応答した前記開始メッセージの送信を含む、請求項1に記載のNFVネットワークシステム
【請求項4】
前記VBSエージェントの初期化は、前記VNFインスタンスの公開/秘密鍵ペアの生成を含む、
請求項に記載のNFVネットワークシステム
【請求項5】
前記複数の命令は、前記一以上のハードウェアプロセッサにより実行されると、前記VBSエージェントに、(i)前記セキュリティ証明要求を生成し、(ii)前記VBSからの前記開始応答メッセージの受信に応答して前記VNFインスタンスの前記秘密鍵を用いて前記セキュリティ証明要求に署名させる
請求項4に記載のNFVネットワークシステム
【請求項6】
前記複数の命令は、前記一以上のハードウェアプロセッサにより実行されると、前記VBSエージェントに、前記セキュリティ証明の受信に応答して、前記VNFインスタンスを起動し、前記VNFインスタンスにより受け取られるネットワークトラフィックをアクティブに処理させる
請求項1に記載のNFVネットワークシステム
【請求項7】
前記複数の命令は、前記一以上のハードウェアプロセッサにより実行されると、前記VBSエージェントに、前記FVネットワークシステムのVNFマネージャに情報を送信し、前記情報は前記VNFマネージャに、(i)前記VNFインスタンスがアクティブであること、及び(ii)前記VNFインスタンスの構成は前記VNFマネージャにより管理されることを示し、ここで前記情報は、前記VNFインスタンスにユニークであり、前記VNFマネージャにおいて認証されたVNFインスタンスのホワイトリストに前記VNFインスタンスを追加するのに使用できるVNFインスタンス識別子を含む、請求項に記載のNFVネットワークシステム
【請求項8】
前記VBSからの前記登録応答メッセージの受け取りはさらに、前記VBSエージェントに通信可能に結合されたNFVネットワークシステムのVNFマネージャの識別子の受け取りを含む、請求項1に記載のNFVネットワークシステム
【請求項9】
前記VNFマネージャの識別子の受け取りは、インターネットプロトコル(IP)アドレス、ドメインネームサーバ(DNS)、完全修飾ドメイン名(FQDN)、ユニフォームリソースロケータ(URL)のうち少なくとも1つの受け取りを含む、
請求項に記載のNFVネットワークシステム
【請求項10】
前記複数の命令は、前記一以上のハードウェアプロセッサにより実行されると、前記VBSエージェントに、前記VNFマネージャの識別子の受け取りに応答して前記VNFマネージャの識別子を用いて前記VNFマネージャに接続させる、請求項8に記載のNFVネットワークシステム
【請求項11】
前記複数の命令は、前記一以上のハードウェアプロセッサにより実行されると、前記VBSエージェントに、前記VNFマネージャの識別子の受け取りに応答して、前記VNFマネージャにVNFライセンス情報を送信させ、前記VNFライセンス情報は、前記VNFインスタンスに関連するライセンスの使用をトラッキングするのに使用できる情報を含む、請求項9に記載のNFVネットワークシステム
【請求項12】
ネットワーク機能仮想化(NFV)ネットワークシステムにおける複数の仮想ネットワーク機能をブートストラップする方法であって、
前記NFVネットワークシステムのVNFインスタンスのVNFブートストラップサービス(VBS)エージェントが、前記VBSエージェントに通信可能に結合されたNFVネットワークシステムのVBSに開始メッセージを送信するステップであって、前記開始メッセージは前記VBSエージェントがインスタンス化されたとの情報を提供する、ステップと、
前記VBSエージェントが、前記開始メッセージに応答して、前記VBSから開始応答メッセージを受け取るステップと、
前記VBSエージェントが、トラステッド実行環境(TEE)により前記TEEの秘密鍵を用いて署名されたセキュリティクォートを読み出し、前記TEEは前記VNFインスタンスがインスタンス化されるプラットフォームにあり、
前記VBSエージェントが、前記開始応答メッセージの受信に応答して前記VBSに登録要求メッセージを送信するステップであって、前記登録要求メッセージは前記VBSエージェントを前記登録要求メッセージの送信者として認証するのに使用し得る前記セキュリティクォートと、前記VBSにセキュリティ証明を要求するセキュリティ証明要求とを含む、ステップと、
前記VBSエージェントが、前記VBSから登録応答メッセージを受け取るステップであって、前記登録応答メッセージは前記セキュリティクォートと前記セキュリティ証明要求とがそれぞれ前記VBSにより検証されたことを示すセキュリティ証明を含む、
方法。
【請求項13】
前記開始メッセージを送信するステップは第1ノンスを送信するステップを含み、
前記開始応答メッセージを受け取るステップは、前記VBSの秘密鍵を用いて前記VBSにより署名され、前記第1ノンスと、前記VBSにより生成された第2ノンスとを含む前記開始応答メッセージを受け取るステップを含み、
前記セキュリティ証明要求を送信するステップは、前記VNFインスタンスにより前記VNFインスタンスの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VNFインスタンスの公開鍵とを含む前記セキュリティ証明要求を送信するステップを含み、
前記登録応答メッセージを受け取るステップは、前記VBSにより前記VBSの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VBSエージェントを管理するNFVネットワークシステムのVNFマネージャの識別子と、ホワイトリストされたVNFマネージャのセットと、前記VBSにより認証されたVNFコンポーネント(VMFC)のセットと、ユニークなVNFインスタンス識別子と、1つ以上のポリシーとをさらに含む前記登録応答メッセージを受け取るステップを含み、
前記1つ以上のポリシーは前記VBSエージェントが機能を実行するのに使用できる命令を含む、
請求項12に記載の方法。
【請求項14】
前記VBSエージェントが、前記NFVネットワークシステムのNFVオーケストレータからインスタンス化トリガーを受け取るステップと、
前記インスタンス化トリガーの受け取りに応答して前記VBSエージェントを初期化するステップとをさらに含み、
前記開始メッセージを送信するステップは、前記インスタンス化トリガーの受け取りに応答して前記開始メッセージを送信するステップを含む、
請求項12に記載の方法。
【請求項15】
前記VBSエージェントを初期化するステップは、(i)公開/秘密鍵ペアを生成するステップであって、前記VNFインスタンスの公開/秘密鍵ペアは公開鍵と秘密鍵とを含む、ステップを含む、請求項14に記載の方法。
【請求項16】
前記セキュリティ証明要求を生成するステップと、
前記VBSからの前記開始応答メッセージの受信に応答して前記VNFインスタンスの前記秘密鍵を用いて前記セキュリティ証明要求に署名するステップとをさらに含む、
請求項14に記載の方法。
【請求項17】
前記セキュリティ証明の受け取りに応答して、前記VNFインスタンスを起動して、前記VNFインスタンスにより受け取られたネットワークトラフィックをアクティブに処理するステップをさらに含む、請求項12に記載の方法。
【請求項18】
前記NFVネットワークシステムのVNFマネージャに、(i)前記VNFインスタンスがアクティブであること、及び(ii)前記VNFインスタンスの構成が前記VNFマネージャにより管理されることを前記VNFマネージャに示す情報を送信するステップであって、前記情報は、前記VNFインスタンスに対してユニークであり、前記VNFマネージャにおいて前記VNFインスタンスを認証されたVNFインスタンスのホワイトリストに追加するのち使用できるVNFインスタンス識別子を含む、ステップをさらに含む、
請求項17に記載の方法。
【請求項19】
前記VBSから前記登録応答メッセージを受け取るステップはさらに、前記VBSエージェントに通信可能に結合されたNFVネットワークシステムのVNFマネージャの識別子を受け取るステップを含む、請求項12に記載の方法。
【請求項20】
前記VNFマネージャの識別子の受け取りに応答して、前記VNFマネージャの識別子を用いて、前記VNFマネージャに接続するステップをさらに含む、
請求項19に記載の方法。
【請求項21】
前記VNFマネージャの識別子の受け取りに応答して、前記VNFマネージャにVNFライセンス情報を送信するステップであって、前記VNFライセンス情報は、前記VNFインスタンスに関連するライセンスの使用をトラッキングするのに使用できる情報を含む、ステップをさらに含む、請求項19に記載の方法。
【請求項22】
計算装置であって、
プロセッサと、
前記プロセッサにより実行されたとき、前記プロセッサに、請求項12ないし21いずれか一項に記載の方法を実行させる複数の命令を格納したメモリとを有する、
計算装置。
【請求項23】
実行されると、計算装置に請求項12ないし21いずれか一項に記載の方法を実行させるコンピュータプログラム。
【請求項24】
請求項23に記載のコンピュータプログラムを記憶した1つ以上の機械可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願への相互参照
本願は、2015年5月11日出願の米国特許出願第14/709,170号(発明の名称「TECHNOLOGIES FOR SECURE BOOTSTRAPPING OF VIRTUAL NETWORK FUNCTIONS」)の優先権を主張するものである。
【背景技術】
【0002】
ネットワークオペレータおよびサービスプロバイダは、一般的には、様々なネットワーク仮想化技術に依存して、高性能計算(HPC)環境およびクラウド計算環境などの複雑な大規模計算環境を管理する。たとえば、ネットワークオペレータおよびサービスプロバイダーネットワークは、ネットワーク機能仮想化(NFV)展開に依存して、ネットワークサービス(例えば、ファイアウォールサービス、ネットワークアドレス変換(NAT)サービス、ロードバランシングサービス、DPI(Deep Packet Inspection)サービス、TCP(Transmission Control Protocol)最適化サービスなど)を展開する。このようなNFV展開は、一般的に、NFVインフラストラクチャを使用して様々な仮想マシン(VM)及び/又はコンテナ(例えばコモディティサーバにおけるもの)を編成し、ネットワークトラフィック上で一般に仮想ネットワーク機能(VNF)と呼ばれる仮想化ネットワークサービスを実行し、さまざまなVM及び/又はコンテナにまたがるネットワークトラフィックを管理する。
【0003】
従来の非仮想化展開とは異なり、仮想化された展開は、ネットワーク機能を基盤となるハードウェアから切り離すため、ネットワーク機能およびサービスは、高度に動的で汎用プロセッサを備えた市販のサーバで実行できるものとなる。このように、VNFは、ネットワークトラフィック上で実行される具体的な機能またはネットワークサービスに基づいて、必要に応じてスケールイン/アウトすることができる。さらに、VNFは、加入者の需要に応じて、地理的エリアに、ホスティングされたインフラストラクチャなどに展開することができる。
【図面の簡単な説明】
【0004】
ここで説明するコンセプトを、添付した図面において、限定ではなく実施例により説明する。説明を単純かつ明確にするため、図に示した要素は必ずしもスケール通りには描いていない。適当であれば、対応または類似する要素を示すため、複数の図面で同じ参照レベルを用いた。
【0005】
図1】NFVインフラストラクチャの1つ以上の計算ノードを含むネットワーク機能仮想化(NFV)ネットワークアーキテクチャにおけるネットワーク通信を処理するシステムの少なくとも1つの実施形態を示す簡略化したブロック図である。
【0006】
図2図1のシステムの計算ノードの1つの少なくとも一実施形態を示す簡略化したブロック図である。
【0007】
図3図1のシステムのエンドポイント装置の少なくとも一実施形態を示す簡略化したブロック図である。
【0008】
図4図1のシステムのNFVネットワークアーキテクチャの少なくとも一実施形態を示す簡略化したブロック図である。
【0009】
図5図1図4のNFVセキュリティサービスコントローラの環境の少なくとも一実施形態を示す簡略化したブロック図である。
【0010】
図6図4のNFVネットワークアーキテクチャの仮想ネットワーク機能(VNF)インスタンスの環境の少なくとも一実施形態を示す簡略化ブロック図である。
【0011】
図7図5のNFVセキュリティサービスにより実行され得るセキュアVNFブートストラップを初期化する方法の少なくとも一実施形態を示す簡略化したフロー図である。
【0012】
図8図4のNFVネットワークアーキテクチャのVNFインスタンスの1つを安全にブートストラップする通信フローの少なくとも一実施形態を示す簡略化したフロー図である。
【0013】
図9図6のVNFインスタンスのVNFブートストラップサービス(VBS)により実行し得るセキュアVNFブートストラップキャプチャプロトコルを実行する方法の少なくとも一実施形態を示す簡略化したフロー図である。
【0014】
図10図4のNFVネットワークアーキテクチャのVNFインスタンスの1つにおいてセキュアVNFブートストラップキャプチャプロトコルを実行する通信フローの少なくとも一実施形態を示す簡略化したフロー図である。
【0015】
図11図4のNFVネットワークアーキテクチャのプラットフォームの1つのトラステッド実行環境(TEE)によって実行され得るTEE引用動作を実行する方法の少なくとも一実施形態を示す簡略化されたフロー図である。
【図面の詳細な説明】
【0016】
本開示のコンセプトはいろいろな修正を施したり代替的形式を取ったりすることもできるが、その具体的な実施形態を図面において実施例で示し、ここに詳細に説明する。しかし、言うまでもなく、開示した具体的な形式に本開示を限定する意図ではなく、逆に、本発明は本開示と添付した特許請求の範囲に沿ったすべての修正、等価物及び代替物をカバーするものである。
【0017】
本明細書において「one embodiment」、「an embodiment」、「an illustrative embodiment」などと言う場合、記載した実施形態が、ある機能、構造、または特徴を含むが、かならずしもすべての実施形態がその機能、構造、または特徴を含んでも含まなくてもよい。さらに、かかる文言は必ずしも同じ実施形態を参照しているとは限らない。さらに、ある機能、構造、または特徴をある実施形態について説明した場合、明示的に記載していようがいまいが、他の実施形態に関するそれらの機能、構造、または特徴に影響が及ぶことは、当業者には自明である。また、言うまでもなく、「少なくとも1つのA、B及びC」は、(A)、(B)、(C)、(A及びB)、(A及びC)、(B及びC)又は(A、B、及びC)を意味し得る。同様に、「A、B又はCのうちの少なくとも1つ」との形式のリストに含まれるアイテムは、(A)、(B)、(C)、(A及びB)、(A及びC)、(B及びC)又は(A、B、及びC)を意味し得る。
【0018】
開示した実施形態は、幾つかの場合には、ハードウェア、ファームウェア、ソフトウェア、またはそれらの任意の組み合わせで実装できる。開示の実施形態は、一以上の一時的又は非一時的な機械読み取り可能(例えば、コンピュータ読み取り可能)記憶媒体により担われ、又はそれに格納された(一以上のプロセッサにより読み取られ実行され得る)命令として実装することもできる。機械読み取り可能記憶媒体は、機械により読み取り可能な形式で情報を格納又は送信する任意のストレージ装置、メカニズム、又はその他の物理的構造(例えば、揮発性又は不揮発性メモリ、メディアディスク、又はその他のメディア装置)として実施できる。
【0019】
図中、幾つかの構造的又は方法フィーチャを具体的な構成及び/又は順序で示すかも知れない。しかし、言うまでもなく、かかる具体的な構成及び/又は順序は必須ではない場合がある。むしろ、幾つかの場合には、かかるフィーチャは、例示した図面に示したのとは異なる方法及び/又は順序で構成することもできる。また、ある図面に構造的又は方法フィーチャを含めることは、かかるフィーチャがすべての実施形態において必要であることを意味するのではなく、幾つかの実施形態では、含まれなくてもよいし、他のフィーチャと組み合わされてもよい。
【0020】
ここで図1を参照するに、例示的な実施形態では、ネットワーク機能仮想化(NFV)ネットワークアーキテクチャ116でネットワークトラフィックを処理するシステム100は、NFVオーケストレータ104、仮想インフラストラクチャマネージャ(VIM)106、およびNFVインフラストラクチャ108を含む複数のネットワーク処理コンポーネントを含む。また、NFVネットワークアーキテクチャ116は、NFVネットワークアーキテクチャ116において、セキュリティ監視およびセキュアメッセージ送信を管理および実施(例えば、セキュア通信チャネルの設定、セキュア通信チャネルを介して送信されるメッセージの認証、セキュア通信チャネルのセキュリティの維持など)するNFVセキュリティサービスコントローラ102を含む。NFVネットワークアーキテクチャ116の仮想ネットワーク機能(VNF)インスタンスの初期化プロセスの一部として、NFVセキュリティサービスコントローラ102は、NFVインフラストラクチャ108の前にインスタンス化されたVNFインスタンスに、セキュアブートストラップを実行するよう指示するセキュアメッセージを提供する。そうするために、NFVセキュリティサービスコントローラ102は、VNFブートストラップ・サービス(図4参照)を含み、VNFインスタンスは、VNFブートストラップサービス(VBS)エージェント(図4参照)を含み、セキュアブートストラップの実行、及びメッセージの送受信の役割を果たす。したがって、VNFインスタンスは、VBSエージェントを使用して、オペレーショナルVNFインスタンスとしてNFVセキュリティサービスコントローラ102に登録し、起動ポリシー、構成情報などのVNFブートストラップ情報を受信し、オペレーショナルVNFインスタンスとして安全に登録することができる。さらに、いくつかの実施形態では、VBSエージェントは、VNFインスタンスのライセンスおよび実施を可能にすることができる。
【0021】
NFVネットワークアーキテクチャ116のネットワーク処理およびセキュリティ監視コンポーネントは、仮想Evolved Packet Core(vEPC)インフラストラクチャ、仮想化されたCustomer Premise Equipment(vCPE)インフラストラクチャ、または他の任意のタイプのオペレータ視覚化インフラストラクチャなどの様々な仮想化ネットワークアーキテクチャで展開できる。言うまでもなく、NFVネットワークアーキテクチャ116が展開されるネットワークアーキテクチャに応じて、NFVネットワークアーキテクチャ116は、1つ以上のNFVセキュリティサービスコントローラ102、1つ以上のNFVオーケストレータ104、1つ以上のVIM106、及び/又は1つ以上のNFVインフラストラクチャ108を含むことができる。言うまでもなく、幾つかの実施形態では、NFVセキュリティサービスコントローラ102は、NFV管理・オーケストレーション(MANO)アーキテクチャフレームワークなどのように、NFVオーケストレータ104及び/又はVIM106と一緒になっていてもよい。
【0022】
NFVインフラストラクチャ108は、VNFインスタンスとして実行するように構成された、(例えば、コモディティサーバ中の)いくつかのVM及び/又はコンテナを管理(たとえば、生成、移動、破棄など)することができる1つ以上の計算ノード110を含む。各VNFインスタンスは、一般的に、1つ以上のVMに依存する。これは異なるソフトウェア及び/又はプロセスを実行し、ネットワークトラフィック上でネットワークサービス(たとえば、ファイアウォールサービス、ネットワークアドレス変換(NAT)サービス、ロードバランシングサービス、ディープパケットインスペクション(DPI)サービス、伝送制御プロトコル(TCP)最適化サービスなど)を実行する。さらに、ネットワークサービスを提供するために、複数のVNFインスタンスをサービス機能チェーンまたはVNF転送グラフ(すなわち、所望のネットワークサービスを実装するために順序付けられたシーケンスで実行される一連のVNFインスタンス)として生成することができる。
【0023】
NFVセキュリティサービスコントローラ102は、本明細書で説明される機能を実行することができる任意のタイプのハードウェア、ソフトウェア、及び/又はファームウェアとして実施されてもよく、またはそれらを含んでもよい。以下でさらに詳細に説明するように、NFVセキュリティサービスコントローラ102は、セキュリティ監視オーケストレータとして機能するように構成される。そうするために、NFVセキュリティサービスコントローラ102は、NFVネットワークアーキテクチャ116全体にわたるコンポーネント(例えば、NFVネットワークアーキテクチャ116内に位置するVNFインスタンスなど)に、安全な通信経路ポリシー、設定パラメータ、および機能記述子を含む様々な監視ルールを含むセキュリティ監視ポリシーを送信するように構成される。さまざまなセキュリティ機能には、SFC(サービス機能連鎖)プロビジョニングの保護、SFCセキュリティ設定及び監視の実施、機密保護されたトークンの提供、保護されたポリシー送信の管理、VNF間SFCパス保護の提供などがあるが、これらに限定されない。
【0024】
NFVセキュリティサービスコントローラ102は、セキュリティ監視ポリシーを読み出し及び/又は更新するために、1つ以上の外部セキュリティシステム(たとえば、インテル(登録商標)セキュリティコントローラ)、セキュリティデータベース、及び/又はセキュリティポリシーエンジンとインターフェースするように構成されてもよい。外部セキュリティシステムと通信するため、NFVセキュリティサービスコントローラ102は、アプリケーションプログラミングインターフェイス(API)及び/又はセキュリティポリシーを、外部セキュリティサービスオーケストレーションシステムに配信することができる。いくつかの実施形態では、NFVセキュリティサービスコントローラ102は、NFVネットワークアーキテクチャ116の様々なネットワークおよびセキュリティ監視コンポーネントにわたってメッセージを認証する信頼できる第三者(trusted third party)として機能することができる。言うまでもなく、いくつかの実施形態では、NFVセキュリティサービスコントローラNFVは、NFVセキュリティサービスコントローラ102のインテグリティ(integrity)およびセキュリティを保証するために、NFVネットワークアーキテクチャ116の他のネットワークおよびセキュリティ監視コンポーネントよりも高いセキュリティ特権を有することができる。
【0025】
NFVオーケストレータ104は、本明細書に記載される機能を実行することができる任意のタイプのハードウェア、ソフトウェア、及び/又はファームウェアとして実施され、又はそれを含むことができる。機能とは、例えば、VNFマネージャ(図4参照)を介したVNFインスタンスのライフサイクルの管理(例えば、インスタンス化、スケールアウト/イン、性能測定、イベント相関、終了など)、グローバルリソースの管理、NFVインフラストラクチャ108のリソース要求を検証及び許可、新しいVNFインスタンスをオンボーディング(on−boarding)、及び/又はVNFインスタンスのための様々なポリシーおよびパッケージの管理を含む。例えば、NFVオーケストレータ104は、特定のVNFに影響を及ぼすネットワークオペレータからのリソース要求を受信するように構成することができる。使用時には、NFVオーケストレータ104は、オペレータの要求に基づいて、適用可能な処理、記憶、及び/又はネットワーク構成の調整を管理し、VNFを動作させるかまたはリソース要求に準拠させる。一旦動作すると、NFVオーケストレータ104は、VNFの容量および利用をモニタすることができる。これらは、必要に応じて、NFVオーケストレータ104によって調整され得る
【0026】
VIM106は、本明細書で説明される機能を実行することができる任意のタイプのハードウェア、ソフトウェア、及び/又はファームウェアとして実施されてもよく、またはそれらを含んでもよい。VIM106は、1つのオペレータのインフラストラクチャサブドメイン内など、NFVインフラストラクチャ108の計算、ストレージ、およびネットワークリソース(たとえば、物理的および仮想的なもの)を制御および管理するように構成される。さらに、VIM106は、性能測定値およびイベントなど、VIM106に関連する様々な情報を収集し転送するように構成される。
【0027】
NFVインフラストラクチャ108は、仮想化ソフトウェアだけでなく、1つ以上のサーバまたは他の計算ノードなど、任意のタイプの仮想的及び/又は物理的処理および記憶リソースとして実施され得る、またはそれらを含み得る。例えば、例示的なNFVインフラストラクチャ108は、1つ以上の計算ノード110を含む。例示的な計算ノード110は、第1の計算ノード(これは計算ノード(1)112として指定される)と、第2の計算ノード(これは計算ノード(N)114として指定される)(すなわち、計算ノード110の「N番目の」計算ノードであり、「N」は正の整数であり、1つ以上の追加の計算ノード110を指定する)とを含む。
【0028】
計算ノード110の各々は、本明細書に記載の機能を実行することができる任意のタイプの計算またはコンピュータ装置として実施することができる。これには、サーバ(例えば、スタンドアローン、ラックマウント、ブレードなど)、ネットワーク機器(例えば、物理または仮想)、高性能計算装置、ウェブ機器、分散計算システム、コンピュータ、プロセッサベースのシステム、マルチプロセッサシステム、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、及び/又はモバイル計算装置が含まれるが、限定ではない。図2に示すように、一実施形態では、各計算ノード110は、プロセッサ202、入出力(I/O)サブシステム206、メモリ208、データ記憶装置214、セキュアクロック216、および通信回路218を含む。もちろん、計算装置110は、他の実施形態では、サーバに一般的に見られるようなその他のコンポーネント又は付加的なコンポーネント(例えば、様々な入出力装置など)を含み得る。また、幾つかの実施形態では、例示したコンポーネントのうち一以上は、他のコンポーネントに組み込まれていても良く、又はその一部を構成していても良い。例えば、メモリ208又はその部分は、幾つかの実施形態では、プロセッサ202に組み込まれていても良い。
【0029】
プロセッサ202は、ここに説明する機能を実行できる任意のタイプのプロセッサとして実施できる。例えば、このプロセッサ202は、シングル又はマルチコアプロセッサ、デジタルシグナルプロセッサ、マイクロコントローラ、又はその他のプロセッサ又は処理/制御回路として実施できる。例示的なプロセッサ202は、1つ以上のトラステッド(trusted)実行環境(TEE)サポート204、またはセキュアエンクレーブサポートを含む。これは、トラステッド実行環境を確立する際に計算ノード110によって利用され得る。言うまでもなく、いくつかの実施形態では、TEEサポート204は、実行コードを測定、検証、または真正なものであると判定することができる、トラステッド実行環境のためのハードウェア強化セキュリティを提供する。例えば、TEEサポート204は、インテル(登録商標)ソフトウェア・ガード・エクステンション(SGX)技術として実施することができる。TEEサポート204は、プロセッサ202内に例示的に示されているが、いくつかの実施形態では、計算ノード110の1つ以上の他のコンポーネントがTEEサポート204を含むことができる。さらに、いくつかの実施形態では、計算ノード110のプロセッサ202は、TEEサポート204を利用してトラステッド実行環境を確立するように構成されたセキュリティエンジン(例えば、以下に説明するセキュリティエンジン224)、マネージャビリティ(manageability)エンジン、またはセキュリティコプロセッサを含むことができる。
【0030】
メモリ208は、ここに説明する機能を実行できる、任意のタイプの揮発性又は不揮発性メモリ又はデータストレージとして実施できる。動作中、メモリ208は、オペレーティングシステム、アプリケーション、プログラム、ライブラリ、及びドライバなど、計算ノード110の動作中に用いられる様々なデータとソフトウェアを記憶できる。メモリ208は、I/Oサブシステム206を介してプロセッサ202に通信可能に結合している。I/Oサブシステム112は、プロセッサ202、メモリ208、及び計算ノード110のその他のコンポーネントとの入出力動作を容易にする回路及び/又はコンポーネントとして実施できる。例えば、I/Oサブシステム206は、メモリコントローラハブ、入出力制御ハブ、ファームウェア装置、通信リンク(すなわち、ポイント・ツー・ポイントリンク、バスリンク、ワイヤ、ケーブル、光ガイド、プリント回路板トレースなど)及び/又は入出力動作を容易にするその他のコンポーネント及びサブシステムとして、又はこれらを含むものとして実施できる。
【0031】
例示的なメモリ208は、セキュアメモリ210を含む。いくつかの実施形態では、セキュアメモリ210は、メモリ208のセキュアパーティションとして実施されてもよい。一方、他の実施形態では、セキュアメモリ210は、計算ノード110の別のハードウェアコンポーネントで実施されても、またはそれに含まれてもよい。本明細書で説明するように、セキュアメモリ210は計算ノード110に供給されるさまざまなデータを格納し得る。例えば、セキュアメモリ210は、チップセットの製造者により提供され得る計算ノード110の、及び/又はトラステッド実行環境のセキュアキー(例えば、アテステーションキー、プライベートダイレクトアノニマスアテステーション(DAA)キー、エンハンストプライバシー識別(EPID)キー、または任意の他のタイプのセキュア/暗号キー)を格納してもよい。セキュアメモリ210は、例えば、計算ノード110のOEM(original equipment manufacturer)によって供給される計算ノード110のパスワード、PIN、または他の一意の識別子を格納することもできる。もちろん、言うまでもなく、セキュアメモリ210は、具体的な実施形態に応じて、様々な他のデータ(例えば、グループ名、装置識別子、ホワイトリスト、予想されるPIN値など)を格納することができる。いくつかの実施形態では、提供されたデータは、セキュアメモリ210の読み出し専用メモリに格納されてもよい。
【0032】
例示的なメモリ208は、基本入出力システム(BIOS)212をさらに含む。BIOS212は、ブートプロセス中に計算ノード110を初期化する命令(例えば、計算ノード110のブート中に使用されるBIOSドライバ)を含む。いくつかの実施形態では、計算ノード110は、インテル(登録商標)プラットフォームチップセットのエクステンションなどのメインプラットフォームファームウェア、すなわちプリブートファームウェアにより、またはUnified Extensible Firmware Interface(「UEFI」)仕様に基づくプラットフォームBIOS212により、VNFインスタンスのオーケストレーションを容易にすることができる。UEFI仕様には、Unified EFI Forumによって発行された、いくつかのバージョンがある。
【0033】
データストレージ装置214は、例えば、メモリ装置と回路、メモリカード、ハードディスクドライブ、固体ドライブ、その他の記憶装置などの、データを短期又は長期にわたり格納するように構成された任意のタイプの装置として実施できる。使用時、以下に説明するように、データ記憶装置214及び/又はメモリ208は、セキュリティ監視ポリシー、設定ポリシー、または他の同様のデータを格納することができる。
【0034】
セキュアクロック216は、安全な(secure)タイミング信号を提供することができ、さもなければ本明細書で説明する機能を実行することができる任意のハードウェアコンポーネントまたは回路として実施することができる。例えば、例示的な実施形態では、セキュアクロック216は、計算ノード110の他のクロック源とは別個かつ機能的に独立したタイミング信号を生成することができる。したがって、このような実施形態では、セキュアクロック216は、例えば、計算ノード110上で実行されるソフトウェアのような他のエンティティによる変更に対して影響を受けない、または抵抗力があり得る。言うまでもなく、いくつかの実施形態では、セキュアクロック216は、スタンドアロンコンポーネントまたは回路として実施されてもよく、一方、他の実施形態では、セキュアクロック216は、別のコンポーネント(例えば、プロセッサ202)のセキュアな部分と一体化するか、またはセキュアな部分を形成することができる。例えば、いくつかの実施形態では、セキュアクロック216は、オンチップオシレータを介して実装されてもよく、及び/又はマネージャビリティエンジン(ME)のセキュアクロックとして実施されてもよい。また、言うまでもなく、セキュアクロック216は、他の計算ノード110のセキュアクロックに同期していてもよく、粒度(granularity)は、別個のメッセージタイミングを区別することができるオーダーとすることができる。
【0035】
計算ノード110の通信回路218は、計算ノード110と、別の計算ノード110、NFVオーケストレータ104、VIM106、エンドポイント装置118,120、及び/又は他の接続されたネットワーク対応計算ノードとの間の通信を可能にすることができる、任意の通信回路、装置、又はこれらの集まりとして実施することができる。通信回路218は、一以上の任意の通信技術(例えば、有線または無線通信)と、かかる通信を行う関連プロトコル(例えば、イーサネット(登録商標)、Bluetooth(登録商標)、Wi−Fi、WiMAX、GSM(登録商標)、LTEなど)とを用いるように構成されていてもよい。例示的な通信回路218は、ネットワークインターフェースカード(NIC)220およびスイッチ222を含む。NIC220は、1つ以上のアドインボード、ドータカード、ネットワークインターフェースカード、コントローラチップ、チップセット、または計算ノード110によって使用され得る他の装置として実施されてもよい。例えば、NIC220は、PCI Expressのような拡張バスを介してI/Oサブシステム206に結合された拡張カードとして実施することができる。スイッチ222は、イーサネットスイッチチップ、PCIエクスプレススイッチングチップなど、ネットワークスイッチ操作を実行し、そうでなくても本明細書に記載された機能を実行することができる任意のハードウェアコンポーネントまたは回路として実施することができる。
【0036】
上述したように、計算ノード110は、セキュリティエンジン224を含むこともでき、これは計算ノード110上にトラステッド実行環境(TEE)を確立することができる任意のハードウェアコンポーネントまたは回路として実施してもよい。具体的には、セキュリティエンジン224は、計算ノード110によって実行される他のコードから独立した、データのアクセス及び/又はコードの実行をサポートすることができる。セキュリティエンジン224は、トラステッドプラットフォームモジュール(TPM)、マネージャビリティエンジン(ME)、帯域外プロセッサ、または他のセキュリティエンジン装置、または装置の集まり(例えば、ARM(登録商標)のトラステッドゾーン(TZ)など)として実施することができる。いくつかの実施形態では、セキュリティエンジン224は、計算ノード110のシステムオンチップ(SoC)に組み込まれた統合セキュリティ・マネージャビリティエンジン(CSME)として実施されてもよい。
【0037】
再び図1を参照して、例示的なNFVネットワークアーキテクチャ116は、2つのエンドポイント装置118,120の間で通信可能に結合される。例示的なシステム100では、第1のエンドポイント装置はエンドポイント装置(1)118として指定され、第2のエンドポイント装置はエンドポイント装置(2)120として指定される。しかし、言うまでもなく、任意の数のエンドポイント装置がNFVネットワークアーキテクチャ116を介して接続されてもよい。エンドポイント装置118,120は、有線または無線技術を使用してネットワーク(図示せず)を介してNFVネットワークアーキテクチャ116と通信可能に結合され、エンドポイント装置(1)が、エンドポイント装置(2)と、およびその逆に通信できるエンドツーエンド通信システムを構成する。したがって、NFVネットワークアーキテクチャ116は、エンドポイント装置118,120間で送信されるネットワーク通信トラフィック(すなわち、ネットワークパケット)を監視し、処理することができる。
【0038】
エンドポイント装置118,120が通信するネットワークは、任意のタイプの有線または無線通信ネットワークとして実施することができ、GSM(Global System for Mobile Communications)またはLTE(Long−Term Evolution)のようなセルラーネットワーク、テレフォニーネットワーク、デジタル加入者線(DSL)ネットワーク、ケーブルネットワーク、ローカルまたはワイドエリアネットワーク、グローバルネットワーク(例えば、インターネット)、またはそれらの任意の組み合わせを含む。例えば、いくつかの実施形態では、ネットワークは、vEPCアーキテクチャを有するNFVベースのLTE(Long−Term Evolution)ネットワークとして実施することができる。言うまでもなく、ネットワークは、集中型ネットワークとして機能してもよく、いくつかの実施形態では、別のネットワーク(例えば、インターネット)に通信可能に結合されてもよい。したがって、ネットワークは、エンドポイント装置118,120と、NFVネットワークアーキテクチャ116との間の通信を容易にするために、必要に応じて、ルータ、スイッチ、ネットワークハブ、サーバ、ストレージ装置、計算装置などの仮想および物理的な様々なネットワーク装置を含むことができる。
【0039】
エンドポイント装置118、120は、本明細書に記載の機能を実行することができる任意のタイプの計算またはコンピュータ装置として実施することができる。これには、スマートフォン、モバイル計算装置、タブレットコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、コンピュータ、サーバ(例えば、スタンドアローン、ラックマウント、ブレードなど)、ネットワーク機器(例えば、物理または仮想)、ウェブ機器、分散計算システム、プロセッサベースのシステム、及び/又はマルチプロセッサシステムが含まれるが、限定ではない。図3に示すように、図2の計算ノード110と同様に、例示的なエンドポイント装置(例えば、図1のエンドポイント装置118,120の1つ)は、プロセッサ302、入出力(I/O)サブシステム304、メモリ306、データ記憶装置308,1つ以上の周辺装置310、および通信回路312を含む。そのため、同様のコンポーネントのさらなる説明は、計算ノード110に関して上述した対応するコンポーネントの説明が、エンドポイント装置118,120の対応するコンポーネントに等しく適用されるので、説明の明確性のため、ここでは繰り返さない。
【0040】
もちろん、エンドポイント装置118,120は、他の実施形態(例えば、様々な入力/出力装置)において通信インフラストラクチャで動作することができるモバイル計算装置に一般的に見られるような、他の又は追加のコンポーネントを含むことができる。また、幾つかの実施形態では、例示したコンポーネントのうち一以上は、他のコンポーネントに組み込まれていても良く、又はその一部を構成していても良い。周辺装置310は、入出力装置、インターフェース装置、及び/又はその他のペリフェラル装置をいくつ含んでいてもよい。例えば、幾つかの実施形態では、周辺装置310は、ディスプレイ、タッチスクリーン、グラフィックス回路、キーボード、マウス、スピーカシステム、及び/又はその他の入出力装置、インターフェース装置、及び/又は周辺装置を含んでいてもよい。
【0041】
ここで図4を参照し、NFVネットワークアーキテクチャ116のVNFを安全にブートストラップする図1のNFVネットワークアーキテクチャ116の例示的な実施形態は、図1のNFVセキュリティサービスコントローラ102、NFVオーケストレータ104、VIM106、およびNFVインフラストラクチャ108、及びVNFマネージャ410を含む。前に説明したように、使用時に、NFVオーケストレータ104は、インスタンス化、スケーリングアウト/イン、パフォーマンス測定、相関イベント、終了などを含む、NFVインフラストラクチャ108におけるVNFインスタンスのライフサイクルを管理する。そうするために、NFVオーケストレータ104は、NFVインフラストラクチャ108のリソースに基づいて、NFVインフラストラクチャ108のVNFインスタンスの初期化および構成(すなわち、スケーリングおよび展開)を管理するために(VNFインスタンス440参照)、セキュア通信チャネル406を介してVNFマネージャ410に命令を提供するように構成される。
【0042】
VNFマネージャ410はさらに、NFVインフラストラクチャ108の構成およびイベント報告のための全体的な調整および適合を実行するように構成される。また、VNFマネージャ410は、VNFインスタンスのインテグリティを更新し保証するように構成されている。そうするために、VNFマネージャ410は、セキュア通信チャネル414を介してVIM106と通信して、特定のVNFインスタンスをインスタンス化するために利用可能な物理リソースを決定するように構成される。言うまでもなく、VIM106は、任意の適切な技術、アルゴリズム、及び/又は機構を用いて、かかる決定をしてもよい。また言うまでもなく、いくつかの実施形態では、単一のVNFマネージャ410が、1つ以上のVNFインスタンスを管理する役割を果たすことができる。換言すれば、いくつかの実施形態では、VNFマネージャ410は、各VNFインスタンスに対してインスタンス化されてもよい。
【0043】
NFVネットワークアーキテクチャ116は、通信チャネル404を介してNFVオーケストレータ104に通信可能に結合されたオペレーションサポートシステムおよびビジネスサポートシステム(OSS/BSS)402をさらに含む。OSS/BSS402は、電話ネットワーク内の様々なエンドツーエンド電気通信サービスをサポートするなど、本明細書に記載の機能を実行することができる任意のタイプの計算または計算ノードとして実施することができる。いくつかの実施形態では、OSS/BSS402は、ネットワークインベントリ、サービス提供、ネットワーク構成、および障害管理などの管理機能、および製品管理、顧客管理、収益管理、注文管理など、OSS/BSS402によってサポートされるエンドツーエンド通信サービスをサポートする様々なビジネス機能をサポートするように構成されてもよい。
【0044】
NFVセキュリティサービスコントローラ102は、セキュア通信チャネル416を介してNFVオーケストレータ104に通信可能に接続される。言うまでもなく、いくつかの実施形態では、NFVセキュリティサービスコントローラ102およびNFVオーケストレータ104は、MANOアーキテクチャフレームワーク内など、同じ場所に配置されてもよい。さらに、NFVセキュリティサービスコントローラ102は、セキュア通信チャネル428を介してVIM106に通信可能に接続され、NFVオーケストレータ104は、セキュア通信チャネル408を介してVIM106に通信可能に接続される。NFVネットワークアーキテクチャ116のセキュア通信チャネル(例えば、セキュア通信チャネル406、セキュア通信チャネル414など)は、NFVセキュリティサービスコントローラ102が信頼ルート(root of trust(RoT))を確立して通信チャネルを確立するために使用される安全な鍵(例えば、セッション鍵及び/又は他の暗号鍵)で保護されてもよい。いくつかの実施形態では、セキュア鍵は、定期的にリフレッシュされ得る対のセッション鍵として実施されてもよい。このように、NFVセキュリティサービスコントローラ102は、認証サーバとして動作するように構成することができる。
【0045】
NFVセキュリティサービスコントローラ102は、NFVインフラストラクチャ108内のVNFインスタンスのVBSエージェント(以下にさらに説明する)を管理するように構成されたVNFブートストラップサービス(VBS)420を含む。使用時、VBS420は、トラストアンカーの観点からセキュアブートストラッププロセス(すなわち、図9および図10のセキュアなVNFブートストラップキャプチャプロトコルの実行)を管理する。したがって、いくつかの実施形態では、NFVセキュリティサービスコントローラ102は、VBS420が存在するトラステッド実行環境(TEE)422をさらに含むことができる。しかし、言うまでもなく、いくつかの実施形態では、VBS420は、専用のVBSサーバ上など、NFVセキュリティサービスコントローラ102の外部にあってもよい。そのような実施形態では、VBS420は依然としてTEEで実行されてもよい。
【0046】
追加的に、例示的なNFVセキュリティサービスコントローラ102は、セキュリティ監査・フォレンジックデータベース426とインターフェースする。セキュリティ監査・フォレンジックデータベース426は、NFVネットワークアーキテクチャ116の様々なセキュリティ監視コンポーネントに関連するセキュリティ監査情報を含むセキュアデータベースとして実施される。セキュリティ監査情報は、例えば構成変更ログ、ネットワークトレース、デバッグトレース、アプリケーショントレースなどを含む、NFVネットワークアーキテクチャ116のセキュリティに関連する任意の情報を含むことができる。例示的なNFVネットワークアーキテクチャ116では、セキュリティ監査・フォレンジックデータベース426は、NFVネットワークアーキテクチャ116の他のネットワークおよびセキュリティ監視コンポーネント、例えば、NFVにわたって分散された様々なNFVセキュリティサービスエージェントおよびVIM106とインターフェースするようにさらに構成される。これについては、以下でより詳細に説明する。いくつかの実施形態では、セキュリティ監査・フォレンジックデータベース426とインターフェースする例示的なNFVネットワークアーキテクチャ116の様々なセキュリティ監視コンポーネントは、セキュアクロック(たとえば、図2のセキュアクロック216)を使用して、セキュリティ監査・フォレンジックデータベース426で受信するログにタイムスタンプを付す。
【0047】
前述したように、使用時、VIM106は、セキュア通信チャネル478を介して安全に送信されたメッセージを通してNFVインフラストラクチャ108の仮想的および物理的(すなわち、ハードウェアによる)計算、記憶およびネットワークリソースの割り当てを制御および管理する。さらに、いくつかの実施形態では、VIM106は、NFVインフラストラクチャ108の計算、記憶、及びネットワークリソース(例えば、物理的及び仮想的なもの)の性能測定値およびイベントを、収集し、セキュリティ監査・フォレンジックデータベース426に転送するように構成されてもよい。例示的なVIM106は、VIMコントローラ430を含む。VIMコントローラ430は、クラウドオペレーティングシステムVNFインストールおよびアクティブ化サービスとして機能するように構成される。例えば、いくつかの実施形態では、VIMコントローラは、ネットワークポリシーコントローラ、またはネットワーキングサービスコントローラ(例えば、SDN(software defined networking)コントローラまたはOpenStackニュートロン)として、または計算サービスコントローラ(例えば、Openstack Nova)として実施されてもよい。追加的または代替的に、いくつかの実施形態では、VIMコントローラ430は、イメージサービスコントローラ、アイデンティティサービスコントローラなどとして実施されてもよい。
【0048】
NFVインフラストラクチャ108は、VNFインスタンスが展開される計算ノード110のすべてのハードウェアおよびソフトウェアコンポーネント(すなわち、仮想計算、ストレージ、およびネットワークリソース、仮想化ソフトウェア、ハードウェア計算、ストレージおよびネットワークリソースなど)を含む。言うまでもなく、NFVインフラストラクチャ108の物理的コンポーネント及び/又は仮想的コンポーネントは、さまざまな場所、データセンター、地理、プロバイダなどにまたがっていてもよい。また、言うまでもなく、NFVインフラストラクチャ108のコンポーネントが通信し、それを介してインターフェースするために使用するネットワークは、NFVインフラストラクチャ108に含まれると考えてもよい。
【0049】
例示的なNFVインフラストラクチャ108は、いくつかのVNFインスタンス440およびオペレータインフラストラクチャ460を含む。オペレータインフラストラクチャ460は、1つ以上のプラットフォーム470、図2のBIOS212、およびハイパーバイザ462を含む。オペレータインフラストラクチャ460は、VNFインスタンス440を展開するための複数の異なるネットワークインフラストラクチャを含むことができる。したがって、オペレータは、複数の異なるネットワークインフラストラクチャを使用して、NFVインフラストラクチャ108(すなわち、物理インフラストラクチャ)上に、または他のオペレータの物理的インフラストラクチャ上に、ならびに第三者のクラウドホスティングインフラストラクチャ上に、及び/又は顧客の敷地内のカスタマー機器上に展開することができる。例えば、展開シナリオには、プライベートクラウドモデルで動作するモノリシックオペレータ、ハイブリッドクラウド内の仮想ネットワークオペレータをホストするネットワークオペレータ、ホスティングされたネットワークオペレータ、パブリッククラウドモデルのホステッド通信およびアプリケーションプロバイダ、顧客の管理されたネットワークサービス構内機器などを含み得る。
【0050】
例示的なプラットフォーム470は、プラットフォーム(1)472として指定される第1のプラットフォームと、プラットフォーム(N)474(すなわち、「N番目の」プラットフォームであり、「N」は正の整数であり、1つ以上の追加プラットフォームを指定する)として指定される第2のプラットフォームを含む。プラットフォーム470の各々は、図2のI/Oサブシステム206、NIC220(またはスイッチ222)、およびデータ記憶装置を含む。プラットフォーム470の各々は、そのプラットフォームにユニークな識別子(例えば、BIOS212(UEFI)識別子)をさらに含み、これは(例えば、セキュアメモリ210などの)安全な場所に格納することができる。ユニークなプラットフォーム識別子は、ハードウェア識別子、OEM(Original Equipment Manufacturer)基板識別子、BIOS/UEFI在庫保持ユニット(SKU)識別子、現場交換可能ユニット(FRU)識別子、オペレーティングシステムバージョン識別子などの組み合わせハッシュまたはグローバル一意識別子(GUID)FRU)識別子を含み得る。
【0051】
例示的なプラットフォーム(1)472は、TEE476をさらに含む。TEE476は、セキュア環境(例えば、プロセッサ202のTEEサポート204)のCSME、SGX、IE、ME、または物理的、仮想的(すなわち、ソフトウェアベース)、またはファームウェアTPM(例えば、セキュアパーティション、セキュリティコプロセッサ又は別個のプロセッサコア等からなるセキュリティエンジン224上のファームウェアTPM)により確立されてもよい。また、TEE476は、NFVセキュリティサービスコントローラ102での安全な提供手順を通して、プラットフォーム(1)472に安全に提供することができる。いくつかの実施形態では、セキュア提供手順(secure provisioning procedure)は、NFVセキュリティサービスコントローラ102によるブートストラップを介して実行され得る。追加的または代替的に、いくつかの実施形態では、セキュア提供手順をオフラインで実行することができる。
【0052】
ハイパーバイザ462または仮想マシンモニタ(VMM)は、NFVインフラストラクチャ108の様々な仮想化ハードウェアリソース(例えば、仮想メモリ、仮想オペレーティングシステム、仮想ネットワークコンポーネントなど)を確立及び/又は利用するように構成される。さらに、ハイパーバイザ462は、VNFインスタンス440にわたる通信を容易にすることができる。例示的なハイパーバイザ462は、クラウドサービスディスカバリ、サービスネゴシエーション、及び/又はサービス構成を強化するように構成された1つ以上のクラウドオペレーティングシステムエージェント464を含む。いくつかの実施形態では、ハイパーバイザ462は、TEE476と同様に機能するように構成されているが、NFVインフラストラクチャ108の仮想レベルまたはハイパーバイザレベルで機能するように構成されたTEE466をさらに含み得る。
【0053】
ハイパーバイザ462は、使用時、VNFインスタンス440を、一般に、VNFインスタンス440の各々を実行するための1つ以上のVM及び/又はコンテナを介して実行する。いくつかの実施形態では、VNFインスタンス440は、課金機能、仮想スイッチ(vSwitch)、仮想ルータ(vRouter)、ファイアウォール、ネットワークアドレス変換(NAT)、DPI、進化型パケットコア(EPC)、モビリティ管理エンティティ(MME)、パケットデータネットワークゲートウェイ(PGW)、サービングゲートウェイ(SGW)、及び/又は他の仮想ネットワーク機能を含むことができる。いくつかの実施形態では、あるVNFインスタンス440は、複数のサブインスタンスを有してもよく、これは単一のプラットフォーム(例えば、プラットフォーム472)上で実行でき、または異なる複数のプラットフォーム(例えば、プラットフォーム472およびプラットフォーム474)にわたって実行することができる。言い換えれば、仮想化されると、あるプラットフォームと同じ場所に配置された物理的ハードウェアによって従来は処理されていたネットワーク機能は、1つ以上のプラットフォーム480にわたっていくつかのVNFインスタンス440として分散され得る。
【0054】
VNFインスタンス440の各々は、1つ以上のVNFインスタンスを含むことができる。例えば、いくつかの実施形態では、VNFインスタンス440のいずれかは、サービス機能チェーンの複数のVNFインスタンスをバンドルすることができる。さらに、各VNFインスタンスは、1つ以上のVNFコンポーネント(VNFCs)(図示せず)を含むことができる。言うまでもなく、VNFインスタンス440は、任意の適切な仮想ネットワーク機能として実施されてもよい。同様に、VNFCは、任意の適切なVNFコンポーネントとして実施されてもよい。VNFCは、協力して、1つ以上のVNFインスタンス440の機能性を提供するプロセス及び/又はインスタンスである。例えば、いくつかの実施形態では、VNFCはVNFインスタンス440のサブモジュールであってもよい。言うまでもなく、VNFインスタンス440と同様に、VNFCは、1つ以上のプラットフォーム470にわたって分散されてもよい。また、言うまでもなく、VNFインスタンス440は、複数のプラットフォーム470にわたって分散されてもよく、1つ以上のプラットフォーム470上に確立されたVNFインスタンス440の一部を形成してもよい。そのような実施形態では、VNFインスタンス440及び/又はVNFCは、同じプラットフォーム(たとえば、プラットフォーム472またはプラットフォーム474)上で、または同じデータセンター内であるが異なるプラットフォーム470上で実行されてもよい。さらに、いくつかの実施形態では、VNFインスタンス440及び/又はVNFCは、異なるデータセンターにわたって実行されてもよい。ハイパーバイザ462は、VNFインスタンス440にわたる通信を容易にするハイパーバイザ462と同様に、VNFCにわたる通信をさらに促進することができる。
【0055】
例示的なVNFインスタンス440は、VNF(1)442として示される第1のVNFインスタンスと、VNF(2)444として示される第2のVNFインスタンスと、VNF(N)446(すなわち、「N番目」のVNF、ここで「N」は正の整数であり、1つ以上の追加のVNFインスタンスを示す)として示される第3のVNFインスタンスとを含む。各VNFインスタンス440は、仮想ネットワーキング装置(例えば、vSwitch、vRouter、ファイアウォール、NAT、DPI、EPC、MME、PGW、SGWなど)として実行するように構成される。いくつかの実施形態では、1つ以上のVNFインスタンス440は、仮想機能またはサービスを実行することができるサービス機能チェーンを備えることができる。1つ以上のVNFインスタンス440は、インテル(登録商標)・データプレーン開発キット(インテル(登録商標)DPDK)などのユーザ・データ・プレーンでネットワークトラフィックを処理するパケット・プロセッサ(図示せず)を含むことができる。
【0056】
各プラットフォーム470にユニークな識別子と同様に、各VNFインスタンス440は、ユニークな識別子を含む。VNFインスタンス440のユニークなVNFインスタンス識別子は、VNFインスタンス440のイメージ、VNF記述子識別子、VNFコマンドライン識別子、VNF OEM識別子、VNFベンダー識別子、及び/又はVNFC識別子の組み合わせハッシュまたはGUIDであってもよい。したがって、VNFインスタンス識別子は、VNFインスタンス440と安全に通信するとき、NFVセキュリティサービスコントローラ102、VIM106、及び/又はVNFマネージャ410によって使用されてもよい。例えば、VIM106は、ユニークなVNFインスタンス識別子を使用して、セキュア通信チャネル478を介してNFVインフラストラクチャ108でVNFインスタンスのスピンアップ(spinning up)を開始することができる。同様に、VNFマネージャ410は、セキュア通信チャネル418を介してVNFインスタンス440との管理セッションを設定するときに、ユニークなVNFインスタンス識別子を使用することができる。
【0057】
例示的なVNFインスタンス440のそれぞれは、各VNFインスタンス440を安全にブートストラップして、VNFインスタンス440をルート証明書などで安全にプロビジョニングできるようにするVBSエージェント(すなわち、VNF(1)442のVBSエージェント448、VNF(2)444のVBSエージェント450、およびVNF(N)446のVBSエージェント452)を含む。さらに、例示的なVNFインスタンスの各々は、セキュア通信チャネル424ならびにオペレータインフラストラクチャ460を介して(すなわち、セキュア通信チャネル454,456,458を介して)、NFVセキュリティサービスコントローラ102のVBS420と安全にネットワーク通信する。
【0058】
以下でさらに詳細に説明するように、各VBSエージェント448,450,452は、セキュアブートストラッププロセスを実行(すなわち、図9および図10のセキュアVNFブートストラップキャプチャプロトコルを実行)するように構成される。そうするために、各VBSエージェント448,450,452は、以前にスピンアップされたVNFインスタンスをインスタンス化し、セキュアブートストラッププロセスを実行するときに、NFVセキュリティサービスコントローラ102と通信する際のセキュリティに使用される公開/秘密鍵ペア(すなわち、公開鍵および秘密鍵)を生成し、セキュアブートストラッププロセスを実行するように構成される。言うまでもなく、いくつかの実施形態では、NFVインフラストラクチャ108は、VBSエージェントを含まない他のVNFインスタンスをさらに含む。
【0059】
前述したように、VNFインスタンス440は、サービス機能連鎖において必要とされるような、複数のVNFを束ねることができる。そのような実施形態では、セキュアブートストラッププロセスを使用して、サービス機能チェーン全体をブートストラップすることができる。さらに、VNFインスタンス440が制御プレーンおよびデータプレーンに沿って因数分解される実施形態では、セキュアブートストラッププロセスは、1対1、1対多または多対多の制御プレーンおよびデータプレーンVNFインスタンスで利用することができる。
【0060】
ここで図5を参照して、使用時、NFVセキュリティサービスコントローラ102は、動作中に環境500を確立する。NFVセキュリティサービスコントローラ102の例示的な環境500は、図4のセキュア通信モジュール510およびVNFブートストラップサービス420を含む。また、VNFブートストラップサービス420は、VBSエージェント通信モジュール520、VBSエージェント登録モジュール530を含む。
【0061】
環境500の様々なモジュールは、ハードウェア、ファームウェア、ソフトウェア、またはこれらの組み合わせとして実施されてもよい。例えば、環境500の様々なモジュール、ロジック、その他のコンポーネントは、NFVセキュリティサービスコントローラ102のハードウェアコンポーネントの一部を構成しても、またはそれらハードウェアコンポーネントにより確立されてもよい。そのため、幾つかの実施形態では、環境500の一以上のモジュールは、電子装置の回路または集まり(例えば、セキュア通信回路、VBSエージェント通信回路、及びVBSエージェント登録回路など)として実施してもよい。追加的または代替的に、幾つかの実施形態では、例示のモジュールのうち1つ以上は、他のモジュール、及び/又は1つ以上の例示のモジュール及び/又はサブモジュールの一部を構成してもよく、これらはスタンドアロンモジュールとして、又は独立のモジュールとして実施されてもよい。
【0062】
セキュア通信モジュール510は、NFVセキュリティサービスコントローラ102とNFVネットワークアーキテクチャ116の様々なネットワーク処理コンポーネントとの間の安全な(secure)通信(すなわち、メッセージ)を容易にするように構成される。そうするために、セキュア通信モジュール510は、NFVセキュリティサービスコントローラ102とNFVネットワークアーキテクチャ116の様々なネットワーク処理コンポーネント(例えば、VIM106、VNFマネージャ410など)との間の通信経路を確保(secure)するように構成される。したがって、いくつかの実施形態では、セキュア通信モジュール510は、様々な鍵管理機能、暗号機能、セキュア通信チャネル管理、及び/又は他のセキュリティ機能を実行することができる。例えば、セキュア通信モジュール510は、NFVセキュリティサービスコントローラ102とVNFマネージャ410との間の通信のセキュリティを確実にするために、周期的にリフレッシュされる対のセッション鍵を使用して、図4のNFVセキュリティサービスコントローラ102とVNFマネージャ410との間の通信チャネルを確保するように構成することができる。
【0063】
VBSエージェント通信モジュール520は、セキュア通信モジュール510と同様に、VBS420と、NFVインフラストラクチャ108のVNFインスタンス440のVBSエージェントとの間のセキュア通信(すなわち、メッセージ)を容易にし、管理するように構成される。VBSエージェント登録モジュール530は、セキュアブートストラッププロセスの実行時にVBSエージェントを登録するように構成される。そうするために、VBSエージェント登録モジュール530は、VBSエージェント検証モジュール532と、VBSエージェントセキュリティ信用証明モジュール534とを含む。
【0064】
VBSエージェント検証モジュール532は、VBSエージェントのセキュアブートストラップパラメータ(例えば、値およびハッシュ)を検証するように構成される。そうするために、VBSエージェント検証モジュール532は、VBSキャプチャプロトコルの実行中にVBSエージェントから受信したセキュリティクォート(security quote)の真正性を検証するように構成され、以下でさらに詳細に説明する。追加的または代替的に、いくつかの実施形態では、VBSエージェント検証モジュール532は、VBS420の安全なプロビジョニングの間に、VBS420またはセキュリティコントローラ102によって受信された1つ以上のプロビジョニングパラメータに基づいてVBS420の構成を検証するためのホワイトリストチェックを実行する。いくつかの実施形態では、VBSエージェント検証モジュール532は、追加的または代替的に、ノンスセッションを用いてVBSエージェントとVBS420との間のメッセージの生存性(liveness)(すなわち、リプレイ攻撃などでメッセージが期限切れになっていないこと)を検出するように構成されてもよく、以下でさらに説明する。追加的または代替的に、いくつかの実施形態では、VBSエージェント検証モジュール532は、VBSキャプチャプロトコルの実行中にVBSエージェントから受信したVBSエージェントのVNFインスタンスの公開鍵の真正性を検証するように構成することができる。
【0065】
VBSエージェントセキュリティ証明モジュール534は、VBSキャプチャプロトコルの実行中に登録されるVBSエージェントに対する有効なセキュリティ証明(例えば、証明書、署名されたハッシュ結果など)を提供するように構成される。そうするために、VBSエージェントセキュリティ証明モジュール534は、VBSエージェント検証モジュール532がセキュリティクォートおよびVNFインスタンスの公開鍵の真正性を検証したこと、及びメッセージの生存性(liveness)(すなわち、リプレイ攻撃などにおいてメッセージが死んでいないこと)を確認したことに応じて、有効なセキュリティクレデンシャル(security credential)を生成または読み出しするように構成されてもよい。
【0066】
ここで図6を参照し、使用時、各VNFインスタンス(例えば、図4のVNFインスタンス442,444,446)は、動作中に環境600を確立する。対応するVNFインスタンスの例示的な環境600は、セキュア通信モジュール610およびVBSエージェント(例えば、図4のVBSエージェント448,450,452のうちの1つ)を含む。例示的なVBSエージェントは、そのVBSエージェントのVBS通信モジュール620と、VBSキャプチャプロトコル実行モジュール630とを含む。環境600の様々なモジュールは、ハードウェア、ファームウェア、ソフトウェア、またはこれらの組み合わせとして実施されてもよい。例えば、環境600の様々なモジュール、ロジック、その他のコンポーネントは、NFVセキュリティサービスエージェントのハードウェアコンポーネントの一部を構成しても、またはそれらハードウェアコンポーネントにより確立されてもよい。そのため、幾つかの実施形態では、環境600の一以上のモジュールは、電子装置の回路または集まり(例えば、セキュア通信回路、VBS通信回路、及びVBSキャプチャプロトコル実行回路など)として実施してもよい。追加的または代替的に、幾つかの実施形態では、例示のモジュールのうち1つ以上は、他のモジュールの一部を構成してもよく、及び/又は1つ以上の例示のモジュール及び/又はサブモジュールは、スタンドアロンモジュールとして、又は独立のモジュールとして実施されてもよい。
【0067】
セキュア通信モジュール610は、VBSエージェントとの間でのデータ(すなわち、メッセージ)の安全な送信を容易にするように構成される。VBS通信モジュール620は、例えばセキュアブートストラッププロセスの間、セキュア通信モジュール610と同様に、VBSエージェントと、NFVセキュリティサービスコントローラ102のVBS420との間のセキュア通信(例えば、登録データ、検証データ、構成データなど)を容易にし、管理するように構成される。VBSキャプチャプロトコル実行モジュール630は、セキュアVNFブートストラップキャプチャプロトコルを実行するように構成されている。これは図9及び図10を参照して説明する。そうするために、VBSキャプチャプロトコル実行モジュール630は、公開/秘密鍵ペア(すなわち、公開鍵および秘密鍵)を生成し、VNFインスタンスがインスタンス化されるプラットフォームのTEE(例えば、図4のプラットフォーム472のTEE476)から、セキュリティクォート(例えば、アテステーションクォートまたはTEEが検証または認証されることができるデジタル署名値)を要求するように構成される。したがって、TEEは、VBSエージェントのアイデンティティおよび構成を証明することができる(例えば、正しい起動パラメータによって構成された正しいVBSエージェントを実行する、VBSエージェントが要求された公開鍵を生成する)。さらに、ネットワークパケットの改ざん、ネットワークパケットの破損、ネットワークパケット内の悪意のあるコンテンツなど、可能性のあるセキュリティ脅威を検出するリモートアテステーションを実装することもできる。
【0068】
ここで図7を参照して、使用時、VNFインスタンス(例えば、図4のVNFインスタンス440の1つ)は、セキュアVNFブートストラップを開始する方法700を実行することができる。方法700は、ブロック702で開始し、VNFインスタンスは、図4のOSS/BSS402などから、インスタンス化トリガーが受信されたかどうかを判定する。言うまでもなく、いくつかの実施形態では、インスタンス化は、VNFインスタンスが生成された後に自動的に実行されてもよい。そうでない場合、方法700はブロック702にループバックして、インスタンス化トリガーが受信されるのを待ち続ける。インスタンス化トリガーが受信された場合、方法はブロック704に進む。ブロック704で、VNFインスタンスは、起動パラメータのセット(すなわち起動要件)に基づいてインスタンス化する。言うまでもなく、インスタンス化されたVNFインスタンスはアクティブではない(すなわち、VNFインスタンスはネットワークトラフィックを処理していない)。
【0069】
ブロック706において、VNFインスタンスは、セキュアVNFブートストラップキャプチャプロトコルを実行する。これについては、図9および図10を参照してさらに詳細に説明する。ブロック708において、VNFインスタンスは、VNFインスタンスを起動する(すなわち、ネットワークトラフィックを処理することを開始する)ことを指示する起動信号が、例えばNFVセキュリティサービスコントローラ102またはVNFマネージャ410などから受信されたかどうかを判断する。そうでない場合、方法700はブロック708にループバックして、起動信号が受信されるのを待ち続ける。起動信号が受信されると、方法700はブロック710に進む。ブロック710で、VNFインスタンスは、VNFインスタンスによって実行される動作に固有の起動ポリシーおよび構成情報を読み出す。
【0070】
ブロック712において、VNFインスタンスは、動作可能なVNFインスタンスとして安全に登録される。そうするために、VNFインスタンスは、登録要求メッセージをVBS420に安全に(securely)送信する。ブロック714において、VNFインスタンスは、ブロック712で送信された登録要求メッセージに応答して登録確認が受信されたかどうかを判定する。受信されていない場合、方法700はブロック714にループバックして、登録確認を待ち続ける。登録確認が受信されると、方法700はブロック716に進む。ブロック716において、VNFインスタンスは、登録確認と一緒に受信したVNFマネージャのIPアドレスなどにより、対応するVNFマネージャ(例えば、VNFマネージャ410)を識別する。言うまでもなく、いくつかの実施形態では、複数のVNFマネージャがNFVネットワークアーキテクチャ116にあってもよい。したがって、そのような実施形態では、VNFインスタンスに対応するVNFマネージャは、そのVNFマネージャに関連するユニークな識別子により特定され得る。その識別子は、NFVセキュリティサービスコントローラ102により、VNFインスタンスに提供され得る。このように、そのような実施形態では、VNFインスタンスは、進行する前に、NFVセキュリティサービスコントローラ102にそのユニークな識別子を要求することができる。
【0071】
ブロック718において、VNFインスタンスは、識別されたVNFマネージャに接続する。したがって、識別されたVNFマネージャは、VNFインスタンスのライフサイクルを管理(例えば、インスタンス化、更新、クエリ、スケーリング、終了など)することができる。いくつかの実施形態では、ブロック720において、VNFインスタンスは、VNFのライセンス供与および実施を可能にする。したがって、各VNFインスタンス440に割り当てられたライセンスは、(例えば、VNFインスタンス440によって生成された収入に関係するVNFベンダーによって)追跡され実施されることができる。そうするために、いくつかの実施形態では、VNFライセンス情報(例えば、ライセンス番号、ユニークなVNFインスタンス識別子など)は、VNFマネージャ、NFVセキュリティサービスコントローラ102、及び/又は専用ライセンス管理サーバに送信され得る。ブロック722で、VNFインスタンスは、そのVNFインスタンスがインスタンス化された動作(すなわち、サービスまたは機能)を実行する。
【0072】
ここで図8を参照し、NFVネットワークアーキテクチャ116のVNFインスタンス(例えば、図4のVNFインスタンス440の1つ)を安全にブートストラップする通信フロー800の実施形態である。例示的な通信フロー800は、NFVオーケストレータ104、VIM106のVIMコントローラ430、ハイパーバイザ462のクラウドオペレーティングシステムエージェント464、NFVインフラストラクチャ108のハイパーバイザ462、VNFインスタンス440のうちの1つのVBSエージェントのうちの1つ(例えば、VBSエージェント448、VBSエージェント450、またはVBSエージェント452)、プラットフォーム472のTEE476、NFVセキュリティサービスコントローラ102のVBS420、およびVNFマネージャ410を含む。例示的な通信フロー800はさらに、実施形態に応じて、一部が別々にまたは一緒に実行され得るいくつかのメッセージフローを含む。
【0073】
メッセージフロー802において、NFVオーケストレータ104は、OSS/BSS402から受信したVNFインスタンス化トリガーをVIMコントローラ430に安全に(securely)送信する。VNFインスタンス化トリガーは、署名付きVNF画像および署名付きVNF記述子の署名を含むことができる。署名されたVNF記述子は、起動パラメータ(すなわち、起動要件)を含む、VNF画像の要件及び/又は必要な要素を記述するデータ構造である。メッセージフロー804において、TEE476はVBS420を安全にプロビジョニングする。そうするために、TEE476は、プロビジョニングパラメータと、VNFがインスタンス化されるプラットフォームにユニークな識別子(すなわち、ユニークプラットフォーム識別子)とを、VBSが常駐するセキュリティコントローラ102に提供する。したがって、いくつかの実施形態では、TEE422を使用して、VBS420を安全にプロビジョニングすることができる。プロビジョニングパラメータには、VBS420の公開鍵、およびIPアドレス、DNSなどのVBS420の識別子が含まれる。前述の通り、ユニークなプラットフォーム識別子は、ハードウェア識別子、OEMボード識別子、BIOS/UEFI SKU識別子、FRU識別子、オペレーティングシステムバージョン識別子などの組合せハッシュまたはGUIDであってもよい。いくつかの実施形態では、TEE476は、VBS420の公開鍵およびVBS420識別子、ならびにVBS420を安全にプロビジョニングするために必要な他のプロビジョニング項目を送信するために、帯域外(OOB)通信技術を使用してVBS420を安全にプロビジョニングすることができる。
【0074】
メッセージフロー806において、VIMコントローラ430は、署名されたVNF記述子および署名されたVNF画像など、VNFインスタンス化トリガーで受信された情報の署名を検証する。いくつかの実施形態では、署名付きVNF画像は、2つ以上の署名付きVNF画像を含むことができる。そのような実施形態では、2つ以上の署名付きVNF画像を生成して、VNF画像のグループとして再度署名するか、または別々の署名付きVNF画像として配信することができる。したがって、署名されたVNF画像に関連する各署名は、VIMコントローラ430で検証される。
【0075】
メッセージフロー810において、VIMコントローラ430は、VNFイメージおよび記述子に基づいてVNFインスタンスをスピンアップするコマンドを安全に送信する。スピンアップコマンドは、さらに、VBSパラメータのセット(すなわち、VBS420の詳細)を含む。これには、VBS420の公開鍵、VBS420のIPアドレス、VBS420のドメインネームサーバ(DNS)、VBS420の完全修飾ドメイン名(FQDN)、VBS420のユニフォームリソースロケータ(URL)などを含むことができる。
【0076】
メッセージフロー812において、ハイパーバイザ462は、署名されたVNF画像および署名されたVNF記述子に基づいて、VNFインスタンス(例えば、VNFインスタンス440のうちの1つ)をスピンアップする。そうするために、ハイパーバイザ462は、メッセージフロー814でVNFシグネチャ(例えば、署名されたVNF画像、署名付きVNF記述子のシグネチャなど)を検証し、メッセージフロー816でVNFインスタンスを生成する。メッセージフロー818で、ハイパーバイザ462はTEE476に登録する。そうするために、ハイパーバイザ462は、生成されたVNFインスタンスにユニークな識別子を安全に送信する。ユニークなVNFインスタンス識別子は、VNF画像インスタンス識別子、VNF記述子識別子、VNFC識別子の構成、VNFコマンドライン識別子、およびVNF OEM識別子、VNFベンダー識別子などの組み合わせハッシュまたはGUIDであってもよい。さらに、ハイパーバイザ462は、VNFインスタンスの構成情報を安全に送信することができる。
【0077】
メッセージフロー820において、VBSエージェントは、VNFインスタンスに対する公開/秘密鍵ペア(すなわち、公開鍵および秘密鍵)を生成する。メッセージフロー822において、VBSエージェントは、TEE476からセキュリティクォートを読み出す。したがって、ネットワークパケットの改ざん、ネットワークパケットの破損、ネットワークパケット内の悪意のあるコンテンツなど、可能性のあるセキュリティ脅威を検出するリモートアテステーションを実装することもできる。そのため、VBSエージェントは、ユニークなプラットフォーム識別子、ユニークなVNFインスタンス識別子などのVNF識別情報をTEE476に安全に送信することができる。
【0078】
メッセージフロー824において、VBS420は、VNFマネージャ410とのセキュアホワイトリスト登録を実行する。言い換えれば、VBS420は、VNFマネージャ410によって管理されるべき認識された(すなわち、特権を有するかまたは別の方法で承認された)VBSエージェントのリストまたはレジスタにVNFインスタンスを追加する。そうするために、VBS420は、VNF識別情報(例えば、ユニークなVNFインスタンス識別子)をVNFマネージャ410および1つ以上のVBSパラメータ(例えば、VBS420のIPアドレス、VBS420のDNSなど)に安全に送信し得る。
【0079】
メッセージフロー826において、VBSエージェントは、図9及び図10に示す、セキュアなVNFブートストラップ取得プロトコルを実行する。メッセージフロー828で、VBSエージェントはVNFインスタンスをアクティブ化する。換言すると、VNFインスタンスでネットワークトラフィック処理が可能になる。メッセージフロー830において、VBS420は、ユニークなVNFインスタンス識別子を含むVNF起動メッセージをVNFマネージャ410に安全に送信して、VNFインスタンスが現在アクティブであることを示す。同様に、メッセージフロー832において、VBSエージェントは、VNFインスタンスが起動されたことを示すVNF起動メッセージ(VNF activated message)をVNFマネージャ410に安全に送信する。したがって、VNF起動メッセージは、ユニークなVNFインスタンス識別子を含む。
【0080】
ここで図9を参照して、使用時、VBSエージェント(例えば、図4のVBSエージェント448、VBSエージェント450、またはVBSエージェント452)は、セキュア(secure)VNFブートストラップ取得プロトコルを実行する方法900を実行することができる。方法900はブロック902で開始し、VBSエージェントは開始メッセージをVBS420に安全に送信する。開始メッセージは、VBS420にそれぞれのVBSエージェントが開始したことを通知する任意のタイプのメッセージとして実施することができる。ブロック904において、VBSエージェントは、安全な認証(secure authentication)のために使用されるVBSエージェントによって生成されたノンス(nonce)(例えば、VBS420において再生を検出するためにVBSエージェントによって発行されたランダムチャレンジ)で開始メッセージを安全に送信する。ブロック906において、VBSエージェントは、VBS420から開始応答メッセージを安全に受信する。ブロック908において、VBSエージェントは、開始応答メッセージの一部としてブロック904で開始メッセージと共に送信されたノンス(nonce)を受信する。さらに、ブロック910において、VBSエージェントは、開始応答メッセージの一部としてVBS420によって生成されたノンスを受信する。したがって、応答の生存性を証明するために、開始応答メッセージに対して生存性検出を実行することができる。さらに、ブロック912において、VBSエージェントは、VBS420の秘密鍵を使用して、VBS420によって署名された開始応答メッセージを受信する。
【0081】
ブロック914において、VBSエージェントは、VBS420に、登録要求メッセージを安全に受信する。そうするために、ブロック916において、VBSエージェントは、登録要求メッセージの一部として、TEE476の秘密鍵を使用して、TEE476によって署名されたセキュリティクォート(security quote)を安全に送信する。セキュリティクォートは、その計算は以下でさらに詳細に説明するが、セキュリティクォートの受信者がデジタル署名された値の送信者を認証することができるデジタル署名された値である。したがって、ネットワークパケットの改ざん、ネットワークパケットの破損、ネットワークパケット内の悪意のあるコンテンツなど、可能性のあるセキュリティ脅威を検出するリモートアテステーションを実装することもできる。さらに、ブロック918で、VBSエージェントは、VNFの秘密鍵を使用してVBSエージェントにより署名されたセキュリティ証明要求(security credential request)を送信し、登録要求メッセージの一部としてセキュリティ証明書(例えば、証明書、署名されたハッシュ結果など)を要求することができる。いくつかの実施形態では、セキュリティ証明要求は、VBS420およびVBSエージェントで生成された各ノンス、およびVNFインスタンスの公開鍵を含むことができる。追加的または代替的に、いくつかの実施形態では、証明要求は、TEE476の秘密鍵を使用してTEE476によって署名されたクォート(quote)を含むこともできる。
【0082】
ブロック920において、VBSエージェントは、VBS420から開始応答メッセージを安全に受信する。ブロック922において、VBSエージェントによって受信された登録要求メッセージ応答は、有効なセキュリティ証明を含む。さらに、ブロック924において、VBSエージェントによって受信された登録要求メッセージ応答は、対応するVNFマネージャ(例えば、図4のVNFマネージャ410)のIPアドレスを含む。ブロック926において、VBSエージェントによって受信された登録要求メッセージ応答は、VBS420の秘密鍵を使用してそのVBS420によって署名される。
【0083】
ここで図10を参照して、VBSエージェント(例えば、図4のVBSエージェント448、VBSエージェント450、またはVBSエージェント452)により、セキュア(secure)VNFブートストラップ取得プロトコルを実行する通信フロー1000の一実施形態を示す。例示的な通信フロー1000は、VNFインスタンス440(例えば、)の1つのVBSエージェントの1つ、プラットフォーム472のTEE476、およびNFVセキュリティサービスコントローラ102のVBS420を含む。例示的な通信フロー1000はさらに、実施形態に応じて、一部が別々にまたは一緒に実行され得るいくつかのメッセージフローを含む。
[0084]
メッセージフロー1002において、VBSエージェントは、ノンス(例えば、認証のための任意の数)を含む開始メッセージをVBS420に安全に送信する。メッセージフロー1004において、VBS420は、VBSエージェントのノンスと、他のノンス(例えば、認証のための別の任意の数)を含む開始応答メッセージを安全にVBSエージェントに送信する。さらに、開始応答メッセージは、VBS420の秘密鍵を使用してVBS420によって署名される。メッセージフロー1006において、VBSエージェントは、VBS420に、登録要求メッセージを安全に受信する。登録要求メッセージは、TEE476によって署名された秘密鍵を使用して、TEE476によって署名されたセキュリティクォート(図11)を含む。さらに、登録要求メッセージは、VBSエージェントからのノンスおよびVBS420からのノンスの両方を含むセキュリティ証明要求(security credential request)と、VBSエージェントが開始されるVNFインスタンスの公開鍵とを含む。さらに、セキュリティ保証要求は、VNFインスタンスの秘密鍵を使用してVBSエージェントによって署名される。TEE476によって計算され署名されたセキュリティクォートは、TEEクォートオペレーションの結果であり、これについては、図11でさらに詳細に説明する。
【0084】
メッセージフロー1008において、VBS420は、VBSエージェントから受信したTEE476によって署名されたセキュリティクォートを検証する。メッセージフロー1010において、VBS420は、一連のホワイトリストチェックを実行して、VBS420が正しく構成されていることを検証する。したがって、いくつかの実施形態では、VBS420は、VBS420を安全にプロビジョニングするために使用されたTEE476によって送信されたプロビジョニングパラメータを検証することによって、ホワイトリストチェックを実行することができる(メッセージフロー804参照)。追加的または代替的に、いくつかの実施形態では、VBS420は、受信したユニークなプラットフォーム識別子が、VBS420をプロビジョニングしたTEEがインスタンス化されたプラットフォームのセキュリティポリシー(例えば、セキュアブートポリシー、TPMポリシー、バージョニングポリシーなど)に関して有効であることを検証することによって、ホワイトリストチェックを実行することができる。さらに、いくつかの実施形態では、VBS420は、(例えば、ユニークなVNFインスタンス識別子に基づき)ライセンス有効性チェックなどの追加のポリシーの有効性をチェックすることにより、ホワイトリストチェックを実行することができる。さらに、いくつかの実施形態では、VBSエージェント420がVBS420に登録されたことを確認するなどして、VBSエージェント420がホワイトリストチェックの一部としてVBS420と通信することが承認されているかどうかを、追加的または代替的に検証することができる。
【0085】
メッセージフロー1012において、VBS420は、VBSエージェントから受信したVNFインスタンスのノンスセッションおよび公開鍵を検証することにより、セキュリティ証明要求を検証する。そうするために、VBS420は、セッションノンス(すなわち、VBSエージェントによって生成されたノンスおよびVBS420によって生成されたノンス)を使用して、遅延またはリプレイ攻撃を検出する生存性チェック(liveness check)を実行する。セッションノンスは、攻撃を検出するために使用される乱数であってよく、その値はそれらの間で送信されるメッセージに対応するフローに関連付けられて記憶される。したがって、セッションノンスは、通信されたメッセージの生存性(すなわち、セッションが期限切れではないこと)を検出するため、およびVBS420が実行している複数のフローを区別するために、各フローをチェックすることができる。
【0086】
メッセージフロー1014において、VBS420は、セキュリティ証明要求の検証時に有効なセキュリティ証明(例えば、セキュリティ証明書、署名済みハッシュ結果など)を生成または読み出しする。言うまでもなく、1008から1014までのメッセージフローは、任意の順序で実行することができるが、いくつかの実施形態では、VBS420によって、セッションの期限切れのタイムラインを提供するローカルセキュリティポリシーを使用することができる。したがって、メッセージフロー1008から1014の実行の順序は、VBS420による、現在アクティブな、またはバッファされているセッションの数、VBSに利用可能な計算リソース、セッション時間満了制約などに基づくことができる。
【0087】
メッセージフロー1016において、VBS420は、VBSエージェントに、登録応答メッセージを安全に送信する。登録応答メッセージは、VBSエージェントによって生成されたノンス、VBS420によって生成されたノンス、有効なセキュリティ資格、VBSエージェントの管理をするVNFマネージャ410の識別子(例えば、IPアドレス、DNS、FQDN、URLなど)、ホワイトリスト化されたVNFマネージャのセット、許可されたVNFCのセット(該当する場合)、ユニークなVNFインスタンス識別子、および1つ以上のポリシーを含む。1つ以上のポリシーは、セキュリティ監視ポリシー、ネットワークポリシー、ネットワークパケット処理ポリシーなど、特定のサービスまたは機能の実行方法に関する方向性または指示をVBSエージェントに提供する任意のタイプのポリシーを含むことができる。さらに、登録要求メッセージ応答は、VBS420の秘密鍵を使用してVBSによって署名される。言うまでもなく、いくつかの実施形態では、登録応答メッセージは追加及び/又は代替パラメータを含むことができる。
【0088】
言うまでもなく、いくつかの実施形態では、セキュリティクォートは、例えば、追加及び/又は代替情報を含むように拡張可能であり、VNFインスタンスがインスタンス化されるプラットフォームの追加のコンポーネントをサポートしてもよい。例えば、追加情報は、プラットフォーム機能マスク、プラットフォームNIC及び/又はスイッチマスク、プラットフォームのサービス機能連鎖(SFC)ポリシー、セキュリティ証明識別子のリストなどを含むことができる。したがって、安全でなく非スケーラブルな環境における静的イメージを用いる従来のオペレータクラウドネットワークとは異なり、セキュアVNFブートストラップキャプチャプロトコルの動的な性質は、仮想化されたオペレータクラウドのより大きな動的スケーリングアウト/インを可能にする静的コンフィギュレーションおよびセキュリティオプションの量を、又は必要性を減らす可能性がある。
【0089】
ここで図11を参照し、使用時、信頼できる実行環境(例えば、図4のTEE476)は、VBSエージェント(例えば、図4のVBSエージェント448、VBSエージェント450、またはVBSエージェント452)に対するTEEクォーティング動作を実行する方法1100を実行することができる。方法1100は、ブロック1102で開始し、TEEは、VBSエージェントの起動パラメータのセットにハッシュ関数を適用して、ハッシュ結果を生成する。起動パラメータは、VNF及び/又はVBSエージェントのインスタンスを起動するために使用され得る任意のパラメータを含むことができる。そうするために、ブロック1104において、TEEは、VNFインスタンスのイメージ、VNFインスタンスの記述子、VNFインスタンスにユニークな識別子(すなわち、ユニークVNFインスタンス識別子)、及び/又はVNFインスタンスがインスタンス化されてハッシュ結果を生成するプラットフォームにユニークな識別子(すなわちユニークプラットフォーム識別子)にハッシュ関数を適用する。したがって、TEEは、VNFを起動するためにVNF起動パラメータのすべてがTEEによって知られているので、VNFをロードするときに第1のハッシュ関数を適用することができる。言い換えると、TEEは、VBSエージェントからの入力を一切受けずに第1のハッシュ関数を適用することができる。
【0090】
ブロック1106において、TEEは、VBS420のVBS識別子のセットおよび1つ以上のVBSエージェント起動パラメータにハッシュ関数を適用して、第2のハッシュ結果を生成する。VBS識別子のセットは、VBS420の公開鍵、VBS420のIPアドレス、VBS420のDNS、VBS420のFQDN、VBS420のURLなど、VBS420を識別するために使用され得る任意の情報を含むことができる。そうするために、ブロック1108において、TEEは、VBS420の公開鍵、VBS420のIPアドレス、ユニークなVNFインスタンス識別子、ユニークなプラットフォーム識別子にハッシュ関数を適用する。いくつかの実施形態では、ブロック1106でハッシュ関数を適用する前に、別のハッシュ関数をVBS420のVBS識別子のセットに適用することができる。追加的または代替的に、いくつかの実施形態では、ブロック1102で適用されるハッシュ関数のハッシュ結果は、さらにブロック1106で適用されるハッシュ関数の入力として含まれてもよい。
【0091】
ブロック1110において、TEEは、VNFインスタンスの公開鍵にハッシュ関数を適用して、ハッシュ結果を生成する。言うまでもなく、いくつかの実施形態では、ブロック1106で適用されるハッシュ関数のハッシュ結果は、さらにブロック1110で適用されるハッシュ関数の入力として含まれてもよい。第1のハッシュ関数と同様に、TEEは、VBSエージェントからの入力を受信することなくブロック1106のハッシュ関数を適用することができる。ブロック1112で、TEEは、ブロック1102,1106、および1110のすべてのハッシュ結果にハッシュ関数を適用して、最終的なハッシュ結果を生成する。ブロック1114で、TEEは、TEEの秘密鍵を使用して最終的なハッシュ結果に署名し、セキュリティグォートを生成する。
例示
【0092】
本明細書に開示の技術の例を以下に記載する。本技術の実施形態は、以下に記載の一以上の例、及びそれらの組み合わせを含み得る。
【0093】
例1は、ネットワーク機能仮想化(NFV)ネットワークアーキテクチャにおいて複数の仮想ネットワーク機能をブートストラップする仮想ネットワーク機能(VNF)インスタンスのVNFブートストラップサービス(VBS)エージェントであって、VBSキャプチャプロトコル実行モジュールを有し、該VBSキャプチャプロトコル実行モジュールは、(i)前記NFVネットワークアーキテクチャのVBSに開始メッセージを送信し、ここで前記VBSは前記VBSエージェントに通信可能に結合され、前記開始メッセージは前記VBSエージェントがインスタンス化されるとの情報を提供し、(ii)前記開始メッセージの送信に応答して前記VBSから開始応答メッセージを受信し、(iii)前記開始応答メッセージの受信に応答して前記VBSに登録要求メッセージを送信し、ここで前記登録要求メッセージは前記VBSエージェントを前記登録要求メッセージの送信者として認証するのに使用し得るセキュリティクォートと、前記VBSにセキュリティ証明を要求するセキュリティ証明要求とを含み、(iv)前記VBSから登録応答メッセージを受信し、ここで前記登録応答メッセージは前記セキュリティクォートと前記セキュリティ証明要求とが前記VBSにより検証されたことを示すセキュリティ証明を含む。
【0094】
例2は例1の主題を含み、前記開始メッセージは第1ノンスを含み、前記開始応答メッセージは前記VBSの秘密鍵を用いて前記VBSにより署名され、前記第1ノンスと、前記VBSにより生成された第2ノンスとを含み、前記セキュリティ証明要求は前記VNFインスタンスにより前記VNFインスタンスの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VNFインスタンスの公開鍵とを含み、前記登録応答メッセージは、前記VBSにより前記VBSの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VBSエージェントを管理する役割を有するVNFマネージャの識別子と、ホワイトリストされたVNFマネージャのセットと、前記VBSにより認証されたVNFコンポーネント(VMFC)のセットと、ユニークなVNFインスタンス識別子と、1つ以上のポリシーとをさらに含み、前記ポリシーは前記VBSエージェントが機能を実行するのに使用できる命令を含む。
【0095】
例3は例1−2のいずれかの主題を含み、前記VBSキャプチャプロトコル実行モジュールはさらに、トラステッド実行環境(TEE)により前記TEEの秘密鍵を用いて署名された前記セキュリティクォートを読み出し、前記TEEは前記VNFインスタンスがインスタンス化されるプラットフォームにある、
【0096】
例4は例1−3のいずれかの主題を含み、前記VBSキャプチャプロトコル実行モジュールはさらに、(i)前記NFVネットワークアーキテクチャのNFVオーケストレータからインスタンス化トリガーを受け取り、(ii)前記VBSエージェントを初期化し、前記開始メッセージの送信は、前記インスタンス化トリガーの受け取りに応答した前記開始メッセージの送信を含む。
【0097】
例5は例1−4のいずれかの主題を含み、前記VBSエージェントの初期化は、(i)前記VNFインスタンスの公開/秘密鍵ペアの生成と、ここで前記VNFインスタンスの公開/秘密鍵ペアは公開鍵と秘密鍵とを含み、(ii)前記VNFインスタンスが生成されたプラットフォームのトラステッド実行環境(TEE)からの前記セキュリティクォートの読み出しと、ここで前記セキュリティクォートは前記TEEの秘密鍵を用いて前記TEEにより署名される、を含む。
【0098】
例6は例1−5のいずれかの主題を含み、前記VBSキャプチャプロトコル実行モジュールはさらに、(i)前記セキュリティ証明要求を生成し、(ii)前記VBSからの前記開始応答メッセージの受信に応答して前記VNFインスタンスの前記秘密鍵を用いて前記セキュリティ証明要求に署名する、
【0099】
例7は例1−6のいずれかの主題を含み、前記VBSキャプチャプロトコル実行モジュールはさらに、前記セキュリティ証明の受信に応答して、前記VNFインスタンスを起動し、前記VNFインスタンスにより受け取られるネットワークトラフィックをアクティブに処理する。
【0100】
例8は例1−7のいずれかの主題を含み、前記VBSキャプチャプロトコル実行モジュールはさらに、前記VFVネットワークアーキテクチャのVNFマネージャに情報を送信し、前記情報は前記VNFマネージャに、(i)前記VNFインスタンスがアクティブであること、及び(ii)前記VNFインスタンスの構成は前記VNFマネージャにより管理されることを示し、ここで前記情報は、前記VNFインスタンスにユニークであり、前記VNFマネージャにおいて認証されたVNFインスタンスのホワイトリストに前記VNFインスタンスを追加するのに使用できるVNFインスタンス識別子を含む。
【0101】
例9は例1−8のいずれかの主題を含み、前記VBSからの前記登録応答メッセージの受け取りはさらに、前記VBSエージェントに通信可能に結合されたVNFマネージャの識別子の受け取りを含む。
【0102】
例10は例1−9のいずれかの主題を含み、前記VNFマネージャの識別子の受け取りは、インターネットプロトコル(IP)アドレス、ドメインネームサーバ(DNS)、完全修飾ドメイン名(FQDN)、ユニフォームリソースロケータ(URL)のうち少なくとも1つの受け取りを含む。
【0103】
例11は例1−10のいずれかの主題を含み、前記VBSキャプチャプロトコル実行モジュールはさらに、前記VNFマネージャの識別子の受け取りに応答して前記VNFマネージャの識別子を用いて前記VNFマネージャに接続する。
【0104】
例12は例1−11のいずれかの主題を含み、前記VBSキャプチャプロトコル実行モジュールはさらに、前記VNFマネージャの識別子の受け取りに応答して、前記VNFマネージャにVNFライセンス情報を送信し、前記VNFライセンス情報は、前記VNFインスタンスに関連するライセンスの使用をトラッキングするのに使用できる情報を含む。
【0105】
例13は、ネットワーク機能仮想化(NFV)ネットワークアーキテクチャにおける複数の仮想ネットワーク機能をブートストラップする方法であって、前記NFVネットワークアーキテクチャのVNFインスタンスのVNFブートストラップサービス(VBS)エージェントが、前記VBSエージェントに通信可能に結合されたNFVネットワークアーキテクチャのVBSに開始メッセージを送信するステップであって、前記開始メッセージは前記VBSエージェントがインスタンス化されたとの情報を提供する、ステップと、前記VBSエージェントが、前記開始メッセージに応答して、前記VBSから開始応答メッセージを受け取るステップと、前記VBSエージェントが、前記開始応答メッセージの受信に応答して前記VBSに登録要求メッセージを送信するステップであって、前記登録要求メッセージは前記VBSエージェントを前記登録要求メッセージの送信者として認証するのに使用し得るセキュリティクォートと、前記VBSにセキュリティ証明を要求するセキュリティ証明要求とを含む、ステップと、前記VBSエージェントが、前記VBSから登録応答メッセージを受け取るステップであって、前記登録応答メッセージは前記セキュリティクォートと前記セキュリティ証明要求とがそれぞれ前記VBSにより検証されたことを示すセキュリティ証明を含む、ステップを含む。
【0106】
例14は例13の主題を含み、前記開始メッセージを送信するステップは第1ノンスを送信するステップを含み、前記開始応答メッセージを受け取るステップは、前記VBSの秘密鍵を用いて前記VBSにより署名され、前記第1ノンスと、前記VBSにより生成された第2ノンスとを含む前記開始応答メッセージを受け取るステップを含み、前記セキュリティ証明要求を送信するステップは、前記VNFインスタンスにより前記VNFインスタンスの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VNFインスタンスの公開鍵とを含む前記セキュリティ証明要求を送信するステップを含み、前記登録応答メッセージを受け取るステップは、前記VBSにより前記VBSの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VBSエージェントを管理するVNFマネージャの識別子と、ホワイトリストされたVNFマネージャのセットと、前記VBSにより認証されたVNFコンポーネント(VMFC)のセットと、ユニークなVNFインスタンス識別子と、1つ以上のポリシーとをさらに含む前記登録応答メッセージを受け取るステップを含み、前記ポリシーは前記VBSエージェントが機能を実行するのに使用できる命令を含む。
【0107】
例15は例13−14のいずれかの主題を含み、前記VBSエージェントが、トラステッド実行環境(TEE)により前記TEEの秘密鍵を用いて署名された前記セキュリティクォートを読み出すステップであって、前記TEEは前記VNFインスタンスがインスタンス化されるプラットフォームにある、ステップをさらに含む。
【0108】
例16は例13−15のいずれかの主題を含み、さらに前記VBSエージェントが、前記NFVネットワークアーキテクチャのNFVオーケストレータからインスタンス化トリガーを受け取るステップと、前記VBSエージェントを初期化するステップとを含み、前記開始メッセージを送信するステップは、前記インスタンス化トリガーの受け取りに応答して前記開始メッセージを送信するステップを含む。
【0109】
例17は例13−16のいずれかの主題を含み、前記VBSエージェントを初期化するステップは、(i)公開/秘密鍵ペアを生成するステップであって、前記VNFインスタンスの公開/秘密鍵ペアは公開鍵と秘密鍵とを含む、ステップと、(ii)前記VNFインスタンスが生成されたプラットフォームのトラステッド実行環境(TEE)からの前記セキュリティクォートの読み出すステップであって、ここで前記セキュリティクォートは前記TEEの秘密鍵を用いて前記TEEにより署名される、ステップとを含む、
【0110】
例18は例13−17のいずれかの主題を含み、さらに、前記セキュリティ証明要求を生成するステップと、前記VBSからの前記開始応答メッセージの受信に応答して前記VNFインスタンスの前記秘密鍵を用いて前記セキュリティ証明要求に署名するステップとをさらに含む。
【0111】
例19は例13−18のいずれかの主題を含み、前記セキュリティ証明の受け取りに応答して、前記VNFインスタンスを起動して、前記VNFインスタンスにより受け取られたネットワークトラフィックをアクティブに処理するステップをさらに含む。
【0112】
例20は例13−19のいずれかの主題を含み、さらに、前記NFVネットワークアーキテクチャのVNFマネージャに、(i)前記VNFインスタンスがアクティブであること、及び(ii)前記VNFインスタンスの構成が前記VNFマネージャにより管理されることを前記VNFマネージャに示す情報を送信するステップであって、前記情報は、前記VNFインスタンスに対してユニークであり、前記VNFマネージャにおいて前記VNFインスタンスを認証されたVNFインスタンスのホワイトリストに追加するのち使用できるVNFインスタンス識別子を含む。
【0113】
実施例21は実施例13−20のいずれかの主題を含み、前記VBSから前記登録応答メッセージを受け取るステップはさらに、前記VBSエージェントに通信可能に結合されたVNFマネージャの識別子を受け取るステップを含む。
【0114】
実施例22は実施例13−21のいずれかの主題を含み、前記VNFマネージャの識別子を受け取るステップは、インターネットプロトコル(IP)アドレス、ドメインネームサーバ(DNS)、完全修飾ドメイン名(FQDN)、ユニフォームリソースロケータ(URL)のうち少なくとも1つを受け取るステップを含む。
【0115】
例23は例13−22のいずれかの主題を含み、前記VNFマネージャの識別子の受け取りに応答して、前記VNFマネージャの識別子を用いて、前記VNFマネージャに接続するステップをさらに含む。
【0116】
例24は例13−23のいずれかの主題を含み、前記VNFマネージャの識別子の受け取りに応答して、前記VNFマネージャにVNFライセンス情報を送信するステップであって、前記VNFライセンス情報は、前記VNFインスタンスに関連するライセンスの使用をトラッキングするのに使用できる情報を含む、ステップをさらに含む。
【0117】
例25は計算装置を含み、該計算装置は、プロセッサと、前記プロセッサにより実行されたとき、前記プロセッサに、請求項13ないし23いずれか一項に記載の方法を実行させる複数の命令を格納したメモリとを有する。
【0118】
例26は、実行されると、計算装置に請求項13−24いずれか一項に記載の方法を実行させる複数の命令を格納した一以上の機械読み取り可能記憶媒体を含む。
【0119】
例27は、ネットワーク機能仮想化(NFV)ネットワークアーキテクチャにおいて複数の仮想ネットワーク機能をブートストラップする仮想ネットワーク機能(VNF)ネットワークアーキテクチャのVNFインスタンスのVNFブートストラップサービス(VBS)エージェントであって、前記VBSエージェントに通信可能に結合された前記NFVネットワークアーキテクチャのVBSに開始メッセージを送信する手段であって、前記開始メッセージは前記VBSエージェントがインスタンス化されるとの情報を提供する、手段と、前記開始メッセージに応答して、前記VBSから開始応答メッセージを受け取る手段と、前記開始応答メッセージの受信に応答して前記VBSに登録要求メッセージを送信する手段であって、前記登録要求メッセージは前記VBSエージェントを前記登録要求メッセージの送信者として認証するのに使用し得るセキュリティクォートと、前記VBSにセキュリティ証明を要求するセキュリティ証明要求とを含む、手段と、前記VBSから登録応答メッセージを受け取る手段であって、前記登録応答メッセージは前記セキュリティクォートと前記セキュリティ証明要求とが前記VBSにより検証されたことを示すセキュリティ証明を含む、手段とを有する。
【0120】
例28は例27の主題を含み、前記開始メッセージを送信する手段は、第1ノンスを送信する手段を有し、前記開始応答メッセージを受け取る手段は、前記VBSの秘密鍵を用いて前記VBSにより署名され、前記第1ノンスと、前記VBSにより生成された第2ノンスとを含む前記開始応答メッセージを受け取る手段を含み、前記セキュリティ証明要求を送信する手段は、前記VNFインスタンスにより前記VNFインスタンスの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VNFインスタンスの公開鍵とを含む前記セキュリティ証明要求を送信する手段を含み、前記登録応答メッセージを受け取る手段は、前記VBSにより前記VBSの秘密鍵を用いて署名され、前記第1ノンスと、前記第2ノンスと、前記VBSエージェントを管理するVNFマネージャの識別子と、ホワイトリストされたVNFマネージャのセットと、前記VBSにより認証されたVNFコンポーネント(VMFC)のセットと、ユニークなVNFインスタンス識別子と、1つ以上のポリシーとをさらに含む前記登録応答メッセージを受け取る手段を含み、前記ポリシーは前記VBSエージェントが機能を実行するのに使用できる命令を含む。
【0121】
例29は例27及び28の主題を含み、前記VBSから前記登録応答メッセージを受け取る手段はさらに、前記VBSエージェントに通信可能に結合されたVNFマネージャの識別子を受け取る手段を含む。
【0122】
例30は例27−29の主題を含み、前記VNFマネージャの識別子の受け取りに応答して、前記VNFマネージャの識別子を用いて、前記VNFマネージャに接続する手段をさらに含む。
【0123】
例31は例27−30の主題を含み、前記VNFマネージャの識別子の受け取りに応答して、前記VNFマネージャにVNFライセンス情報を送信する手段であって、前記VNFライセンス情報は、前記VNFインスタンスに関連するライセンスの使用をトラッキングするのに使用できる情報を含む、手段をさらに含む。
【0124】
例32は、ネットワーク機能仮想化(NFV)ネットワークアーキテクチャにおいて複数の仮想ネットワーク機能をブートストラップするネットワーク機能仮想化(NFV)ネットワークアーキテクチャ方法のサービスのVNFブートストラップサービス(VBS)であって、前記VBSはVBSエージェント通信モジュールを有し、該VBSエージェント通信モジュールは、(i)前記VBSに通信可能に結合された前記NFVネットワークアーキテクチャのVNFインスタンスのVBSエージェントから開始メッセージを受け取り、ここで前記開始メッセージは前記VBSエージェントがインスタンス化されたとの情報を提供し、(ii)前記開始メッセージの受け取りに応答して前記VBSに開始応答メッセージを送信し、前記開始応答メッセージの送信に応答して前記VBSから登録要求メッセージを受信し、ここで前記登録要求メッセージは前記VBSにセキュリティ証明を要求するセキュリティ証明要求とセキュリティクォートとを含み、(iv)前記登録要求メッセージのセキュリティ証明要求を受信したことに応答して、セキュリティクォートを検証して、登録要求メッセージの送信者であるVBSエージェントを認証し、(v)前記セキュリティクォートの検証に応答して、前記VBSエージェントに登録応答メッセージを送信し、ここで前記登録応答メッセージは、セキュリティクォートがVBSによって検証されたことを示すセキュリティ証明を含む。
【0125】
例33は例32の主題を含み、開始メッセージの受信は第1ノンスの受信を含み、前記開始応答メッセージの送信は、前記VBSの秘密鍵を用いて前記VBSにより署名された開始応答メッセージの送信を含み、ここで前記開始応答メッセージは前記第1ノンスと、前記VBSにより生成された第2ノンスとを含み、前記セキュリティ証明要求の受信は、前記VNFインスタンスにより前記VNFインスタンスの秘密鍵を用いて署名された前記セキュリティ証明要求の受信を含み、前記セキュリティ証明要求は、前記第1ノンスと、前記第2ノンスと、前記VNFインスタンスの公開鍵とを含む。
【0126】
例34は例32及び33の主題を含み、前記登録応答メッセージの送信は、前記VBSにより前記VBSの秘密鍵を用いて署名された登録応答メッセージの送信を含み、前記登録応答メッセージはさらに、前記第1ノンスと、前記第2ノンスと、前記VBSエージェントを管理する役割を果たすVNFマネージャの識別子と、ホワイトリストされたVNFマネージャのセットと、前記VBSにより認証されたVNFコンポーネント(VMFC)のセットと、ユニークなVNFインスタンス識別子と、1つ以上のポリシーとをさらに含み、前記1つ以上のポリシーは前記VBSエージェントにより機能を実行するため使用できる命令を含む。
【0127】
例35は例32−34の主題を含み、前記VBSエージェント通信モジュールはさらに、前記VNFインスタンスが生成されたプラットフォームのトラステッド実行環境(TEE)からプロビジョニングパラメータのセットを受信し、前記プロビジョニングパラメータは、VBSをセキュアにプロビジョンするのに使用でき、(i)VNFインスタンスが生成されたプラットフォームのユニークなプラットフォーム識別子と、(ii)VBSの公開鍵と、(iii)VBSのユニークな識別子とを含み、プロビジョニングパラメータに基づきVBSをプロビジョンする。
【0128】
例36は例32−35の主題を含み、さらに、VBSエージェント検証モジュールは、(i)登録要求メッセージの受信に応答して、TEEの秘密鍵に基づいてセキュリティクォートの認証を検証し、ここでセキュリティクォートはTEEの秘密鍵を用いて署名され、(ii)ホワイトリストチェックを実行してVBSの構成を検証し、第1ノンスと第2ノンスとを用いて登録要求メッセージの生存性を検出して、前記第1ノンスと第2ノンスが期限切れとなっていないことを確認し、(iv)VNFインスタンスの公開鍵の認証を検証する。
【0129】
例37は例32−36の主題を含み、ホワイトリストチェックを実行するステップは、VBSにより受信されたプロビジョニングパラメータを検証しVBSをセキュアにプロビジョンするステップを含む。
【0130】
例38は例32−37の主題を含み、ホワイトリストチェックを実行するステップは、VBSによりアクセス可能なセキュリティポリシーの有効プラットフォーム識別子に対応するプラットフォーム識別子を検証するステップを含む。
【0131】
例39は例32−38の主題を含み、(i)VNFインスタンスの公開鍵とセキュリティクォートの真正性を検証し、登録要求メッセージが生きていることを検出することに応答して、セキュリティ証明を生成するVBSエージェントセキュリティ証明モジュールをさらに含む。
【0132】
例40は例32−39の主題を含み、VBSエージェント通信モジュールはさらに、(i)公開鍵と秘密鍵を含むVBS公開/秘密鍵ペアを生成し、(ii)VBS公開/秘密鍵ペアの秘密鍵を用いて開始応答メッセージに署名し、開始応答メッセージを送信するステップは、署名された開始応答メッセージを送信するステップを含む。
【0133】
例41は例32−40の主題を含み、VBSエージェント通信モジュールはさらに、VBS公開/秘密鍵ペアの秘密鍵を用いて登録応答メッセージに署名し、開始応答メッセージを送信するステップは、署名された開始応答メッセージを送信するステップを含む。
【0134】
例42は例32−41の主題を含み、前記VBSエージェントに登録応答メッセージを送信するステップは、VBSエージェントに通信可能に結合されたVNFマネージャの識別子を送信するステップを含み、前記識別子はVNFマネージャを識別し、VNFマネージャと通信チャネルを確立するために使用できる。
【0135】
例43は例32−42の主題を含み、前記VNFマネージャの識別子を送信するステップは、インターネットプロトコル(IP)アドレス、ドメインネームサーバ(DNS)、完全修飾ドメイン名(FQDN)、ユニフォームリソースロケータ(URL)のうち少なくとも1つを送信するステップを含む。
【0136】
例44は例32−43の主題を含み、VBSエージェント通信モジュールはさらに、VNFマネージャに、VNFインスタンスと通信チャネルを設定するのにVNFマネージャが使用できるVNF起動メッセージを送信する。
【0137】
例45は、ネットワーク機能仮想化(NFV)ネットワークアーキテクチャにおける複数の仮想ネットワーク機能をブートストラップする方法であって、NFVネットワークアーキテクチャのVNFブートストラップサービス(VBS)エージェントが、VBSに通信可能に結合されたNFVネットワークアーキテクチャのVNFインスタンスのVBSエージェントから開始メッセージを受信するステップであって、前記開始メッセージは前記VBSエージェントがインスタンス化されたとの情報を提供する、ステップと、VBSが、開始メッセージの受信に応答して、前記VBSエージェントに開始応答メッセージを送信するステップと、VBSが、開始応答メッセージの送信に応答して、VBSエージェントから登録要求メッセージを受信するステップであって、前記登録要求メッセージは前記VBSにセキュリティ証明を要求するセキュリティ証明要求とセキュリティクォートとを含む、ステップと、VBSが、登録要求メッセージのセキュリティ証明要求を受信したことに応答して、セキュリティクォートを検証して、VBSエージェントを登録要求メッセージの送信者として認証するステップと、VBSが、セキュリティクォートの検証に応答して、前記VBSエージェントに登録応答メッセージを送信するステップであって、前記登録応答メッセージは、セキュリティクォートがVBSによって検証されたことを示すセキュリティ証明を含む、ステップとを含む。
【0138】
例46は例45の主題を含み、前記開始メッセージを受信するステップは第1ノンスを受信するステップを含み、前記開始応答メッセージを送信するステップは、前記VBSの秘密鍵を用いて前記VBSにより署名された開始応答メッセージを送信するステップを含み、ここで前記開始応答メッセージは前記第1ノンスと、前記VBSにより生成された第2ノンスとを含み、前記セキュリティ証明要求を受信するステップは、前記VNFインスタンスにより前記VNFインスタンスの秘密鍵を用いて署名された前記セキュリティ証明要求を受信するステップを含み、前記セキュリティ証明要求は、前記第1ノンスと、前記第2ノンスと、前記VNFインスタンスの公開鍵とを含む。
【0139】
例47は例45及び46の主題を含み、登録応答メッセージを送信するステップは、VBSの秘密鍵を用いてVBSにより署名された登録応答メッセージを送信するステップを含み、前記登録応答メッセージはさらに、前記第1ノンスと、前記第2ノンスと、前記VBSエージェントを管理する役割を有するVNFマネージャの識別子と、ホワイトリストされたVNFマネージャのセットと、前記VBSにより認証されたVNFコンポーネント(VNFC)のセットと、ユニークなVNFインスタンス識別子と、1つ以上のポリシーとを含み、前記1つ以上のポリシーは前記VBSエージェントが機能を実行するのに使用できる命令を含む。
【0140】
例48は例45−47の主題を含み、さらに、VBSが、前記VNFインスタンスが生成されたプラットフォームのトラステッド実行環境(TEE)からプロビジョニングパラメータのセットを受信するステップを含み、ここで、前記プロビジョニングパラメータは、VBSをセキュアにプロビジョンするのに使用でき、(i)VNFインスタンスが生成されたプラットフォームのユニークなプラットフォーム識別子と、(ii)VBSの公開鍵と、(iii)VBSのユニークな識別子とを含み、プロビジョニングパラメータに基づきVBSをプロビジョニングするステップを含む。
【0141】
例49は例45−48の主題を含み、さらに、BVSが、登録要求メッセージの受信に応答して、TEEの秘密鍵に基づいてセキュリティクォートの認証を検証するステップであって、ここでセキュリティクォートはTEEの秘密鍵を用いて署名される、ステップと、VBSが、ホワイトリストチェックを実行してVBSの構成を検証するステップと、VBSが、第1ノンスと第2ノンスとを用いて登録要求メッセージの生存性を検出して、前記第1ノンスと第2ノンスが期限切れとなっていないことを確認するステップと、VBSが、VNFインスタンスの公開鍵の真正性を検証するステップとを含む。
【0142】
例50は例45−49の主題を含み、ホワイトリストチェックを実行するステップは、VBSにより受信されたプロビジョニングパラメータを検証しVBSをセキュアにプロビジョンするステップを含む。
【0143】
例51は例45−50の主題を含み、ホワイトリストチェックを実行するステップは、VBSによりアクセス可能なセキュリティポリシーの有効プラットフォーム識別子に対応するプラットフォーム識別子を検証するステップを含む。
【0144】
例52は例45−51の主題を含み、(i)VNFインスタンスの公開鍵とセキュリティクォートの真正性を検証し、(ii)登録要求メッセージが生きていることを検出することに応答して、セキュリティ証明を生成するステップをさらに含む。
【0145】
例53は例45−52の主題を含み、さらに、公開鍵と秘密鍵を含むVBS公開/秘密鍵ペアを生成するステップと、VBS公開/秘密鍵ペアの秘密鍵を用いて開始応答メッセージを署名するステップと、開始応答メッセージを送信するステップは、署名された開始応答メッセージを送信するステップを含む。
【0146】
例54は例45−53の主題を含み、VBS公開/秘密鍵ペアの秘密鍵を用いて登録応答メッセージを署名するステップをさらに含み、開始応答メッセージを送信するステップは、署名された開始応答メッセージを送信するステップを含む。
【0147】
例55は例45−54の主題を含み、前記VBSエージェントに登録応答メッセージを送信するステップは、VBSエージェントに通信可能に結合されたVNFマネージャの識別子を送信するステップを含み、前記識別子はVNFマネージャを識別し、VNFマネージャと通信チャネルを確立するために使用できる。
【0148】
例56は例45−55の主題を含み、前記VNFマネージャの識別子を受け取るステップは、インターネットプロトコル(IP)アドレス、ドメインネームサーバ(DNS)、完全修飾ドメイン名(FQDN)、ユニフォームリソースロケータ(URL)のうち少なくとも1つを受け取るステップを含む。
【0149】
例57は例45−56の主題を含み、VNFマネージャに、VNFインスタンスと通信チャネルを設定するのにVNFマネージャが使用できるVNF起動メッセージを送信するステップをさらに含む。
【0150】
例58は、計算装置であって、プロセッサと、前記プロセッサにより実行されたとき、前記プロセッサに、請求項45−57いずれか一項に記載の方法を実行させる複数の命令を格納したメモリとを有する。
【0151】
例59は、実行されると、計算装置に請求項45−57いずれか一項に記載の方法を実行させる複数の命令を格納した一以上の機械読み取り可能記憶媒体を含む。
【0152】
例60は、ネットワーク機能仮想化(NFV)ネットワークアーキテクチャにおいて複数の仮想ネットワーク機能をブートストラップするネットワーク機能仮想化(NFV)ネットワークアーキテクチャ方法のサービスのVNFブートストラップサービス(VBS)であって、前記VBSは、前記VBSに通信可能に結合された前記NFVネットワークアーキテクチャのVNFインスタンスのVBSエージェントから開始メッセージを受信する手段であって、ここで前記開始メッセージは前記VBSエージェントがインスタンス化されたとの情報を提供する、手段と、前記開始メッセージの受信に応答して、前記VBSに開始応答メッセージを送信する手段と、開始応答メッセージの送信に応答して、VBSエージェントから登録要求メッセージを受信する手段であって、前記登録要求メッセージは前記VBSにセキュリティ証明を要求するセキュリティ証明要求とセキュリティクォートとを含む、手段と、登録要求メッセージのセキュリティ証明要求を受信したことに応答して、セキュリティクォートを検証して、登録要求メッセージの送信者であるVBSエージェントを認証する手段と、前記セキュリティクォートの検証に応答して、前記VBSエージェントに登録応答メッセージを送信する手段であって、前記登録応答メッセージは、セキュリティクォートがVBSによって検証されたことを示すセキュリティ証明を含む、手段と有する。
【0153】
例61は例60の主題を含み、前記開始メッセージを受信する手段は、第1ノンスを受信する手段を有し、登録応答メッセージを送信する手段は、VBSの秘密鍵を用いてVBSにより署名された開始応答メッセージを送信する手段を有し、開始応答メッセージはVBSにより生成された第2ノンスと第1ノンスとを含み、前記セキュリティ証明要求を受信する手段は、前記VNFインスタンスにより前記VNFインスタンスの秘密鍵を用いて署名された前記セキュリティ証明要求を受信する手段を含み、前記セキュリティ証明要求は、前記第1ノンスと、前記第2ノンスと、前記VNFインスタンスの公開鍵とを含む。
【0154】
例62は例60及び61の主題を含み、前記登録応答メッセージを送信する手段は、前記VBSにより前記VBSの秘密鍵を用いて署名された登録応答メッセージを送信する手段を含み、前記登録応答メッセージはさらに、前記第1ノンスと、前記第2ノンスと、前記VBSエージェントを管理する役割を果たすVNFマネージャの識別子と、ホワイトリストされたVNFマネージャのセットと、前記VBSにより認証されたVNFコンポーネント(VMFC)のセットと、ユニークなVNFインスタンス識別子と、1つ以上のポリシーとをさらに含み、前記1つ以上のポリシーは前記VBSエージェントにより機能を実行するため使用できる命令を含む。
【0155】
例63は例60−62の主題を含み、さらに、前記VNFインスタンスが生成されたプラットフォームのトラステッド実行環境(TEE)からプロビジョニングパラメータのセットを受信する手段を含み、ここで、前記プロビジョニングパラメータは、VBSをセキュアにプロビジョンするのに使用でき、(i)VNFインスタンスが生成されたプラットフォームのユニークなプラットフォーム識別子と、(ii)VBSの公開鍵と、(iii)VBSのユニークな識別子とを含み、プロビジョニングパラメータに基づきVBSをプロビジョニングする手段を含む。
【0156】
例64は例60−63の主題を含み、さらに、登録要求メッセージの受信に応答して、TEEの秘密鍵に基づいてセキュリティクォートの認証を検証する手段であって、セキュリティクォートはTEEの秘密鍵を用いて署名される手段と、ホワイトリストチェックを実行してVBSの構成を検証する手段と、第1ノンスと第2ノンスとを用いて登録要求メッセージの生存性を検出して、前記第1ノンスと第2ノンスが期限切れとなっていないことを確認する手段と、VNFインスタンスの公開鍵の認証を検証する手段とを有する。



図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11