図面 (/)

技術 割り当て装置、割り当て方法、割り当てプログラム、及び、通信ネットワーク装置

出願人 日本電気株式会社
発明者 今田英顕
出願日 2015年3月24日 (5年7ヶ月経過) 出願番号 2015-060573
公開日 2016年10月13日 (4年1ヶ月経過) 公開番号 2016-181092
状態 特許登録済
技術分野 広域データ交換 マルチプログラミング
主要キーワード 合計処理量 仮想処理 総移動量 計算処理装置 リソース判定 割り当てプログラム 通信ネットワーク装置 移動量情報
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2016年10月13日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (16)

課題

仮想ネットワーク装置を効率的に処理する割り当てを高速に算出する割り当て装置等を提供する。

解決手段

割り当て装置101は、仮想ネットワーク装置を構成する複数の処理を情報処理装置に割り当てる場合に、情報処理装置に割り当てた処理量の合計を表す合計処理量を算出する処理量算出部102と、仮想ネットワーク装置が処理を行う順または逆順に、まだ割り当てが決まっていない処理を割り当て対象として選択し、選択した割り当て対象に関する処理量と、合計処理量との合計値を算出する合計算出部103と、合計値が、情報処理装置が処理可能な処理量を表す装置処理量以下であるか否かを判定するリソース判定部104と、合計値が装置処理量以下である場合に、割り当て対象を情報処理装置に割り当て、合計値が装置処理量よりも大きな場合に、割り当て対象を情報処理装置とは異なる情報処理装置に割り当てるリソース割り当て部105とを有する。

概要

背景

汎用コンピュータにおいて、通信ネットワーク(以降、単に、「ネットワーク」と表す)における通信を制御するネットワーク機能を、ハードウェアではなくソフトウェアを用いて実現する仮想ネットワーク装置が増えている。ソフトウェアを用いてネットワーク機能を実現する一例として、仮想ネットワーク機能(Network_Function_Virtualization、NFV)がある。これは、たとえば、クラウドコンピューティングにおいて仮想化された計算機資源を確保し、確保した計算機資源を用いてネットワーク機能を実現し、通信を制御する必要がなくなれば、確保した計算機資源を解放することにより実現される。

Virtual_Network_Function_Component(VNFC)は、仮想ネットワーク機能に含まれる処理単位を表す複数の機能(以降、「構成機能」と表す)を表す。多くの場合、ネットワーク機能は、複数の構成機能が順次実行されることにより実現される。したがって、ネットワーク機能において複数の構成機能が相互に関連している態様は、チェインとも呼ばれる。すなわち、チェインは、複数の構成機能が順次実行される態様を表す。

ソフトウェアによってネットワーク機能を実現する場合であっても、該ネットワークにおける情報(パケット)は、物理的なネットワーク(たとえば、ネットワークケーブル)を介して送受信されることもある。または、ネットワークにおけるパケットは、物理的な情報処理装置における信号として送受信されることもある。パケットは、物理的なネットワークよりも、物理的な情報処理装置において送受信される方が、通信遅延が発生しないので、早く伝搬する。したがって、パケットは、物理的なネットワークを経由するよりも、情報処理装置において処理される方が、ネットワーク機能に関する処理効率が高い。

たとえば、特許文献1には、ネットワークにおける通信帯域が効率的に利用されるように仮想計算機に関する処理を割り当てる情報処理装置を調整する仮想計算機管理装置が開示される。該仮想計算機管理装置は、ネットワークに関する帯域等に基づき、仮想計算機に関する処理を割り当てる情報処理装置を決定する。該仮想計算機管理装置は、情報処理装置とゲートウェイとの間における通信経路に存在するネットワーク機器最大帯域及び使用可能帯域と、仮想計算機の最大帯域と、情報処理装置が有するリソース量とに基づき、情報処理装置を決定する。

概要

仮想ネットワーク装置を効率的に処理する割り当てを高速に算出する割り当て装置等を提供する。割り当て装置101は、仮想ネットワーク装置を構成する複数の処理を情報処理装置に割り当てる場合に、情報処理装置に割り当てた処理量の合計を表す合計処理量を算出する処理量算出部102と、仮想ネットワーク装置が処理を行う順または逆順に、まだ割り当てが決まっていない処理を割り当て対象として選択し、選択した割り当て対象に関する処理量と、合計処理量との合計値を算出する合計算出部103と、合計値が、情報処理装置が処理可能な処理量を表す装置処理量以下であるか否かを判定するリソース判定部104と、合計値が装置処理量以下である場合に、割り当て対象を情報処理装置に割り当て、合計値が装置処理量よりも大きな場合に、割り当て対象を情報処理装置とは異なる情報処理装置に割り当てるリソース割り当て部105とを有する。

目的

本発明の主たる目的は、仮想ネットワーク装置を効率的に処理する割り当てを高速に算出する割り当て装置等を提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

仮想ネットワーク装置を構成する複数の処理を情報処理装置割り当てる場合に、前記情報処理装置に割り当てた処理量の合計を表す合計処理量を算出する処理量算出手段と、前記複数の処理のうち、前記仮想ネットワーク装置が処理を行う順または逆順に、まだ割り当てが決まっていない前記処理を割り当て対象として選択し、選択した前記割り当て対象に関する処理量と、前記合計処理量との合計値を算出する合計算出手段と、前記合計値が、前記情報処理装置が処理可能な処理量を表す装置処理量以下であるか否かを判定するリソース判定手段と、前記合計値が前記装置処理量以下である場合に、前記割り当て対象を前記情報処理装置に割り当て、前記合計値が前記装置処理量よりも大きな場合に、前記割り当て対象を前記情報処理装置とは異なる情報処理装置に割り当てるリソース割り当て手段とを備え、前記処理量算出手段は、前記仮想ネットワーク装置において割り当てが決まっていない前記処理がある場合に、前記合計処理量を算出する割り当て装置

請求項2

第1情報処理装置に関する前記装置処理量と、第2情報処理装置に関する前記合計値との差が、前記第2情報処理装置に関する前記合計値以上である場合に、前記第2情報処理装置に割り当てた前記処理を、前記第1情報処理装置に割り当てる再割り当て手段をさらに備える請求項1に記載の割り当て装置。

請求項3

仮想通信ネットワーク装置を構成する複数の処理を情報処理装置に割り当てる場合に、前記複数の処理において相互に隣接している前記処理に関して、前記情報処理装置が処理可能な処理量を表す装置処理量以下である組み合わせを算出する組み合わせ算出手段と、算出した前記組み合わせのうち、前記組み合わせに含まれる処理数最多または略最多の前記組み合わせを選択し、選択した前記組み合わせに前記情報処理装置を割り当てるリソース割り当て手段とを備え、前記組み合わせ算出手段は、前記仮想通信ネットワーク装置において割り当てが決まっていない前記処理がある場合に、前記組み合わせを算出する割り当て装置。

請求項4

第1情報処理装置に関する前記装置処理量と、第2情報処理装置に関する前記合計値との差が、第2情報処理装置に関する前記合計値以上である場合に、前記第2情報処理装置に割り当てた前記処理を、前記第1情報処理装置に割り当てる再割り当て手段をさらに備える請求項3に記載の割り当て装置。

請求項5

請求項1または請求項2に記載の割り当て装置である第1割り当て装置と、請求項3または請求項4に記載の割り当て装置である第2割り当て装置と、前記仮想通信ネットワーク装置を前記情報処理装置にて実行する場合に要する通信量に基づいて、前記第1割り当て装置が割り当てる割り当てと、前記第2割り当て装置が割り当てる割り当てとのいずれかを選択する割り当て決定手段とを備える割り当て装置。

