【解決手段】リソース情報取得部103は、仮想処理装置210bにおける仮想化資源管理装置200cの制御下への移動処理に伴って生成される仮想処理装置210cとアクセスするためのアドレスを仮想化資源管理装置200cから取得する。そして、仮想リンク構築部105は、移動前の仮想処理装置210bと、移動処理に伴って生成された仮想処理装置210cとをアクセス可能にする仮想リンクVL1を構築する。同期処理部106は、アドレスおよび仮想リンクVL1を用いて仮想処理装置210bと仮想処理装置210cとが同期をとるように制御する。これにより、局を跨いだ仮想処理装置210の移動を可能にすることができる。
仮想処理機能である第1仮想処理装置を制御する第1仮想化資源管理装置、仮想処理機能である第2仮想処理装置を制御する第2仮想化資源管理装置および前記第2仮想処理装置と同じ機能を有する第3仮想処理装置を制御する第3仮想化資源管理装置を管理するネットワーク仮想化制御装置において、
前記第2仮想処理装置における前記第3仮想化資源管理装置の制御下への移動処理に応じて、前記第3仮想処理装置を前記第3仮想化資源管理装置の制御下に生成する移動処理部と、
前記第3仮想処理装置とアクセスするためのアドレスを前記第3仮想化資源管理装置から取得する取得部と、
移動前の前記第2仮想処理装置と、移動処理に伴って生成された前記第3仮想処理装置とをアクセス可能にする仮想リンクを構築するリンク構築部と、
前記アドレスおよび前記仮想リンクを用いて前記第2仮想処理装置と前記第3仮想処理装置とが同期をとるように制御する同期処理部と、
を備えるネットワーク仮想化制御装置。
前記同期処理の終了後、前記第2仮想処理装置と前記第3仮想処理装置との仮想リンクを削除する仮想リンク削除部を備える請求項1に記載のネットワーク仮想化制御装置。
前記リンク構築部は、前記第2仮想処理装置および前記第3仮想処理装置が扱うことのできる最大帯域に基づいて前記仮想リンクを構築する、請求項1または2に記載のネットワーク仮想化制御装置。
仮想処理機能である第1仮想処理装置を制御する第1仮想化資源管理装置、仮想処理機能である第2仮想処理装置を制御する第2仮想化資源管理装置および前記第2仮想処理装置と同じ機能を有する第3仮想処理装置を制御する第3仮想化資源管理装置を管理するネットワーク仮想化制御装置のネットワーク仮想化制御方法において、
前記第2仮想処理装置における前記第3仮想化資源管理装置の制御下への移動処理に伴って生成された前記第3仮想処理装置とアクセスするためのアドレスを前記第3仮想化資源管理装置から取得する取得ステップと、
移動前の前記第2仮想処理装置と、移動処理に伴って生成された前記第3仮想処理装置とをアクセス可能にする仮想リンクを構築するリンク構築ステップと、
前記アドレスおよび前記仮想リンクを用いて前記第2仮想処理装置と前記第3仮想処理装置とが同期をとるように制御する同期処理ステップと、
を備えるネットワーク仮想化制御方法。
【発明を実施するための形態】
【0011】
添付図面を参照しながら本発明の実施形態を説明する。可能な場合には、同一の部分には同一の符号を付して、重複する説明を省略する。
【0012】
図1は、本実施形態のネットワーク仮想化制御装置を含む仮想化ネットワークシステムのシステム構成を示す図である。
図1に示されるとおり、この仮想化ネットワークシステムは、ネットワーク仮想化制御装置100、仮想化資源管理装置200a〜200c、中継資源管理装置200d、仮想処理装置210a〜210d、中継装置220a〜220cを含んで構成されている。なお、本実施形態においては、一又は複数の物理ノード上に仮想化された機能を装置として称する。また、特に区別する必要がない場合には、単に、仮想化資源管理装置200、仮想処理装置210、中継装置220と称する。
【0013】
ネットワーク仮想化制御装置100は、いわゆるNFVO(Network Function Virtualization Orchestra)であり、局にある物理リソース(処理機能・記憶領域)とネットワークリソース(アドレス・帯域)とを管理する装置である。このネットワーク仮想化制御装置100は、仮想化資源管理装置200a〜200c、中継資源管理装置200dに対してリソースの管理(確保・解放)を行なうよう制御し、また、VNF管理装置150に対して、仮想化資源管理装置200a〜200cにおいて確保されたリソースを用いて仮想処理装置210a〜210cのライフサイクル管理(仮想処理装置210の生成、スケール変更、アップデート、削除など)を行なうよう制御する。
【0014】
VNF管理装置150は、仮想化資源管理装置200a〜200cにおいて確保されたリソースを用いて仮想処理装置210a〜210cのライフサイクル管理を行なう装置である。
【0015】
仮想化資源管理装置200aは、いわゆるVIM(Virtualization Infrastructure Manger)であって、仮想処理装置210aおよび中継装置220aを管理する装置である。なお、仮想化資源管理装置200bおよび200cは、それぞれ仮想処理装置210bおよび中継装置220b、並びに仮想処理装置210cおよび中継装置220cを管理する。中継資源管理装置200dは、いわゆるWIM(WAN Infrastructure Manager)であって、WANを構成する中継装置220d〜222dを用いたルーティングを管理する。
【0016】
仮想処理装置210a〜210cは、いわゆるVNF(Virtual Network Function)であって、仮想処理によるサービス提供を通信相手に対して行なう機能である。
【0017】
中継装置220a〜220cは、仮想処理装置210a〜210cから送信されるデータのルーティング処理を行なう装置である。
図2を用いて、中継装置220a〜220dが有するルーティングテーブルについて説明する。
図2(a)〜(f)は、それぞれ中継装置220a〜222dのルーティングテーブルの具体例を示す。
図2示されるように、各ルーティングテーブルは、宛先アドレスと出口ポートとの対応付けを行なっている。なお、この出口ポートは仮想ポートである。
【0018】
そして、中継装置220a〜220cは、このルーティングテーブルを参照して、宛先アドレスに応じた出口ポートからデータを出力する。データを出力する際には、トンネリング処理のために、自己(中継装置220)のアドレスを発信元アドレスに、トンネリング先の中継装置220のアドレスを宛先アドレスにしたカプセリング処理が施される。
【0019】
ここで具体例を用いて説明する。
図2(a)は、中継装置220aのルーティングテーブルの具体例である。このルーティングテーブルでは、仮想処理装置210aのアドレスと出口ポートIF1が対応付けられている。これは、中継装置220aは、仮想処理装置210aのアドレス宛のデータを受信すると、出口ポートIF1から出力することを意味する。なお、出口ポートが仮想処理装置210a行きに設定されている場合には(例えば出口ポートIF1)、カプセリング処理は行なわれない。
【0020】
一方、仮想処理装置210bのアドレス宛のデータを受信する、出口ポートT0からデータを出力する。その際、発信元アドレスとして、中継装置220aのアドレスが設定され、宛先アドレスとして、中継装置220bのアドレスが設定されて、カプセリングされる。これによって、トンネリング処理が可能となる。
【0021】
他の中継装置220bおよび220cにおいても同様に、中継装置220間のトンネリング処理ができるように、中継装置220を宛先および発信元としたアドレスが設定される。なお、中継装置220d〜222dについては、そのようなトンネリング処理は不要である。
【0022】
仮想化資源管理装置200a、仮想処理装置210aおよび中継装置220aは、一つの局(ここではサイト1)に配置される一又は複数の物理ノード内に構成されている。サイト2〜サイト3についても同様に、一の局に配置されている一又は複数の物理ノードに、仮想化資源管理装置200a、仮想処理装置210aおよび中継装置220aが構成されている。
【0023】
本実施形態の仮想化ネットワークシステムにおいて、サイト1の仮想処理装置210aとサイト2の仮想処理装置210bとが仮想リンクVL0が構築されている。ここで仮想リンクVL0が構築されているということは、中継装置220aのルーティングテーブルにおいて、出口ポートT0と、仮想処理装置210bのアドレスとが対応付けがされる。また、中継装置220dおよび222dのルーティングテーブルにおいて、中継装置220bのアドレスがそれぞれの出口ポートに対応付けられる。このようにルーティングテーブルが設定されることにより仮想リンクが構築されることになる。他の仮想リンクについても同様である。また、トンネリング処理のために、出口ポートには宛先を示すアドレスと発信元のアドレスが設定されている。そして、出口ポートから出力されるデータには、その出口ポートに対応した宛先を示すアドレス(中継装置220(または仮想処理装置210))が設定されたヘッダが付加される。
【0024】
そして、この仮想処理装置210bをサイト3に移動させる際に、まず仮想処理装置210bと同機能を有する仮想処理装置210cをサイト3内の仮想化資源管理装置200cの制御下にある物理ノードに生成する。
【0025】
その後、ネットワーク仮想化制御装置100は、仮想処理装置210bと仮想処理装置210cとの間に仮想リンクVL1を構築するとともに、中継装置220aと中継装置220cとの間に仮想リンクVL2を構築する。仮想リンクVL1を用いて、仮想処理装置210bと仮想処理装置210cとは、同期処理を行ない、同じデータを有することができる。
【0026】
同期処理後、ネットワーク仮想化制御装置100は、その仮想リンクVL1を削除し、仮想リンクVL2を用いて仮想処理装置210aと仮想処理装置210cとをつなぐことができる。
【0027】
このように構成された仮想化ネットワークシステムにおけるネットワーク仮想化制御装置100の機能について説明する。ネットワーク仮想化制御装置100は、仮想処理装置210の移動、仮想リンクの構築を指示し、管理するものである。
図3は、ネットワーク仮想化制御装置100の機能構成を示すブロック図である。
図3に示されるとおり、ネットワーク仮想化制御装置100は、移動先選定部101、リソース記憶部102(リソース情報記憶部)、リソース情報取得部103、仮想処理装置生成部104、仮想リンク構築部105、同期処理部106、仮想リンク管理部107(仮想リンク削除部)、再起動処理部108および移動履歴テーブル109を含んで構成されている。
【0028】
移動先選定部101は、ネットワーク仮想化制御装置100のオペレータ操作によって、サイトのメンテナンスなどのために移動させる必要のある仮想処理装置210bを決定する。そして、移動先選定部101は、その仮想処理装置210bを制御する仮想化資源管理装置200bに対して仮想処理装置210bが要するリソース情報(物理リソース・ネットワークリソースを示す情報)の取得を行なう。さらに、移動先選定部101は、リソース記憶部102に記憶されている仮想化資源管理装置200が管理しているリソース情報(リソース)に基づいて、一の仮想化資源管理装置200cを選定する。選定方法は任意であるが、少なくとも仮想処理装置210bを移動させることのできるリソースを有する仮想化資源管理装置200cであることが必要である。
【0029】
リソース記憶部102は、各仮想化資源管理装置200が管理している物理リソースおよびネットワークリソース(以下、単にリソースとする。)を記憶する部分である。
【0030】
リソース情報取得部103は、移動先選定部101により選定された仮想化資源管理装置200cにアクセスして、移動対象である仮想処理装置210bを生成するために、その仮想化資源管理装置200cの制御下にある物理リソースおよびネットワークリソースの割当て要求を行なう。さらに、リソース情報取得部103は、その仮想化資源管理装置200cにおいて制御される仮想処理装置210cのアドレスを取得することで、仮想処理装置210間で同期処理を可能にする。また、リソース情報取得部103は、中継装置220cのアドレスを取得する。仮想化資源管理装置200cは、当該仮想化資源管理装置200cが割当て可能なアドレスを、ネットワーク仮想化制御装置100に通知することにより、リソース情報取得部103は、仮想処理装置210cのアドレスを、その作成前に取得することができる。なお、仮想処理装置210cを作成した後にアドレスを取得するようにしてもよい。
【0031】
仮想処理装置生成部104は、VNF管理装置150に対して、仮想処理装置210の生成を指示する部分である。VNF管理装置150は、この指示を受けると、仮想化資源管理装置200に対して、仮想処理装置210を生成するための情報とともに、その生成のための指示を送信する。仮想化資源管理装置200は、その制御下にある物理リソース上に仮想処理装置210を生成する。
【0032】
仮想リンク構築部105は、仮想処理装置210間の仮想リンクを構築する部分である。仮想リンク構築部105は、各仮想化資源管理装置200に対してWAN内における確保可能帯域を確認し、各仮想化資源管理装置200に対して確保可能帯域に従って仮想リンクを構成する装置間で最大帯域となる帯域を確保する。そして、仮想リンク構築部105は、仮想リンクを構成するために、中継資源管理装置200dの制御下にある中継装置220d〜222dのルーティングテーブルを設定する。その後、仮想化資源管理装置200a〜200cにおける中継装置220a〜220cのルーティングテーブルを設定する。この詳細については後述する。
【0033】
同期処理部106は、仮想リンク構築後に、移動対象となる仮想処理装置210bを制御する仮想化資源管理装置200bに対して、同期指示を送信する部分である。この同期指示には、移動先となる仮想化資源管理装置200cの仮想処理装置210cのアドレスが含まれている。仮想化資源管理装置200bは、この指示を受けると、その制御下の仮想処理装置210bに対して、同期先となる仮想処理装置210cアドレスの通知を行なうとともに、同期処理を行なうよう指示をする。仮想処理装置210bは、そのアドレスを用いて移動先である仮想化資源管理装置200cの仮想処理装置210cに対してアクセス処理を行ない、移動対象である仮想処理装置210bが保持しているデータの同期処理を行なう。
【0034】
仮想リンク管理部107は、仮想処理サービスの提供元となる仮想処理装置210aと、移動先にある仮想処理装置210cとの間の仮想リンクVL2とをつなげる処理を行なう。その際、仮想リンク管理部107は、中継装置220aの出口ポートに、トンネリング処理のための宛先アドレスおよび発信元アドレスの設定を行なう。ここでは宛先アドレスとして、リソース情報取得部103により取得された中継装置220cのアドレスが設定される。
【0035】
また、仮想リンク管理部107は、同期処理後に、仮想処理サービスの提供元となる仮想処理装置210aと移動対象の仮想処理装置210bとの間の仮想リンクVL0を削除する。また、仮想リンク管理部107は、移動対象の仮想処理装置210bと移動先にある仮想処理装置210cとの間の仮想リンクVL1および移動対象の仮想処理装置210bを削除する。仮想リンクをつなげる処理および削除する処理は、ルーティングテーブルの設定および削除により行なわれる。
【0036】
再起動処理部108は、仮想処理装置210bを移動先となる仮想化資源管理装置200cの制御下から元に戻すための処理を行なう部分である。再起動処理部108は、仮想処理装置210bが移動先に移動したときには、移動元である仮想化資源管理装置200bの情報(識別情報等)、その移動先の情報となる仮想化資源管理装置200cを識別するための情報(識別情報等)および移動対象である仮想処理装置210bを識別するための情報を移動履歴テーブル109に記憶する。そして、再起動処理部108は、仮想処理装置210bを移動先から元に戻すための処理を行なうとき、例えば、再起動の通知を仮想化資源管理装置200bから受信すると、移動履歴テーブル109を参照し、その仮想化資源管理装置200bは移動元として記憶されているか否かを判断する。
【0037】
そして、移動元として記憶されていた場合には、その移動履歴テーブル109に移動対象として記憶されている仮想処理装置210bを元の仮想化資源管理装置200bの制御下に戻す処理を行なう。この元に戻す処理は、上述した仮想処理装置210bの移動処理と同等の手順を行なうことにより実現できる。元に戻す際には、再起動処理部108は、元の仮想化資源管理装置200bに対してリソースの予約を行ない、その後予約した旨の通知を受けると、仮想処理装置生成部104に対して、仮想処理装置210bを元に戻す処理、すなわち仮想処理装置210cの移動処理を指示する。
【0038】
このようにして、ネットワーク仮想化制御装置100は、各仮想化資源管理装置200を制御することによって仮想処理装置210bを移動させる。移動処理に伴って、生成された仮想処理装置210cに対してアクセスできるように仮想処理装置210cのアドレスを取得しておくことで、移動対象の仮想処理装置210bは、移動先にある仮想処理装置210cに対して同期処理を可能にする。
【0039】
また、中継装置220aのルーティングテーブルの出口ポートの設定を更新し、さらに、中継装置220cのアドレスを、中継装置220aの出口ポートに設定しておくことで、仮想処理装置210aは、中継装置220cを介して仮想処理装置210cとアクセスすることができる。すなわち、中継装置220cは、仮想処理装置210b宛のアドレスのデータを受信すると、仮想処理装置210cにつながる出口ポートから出力するようにルーティングする。よって、仮想処理装置210aは、仮想処理装置210bが移動したことを認識することなく、アクセスすることができる。
【0040】
つぎに、本実施形態の仮想ネットワークシステムにおける処理について説明する。
図4は、その処理シーケンスを示す図である。ネットワーク仮想化制御装置100において、移動先選定部101により、オペレータ等の操作によって、仮想化資源管理装置200bから仮想処理装置210bのためのリソース情報が取得される(S101)。そして、移動先選定部101により、移動先となる一の仮想化資源管理装置200cが選定される(S102)。
【0041】
そして、ネットワーク仮想化制御装置100において、リソース情報取得部103により、リソースの割当て処理が、仮想化資源管理装置200cに対して行なわれる。仮想化資源管理装置200cでは、その制御下におけるリソースに対して必要なリソースが確保される。また、リソース情報取得部103により、中継装置220cのアドレスおよび仮想処理装置210cのアドレスが取得される(S103)。なお、この段階では、仮想処理装置210cは生成されていないが、仮想化処理装置210cに割当て可能なアドレスが仮想化資源管理装置200cにおいて取得され、それがリソース情報取得部103に通知されることにより、リソース情報取得部103はアドレスの取得を可能にする。
【0042】
ネットワーク仮想化制御装置100において、リソースの割当て処理が行なわれると、仮想処理装置生成部104により、VNF管理装置150に対して仮想処理装置の生成指示が行なわれる。VNF管理装置150には、仮想処理装置210を生成するための情報が保持されており、これを使って、仮想化資源管理装置200cに対して、仮想処理装置210cの生成処理が行なわれる。仮想化資源管理装置200cにおいては、生成処理に従って、その制御下おけるリソースにおいて、仮想処理装置210cが生成される(S104)。
【0043】
ネットワーク仮想化制御装置100において、仮想処理装置210cの生成がなされると、仮想リンク構築部105により、仮想処理装置210cと、移動対象であった仮想処理装置210bとの間で仮想リンクVL1の構築が行なわれる。また、仮想リンク構築部105により、中継装置220aと中継装置220cとの間の仮想リンクVL2が構築される(S105)。この仮想リンクの構築の詳細処理については、後述する。
【0044】
仮想リンクの構築が行なわれると、ネットワーク仮想化制御装置100において、同期処理部106により、同期処理が行なわれる(S106)。より詳細には、まず、ネットワーク仮想化制御装置100から、同期先のアドレス(仮想処理装置210cのアドレス)を含んだ同期指示(Req:Syncronization)が仮想化資源管理装置200bに送信され、その後、仮想処理装置210bに送信される。
【0045】
仮想処理装置210bには、仮想処理によるサービス提供により送受信されたデータが保持されている。仮想処理装置210bは、そのデータを仮想処理装置210cのアドレス宛に送信する(Data sending)。
【0046】
なお、シーケンス上中継装置220についての記載はしていないが、以下の処理が行なわれている。中継装置220bは、ルーティングテーブルに従った出口ポートから、トンネリング処理を施したデータを出力する。中継装置220cは、そのデータを受信すると、仮想処理装置210cに転送する。
【0047】
そして、同期処理後、ネットワーク仮想化制御装置100から仮想化資源管理装置200cに、仮想化処理装置210cに対して仮想処理装置210bのアドレスを設定するためのアドレス設定命令と、中継装置220cのルーティングテーブルの書き換え命令が送信される(S106a)。これは、仮想処理装置210bのアドレス宛に、仮想処理装置210aがデータ送信をした場合にも、仮想処理装置210cに届くようにするための設定である。
【0048】
図5(a)に、中継装置220cのルーティングテーブルの変更を示す。ここでは、仮想処理装置210aが、仮想処理装置210bのアドレス宛にデータ送信しても、仮想処理装置210cが受け取ることができるように、仮想化資源管理装置200cによる制御に基づいて、その中継装置220cのルーティングテーブルが、仮想処理装置210bのアドレスと出口ポートIF3(仮想処理装置210cにつながるもの)とが対応付けられるように変更される。また、仮想処理装置210cのアドレス宛のルーティングは削除される。なお、仮想処理装置210cは、仮想処理装置210bのアドレスを持つように設定される。
【0049】
仮想処理装置210cは、仮想処理装置210bのデータを得ることができ、これにより、仮想処理装置210bと仮想処理装置210cとは、全く同じ機能・データを有することになる。結果的に、仮想処理装置210bを、局を超えた他のサイトに移動することになる。そして、同期処理が終了したことを示すAck信号(Ack:Synchronization)が順次送信される。
【0050】
ネットワーク仮想化制御装置100において、同期処理部106により、Ack信号が受信されると、仮想リンク管理部107により、仮想リンクVL2の接続指示および仮想リンクVL0の削除指示が仮想化資源管理装置200aに送信される(S107)。
【0051】
仮想化資源管理装置200aでは、その接続指示・削除指示(Connect VL2 and Terminate VL0)に基づいて仮想リンクVL2が構築され、仮想リンクVL0が削除される。具体的には、
図5(b)に示されるように、中継装置220aのルーティングテーブルにおいて、仮想リンクVL2を構成する中継装置220bのアドレス宛の出口ポートT0が、中継装置220cへ出力される出口ポートT2へ書き換えられる。また、仮想化資源管理装置200aにおいては、中継装置220cのトンネリング処理において設定される宛先として、中継装置220cのアドレスが設定される。すなわち、
図5(b)において、変更後の仮想処理装置210bのアドレスに対応付けられる出口ポートT2には、中継装置220cのアドレスがトンネルリング処理の宛先に用いられる。
【0052】
ネットワーク仮想化制御装置100において、同期処理と仮想リンクの接続・削除が終了すると、仮想処理装置210bが、仮想化資源管理装置200の制御下に移動して仮想処理装置210cとなったことを記憶する(S108)。そして、仮想リンク管理部107により、仮想化資源管理装置200bの制御下から仮想処理装置210bが削除され、また、仮想リンクVL1が削除される(Terminate VNF2 and VL1:S109)。仮想リンクVL1の削除とは、中継装置220bにおけるルーティングテーブルのうち、仮想リンクVL1を構成する部分を削除することである。なお、仮想リンクVL0を構成する部分においても削除される。
【0053】
つぎに、仮想リンクの生成処理について説明する。
図6は、その具体的な処理を示すシーケンス図である。
図6に示されるとおり、ネットワーク仮想化制御装置100において、仮想リンク構築部105により、各仮想化資源管理装置200a〜200cに対して、確保可能帯域の確認が行なわれる(S210)。
【0054】
そして、仮想リンク構築部105により、中継資源管理装置200dに対してWAN内のトンネル作成命令が行なわれ、中継資源管理装置200dでは、各中継装置220d〜222dにおけるルーティングテーブルが設定される。設定後、トンネル作成完了通知がネットワーク仮想化制御装置100に対して行なわれる(S202)。
【0055】
そして、ネットワーク仮想化制御装置100において、仮想化資源管理装置200bおよび200cの中継装置220bおよび220cに対して、ルーティングテーブルの更新処理が行なわれる(S203、S204)。具体的には、
図2(b)および(d)に示されるルーティングテーブルのうち、仮想リンクVL1およびVL2を構築する対応付けが追加される。
【0056】
また、ネットワーク仮想化制御装置100において、仮想化資源管理装置200aに対して、新しく中継装置220aに仮想ポートを作成するための作成命令が送信される(S205)。この仮想ポート作成命令は、仮想ポートとアドレスとの対応付けを行なうものであり、この仮想ポートは、模式的には、
図1における出口ポートT2を示す。なお、この作成命令の送信とともに、仮想化資源管理装置200cの中継装置220cのアドレスが、仮想化資源管理装置200aに通知され、通知されたアドレスを用いて仮想ポートの作成が行なわれる。
【0057】
そして、仮想ポート作成命令に従って、作成された仮想ポートから出力されたデータに対してトンネリング処理のための宛先ヘッダを付加するための設定情報が設定される。なお、ここでは、ルーティングテーブルの作成・更新までは行なわれずに、上述した
図4のS107においてルーティングテーブルの作成・更新が行なわれる。
【0058】
このようにして、仮想ネットワークシステムにおいて、仮想リンクが生成されることになる。
【0059】
上述の通り、仮想処理装置210bを移動することによって、仮想処理装置210cが生成された。つぎに、この仮想処理装置210bを再度サイト2に生成する処理(元に戻す処理)について説明する。
【0060】
図7は、その処理を示すシーケンス図である。
図7に示されるとおり、仮想化資源管理装置200bの保守者によるメンテナンスが終了すると、再起動がなされ、その通知がネットワーク仮想化制御装置100に送信される(S301)。ネットワーク仮想化制御装置100において、再起動された仮想化資源管理装置200bに対して、元に戻す仮想処理装置210bが存在したか否かが判断される(S302)。ここでは、
図4のS108において、仮想処理装置210の移動履歴が移動履歴テーブル109に記憶されており、その移動履歴に基づいて判断がなされる。
【0061】
そして、ネットワーク仮想化制御装置100において、再起動処理部108により、仮想化資源管理装置200bのリソース予約が行なわれる(S303)。
【0062】
仮想化資源管理装置200bからリソース予約の受け付け完了の通知がなされると(S304)、ネットワーク仮想化制御装置100において、仮想化資源管理装置200cに対して、仮想処理装置のマイグレーション指示(VNF Migration)が行なわれ(S305)、マイグレーションが行なわれる(S306)。なお、ここでマイグレーションとは、仮想処理装置210を移動させる処理を意味するものであり、
図4のS103からS109までの処理と同等の処理が行なわれる。
【0063】
そして、マイグレーションが終了するとその旨の通知が、仮想化資源管理装置200cからネットワーク仮想化制御装置100に対して送信され(S307)、そして、ネットワーク仮想化制御装置100において、仮想化資源管理装置200bに対して運用許可の指示が行なわれる(S308)。仮想化資源管理装置200bは、運用許可の指示を受信すると、仮想処理装置210bによる仮想化サービスの提供を行なうことができる。
【0064】
つぎに、本実施形態のネットワーク仮想化制御装置100の作用効果について説明する。本実施形態のネットワーク仮想化制御装置100は、仮想処理機能である仮想処理装置210aを制御する仮想化資源管理装置200a、仮想処理機能である仮想処理装置210bを制御する仮想化資源管理装置200bおよび仮想処理装置210bと同じ機能を有する仮想処理装置210cを制御する仮想化資源管理装置200cを管理する。
【0065】
そして、ネットワーク仮想化制御装置100において、リソース情報取得部103は、仮想処理装置210bにおける仮想化資源管理装置200cの制御下への移動処理に伴って生成される仮想処理装置210cとアクセスするためのアドレスを仮想化資源管理装置200cから取得する。
【0066】
そして、仮想リンク構築部105は、移動前の仮想処理装置210bと、移動処理に伴って生成された仮想処理装置210cとをアクセス可能にする仮想リンクVL1を構築する。
【0067】
同期処理部106は、アドレスおよび仮想リンクVL1を用いて仮想処理装置210bと仮想処理装置210cとが同期をとるように制御する。これにより、局を跨いだ仮想処理装置210の移動を可能にすることができる。
【0068】
また、ネットワーク仮想化制御装置100は、仮想処理装置210bと仮想処理装置210cとの間での同期処理の終了後、仮想処理装置210bと仮想処理装置210cとの仮想リンクを削除する削除部を備える。これにより、不要な仮想リンクがそのまま残ることがない。
【0069】
また、ネットワーク仮想化制御装置100において、仮想リンク構築部105は、仮想処理装置210bおよび仮想処理装置210cが扱うことのできる最大帯域に基づいて仮想リンクを構築する。すなわち、その仮想リンクは、最大帯域を使って同期処理が行なうことができるように構築される。よって、同期処理を効率的に行なうことができる。
【0070】
また、ネットワーク仮想化制御装置100において、仮想化資源管理装置200bおよび仮想化資源管理装置200cが扱うことのできるリソース情報を記憶するリソース記憶部102と、リソース記憶部102に記憶されているリソース情報に基づいて、仮想処理装置210cの生成先(仮想処理装置210bの移動先)を探索して、仮想化資源管理装置200cを選定する移動先選定部101と、選定された仮想化資源管理装置200cの制御下に、仮想処理装置210cを生成し、同期処理後に、仮想処理装置210bを仮想化資源管理装置200bの制御下から削除することで、仮想処理装置210bを移動させる移動処理部とを備える。これにより、仮想処理装置210bの移動を行なうことができる。
【0071】
また、ネットワーク仮想化制御装置100において、仮想化資源管理装置200bの仮想処理装置210bと同じ機能を有する仮想処理装置210cを生成したことを記憶する再起動処理部108の移動履歴テーブルを備え、仮想リンク管理部107は、仮想処理装置210cの生成後に、仮想化資源管理装置200bから再起動の旨の通知を受信すると、この通知の通知元と移動履歴テーブルに記憶されている情報とに基づいて、仮想化資源管理装置200bに仮想処理装置210bを生成し、仮想処理装置210cを仮想化資源管理装置200cから削除する。
【0072】
これにより、仮想化資源管理装置200から再起動の通知を受けると、仮想処理装置210の移動履歴に従って元の仮想化資源管理装置200に戻すことができる。
【0073】
また、ネットワーク仮想化制御装置100において、リソース情報取得部103は、仮想化資源管理装置200cが有する中継装置220cのアドレスを取得する。そして、仮想リンク管理部107は、中継装置220aの出口ポートT2に対してアドレスの設定を行なうことで、仮想処理装置210aは、中継装置220cのアドレスを用いて、仮想処理装置210cとアクセスすることができる。よって、仮想処理装置210aは、仮想処理装置210bが移動したことを認識することなく、仮想処理装置210のアドレスを変えることなく、仮想処理装置210cとアクセスすることができる。
【0074】
なお、上記実施の形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及び/又はソフトウェアの任意の組み合わせによって実現される。また、各機能ブロックの実現手段は特に限定されない。すなわち、各機能ブロックは、物理的及び/又は論理的に結合した1つの装置により実現されてもよいし、物理的及び/又は論理的に分離した2つ以上の装置を直接的及び/又は間接的に(例えば、有線及び/又は無線)で接続し、これら複数の装置により実現されてもよい。
【0075】
例えば、本発明の一実施の形態におけるネットワーク仮想化制御装置100、仮想化資源管理装置200、仮想処理装置210などを仮想上に構成する物理ノード10は、本実施形態のネットワーク仮想化制御装置の処理を行うコンピュータとして機能してもよい。
図8は、本実施形態に係るネットワーク仮想化制御装置100などを仮想的に構成する装置のハードウェア構成の一例を示す図である。この物理ノードは、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。
【0076】
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。物理ノードのハードウェア構成は、図に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
【0077】
物理ノードにおける各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることで、プロセッサ1001が演算を行い、通信装置1004による通信や、メモリ1002及びストレージ1003におけるデータの読み出し及び/又は書き込みを制御することで実現される。
【0078】
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)で構成されてもよい。例えば、ネットワーク仮想化制御装置100を物理ノードに仮想的に構成した場合、移動先選定部101〜再起動処理部108などは、プロセッサ1001で実現されてもよい。
【0079】
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュールやデータを、ストレージ1003及び/又は通信装置1004からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態で説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、リソース情報取得部103は、メモリ1002に格納され、プロセッサ1001で動作する制御プログラムによって実現されてもよく、他の機能ブロックについても同様に実現されてもよい。上述の各種処理は、1つのプロセッサ1001で実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップで実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
【0080】
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つで構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本発明の一実施の形態に係る無線通信方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
【0081】
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD−ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu−ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つで構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及び/又はストレージ1003を含むデータベース、サーバその他の適切な媒体であってもよい。
【0082】
通信装置1004は、有線及び/又は無線ネットワークを介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。
【0083】
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
【0084】
また、プロセッサ1001やメモリ1002などの各装置は、情報を通信するためのバス1007で接続される。バス1007は、単一のバスで構成されてもよいし、装置間で異なるバスで構成されてもよい。
【0085】
また、物理ノードは、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つで実装されてもよい。
【0086】
以上、本実施形態について詳細に説明したが、当業者にとっては、本実施形態が本明細書中に説明した実施形態に限定されるものではないということは明らかである。本実施形態は、特許請求の範囲の記載により定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本明細書の記載は、例示説明を目的とするものであり、本実施形態に対して何ら制限的な意味を有するものではない。
【0087】
情報の通知は、本明細書で説明した態様/実施形態に限られず、他の方法で行われてもよい。例えば、情報の通知は、物理レイヤシグナリング(例えば、DCI(Downlink Control Information)、UCI(Uplink Control Information))、上位レイヤシグナリング(例えば、RRC(Radio Resource Control)シグナリング、MAC(Medium Access Control)シグナリング、報知情報(MIB(Master Information Block)、SIB(System Information Block)))、その他の信号又はこれらの組み合わせによって実施されてもよい。また、RRCシグナリングは、RRCメッセージと呼ばれてもよく、例えば、RRC接続セットアップ(RRC Connection Setup)メッセージ、RRC接続再構成(RRC ConnectionReconfiguration)メッセージなどであってもよい。
【0088】
本明細書で説明した各態様/実施形態は、LTE(Long Term Evolution)、LTE−A(LTE-Advanced)、SUPER 3G、IMT−Advanced、4G、5G、FRA(Future Radio Access)、W−CDMA(登録商標)、GSM(登録商標)、CDMA2000、UMB(Ultra Mobile Broadband)、IEEE 802.11(Wi−Fi)、IEEE 802.16(WiMAX)、IEEE 802.20、UWB(Ultra-WideBand)、Bluetooth(登録商標)、その他の適切なシステムを利用するシステム及び/又はこれらに基づいて拡張された次世代システムに適用されてもよい。
【0089】
本明細書で説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本明細書で説明した方法については、例示的な順序で様々なステップの要素を提示しており、提示した特定の順序に限定されない。
【0090】
本明細書において特定の装置によって行われるとした特定動作は、場合によってはその上位ノード(upper node)によって行われることもある。
【0091】
情報等は、上位レイヤ(または下位レイヤ)から下位レイヤ(または上位レイヤ)へ出力され得る。複数のネットワークノードを介して入出力されてもよい。
【0092】
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルで管理してもよい。入出力される情報等は、上書き、更新、または追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
【0093】
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:trueまたはfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
【0094】
本明細書で説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
【0095】
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
【0096】
また、ソフトウェア、命令などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア及びデジタル加入者回線(DSL)などの有線技術及び/又は赤外線、無線及びマイクロ波などの無線技術を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び/又は無線技術は、伝送媒体の定義内に含まれる。
【0097】
本明細書で説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
【0098】
なお、本明細書で説明した用語及び/又は本明細書の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。
【0099】
本明細書で使用する「システム」および「ネットワーク」という用語は、互換的に使用される。
【0100】
また、本明細書で説明した情報、パラメータなどは、絶対値で表されてもよいし、所定の値からの相対値で表されてもよいし、対応する別の情報で表されてもよい。例えば、無線リソースはインデックスで指示されるものであってもよい。
【0101】
上述したパラメータに使用する名称はいかなる点においても限定的なものではない。さらに、これらのパラメータを使用する数式等は、本明細書で明示的に開示したものと異なる場合もある。様々なチャネル(例えば、PUCCH、PDCCHなど)及び情報要素(例えば、TPCなど)は、あらゆる好適な名称によって識別できるので、これらの様々なチャネル及び情報要素に割り当てている様々な名称は、いかなる点においても限定的なものではない。
【0102】
本明細書で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up)(例えば、テーブル、データベースまたは別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。
【0103】
「接続された(connected)」、「結合された(coupled)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された2つの要素間に1又はそれ以上の中間要素が存在することを含むことができる。要素間の結合又は接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。本明細書で使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及び/又はプリント電気接続を使用することにより、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギーなどの電磁エネルギーを使用することにより、互いに「接続」又は「結合」されると考えることができる。
【0104】
本明細書で使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
【0105】
本明細書で「第1の」、「第2の」などの呼称を使用した場合においては、その要素へのいかなる参照も、それらの要素の量または順序を全般的に限定するものではない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本明細書で使用され得る。したがって、第1および第2の要素への参照は、2つの要素のみがそこで採用され得ること、または何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。
【0106】
「含む(include)」、「含んでいる(including)」、およびそれらの変形が、本明細書あるいは特許請求の範囲で使用されている限り、これら用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本明細書あるいは特許請求の範囲において使用されている用語「または(or)」は、排他的論理和ではないことが意図される。
【0107】
本明細書において、文脈または技術的に明らかに1つのみしか存在しない装置である場合以外は、複数の装置をも含むものとする。
【0108】
本開示の全体において、文脈から明らかに単数を示したものではなければ、複数のものを含むものとする。