請求項6

前記割り当て装置は、前記処理の間にて移動するデータ量から、異なる前記情報処理装置に割り当てられた前記処理の間における総移動量を算出することにより、前記通信量を算出する請求項5に記載の割り当て装置。

請求項7

仮想通信ネットワーク装置と、前記仮想通信ネットワーク装置に関する割り当てを算出する請求項1乃至請求項6のいずれかに記載の割り当て装置と、を備える通信ネットワーク装置

請求項8

仮想ネットワーク装置を構成する複数の処理を情報処理装置に割り当てる場合に、前記情報処理装置に割り当てた処理量の合計を表す合計処理量を算出し、前記複数の処理のうち、前記仮想ネットワーク装置が処理を行う順または逆順に、まだ割り当てが決まっていない前記処理を割り当て対象として選択し、選択した前記割り当て対象に関する処理量と、前記合計処理量との合計値を算出し前記合計値が、前記情報処理装置が処理可能な処理量を表す装置処理量以下であるか否かを判定し、前記合計値が前記装置処理量以下である場合に、前記割り当て対象を前記情報処理装置に割り当て、前記合計値が前記装置処理量よりも大きな場合に、前記割り当て対象を前記情報処理装置とは異なる情報処理装置に割り当て前記仮想ネットワーク装置において割り当てが決まっていない前記処理がある場合に、前記合計処理量を算出する割り当て方法

請求項9

仮想ネットワーク装置を構成する複数の処理を情報処理装置に割り当てる場合に、前記情報処理装置に割り当てた処理量の合計を表す合計処理量を算出する処理量算出機能と、前記複数の処理のうち、前記仮想ネットワーク装置が処理を行う順または逆順に、まだ割り当てが決まっていない前記処理を割り当て対象として選択し、選択した前記割り当て対象に関する処理量と、前記合計処理量との合計値を算出する合計算出機能と、前記合計値が、前記情報処理装置が処理可能な処理量を表す装置処理量以下であるか否かを判定するリソース判定機能と、前記合計値が前記装置処理量以下である場合に、前記割り当て対象を前記情報処理装置に割り当て、前記合計値が前記装置処理量よりも大きな場合に、前記割り当て対象を前記情報処理装置とは異なる情報処理装置に割り当てるリソース割り当て機能とをコンピュータに実現させ、前記処理量算出機能においては、前記仮想ネットワーク装置において割り当てが決まっていない前記処理がある場合に、前記合計処理量を算出する割り当てプログラム

請求項10

第1情報処理装置に関する前記装置処理量と、前記第2情報処理装置に関する前記合計値との差が、第2情報処理装置に関する前記合計値以上である場合に、前記第2情報処理装置に割り当てた前記処理を、前記第1情報処理装置に割り当てる再割り当て機能をさらに備える請求項9に記載の割り当てプログラム。

技術分野

0001

本発明は、仮想ネットワーク装置における処理を情報処理装置割り当てる割り当て装置等に関する。

背景技術

0002

汎用コンピュータにおいて、通信ネットワーク(以降、単に、「ネットワーク」と表す)における通信を制御するネットワーク機能を、ハードウェアではなくソフトウェアを用いて実現する仮想ネットワーク装置が増えている。ソフトウェアを用いてネットワーク機能を実現する一例として、仮想ネットワーク機能(Network_Function_Virtualization、NFV)がある。これは、たとえば、クラウドコンピューティングにおいて仮想化された計算機資源を確保し、確保した計算機資源を用いてネットワーク機能を実現し、通信を制御する必要がなくなれば、確保した計算機資源を解放することにより実現される。

0003

Virtual_Network_Function_Component(VNFC)は、仮想ネットワーク機能に含まれる処理単位を表す複数の機能(以降、「構成機能」と表す)を表す。多くの場合、ネットワーク機能は、複数の構成機能が順次実行されることにより実現される。したがって、ネットワーク機能において複数の構成機能が相互に関連している態様は、チェインとも呼ばれる。すなわち、チェインは、複数の構成機能が順次実行される態様を表す。

0004

ソフトウェアによってネットワーク機能を実現する場合であっても、該ネットワークにおける情報(パケット)は、物理的なネットワーク(たとえば、ネットワークケーブル)を介して送受信されることもある。または、ネットワークにおけるパケットは、物理的な情報処理装置における信号として送受信されることもある。パケットは、物理的なネットワークよりも、物理的な情報処理装置において送受信される方が、通信遅延が発生しないので、早く伝搬する。したがって、パケットは、物理的なネットワークを経由するよりも、情報処理装置において処理される方が、ネットワーク機能に関する処理効率が高い。

0005

たとえば、特許文献1には、ネットワークにおける通信帯域が効率的に利用されるように仮想計算機に関する処理を割り当てる情報処理装置を調整する仮想計算機管理装置が開示される。該仮想計算機管理装置は、ネットワークに関する帯域等に基づき、仮想計算機に関する処理を割り当てる情報処理装置を決定する。該仮想計算機管理装置は、情報処理装置とゲートウェイとの間における通信経路に存在するネットワーク機器最大帯域及び使用可能帯域と、仮想計算機の最大帯域と、情報処理装置が有するリソース量とに基づき、情報処理装置を決定する。

先行技術

0006

特開2013−250775号公報

発明が解決しようとする課題

0007

しかし、ソフトウェアを用いてネットワーク機能を実現する場合に、複数の構成機能に対して、特許文献1に従い、該構成機能を実現する物理的な情報処理装置を割り当てたとしても、該割り当てを効率的に決めることはできない。これは、複数の構成機能が逐次的に処理を行うによって、ネットワーク機能が実現されることが多い傾向があるにもかかわらず、特許文献1においては、該傾向を考慮せずに処理を割り当てるからである。

0008

そこで、本発明の主たる目的は、仮想ネットワーク装置を効率的に処理する割り当てを高速に算出する割り当て装置等を提供することである。

課題を解決するための手段

0009

前述の目的を達成するために、本発明の一態様において、割り当て装置は、
仮想ネットワーク装置を構成する複数の処理を情報処理装置に割り当てる場合に、前記情報処理装置に割り当てた処理量の合計を表す合計処理量を算出する処理量算出手段と、
前記複数の処理のうち、前記仮想ネットワーク装置が処理を行う順または逆順に、まだ割り当てが決まっていない前記処理を割り当て対象として選択し、選択した前記割り当て対象に関する処理量と、前記合計処理量との合計値を算出する合計算出手段と、
前記合計値が、前記情報処理装置が処理可能な処理量を表す装置処理量以下であるか否かを判定するリソース判定手段と、
前記合計値が前記装置処理量以下である場合に、前記割り当て対象を前記情報処理装置に割り当て、前記合計値が前記装置処理量よりも大きな場合に、前記割り当て対象を前記情報処理装置とは異なる情報処理装置に割り当てるリソース割り当て手段と
を備え、
前記処理量算出手段は、前記仮想ネットワーク装置において割り当てが決まっていない前記処理がある場合に、前記合計処理量を算出する。

0010

また、本発明の他の見地として、割り当て方法は、
仮想ネットワーク装置を構成する複数の処理を情報処理装置に割り当てる場合に、前記情報処理装置に割り当てた処理量の合計を表す合計処理量を算出し、前記複数の処理のうち、前記仮想ネットワーク装置が処理を行う順または逆順に、まだ割り当てが決まっていない前記処理を割り当て対象として選択し、選択した前記割り当て対象に関する処理量と、前記合計処理量との合計値を算出し前記合計値が、前記情報処理装置が処理可能な処理量を表す装置処理量以下であるか否かを判定し、前記合計値が前記装置処理量以下である場合に、前記割り当て対象を前記情報処理装置に割り当て、前記合計値が前記装置処理量よりも大きな場合に、前記割り当て対象を前記情報処理装置とは異なる情報処理装置に割り当て前記仮想ネットワーク装置において割り当てが決まっていない前記処理がある場合に、前記合計処理量を算出する。

0011

さらに、同目的は、係る割り当てプログラム、及び、そのプログラムを記録するコンピュータ読み取り可能な記録媒体によっても実現される。

発明の効果

0012

本発明に係る割り当て装置等によれば、仮想ネットワーク装置を効率的に処理する割り当てを高速に算出することができる。

図面の簡単な説明

0013

本発明の第1の実施形態に係る割り当て装置が有する構成を示すブロック図である。
仮想ネットワーク装置を実行する情報処理システムが有する構成の一例を表すブロック図である。
仮想ネットワーク装置が有する構成の一例を概念的に表すブロック図である。
第1の実施形態に係る割り当て装置における処理の流れを示すフローチャートである。
本発明の第2の実施形態に係る割り当て装置が有する構成を示すブロック図である。
第2の実施形態に係る移動量情報の一例を概念的に表す図である。
第2の実施形態に係る割り当て装置における処理の流れを示すフローチャートである。
本発明の第2の実施形態に係る割り当て装置が有する構成を示すブロック図である。
本発明の第3の実施形態に係る割り当て装置が有する構成を表すブロック図である。
第3の実施形態に係る割り当て装置における処理の流れを示すフローチャートである。
本発明の第3の実施形態に係る第1割り当て部が有する構成を表すブロック図である。
第3の実施形態に係る第1割り当て部における処理の流れを示すフローチャートである。
本発明の第3の実施形態に係る第2割り当て部が有する構成を表すブロック図である。
第3の実施形態に係る第2割り当て部における処理の流れを示すフローチャートである。
本発明の各実施形態に係る割り当て装置を実現可能な計算処理装置ハードウェア構成例を、概略的に示すブロック図である。

実施例

0014

次に、本発明を実施する実施形態について図面を参照しながら詳細に説明する。

0015

<第1の実施形態>
まず、仮想ネットワーク装置と、該仮想ネットワーク装置における処理を実際に実行する情報処理システムとに関して詳細に説明する。

0016

図2と、図3とを参照しながら、仮想ネットワーク装置204における処理を実際に実行する情報処理システム201が有する構成の一例、及び、仮想ネットワーク装置204が有する構成の一例について説明する。図2は、仮想ネットワーク装置204を実行する情報処理システム201が有する構成の一例を表すブロック図である。図3は、仮想ネットワーク装置204が有する構成の一例を概念的に表すブロック図である。

0017

図2に示す例を参照すると、情報処理システム201は、情報処理装置1乃至情報処理装置3と、ルータ202と、ルータ203とを有する。尚、情報処理装置1乃至情報処理装置3は、仮想ネットワーク装置204における処理を、実際に処理可能な物理的な情報処理装置を表す。

0018

図3を参照すると、仮想ネットワーク装置204は、仮想ネットワーク装置204を構成する1まとまりの処理を実行する仮想処理部を複数個有する。すなわち、仮想ネットワーク装置204は、仮想ネットワーク装置204を実現する構成機能として、仮想処理部を複数個有する。たとえば、図2に示す例において、仮想ネットワーク装置204は、仮想処理部1乃至仮想処理部10を有する。さらに、仮想ネットワーク装置204は、ルータ202及びルータ203と、データ(情報)を送受信することができる。1つの仮想処理部は、たとえば、ファイアウォールに関する処理を実行することにより、構成機能を実現する。1つの仮想処理部は、たとえば、ネットワークアドレス変換(NAT)に関する処理を実行することにより構成機能を実現する。尚、仮想処理部が行う処理は、上述した例に限定されない。

0019

説明の便宜上、仮想処理部1乃至仮想処理部10は、仮想計算機(VM)を用いて実現されているとする。また、仮想処理部は、仮想処理部1乃至仮想処理部10であり、10台であるとする。仮想処理部は、複数台であればよいので、上記の例に限定されない。

0020

仮想処理部1乃至仮想処理部10が、相互に隣接している仮想処理部と情報(データ)を交換しながら処理を実行することにより、仮想ネットワーク装置204に関する機能が実現される。ここで、相互に隣接しているとは、情報(データ)を送信、受信、または、送受信する態様を表す。または、相互に隣接しているとは、異なる仮想処理部において、一方の仮想処理部におけるデータを、他方の仮想処理部が参照可能な態様を表す。

0021

一般に、仮想ネットワーク装置204に関する機能は、仮想処理部1乃至仮想処理部10が、順次、処理を行うことにより実現される。尚、仮想ネットワーク装置204に関する機能は、仮想処理部10乃至仮想処理部1が、順次、処理を行うことにより実現されてもよい。

0022

チェイン205は、上述したように、仮想ネットワーク装置204に関する機能を実現する仮想処理部1乃至仮想処理部10を表す総称である。

0023

情報処理装置1乃至情報処理装置3は、仮想処理部1乃至仮想処理部10における処理を物理的に実行する。仮想処理部1乃至仮想処理部10は、情報処理装置1乃至情報処理装置3のいずれかにおいて実行されているオペレーティングシステム(OS)が有する機能を用いて、VMとして実現されている。

0024

図2に例示する情報処理システム201において、VMに含まれる機能を実行する情報処理装置は、3台であるが、必ずしも3台である必要はなく、2台、または、4台以上であってもよい。さらに、図2に例示する情報処理システム201において、情報処理装置は、3つの仮想処理部における処理を実行しているが、必ずしも3つである必要はない。

0025

次に、図1を参照しながら、本発明の第1の実施形態に係る割り当て装置101が有する構成について詳細に説明する。図1は、本発明の第1の実施形態に係る割り当て装置101が有する構成を示すブロック図である。

0026

第1の実施形態に係る割り当て装置101は、処理量算出部102と、合計算出部103と、リソース判定部104と、リソース割り当て部105とを有する。

0027

割り当て装置101は、たとえば、上述したような仮想ネットワーク装置204に含まれる仮想処理部1乃至仮想処理部10に関する処理を実行する情報処理装置を選ぶ。すなわち、割り当て装置101は、たとえば、仮想処理部1乃至仮想処理部10に関する処理を、情報処理装置1乃至情報処理装置3に割り当てる。この場合に、割り当て装置101は、仮想ネットワーク装置204に関する機能が実際に実行される順序、または、その逆順にて、仮想処理部に関する処理を情報処理装置に割り当てる。

0028

処理量算出部102は、情報処理装置に割り当てられた処理量の合計を表す合計処理量を算出する。たとえば、仮想処理部を一意識別可能な仮想処理部識別子(以降、識別子を「ID」と表す)と、該仮想処理部に関する処理量とが関連付けされた処理情報を記憶可能な処理情報部301を参照することにより、処理量算出部102は、合計処理量を算出する。

0029

たとえば、情報処理装置に対する割り当てが決まっていない場合に、処理量算出部102は、該情報処理装置に対する処理量を合計することにより0を算出する。また、情報処理装置に対して仮想処理部1及び仮想処理部2に関する処理が割り当てられている場合に、処理量算出部102は、処理情報部301において、仮想処理部1に関連付けされた処理量、及び、仮想処理部2に関連付けされた処理量を読み取る。処理量算出部102は、読み取った処理量を合計することにより、情報処理装置に対する処理量の合計値を算出する。

0030

合計算出部103は、まだ処理を割り当てていない仮想処理部のうち、仮想ネットワーク装置204において最も早期に処理を実行する仮想処理部に関する処理量と、処理量算出部102が算出した合計値とを合計し、合計した結果を第2合計値として算出する。たとえば、仮想処理部1及び仮想処理部2に関する処理が情報処理装置に割り当てられている場合に、合計算出部103は、処理情報部301から、仮想処理部3に関する処理量を読み取る。合計算出部103は、読み取った仮想処理部3に関する処理量と、処理量算出部102が算出した合計値との第2合計値を算出する。

0031

リソース判定部104は、合計算出部103が算出した第2合計値が、該処理を割り当てた情報処理装置が処理可能な処理量を表す装置処理量以下であるか否かを判定する。たとえば、リソース判定部104は、装置情報部302において、該情報処理装置を表す装置IDと関連付けされた装置処理量を読み取り、第2合計値が、読み取った装置処理量以下であるか否かを判定する。

0032

第2合計値が装置処理量以下である場合に、リソース割り当て部105は、該仮想処理部に関する処理を該情報処理装置に割り当てる。第2合計値が装置処理量よりも大きい場合に、リソース割り当て部105は、該仮想処理部に関する処理を、該情報処理装置とは異なる情報処理装置に割り当てる。

0033

尚、上述した処理は、たとえば、仮想ネットワーク装置204におけるすべての仮想処理部に関する処理が、情報処理装置に割り当てられるまで繰り返し実行される。

0034

次に、図4を参照しながら、第1の実施形態に係る割り当て装置101が行う処理について詳細に説明する。図4は、第1の実施形態に係る割り当て装置101における処理の流れを示すフローチャートである。

0035

処理量算出部102は、仮想処理部における処理に関して、情報処理装置に割り当てられた処理量を合計する(ステップS101)。

0036

合計算出部103は、まだ処理を割り当てていない仮想処理部のうち、仮想ネットワーク装置204において最も早期に処理を実行する仮想処理部に関する処理量と、処理量算出部102が算出した合計値とを合計し、合計した結果を第2合計値として算出する(ステップS102)。

0037

リソース判定部104は、合計算出部103が算出した第2合計値が、該処理を割り当てた情報処理装置が処理可能な処理量を表す装置処理量以下であるか否かを判定する(ステップS103)。

0038

第2合計値が装置処理量以下である場合に(ステップS103にてYES)、リソース割り当て部105は、該仮想処理部に関する処理を該情報処理装置に割り当てる(ステップS104)。第2合計値が装置処理量よりも大きい場合に(ステップS103にてNO)、リソース割り当て部105は、該仮想処理部に関する処理を該情報処理装置とは異なる情報処理装置に割り当てる(ステップS105)。

0039

尚、図4においては、該情報処理装置とは異なる情報処理装置が「第2情報処理装置」と表され、処理量算出部102が処理量を合計した情報処理装置が「第1情報処理装置」と表されている。

0040

次に、第1の実施形態に係る割り当て装置101に関する効果について説明する。

0041

割り当て装置101によれば、仮想ネットワーク装置204を効率的に処理する割り当てを高速に算出することができる。

0042

この理由は、仮想ネットワーク装置204において相互に隣接している処理が、異なる情報処理装置に割り当てられるのを回避しつつ、割り当て装置101が該処理を、順次、情報処理装置に割り当てるからである。

0043

割り当て装置101は、図4に示すフローチャートに従い処理を実行する場合に、情報処理装置が処理可能な装置処理量以下である限り、該情報処理装置に相互に隣接している処理を割り当てる。したがって、割り当て装置101は、仮想ネットワーク装置204を効率的に処理する割り当てを算出する。

0044

また、割り当て装置101は、仮想ネットワーク装置204における処理を、仮想ネットワーク装置204における処理の順に、情報処理装置に割り当てる。したがって、割り当て装置101は、相互に隣接している仮想処理部のみを、情報処理装置に割り当てる対象とする。この結果、割り当て装置101は、高速に割り当てを算出することができる。

0045

一方、特許文献1等に開示された装置等においては、処理が一般的な処理態様である場合に適用可能な手法に従い割り当てを算出するので、割り当て装置101よりも、割り当てを算出するのに多くの計算時間を要する。

0046

したがって、割り当て装置101によれば、仮想ネットワーク装置204を効率的に処理する割り当てを高速に算出することができる。

0047

<第2の実施形態>
次に、上述した第1の実施形態を基本とする本発明の第2の実施形態について説明する。

0048

以降の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第1の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。

0049

図5を参照しながら、第2の実施形態に係る割り当て装置111が有する構成について説明する。図5は、本発明の第2の実施形態に係る割り当て装置111が有する構成を示すブロック図である。

0050

第2の実施形態に係る割り当て装置111は、処理量算出部102と、合計算出部103と、リソース判定部104と、リソース割り当て部105とを有する。割り当て装置111は、さらに、組み合わせ算出部112と、第2リソース割り当て部113と、割り当て決定部121とを有する。

0051

組み合わせ算出部112は、仮想ネットワーク装置204において、相互に隣接している仮想処理部に関する組み合わせのうち、組み合わせに含まれる仮想処理部に関する処理量が、情報処理装置が処理可能な処理量を表す装置処理量以下である組み合わせを算出する。たとえば、仮想処理部3乃至仮想処理部5に関する処理量が、該処理を割り当てる対象である情報処理装置が処理可能な装置処理量以下であれば、組み合わせ算出部112は、該組み合わせを算出する。組み合わせ算出部112は、たとえば、仮想ネットワーク装置204に含まれる仮想処理部に関して、上述したような処理に従い、全ての組み合わせを算出する。

0052

第2リソース割り当て部113は、算出された組み合わせのうち、該組み合わせに含まれる仮想処理数(すなわち、処理の種類数)が最多または略最多の組み合わせを選択する。たとえば、組み合わせが仮想処理部1乃至仮想処理部3に関する組み合わせである場合に、該組み合わせは、3つの仮想処理部を含む。また、組み合わせが仮想処理部2乃至5に関する組み合わせである場合に、該組み合わせは、4つの仮想処理部を含む。たとえば、組み合わせが上記に例示した2つの組み合わせである場合に、第2リソース割り当て部113は、仮想処理部2乃至仮想処理部5なる組み合わせを選択する。

0053

第2リソース割り当て部113は、選択した組み合わせに関して、該情報処理装置を割り当てる。

0054

組み合わせ算出部112、及び、第2リソース割り当て部113は、仮想ネットワーク装置204に含まれるすべての仮想処理部に関する割り当てが算出されるまで、上述した処理を繰り返し実行してもよい。

0055

割り当て決定部121は、102乃至105に示す各部が算出した割り当てと、112及び113に示す各部が算出した割り当てとに関して、それぞれ、移動量情報(図6、後述する)に基づき、異なる情報処理装置に割り当てられた仮想処理部間において送受信される移動量を特定する。次に、割り当て決定部121は、特定した移動量を合計することにより、算出した割り当てに関する総移動量を算出する。その後、割り当て決定部121は、総移動量が小さな割り当てを選択する。

0056

ここで、図6を参照しながら、本実施形態に係る移動量情報について説明する。図6は、第2の実施形態に係る移動量情報の一例を概念的に表す図である。

0057

移動量情報においては、仮想処理部を一意に識別可能な、2つの装置識別子(以降、識別子を「ID」と表す)と、2つの装置IDがそれぞれ表す仮想処理部間を移動するデータ量を表す移動量とが関連付けされている。たとえば、移動量情報においては、仮想処理部2と、仮想処理部3と、移動量「40」とが関連付けされている。これは、仮想処理部2と、仮想処理部3との間において移動されるデータ量が40であることを表す。

0058

たとえば、割り当て決定部121は、仮想処理部2が割り当てられている情報処理装置と、仮想処理部3が割り当てられている情報処理装置とが異なる場合に、移動量情報に基づき、仮想処理部2と仮想処理部3とに関連付けされた移動量である40を特定する。同様に、割り当て決定部121は、仮想処理部に関する処理が割り当てられた情報処理装置が異なる場合に、異なる情報処理装置に割り当てられた仮想処理部間に関して、移動量情報に基づき移動量を特定する。割り当て決定部121は、特定した移動量を合計することにより、算出された割り当てに関する総移動量を算出する。

0059

図7を参照しながら、第2の実施形態に係る割り当て装置111が行う処理について説明する。図7は、第2の実施形態に係る割り当て装置111における処理の流れを示すフローチャートである。

0060

組み合わせ算出部112は、仮想ネットワーク装置204において、相互に隣接している仮想処理部に関する組み合わせのうち、組み合わせに含まれる仮想処理部に関する処理量が、情報処理装置が処理可能な装置処理量以下である組み合わせを算出する(ステップS111)。

0061

第2リソース割り当て部113は、算出された組み合わせのうち、該組み合わせに含まれる仮想処理数(すなわち、処理の種類数)が最多または略最多の組み合わせを選択する(ステップS112)。

0062

第2リソース割り当て部113は、選択した組み合わせに関して、該情報処理装置を割り当てる(ステップS113)。

0063

尚、組み合わせ算出部112、及び、第2リソース割り当て部113は、図8に示すように割り当て装置122において処理を実行してもよい。図8は、本発明の第2の実施形態に係る割り当て装置122が有する構成を示すブロック図である。

0064

第2の実施形態に係る割り当て装置122は、組み合わせ算出部112と、第2リソース割り当て部113とを有する。

0065

割り当て装置122は、処理情報部301及び装置情報部302に基づき、仮想処理部に関する処理を割り当てる情報処理装置を算出する。

0066

割り当て装置122によれば、仮想ネットワーク装置204を効率的に処理する割り当てを高速に算出することができる。この理由は、仮想ネットワーク装置204において相互に隣接している処理が、異なる情報処理装置に割り当てられるのを回避しつつ、割り当て装置101が該処理を、順次、情報処理装置に割り当てるからである。さらに、仮想処理部が逐次的に処理を行うという仮想ネットワーク装置204における処理態様に基づき割り当て装置122が割り当てを算出するので、割り当て装置122によれば、効率的に処理する割り当てを高速に算出することができる。

0067

次に、第2の実施形態に係る割り当て装置111に関する効果について説明する。

0068

本実施形態に係る割り当て装置111によれば、仮想ネットワーク装置204を効率的に処理する割り当てを高速に算出することができる。この理由は、第2の実施形態に係る割り当て装置111が、第1の実施形態に係る割り当て装置101を含むからである。

0069

さらに、本実施形態に係る割り当て装置111によれば、より効率的な仮想ネットワーク装置204における処理の割り当てを算出することができる。この理由は、異なる情報処理装置間における移動量が少ない割り当てを、割り当て決定部121が選択するからである。

0070

<第3の実施形態>
次に、上述した第1の実施形態を基本とする本発明の第3の実施形態について説明する。

0071

次に、図9と、図10とを参照しながら、本発明の第3の実施形態に係る割り当て装置210が有する構成と、第3の実施形態に係る割り当て装置210における処理について説明する。図9は、本発明の第3の実施形態に係る割り当て装置210が有する構成を表すブロック図である。図10は、第3の実施形態に係る割り当て装置210における処理の流れを示すフローチャートである。

0072

本発明の第3の実施形態に係る割り当て装置210は、第1割り当て部211と、第2割り当て部212と、割り当て決定部213とを有する。

0073

第1割り当て部211は、処理手順1に従い、仮想処理部1乃至仮想処理部10における処理を実行する情報処理装置を割り当てる(ステップS151)。尚、処理手順1は、第1の実施形態に係る処理量算出部102、合計算出部103、リソース判定部104、及び、リソース割り当て部105において実行される処理、または、後述するような処理手順である。

0074

第2割り当て部212は、処理手順2に従い、仮想処理部1乃至仮想処理部10における処理を実行する情報処理装置を割り当てる(ステップS152)。尚、処理手順2は、第2の実施形態に係る組み合わせ算出部112、及び、第2リソース割り当て部113において実行される処理、または、後述するような処理手順である。

0075

割り当て決定部213は、処理手順1に従い算出された割り当てと、処理手順2に従い算出された割り当てとのうち、情報処理装置間において移動するデータ(情報)量が少ない割り当てを選択する。たとえば、割り当て決定部213は、相互に隣接している仮想処理部間において移動するデータ量を記憶する移動量情報(図6)に基づき、異なる情報処理装置に割り当てられる仮想処理部間において移動するデータ量を算出する(ステップS153)。割り当て決定部213は、算出したデータ量が少ない割り当てを選択する(ステップS154)。

0076

仮想処理部に関する処理を割り当てられた情報処理装置は、該仮想処理部に関する処理を実行する。たとえば、仮想処理部がファイアウォールであれば、選択された情報処理装置は、ファイアウォールに関する処理を実行する。割り当て装置210が、仮想処理部に関する割り当てを変更するのに応じて、情報処理装置が処理する仮想処理部の台数増減する。

0077

説明の便宜上、以降の説明においては、仮想処理部i(ただし、1≦i≦10)における処理を実行するのに要する処理量をRiと表すとする。また、物理的な情報処理装置が有する装置処理量をRMと表すとする。さらに、Riは、RM以下であるとする。

0078

次に、図11図12とを参照しながら、本発明の第3の実施形態に係る第1割り当て部211が有する構成と、第3の実施形態に係る第1割り当て部211における処理について説明する。図11は、本発明の第3の実施形態に係る第1割り当て部211が有する構成を表すブロック図である。図12は、第3の実施形態に係る第1割り当て部211における処理の流れを示すフローチャートである。

0079

本実施形態に係る第1割り当て部211は、処理量算出部222と、合計算出部223と、リソース判定部224と、リソース割り当て部225と、再割り当て部226とを有する。

0080

上述したように、第1割り当て部211は、処理手順1に従い、仮想処理部における処理を実行する情報処理装置を割り当てる。第1割り当て部211は、1つの物理的な情報処理装置に関する装置処理量RMを超えないようにしながら、仮想ネットワーク装置204を実現する処理の順番、または、該処理の逆順に、仮想処理部に関する処理を物理的な情報処理装置に割り当てる。

0081

たとえば、処理量算出部222は、ある物理的な情報処理装置に割り当てられた処理量(リソース量)の合計値を算出する(ステップS201)。次に、合計算出部223は、処理量算出部222が算出した合計値と、割り当てが決められていない仮想処理部のうち、チェイン205において処理順番が最も早い仮想処理部に関する処理量との合計値(以降、「第2合計値」と表す)を算出する(ステップS202)。

0082

リソース判定部224は、算出した第2合計値が、該ある情報処理装置によって処理可能な装置処理量以下であるか否かを判定する(ステップS203)。

0083

リソース割り当て部225は、第2合計値が該装置処理量以下である場合に(ステップS203にてYES)、該仮想処理部に関する処理を、該ある情報処理装置に割り当てる(ステップS204)。リソース割り当て部225は、第2合計値が該装置処理量を超えると判定する場合に(ステップS203にてNO)、該仮想処理部に関する処理を、まだ処理が割り当てられていない情報処理装置に割り当てる(ステップS205)。

0084

チェイン205において最後(または、最初)に処理を実行する仮想処理部以外の仮想処理部に関する割り当てが算出(ステップS206)されるまで、ステップS201乃至ステップS205に示す処理を繰り返す。

0085

次に、再割り当て部226は、各情報処理装置に関して、該情報処理装置に割り当てられた仮想処理部に関する処理の処理量の合計値を算出し、さらに、該情報処理装置が処理可能な装置処理量と、合計値との差を算出する。算出した差がまだ割り当てが決まっていない仮想処理部に関する処理量以上であれば(ステップS207にてYES)、再割り当て部226は、該差が算出された情報処理装置に、該仮想処理部に関する処理を割り当てる(ステップS208)。

0086

いずれの情報処理装置に関しても、算出した差がまだ割り当てが決まっていない仮想処理部に関する処理量未満である場合に(ステップS207にてNO)、リソース割り当て部225は、該仮想処理部に関する処理を、まだ処理が割り当てられていない情報処理装置を割り当てる(ステップS209)。

0087

上述したように、処理手順1は、チェイン205において処理が進む順序にて、仮想処理部に関する処理量を合計し、合計した結果が情報処理装置に関する装置処理量RMを超えないようにしつつ組み合わせ(グループ)を作成する手順である。また、処理手順1は、処理1乃至処理5に示す処理としても表すことができる。すなわち、
(処理1)aに1を設定する、
(処理2)「Σ(i=a)bRi≦RM」を満たす最大のbを算出する。仮想処理部a乃至仮想処理部bを1つの組み合わせとする、
(処理3)(b+1)を算出し、結果をaに設定する、
(処理4)処理2及び処理3を、すべての仮想処理部に情報処理装置が割り当てられるまで繰り返す、
(処理5)最後に設定された組み合わせ以外は、1つ組み合わせにつき1台の情報処理装置を割り当てる。該情報処理装置のうち、最後に設定された組み合わせに関する処理量を処理可能な特定の情報処理装置がある場合には、組み合わせに含まれる仮想処理部を特定の情報処理装置に割り当てる。特定の情報処理装置がない場合には、該組み合わせに新たに情報処理装置を割り当てる。

0088

ただし、a及びbは、整数を表す。「Σ(i=a)bRi」は、Ra乃至Rbの総和を算出することを表す。

0089

次に、図13図14とを参照しながら、本発明の第3の実施形態に係る第2割り当て部212が有する構成と、第3の実施形態に係る第2割り当て部212における処理について説明する。図13は、本発明の第3の実施形態に係る第2割り当て部212が有する構成を表すブロック図である。図14は、第3の実施形態に係る第2割り当て部212における処理の流れを示すフローチャートである。

0090

本実施形態に係る第2割り当て部212は、組み合わせ算出部233と、第2リソース割り当て部234と、第2再割り当て部235とを有する。

0091

上述したように、第2割り当て部212は、処理手順2に従い、仮想処理部における処理を実行する情報処理装置を割り当てる。

0092

組み合わせ算出部233は、割り当てがまだ決まっていない仮想処理部のうち、仮想処理部に関する処理量の合計が、情報処理装置が処理可能な装置処理量以下である仮想処理部の組み合わせを算出する(ステップS211)。この場合に、組み合わせ算出部233は、該組み合わせを、相互に隣接している仮想処理部によって作成する。

0093

次に、第2リソース割り当て部234は、算出された組み合わせのうち、該組み合わせに含まれる仮想処理部の台数が最多または略最多である組み合わせを選択する。第2リソース割り当て部234は、選択した組み合わせに含まれる仮想処理部における処理を、情報処理装置に割り当てる(ステップS212)。

0094

ステップS211及びステップS212は、すべての仮想処理部に関する処理が物理的な情報処理装置に割り当てられるまで繰り返し実行される(ステップS213)。

0095

ここで、説明の便宜上、最後に割り当てられた情報処理装置を「第1情報処理装置」と表す。

0096

次に、第2再割り当て部235は、仮想処理部における処理が割り当てられた情報処理装置のうち、第1情報処理装置以外の情報処理装置に関して、該情報処理装置に割り当てられた処理量の合計値を算出する。第2再割り当て部235は、物理的な第1情報処理装置以外の情報処理装置に関して、情報処理装置が処理可能な装置処理量と、算出した合計値との差を算出する。第2再割り当て部235は、算出した差が、第1情報処理装置に割り当てられた処理量以上である情報処理装置があるか否かを判定する。第2再割り当て部235は、該情報処理装置がある場合に(ステップS214にてYES)、第1情報処理装置に割り当てていた処理を、該情報処理装置に割り当てる(ステップS215)。すなわち、この場合に、第2再割り当て部235は、第1情報処理装置に割り当てていた処理の割り当てを、該情報処理装置に割り当て直す(ステップS215)。

0097

上述したように、処理手順2においては、チェイン205にて相互に隣接しており、かつ、割り当てが決まっていない仮想処理部に関して、情報処理装置に関する装置処理量を超えない範囲、かつ、仮想処理部数が最多または略最多である組み合わせを作成する。処理手順2においては、一つ組み合わせを作成した後に、割り当てが決まっていない仮想処理部について、同様に組み合わせを作成する。また、処理手順1は、前述した処理1乃至処理5に示す処理としても表すことができる。また、処理手順2は、処理6乃至処理12に示す処理としても表すことができる。すなわち、
(処理6)aに0を設定する、
(処理7)「Σ(i=a)bRi≦RM」を満たす最大または略最大のbを探す。説明の便宜上、最大であるbをbaと表すとする。ただし、Ra乃至Rbに情報処理装置が割り当てられていないとする。該処理によって、1つの組み合わせが算出される、
(処理8)「a+1」を算出し、算出した結果をaに設定する、
(処理9)すべての組み合わせが算出されるまで、処理7及び処理8を繰り返す、
(処理10)「ba−a」を算出し、算出した値が最大または略最大である組み合わせ(すなわち、Ra乃至Rba)に情報処理装置を割り当てる、
(処理11)すべての仮想処理部に関する割り当てが決まるまで、処理7乃至処理10を繰り返す、
(処理12)最後の組み合わせ以外は、1つの組み合わせにつき1台の情報処理装置を割り当てる。該情報処理装置のうち、最後の組み合わせに関する処理量を処理可能な特定の情報処理装置がある場合には、組み合わせに含まれる仮想処理部を特定の情報処理装置に割り当てる。特定の情報処理装置がない場合には、該組み合わせに新たに情報処理装置を割り当てる。

0098

次に、割り当て決定部213は、第1割り当て部211が算出した割り当てと、第2割り当て部212が算出した割り当てとに関して、それぞれ、移動量情報に基づき、異なる情報処理装置の間において移動するデータ量の合計値を算出する。

0099

たとえば、相互に隣接している仮想処理部が、異なる情報処理装置に割り当てられた場合に、該異なる情報処理装置の間において、データを送受信する通信が必要である。

0100

説明の便宜上、相互に隣接している仮想処理部のうち、異なる物理的な情報処理装置に割り当てられている仮想処理部を、「第1仮想処理部」、及び、「第2仮想処理部」と表すとする。

0101

この場合に、割り当て決定部213は、移動量情報において、第1仮想処理部を表す識別子と、第2仮想処理部を表す識別子とに関連付けされた移動量を選択する。割り当て決定部213は、相互に隣接している仮想処理部のうち、異なる情報処理装置に割り当てられている仮想処理部に関して、移動量情報に基づき、それぞれ、移動量を選択する。次に、割り当て決定部213は、選択した移動量の合計を算出する。

0102

割り当て決定部213は、第2割り当て部212が算出した割り当てに関しても、上述した処理と同様な処理を実行することにより、移動量の合計を算出する。

0103

次に、割り当て決定部213は、第1割り当て部211が算出した割り当てに関する移動量の合計と、第2割り当て部212が算出した割り当てに関する移動量の合計とを比較し、合計が小さい割り当てを、仮想処理部における処理の割り当てとして決定する。

0104

次に、具体例を参照しながら、本実施形態に係る割り当て装置210が行う処理について説明する。

0105

まず、情報処理装置が処理可能な装置処理量は1であるとする。また、チェイン205は、10台の仮想処理部(仮想処理部1乃至仮想処理部10)によって実現されるとする。また、仮想処理部に関する処理を実現するのに要する処理量は、それぞれ、以下の通りであるとする。すなわち、
仮想処理部1:0.3、
仮想処理部2:0.3、
仮想処理部3:0.4、
仮想処理部4:0.2、
仮想処理部5:0.2、
仮想処理部6:0.2、
仮想処理部7:0.5、
仮想処理部8:0.2、
仮想処理部9:0.3、
仮想処理部10:0.2。

0106

処理量算出部222は、まず、情報処理装置1に割り当てられた処理量の合計値を算出する。この場合に、処理量算出部222は、まだ、仮想処理部を割り当てていないので合計値として0を算出する。次に、合計算出部223は、該合計値(=0)と、仮想処理部1に関する処理量(=0.3)との合計値(第2合計値=0.3)を算出する。リソース割り当て部225は、算出した第2合計値(=0.3)が、情報処理装置1が有する装置処理量(=1)以下であるので、仮想処理部1に関する処理を第1情報処理装置に割り当てる。

0107

次に、処理量算出部222は、情報処理装置1に割り当てられた処理量の合計値が0.3であると算出する。次に、合計算出部223は、該合計値(=0.3)と、仮想処理部2に関する処理量(=0.3)との第2合計値(=0.6)を算出する。リソース割り当て部225は、算出した第2合計値(=0.6)が、情報処理装置1が有する装置処理量(=1)以下であるので、仮想処理部2に関する処理を情報処理装置1に割り当てる。

0108

以降、第1割り当て部211は、上述した処理と同様の処理を実行することにより、以下の割り当てを算出する。

0109

情報処理装置1:仮想処理部1、仮想処理部2、仮想処理部3、
情報処理装置2:仮想処理部4、仮想処理部5、仮想処理部6、
情報処理装置3:仮想処理部7、仮想処理部8、仮想処理部9。

0110

次に、再割り当て部226は、各情報処理装置に関して、該情報処理装置に割り当てられた仮想処理部に関する処理の処理量の合計値を算出する。たとえば、再割り当て部226は、情報処理装置1に関する合計値が1(=0.3+0.4+0.3)であると算出する。再割り当て部226は、情報処理装置2に関する合計値が0.6(=0.2+0.2+0.2)であると算出する。再割り当て部226は、情報処理装置3に関する合計値が0.9(=0.2+0.5+0.2)であると算出する。

0111

次に、再割り当て部226は、該情報処理装置が処理可能な装置処理量と、合計値との差を算出する。たとえば、再割り当て部226は、情報処理装置1に関して、差0(=1−1)を算出する。再割り当て部226は、情報処理装置2に関して、差0.4(=1−0.6)を算出する。再割り当て部226は、情報処理装置3に関して、差0.1(=1−0.9)を算出する。

0112

再割り当て部226は、物理的な情報処理装置2に関する差(=0.4)が、仮想処理部10に関する処理に要する処理量(=0.2)よりも小さいので、仮想処理部10に関する処理を情報処理装置2に割り当てる。

0113

次に、第2割り当て部212における処理について説明する。組み合わせ算出部233は、割り当てがまだ決まっていない仮想処理部のうち、仮想処理部に関する処理の合計値が、物理的な情報処理装置が処理可能な装置処理量以下である仮想処理部の組み合わせを算出する。たとえば、組み合わせ算出部233は、以下の組み合わせを算出する。すなわち、
(組み合わせ1)仮想処理部1、仮想処理部2、仮想処理部3、
(組み合わせ2)仮想処理部2、仮想処理部3、仮想処理部4、
(組み合わせ3)仮想処理部3、仮想処理部4、仮想処理部5、仮想処理部6、
(組み合わせ4)仮想処理部4、仮想処理部5、仮想処理部6、
(組み合わせ5)仮想処理部5、仮想処理部6、仮想処理部7、
(組み合わせ6)仮想処理部6、仮想処理部7、仮想処理部8、
(組み合わせ7)仮想処理部7、仮想処理部8、仮想処理部9、
(組み合わせ8)仮想処理部8、仮想処理部9、仮想処理部10。

0114

次に、第2リソース割り当て部234は、算出した組み合わせのうち、該組み合わせに含まれる仮想処理部の台数が最大または略最大である組み合わせを選び、選んだ組み合わせに含まれる仮想処理部における処理を1台の情報処理装置に割り当てる。この場合に、第2リソース割り当て部234は、組み合わせ3を選び、組み合わせ3に含まれる仮想処理部3乃至仮想処理部6における処理に情報処理装置2を割り当てる。

0115

次に、組み合わせ算出部233は、割り当てがまだ決まっていない仮想処理部のうち、仮想処理部に関する処理の合計値が、物理的な情報処理装置が処理可能な装置処理量以下である仮想処理部の組み合わせを算出する。たとえば、組み合わせ算出部233は、以下の組み合わせを算出する。すなわち、
(組み合わせ1)仮想処理部1、仮想処理部2
(組み合わせ7)仮想処理部7、仮想処理部8、仮想処理部9、
(組み合わせ8)仮想処理部8、仮想処理部9、仮想処理部10。

0116

次に、第2リソース割り当て部234は、算出した組み合わせのうち、該組み合わせに含まれる仮想処理部の台数が最多または略最多である組み合わせを選択し、選択した組み合わせに含まれる仮想処理部における処理を1台の情報処理装置に割り当てる。この場合に、第2リソース割り当て部234は、組み合わせ7を選択し、組み合わせ7に含まれる仮想処理部7乃至仮想処理部9における処理に情報処理装置3を割り当てる。以降、第2割り当て部212は、上述した処理と同様の処理を実行することにより、以下の割り当てを算出する。

0117

情報処理装置1:仮想処理部1、仮想処理部2、
情報処理装置2:仮想処理部3、仮想処理部4、仮想処理部5、仮想処理部6、
情報処理装置3:仮想処理部7、仮想処理部8、仮想処理部9、
情報処理装置4:仮想処理部10。

0118

次に、第2再割り当て部235は、仮想処理部における処理が割り当てられた情報処理装置のうち、最後に割り当てが決められた情報処理装置4以外の情報処理装置に関して、該情報処理装置に割り当てられた処理量の合計値を算出する。たとえば、第2再割り当て部235は、情報処理装置1に関して、0.6(=0.3+0.3)を算出する。第2再割り当て部235は、情報処理装置2に関して、1(=0.4+0.2+0.2+0.2)を算出する。第2再割り当て部235は、情報処理装置3に関して、1(=0.5+0.2+0.3)を算出する。

0119

次に、第2再割り当て部235は、情報処理装置4以外の情報処理装置に関して、情報処理装置が処理可能な装置処理量と、算出した合計値との差を算出する。たとえば、第2再割り当て部235は、情報処理装置1に関して、0.4(=1−0.6)を算出する。第2再割り当て部235は、情報処理装置2に関して、0(=1−1)を算出する。第2再割り当て部235は、情報処理装置3に関して、0(=1−1)を算出する。

0120

次に、第2再割り当て部235は、算出した差が、情報処理装置4に割り当てられた処理量以上である情報処理装置があるか否かを判定する。上述した例の場合に、情報処理装置1に関する差は、0.4であり、情報処理装置4に割り当てられた処理量(=0.2)以上である。したがって、第2再割り当て部235は、情報処理装置4に割り当てられた仮想処理部10に関する処理を、情報処理装置1に割り当て直す。

0121

次に、割り当て決定部213は、第1割り当て部211が算出した割り当てと、第2割り当て部212が算出した割り当てとに関して、それぞれ、移動量情報に基づき、異なる情報処理装置の間において移動するデータの移動量の合計値を算出する。

0122

第1割り当て部211が算出した割り当てに関しては、通信1乃至通信3に関する通信が必要である。すなわち、
(通信1)仮想処理部3、及び、仮想処理部4の間、
(通信2)仮想処理部6、及び、仮想処理部7の間、
(通信3)仮想処理部9、及び、仮想処理部10の間。

0123

一方、第2割り当て部212が算出した割り当てに関しては、通信4乃至通信6に関する通信が必要である。すなわち、
(通信4)仮想処理部2、及び、仮想処理部3の間、
(通信5)仮想処理部6、及び、仮想処理部7の間、
(通信6)仮想処理部9、及び、仮想処理部10の間。

0124

次に、割り当て決定部213は、第1割り当て部211が算出した割り当てと、第2割り当て部212が算出した割り当てとに関して、それぞれ、移動量情報に基づき、異なる情報処理装置の間において移動する移動量の合計値を算出する。たとえば、割り当て決定部213は、通信1に関して、移動量情報において、仮想処理部3と、仮想処理部4とに関連付けされた移動量(=23)を読み取る。同様に、割り当て決定部213は、通信2及び通信3に関してそれぞれ移動量を読み取る。割り当て決定部213は、読み取った移動量に関する合計値を算出する。

0125

同様に、割り当て決定部213は、第2割り当て部212が算出した割り当てに関して、移動量の合計値を算出する。第1割り当て部211が決定した割り当てに関する移動量が、第2割り当て部212が決定した割り当てに関する移動量よりも少ない場合に、割り当て決定部213は、第1割り当て部211が決定した割り当てを選択する。

0126

次に、第3の実施形態に係る割り当て装置210に関する効果について説明する。

0127

本実施形態に係る割り当て装置210によれば、仮想ネットワーク装置204を効率的に処理する割り当てを高速に算出することができる。さらに、本実施形態に係る割り当て装置210によれば、仮想ネットワーク装置204における処理を効率よく実行することができる。

0128

この理由は、理由1及び理由2である。すなわち、
(理由1)第3の実施形態に係る割り当て装置210が有する構成は、第1の実施形態に係る割り当て装置101が有する構成を含むからである、
(理由2)割り当て装置210が、処理が連なる複数の仮想処理部に対して、移動量及び処理量に基づき、情報処理装置を割り当てるからである。

0129

したがって、割り当て装置210が、相互に隣接している複数の仮想処理部に対して、情報処理装置を割り当てるので、該複数の仮想処理部間に関する処理が、異なる情報処理装置に割り当てられる可能性は低い。したがって、割り当て装置210によれば、仮想ネットワーク装置204における処理を効率よく実行することができる。

0130

尚、装置処理量は、たとえば、中央演算処理装置(CPU)に関する処理能力メモリの大きさ等、複数の指標であってもよい。この場合に、割り当て装置210は、たとえば、情報処理装置が有する装置処理量、及び、該情報処理装置が参照可能なメモリの大きさに基づき、仮想処理部に関する割り当てを算出する。

0131

また、複数の情報処理装置に関する装置処理量は、必ずしも、一様でなくともよい。情報処理装置は、仮想処理部に関する処理のみを実行する必要はなく、仮想ネットワーク装置とは異なる処理を実行していてもよい。

0132

(ハードウェア構成例)
上述した本発明の各実施形態における割り当て装置を、1つの計算処理装置(情報処理装置、コンピュータ)を用いて実現するハードウェア資源の構成例について説明する。但し、係る割り当て装置は、物理的または機能的に少なくとも2つの計算処理装置を用いて実現してもよい。また、係る割り当て装置は、専用の装置として実現してもよい。

0133

図15は、第1の実施形態乃至第3の実施形態に係る割り当て装置を実現可能な計算処理装置のハードウェア構成例を概略的に示す図である。計算処理装置20は、中央処理演算装置(Central_Processing_Unit)21、メモリ22、ディスク23、及び、不揮発性記録媒体24を有する。計算処理装置20は、さらに、入力装置25、出力装置26、通信インターフェース(以降、「通信IF」と表す。)27、及び、ディスプレー28を有する。計算処理装置20は、通信IF27を介して、他の計算処理装置、及び、通信装置と情報を送受信することができる。

0134

不揮発性記録媒体24は、コンピュータが読み取り可能な、たとえば、コンパクトディスク(Compact_Disc)、デジタルバータイルディスク(Digital_Versatile_Disc)である。また、不揮発性記録媒体24は、ユニバーサルシリアルバスメモリ(USBメモリ)、ソリッドステートドライブ(Solid_State_Drive)等であってもよい。不揮発性記録媒体24は、電源を供給しなくても係るプログラムを保持し、持ち運びを可能にする。不揮発性記録媒体24は、上述した媒体に限定されない。また、不揮発性記録媒体24の代わりに、通信IF27を介して、ネットワークを介して係るプログラムを持ち運びしてもよい。

0135

すなわち、CPU21は、ディスク23が記憶するソフトウェア・プログラム(コンピュータ・プログラム:以下、単に「プログラム」と称する)を、実行する際にメモリ22にコピーし、演算処理を実行する。CPU21は、プログラム実行に必要なデータをメモリ22から読み取る。表示が必要な場合には、CPU21は、ディスプレー28に出力結果を表示する。外部への出力が必要な場合には、CPU21は、出力装置26に出力結果を出力する。外部からプログラムを入力する場合、CPU21は、入力装置25からプログラムを読み取る。CPU21は、上述した図1図5図8図9図11、または、図13に示す各部が表す機能(処理)に対応するところのメモリ22にある割り当てプログラム(図4図7図10図12、または、図14)を解釈し実行する。CPU21は、上述した本発明の各実施形態において説明した処理を順次行う。

0136

すなわち、このような場合、本発明は、係る割り当てプログラムによっても成し得ると捉えることができる。更に、係る割り当てプログラムが記録されたコンピュータ読み取り可能な不揮発性の記録媒体によっても、本発明は成し得ると捉えることができる。

0137

以上、上述した実施形態を模範的な例として本発明を説明した。しかし、本発明は、上述した実施形態には限定されない。すなわち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。

0138

101割り当て装置
102処理量算出部
103 合計算出部
104リソース判定部
105リソース割り当て部
301処理情報部
302装置情報部
201情報処理システム
202ルータ
203 ルータ
204仮想ネットワーク装置
205チェイン
111 割り当て装置
112 組み合わせ算出部
113 第2リソース割り当て部
121割り当て決定部
122 割り当て装置
210 割り当て装置
211 第1割り当て部
212 第2割り当て部
213 割り当て決定部
222 処理量算出部
223 合計算出部
224 リソース判定部
225 リソース割り当て部
226再割り当て部
233 組み合わせ算出部
234 第2リソース割り当て部
235 第2再割り当て部
20計算処理装置
21 CPU
22メモリ
23ディスク
24不揮発性記録媒体
25入力装置
26出力装置
27通信IF
28 ディスプレー

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