JP6213303B2 - 情報処理システム、制御装置及び制御プログラム - Google Patents

情報処理システム、制御装置及び制御プログラム Download PDF

Info

Publication number
JP6213303B2
JP6213303B2 JP2014035964A JP2014035964A JP6213303B2 JP 6213303 B2 JP6213303 B2 JP 6213303B2 JP 2014035964 A JP2014035964 A JP 2014035964A JP 2014035964 A JP2014035964 A JP 2014035964A JP 6213303 B2 JP6213303 B2 JP 6213303B2
Authority
JP
Japan
Prior art keywords
information processing
evaluation value
switches
processing devices
subnet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014035964A
Other languages
English (en)
Other versions
JP2015162757A (ja
Inventor
浩一 尾上
浩一 尾上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014035964A priority Critical patent/JP6213303B2/ja
Priority to US14/607,410 priority patent/US9641439B2/en
Publication of JP2015162757A publication Critical patent/JP2015162757A/ja
Application granted granted Critical
Publication of JP6213303B2 publication Critical patent/JP6213303B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、情報処理システムにおけるリソース制御技術に関する。
データセンタなどにおける情報処理システムにおいて、複数のテナント(顧客)の複数の仮想マシンなどを複数の物理マシン上に起動させて運用している場合、物理マシンをつなぐネットワークにおいてその負荷に偏りが生じていると、所望のスループットが得られない場合がある。
例えば、図1に示すような情報処理システムを想定する。図1の情報処理システムには、3つの上位スイッチSSwitch1乃至3と、3つの下位スイッチLSwitch1乃至3と、仮想ルータVirtual router1及び2が実行される物理マシンAServer1及び3と、仮想マシンVM1乃至6が実行される物理マシンVServer1乃至6とが含まれる。
図1の例では、VM1は、LSwitch1とSSwitch1とVirtual router1とSSwitch1とLSwitch2とを経由してVM3と通信している、また、VM2は、LSwitch1とSSwitch1とLSwitch2とを経由してVM4と通信している。さらに、VM5は、LSwitch2とSSwitch3とVirtual router2とSSwitch3とLSwitch3とを経由してVM6と通信している。
このような場合、LSwitch1に着目すると、SSwitch1へのリンクの出力トラフィックが「5」であるのに対して、SSwitch2及びSSwitch3へのリンクの出力トラフィックが「0」となっており、SSwitch1へのリンクの出力トラフィックが大きくなってしまって、レイテンシが大きくなってしまう可能性がある。
そこで従来技術では、SSwitch1に接続されているネットワークコントローラ(Network Controller)が、上位スイッチ及び下位スイッチと連携して、VM間の通信経路を個別に変更する場合がある。例えば、VM2とVM4の間の通信経路を、LSwitch1とSSwitch1とLSwitch2とを経由する通信経路から、図2に示すように、LSwitch1とSSwitch2とLSwitch2とを経由する通信経路に変更する。これによって、LSwitch1からSSwitch2へのリンクの出力トラフィックが「3」に増加するため、LSwitch1からSSwitch1へのリンクの出力トラフィックが「2」へ削減されるようになる。
このように、従来技術のようにVM間の通信経路を個別に変更することで出力トラフィックの平準化が可能となる場合もある。
しかしながら、次のような場合には、このような手法が機能しない場合がある。図3に示すように、SSwitch3から物理マシンAServer3へのリンクには、Virtual router2及びVirtual router3への出力トラフィックが重なってしまっているが、どのように上位スイッチと下位スイッチとの間の通信経路を変更しようとも、この出力トラフィックの重なりは回避できない。
同様に、図4に示すように、LSwitchとVServerとの間のリンクも代替するものがないので、VM3からLSwitch1を経由してVM2に至る、LSwitch1の出力トラフィックと、VM4からLSwitch1を経由してVM1に至る、LSwitch1の出力トラフィックとが重なっていてレイテンシが大きくなっても、回避できない。
特開2012−94119号公報 特表2012−511292号公報
従って、本発明の目的は、一側面によれば、ネットワーク負荷を効果的に平準化させるための技術を提供することである。
本発明に係る情報処理システムは、(A)複数のサブネットの少なくともいずれかに属する仮想マシンが起動される複数の第1の情報処理装置と、(B)サブネット間の通信に用いられる仮想ルータが起動される複数の第2の情報処理装置と、(C)サブネット内の通信経路と仮想マシンの配置と仮想ルータの配置とを制御する制御装置と、(D)複数の第1の情報処理装置と複数の第2の情報処理装置と制御装置とを接続する複数のスイッチとを有する。そして、上で述べた複数のスイッチは、(d1)複数の第1の情報処理装置に接続する複数の第1のスイッチと、(d2)複数の第2の情報処理装置に接続する複数の第2のスイッチとを含む。また、複数の第1のスイッチの各々は、複数の第2のスイッチのうちの2以上の第2のスイッチと接続されている。さらに、上で述べた制御装置は、(c1)複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、複数のスイッチの各々の通信量に関する所定の評価値とに基づき、仮想マシンと、仮想ルータと、いずれかのサブネット内の通信経路とのうちいずれかを選択して、選択された仮想マシン又は仮想ルータの配置先若しくは選択されたサブネット内の通信経路を変更する。
一側面によれば、ネットワーク負荷を効果的に平準化できるようになる。
図1は、従来技術を説明するための図である。 図2は、従来技術を説明するための図である。 図3は、従来技術を説明するための図である。 図4は、従来技術を説明するための図である。 図5は、実施の形態に係る情報処理システムを示す図である。 図6は、リソース制御装置の機能の概要を示す図である。 図7は、リソース制御装置の機能ブロック図である。 図8は、収集データ格納部に格納されるデータの一例を示す図である。 図9は、収集データ格納部に格納されるデータの一例を示す図である。 図10は、本実施の形態に係る処理フローを示す図である。 図11は、評価値の算出例を示す図である。 図12は、評価値の算出例を示す図である。 図13は、評価値の算出例を示す図である。 図14は、Virtual object等の評価値の算出例を示す図である。 図15は、Virtual object等の評価値の算出例を示す図である。 図16は、Virtual object等の評価値の算出例を示す図である。 図17は、Virtual object等の評価値の算出例を示す図である。 図18は、Virtual object等の評価値の算出例を示す図である。 図19は、Virtual object等の評価値の算出例を示す図である。 図20は、Virtual object等の評価値の算出例を示す図である。 図21は、物理リンクと移動対象との関係を表す模式図である。 図22は、本実施の形態に係る処理フローを示す図である。 図23は、本実施の形態に係る処理フローを示す図である。 図24は、本実施の形態に係る処理フローを示す図である。 図25は、VLAN IDの設定について説明するための図である。 図26は、Virtual routerの移動について説明するための図である。 図27は、Virtual routerの移動について説明するための図である。 図28は、Virtual routerの移動について説明するための図である。 図29は、Virtual routerの移動について説明するための図である。 図30は、Virtual routerの移動について説明するための図である。 図31は、Virtual routerの移動について説明するための図である。 図32は、VMの移動について説明するための図である。 図33は、VMの移動について説明するための図である。 図34は、VMの移動について説明するための図である。 図35は、VMの移動について説明するための図である。 図36は、VMの移動について説明するための図である。 図37は、VMの移動について説明するための図である。 図38は、VMの移動について説明するための図である。 図39は、VMの移動について説明するための図である。 図40は、L2−Treeの移動について説明するための図である。 図41は、L2−Treeの移動について説明するための図である。 図42は、L2−Treeの移動について説明するための図である。 図43は、L2−Treeの移動について説明するための図である。 図44は、L2−Treeの移動について説明するための図である。 図45は、L2−Treeの移動について説明するための図である。 図46は、移動によって影響を受けるトラフィックについての図である。 図47は、同じLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図48は、同じLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図49は、同じLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図50は、同じLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図51は、同じLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図52は、同じLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図53は、同じLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図54は、同じLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図55は、同じLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図56は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図57は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図58は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図59は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図60は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図61は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図62は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図63は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図64は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図65は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図66は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図67は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図68は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図69は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図70は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図71は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図72は、異なるLSwitchに接続されているVServerにVMを移動させる場合のフローの変化を説明するための図である。 図73は、計算量削減のための工夫を説明するための図である。 図74は、計算量削減のための工夫を説明するための図である。 図75は、計算量削減のための工夫を説明するための図である。 図76は、計算量削減のための工夫を説明するための図である。 図77は、コンピュータの機能ブロック図である。
本実施の形態において想定するシステムの一例を図5に示す。図5の例のように、上位スイッチSSwitch1乃至n(Spine Switchとも呼ぶ)と、下位スイッチLSwitch1乃至x(Leaf Switchとも呼ぶ)と、仮想マシンVMを配置及び移動させることができる物理マシンVServer1乃至yと、Virtual router(以下VRとも記す)を配置及び移動させることができる物理マシンAServer1乃至m(Appliance Serverとも呼ぶ)と、本実施の形態で主要な処理を実行するリソース制御装置(Resource Controller)1000とを含む。
物理マシンVServerは、いずれかのLSwitchに接続される。下位スイッチLSwitchは、上位スイッチSSwitchのうち2以上のSSwitchに接続される。好適には、AServerが接続された各SSwitchに接続される。
AServerは、いずれかのSSwitchに接続される。なお、リソース制御装置1000も、いずれかのSSwitchに接続される。
図6に、リソース制御装置1000の機能の概要を示す。リソース制御装置1000は、SSwitch、LSwitch、AServer、VServerから各種情報を収集して、それらの物理装置やAServer上のVRやVServer上のVM等に対する制御を行う。
この制御を行うために、リソース制御装置1000は、物理的及び仮想的なネットワーク(Physical/Virtual network)の情報に関連して、トポロジ管理を含む、物理スイッチ(Physical Switch)の管理と、仮想スイッチ(Virtual switch)及び仮想ルータ(Virtual router)の管理と、ファイアウォール(Firewall)の管理と、サブネットの管理等を行っている。本実施の形態では、各テナントにおけるサブネット内の通信経路をL2−treeと呼ぶものとする。
また、リソース制御装置1000は、物理マシン及び仮想マシン(Physical/Virtual machine)の情報に関連して、物理マシン(Physical machine)の管理と、仮想マシン(VM:Virtual machinie)及び仮想ルータVirtual routerの使用資源量の管理と、VM及びVRの位置管理などを行う。なお、物理マシンの管理には、CPU(Central Processing Unit)、メモリ及びVMM(Virtual Machine Manager)などの管理が含まれる。以下、VMとVRとをVirtual objectと総称するものとする。物理スイッチ、物理マシン及びスイッチを、物理装置又はPM(Physical machine)と総称するものとする。
具体的には、リソース制御装置1000は、本実施の形態に関連して図7に示すような構成を有する。リソース制御装置1000は、本実施の形態における主要な処理を行う平準化処理部1100と、L2−treeの変更を行う変更制御部1200と、Virtual objectの移動制御を行う移動制御部1300と、管理データ格納部1400と、収集データ格納部1500と、トラフィックデータ収集部1600とを有する。
平準化処理部1100は、制御部1101と、第1評価値算出部1102と、第2評価値算出部1103と、集約計算部1104とを有する。制御部1101は、第1評価値算出部1102と第2評価値算出部1103等の処理の制御を行うと共に、移動制御部1300と変更制御部1200とに対して指示を行う。
第1評価値算出部1102は、各物理装置の出力トラフィックに基づく評価値を算出する。集約計算部1104は、第1評価値算出部1102によって算出された評価値に基づき選択された物理装置に着目して、当該物理装置の出力トラフィックを所定の単位で集約する処理を実行する。第2評価値算出部1103は、集約計算部1104の処理結果を用いて選択された移動対象又は変更対象(VM,VR又はL2−tree)を仮に移動させた場合における物理装置の評価値を算出する。
管理データ格納部1400は、物理的及び仮想的なネットワークの情報と物理マシン及び仮想マシンの情報とを格納する。より具体的には、管理データ格納部1400は、本実施の形態に関連するものとして、VM及びVRの配置位置データと、L2−treeとVLAN(Virtual Local Area Network) IDとの対応付けデータと、テナントIDとVLAN IDとの対応付けデータと、L2−treeと経由するSServerとの対応付けデータと、各サブネットに属するVMのIDと、各VRについてルーティングするサブネットとを格納している。
トラフィックデータ収集部1600は、各物理装置から各トラフィックのデータを収集し、収集データ格納部1500に格納する。収集データ格納部1500は、例えば図8及び図9に示すようなデータを格納する。
図8は、各物理ポートのトラフィックのデータの一例を示す。ここでは例えば1時間毎にデータを格納する例を示しているが、間隔は1日毎といったように任意である。図8の例では、時刻と、PMのID及びポート番号の組み合わせと、出力トラフィックとが登録されるようになっている。ポート番号については、PMが物理スイッチであればその物理ポートのポート番号が設定されるが、VServer及びAServerの場合には、設定しないか又は常に固定のポート番号を設定するものとする。出力トラフィックについては、リンク使用率、平均通信速度、データ量又はパケット数等であるが、図8では通信速度を示している。
また、図9は、フロー単位のトラフィックのデータを示す。ここでは例えば1時間毎にデータを格納する例を示しているが、間隔は1日毎といったように任意である。図9の例では、時刻と、PMのID、ポート番号、TID(テナントID)、SIP(Source IP address:送信元IPアドレス)及びDIP(Destination IP address:宛先IPアドレス)の組み合わせと、出力トラフィックとが登録されるようになっている。PMのID、ポート番号、TID(テナントID)、SIP(Source IP address:送信元IPアドレス)及びDIP(Destination IP address:宛先IPアドレス)の組み合わせによって、送信元VMから宛先VMへの個別のフローが識別される。
第1評価値算出部1102は、主に図8に示すような、物理ポートのトラフィックのデータを用いて処理を行う。集約計算部1104は、主に図9に示すような、フロー毎のトラフィックデータを用いて処理を行う。第2評価値算出部1103は、図8及び図9に示すようなデータを用いて処理を行う。
次に、リソース制御装置1000の処理内容について、概要を図10乃至図25を用いて説明する。
まず、平準化処理部1100の制御部1101は、VM又はVRの配置先若しくはL2−Treeの変更を行う条件を満たすか否かを判断する(図10:ステップS1)。例えば、ネットワークが輻輳している(例えばいずれかの物理リンクに閾値以上の出力トラフィックが検出されている)という条件、又は以下で説明するステップS3を先に実行してVServerとSSwitchとLSwitchとの評価値のうち最大値と最小値との差が閾値以上であるという条件を満たしているか否かを判断する。
ステップS1の条件を満たさない場合には、端子Bを介して処理を終了する。すなわち、このタイミングでの本処理は終了する。なお、本処理は、1日毎又は1時間毎といったように定期的に実行するようにしても良いし、管理者などの指示によって実行するようにしても良い。
一方、ステップS1の条件を満たす場合には、制御部1101は、第1評価値算出部1102に指示を行って、収集データ格納部1500に格納されているデータから、物理スイッチSwitch(SSwitch及びLSwitch)とVServerとの各々について評価値を算出させる(ステップS3)。評価値は、AServer以外の物理装置の出力トラフィックの平均値又は最大値である。
SSwitchの評価値について図11を用いて説明する。例えば、AServerへのUplinkについて出力トラフィックが9Gbpsであり、第1のDownlinkについて出力トラフィックが4Gbpsであり、第2のDownlinkについて出力トラフィックが3Gbpsであり、第3のDownlinkについて出力トラフィックが4Gbpsであるとする。そうすると、評価値が、これらの出力トラフィックのうちの最大値と定義されていれば、「9」と算出される。
また、LSwitchの評価値について図12を用いて説明する。例えば、第1のVServerへのDownlinkについて出力トラフィックが7Gbpsであり、第2のVServerへのDownlinkについて出力トラフィックが3Gbpsであり、第1のSSwitchへのUplinkについて出力トラフィックが8Gbpsであり、第2のSSwitchへのUplinkについて出力トラフィックが4Gbpsであり、第3のSSwitchへのUplinkについて出力トラフィックが4Gbpsであるものとする。そうすると、評価値が、これらの出力トラフィックのうち最大値と定義されていれば、「8」と算出される。
さらに、VServerの評価値について図13を用いて説明する。例えば、LSwitchへのUplinkについて出力トラフィックが5Gbpsであるものとする。そうすると、評価値が、これらの出力トラフィックのうち最大値と定義されていれば、「5」と算出される。
第1評価値算出部1102は、評価値最大の物理装置(AServer以外の物理装置)を選択する(ステップS5)。このように、フローの集約処理を行うべき物理装置を簡単な処理で絞り込むことができるようになる。
そして、ステップS5においてSSwitchが選択された場合には(ステップS7:Yesルート)、第1評価値算出部1102は、選択されたSSwitchについて最大評価値となった物理ポートがUplinkのポートであるか否かを判断する(ステップS9)。ステップS9の条件が満たされる場合には、第1評価値算出部1102は、ステップS5で選択されたSSwitchのIDとUplinkであることを制御部1101に出力する。そして、制御部1101は、第2評価値算出部1103に対して、ステップS5で選択されたSSwitchのIDと当該SSwitchに接続されているAServer上に起動されているVirtual routerのID等を指定して、評価値算出を指示する。
第2評価値算出部1103は、制御部1101からの指示に応じて、集約計算部1104と協働して、各Virtual routerについて評価値を算出する(ステップS11)。そして処理はステップS23に移行する。
例えば、図14に示すように、SwitchのUplink(物理リンク)の評価値が「9」であるためステップS5で選択された場合、集約計算部1104は、Virtual router1からの出力トラフィックを集約し、Virtual router2からの出力トラフィックを集約する。具体的には、Virtual router1がルーティングする第1のサブネットに属するVMと第2のサブネットに属するVMとの間のトラフィックを集約し、Virtual router2がルーティングする第3のサブネットに属するVMと第4のサブネットに属するVMとの間のトラフィックを集約する。
そうすると、図14に示すように、Virtual router1からの出力トラフィックが5Gbpsと集約され、Virtual router2からの出力トラフィックが4Gbpsと集約される。そうすると、第2評価値算出部1103は、この集約結果から、Virtual router1の評価値を「5」とし、Virtual router2の評価値を「4」として算出する。
一方、ステップS9の条件が満たされなかった場合には、第1評価値算出部1102は、ステップS5で選択されたSSwitchのIDとDownlinkであることを制御部1101に出力する。そして、制御部1101は、第2評価値算出部1103に対して、ステップS5で選択されたSSwitchのIDと、当該SSwitchが対応付けられているL2−Treeのデータと、当該SSwitchに接続されているAServer上に起動されているVirtual routerのID(例えばIPアドレス)と、各VMのID(例えばIPアドレス)等を指定して、評価値算出を指示する。
第2評価値算出部1103は、制御部1101からの指示に応じて、集約計算部1104と協働して、各Virtual router、各L2−Tree及び各送信先VMの評価値を算出する(ステップS13)。そして処理はステップS23に移行する。
例えば、図15に示すように、SSwitchの1つのDownlinkの評価値が7GbpsであるためステップS5で選択された場合、集約計算部1104は、VM1からの出力トラフィックを集約し、VM2からの出力トラフィックを集約する。また、別の側面として、集約計算部1104は、このSSwitchに接続されているAServer上で起動されているVirtual router1を経由した出力トラフィック(サブネット間通信の出力トラフィック)と、Virtual router1を経由しない出力トラフィック(サブネット内通信の出力トラフィック)とを集約する。
すなわち、物理リンクの出力トラフィック=Virtual router経由の出力トラフィック+L2−Tree毎の出力トラフィック=送信先VMの出力トラフィックの総和 という関係が成り立つ。
図15の例では、VM1からの出力トラフィックが5Gbpsと集約され、VM2からの出力トラフィックが2Gbpsと集約される。また、Virtual router1を経由する出力トラフィックが3Gbpsと集約され、Virtual router1を経由しない出力トラフィックが4Gbpsと集約される。集約計算部1104は、この集約結果から、VM1の評価値を「5」とし、VM2の評価値を「2」とし、Virtual router1の評価値を「3」とし、このSSwitchに対応付けられているL2−Tree(サブネット)の評価値を「4」と算出する。ここではサブネットは1つであるものとする。
なお、図16に示すように、AServerに接続されていないためVirtual router経由の出力トラフィックがなく、SSwitchのDownlinkに着目する場合には、送信先VM毎に出力トラフィックを集約する。図16の例では、VM1からの出力トラフィックはVM2からの出力トラフィックと、VM3からの出力トラフィックとの和となる。一方、VM4からの出力トラフィックはVM2からの出力トラフィックと同じである。送信元VMを、仮に後の処理で選択したとしてもSSwitchのDownlinkの出力トラフィックは変化しないので、送信先VMに着目する。
ステップS5で選択された物理装置がSSwitchではなく(ステップS7:Noルート)、LSwitchが選択された場合(ステップS15:Yesルート)、第1評価値算出部1102は、選択されたSSwitchについて最大評価値となった物理ポートがUplinkのポートであるか否かを判断する(ステップS17)。ステップS17の条件が満たされる場合には、第1評価値算出部1102は、ステップS5で選択されたLSwitchのIDとUplinkであることを制御部1101に出力する。そして、制御部1101は、第2評価値算出部1103に対して、ステップS5で選択されたLSwitchのIDと、各Virtual routerのIDと、各VMのID等を指定して、評価値算出を指示する。
第2評価値算出部1103は、制御部1101からの指示に応じて、集約計算部1104と協働して、各Virtual router、各L2−Tree及び各送信元VMの評価値を算出する(ステップS19)。そして処理はステップS23に移行する。
例えば、図17に示すように、LSwitchの1つのUplinkの評価値が6GbpsであるためステップS5で選択された場合、集約計算部1104は、VM1からの出力トラフィックを集約し、VM2からの出力トラフィックを集約する。また、別の側面として、集約計算部1104は、Virtual router1を経由する出力トラフィック(サブネット間通信の出力トラフィック)と、Virtual router1を経由しない出力トラフィック(サブネット内通信の出力トラフィック)とを集約する。
ここでも、物理リンクの出力トラフィック=Virtual router経由の出力トラフィック+L2−Tree毎の出力トラフィック=送信先VMの出力トラフィックの総和、という関係が成り立つ。
図17の例では、VM1からの出力トラフィックが3Gbpsと集約され、VM2からの出力トラフィックが3Gbpsと集約される。また、Virtual router1を経由する出力トラフィックが4Gbpsと集約され、Virtual router1を経由する出力トラフィックが2Gbpsと集約される。集約計算部1104は、この集約結果から、VM1の評価値を「3」とし、VM2の評価値を「3」とし、Virtual router1の評価値を「4」とし、このSSwitchに対応付けられているL2−Tree(サブネット)の評価値を「2」と算出する。ここではサブネットは1つであるものとする。
なお、Virtual router経由の出力トラフィックがなく、LSwitchのUplinkに着目する場合には、送信元VM毎に出力トラフィックを集約する。図18の例では、VM1からの出力トラフィックはVM4からの出力トラフィックと同じである。一方、VM3からの出力トラフィックはVM4からの出力トラフィックとVM5からの出力トラフィックの和である。送信先VMを、後の処理で選択したとしてもLSwitchのUplinkの出力トラフィックは変化しないので、送信元VMに着目する。
一方、ステップS17の条件を満たさない場合、又はステップS5で特定のVServerが選択された場合(ステップS17:Noルート且つステップS15:Noルート)、第1評価値算出部1102は、ステップS5で選択されたLSwitchのIDとDownlinkであること、又はステップS5で選択されたVServerのIDを制御部1101に出力する。そして、制御部1101は、第2評価値算出部1103に対して、ステップS5で選択されたLSwitchのID又はVServerのIDと、各VMのID等を指定して、評価値算出を指示する。
第2評価値算出部1103は、制御部1101からの指示に応じて、集約計算部1104と協働して、各VMの評価値を算出する(ステップS21)。そして処理はステップS23に移行する。
なお、LSwitchのDownlinkが選択された場合には送信先VM毎に出力トラフィックを集約する。図19に示すように、LSwitchの1つのDownlinkの評価値が「7」であるためステップS5で選択された場合、集約計算部1104は、VM1からの出力トラフィックを集約し、VM2からの出力トラフィックを集約する。
図19の例では、VM1へのVirtual routerを経由する出力トラフィック3GbpsとVM1へのVirtual routerを経由しない出力トラフィック1Gbpsとが加算されて4Gbpsが得られる。同様に、VM2へのVirtual routerを経由する出力トラフィック1GbpsとVM2へのVirtual routerを経由しない出力トラフィック2Gbpsとが加算されて3Gbpsが得られる。
よって、集約計算部1104は、この集約結果から、VM1の評価値を「4」とし、VM2の評価値を「3」と算出する。
また、VServerが選択された場合には送信元VM毎に出力トラフィックを集約する。図20に示すように、VServerからの物理リンクが5GbpsであるためステップS5で選択された場合には、集約計算部1104は、VM1からの出力トラフィックを集約し、VM2からの出力トラフィックを集約する。
図20の例では、VM1からのVirtual routerを経由する出力トラフィック1GbpsとVM1からのVirtual routerを経由しない出力トラフィック1Gbpsとが加算されて2Gbpsが得られる。同様に、VM2からのVirtual routerを経由する出力トラフィック2GbpsとVM2からのVirtual routerを経由しない出力トラフィック1Gbpsとが加算されて3Gbpsが得られる。
よって、集約計算部1104は、この集約結果から、VM1の評価値を「2」とし、VM2の評価値を「3」と算出する。
その後、第2評価値算出部1102は、評価値算出がなされた移動候補(VM、VR、L2−Tree)を、評価値で降順にソートすることでソートリストを生成し、制御部1101に出力する(ステップS23)。処理は端子Aを介して図21の処理に移行する。
図14の例では、Virtual router1が先頭のソートリストが生成される。図15の例では、VM1、L2−Tree、VR1、VM2の順番のソートリストが生成される。図17の例では、VR1、VM1、VM2、L2−treeの順番のソートリストが生成される。図19の例では、VM1が先頭のソートリストが生成される。図20の例では、VM2が先頭のソートリストが生成される。
以上述べた事項をまとめると、図21に示すようになる。すなわち、SSwitchのUplink(図21のA)が選択されると、Virtual routerが移動対象となる。また、SSwitchのDownlink(図21のB)又はLSwitchのUplink(図21のC)が選択されると、Virtual router、VM又はL2−Treeが移動対象となる。さらに、LSwitchのDownlink(図21のD)又はVServerのリンク(図21のE)が選択されると、VMが移動対象となる。
図22の処理の説明に移行して、制御部1101は、ソートリストが空になったか判断する(ステップS25)。以下の処理で、ソートリストの先頭から移動候補を取り出すので、初期的には空にはならない。なお、ソートリストが空になると、物理リンクの出力トラフィックをこれ以上平準化させることができなかったということで、今回のタイミングにおける処理は終了する。
一方、ソートリストが空ではない場合には、制御部1101は、ソートリストの先頭を移動対象として取り出す(ステップS27)。VM、VR又はL2−Treeを取り出す。
そして、制御部1101は、移動対象がL2−Treeであるか否かを判断する(ステップS29)。移動対象がL2−Treeではない場合には、処理は端子Cを介して図23の処理に移行する。
一方、移動対象がL2−Treeである場合には、制御部1101は、第1評価値算出部1102に対して、L2−Treeを他のSSwitchへ移動させることを仮定した場合における各スイッチ及びVServerの評価値を算出させる(ステップS31)。この処理では、他のSSwitchが複数存在する場合には、各他のSSwitchを移動先候補として、ステップS3と同様に各スイッチ及びVServerの評価値を算出する。但し、移動対象によって変化するのは、一部のスイッチなどであるから、そのスイッチなどについてのみ評価値を算出する。なお、本ステップの処理については、後に詳細に説明する。
そうすると、制御部1101は、移動先候補毎に、評価値を降順にソートすることで評価値リストを生成する(ステップS33)。例えば評価値が[0,3,5,2]と計算された場合には、評価値リストは[5,3,2,0]となる。
そして、制御部1101は、評価値リストが最小となるSSwitchを移動先に選択する(ステップS35)。本ステップでは評価値リストの比較を行うことになるが、同じ順番の評価値同士を上から順番に比較して、最初に差が出た評価値が小さい方が小さい評価値リストと判断される。具体的には、評価値リスト[5,3,2,0]と評価値リスト[5,4,2,0]とを比較する場合には、2番目の評価値が「3」と「4」になるので、前者の評価値リストが小さいと判断される。そして処理は端子Dを介して図24の処理に移行する。
図23を用いて端子C以降の処理を説明する。制御部1101は、移動対象がVMであるか否かを判断する(ステップS37)。移動対象がVMではない場合には、処理は端子Fを介して図24の処理に移行する。
一方、移動対象がVMである場合には、制御部1101は、第1評価値算出部1102に対して、VMを他のVServerへ移動させることを仮定した場合における各スイッチ及びVServerの評価値を算出させる(ステップS39)。この処理では、他のVServerが複数存在する場合には、各他のVServerを移動先候補として、ステップS3と同様に各スイッチ及びVServerの評価値を算出する。但し、移動対象によって変化するのは、一部のスイッチなどであるから、そのスイッチなどについてのみ評価値を算出する。なお、本ステップの処理については、ステップS31と共に後に詳細に説明する。
そうすると、制御部1101は、移動先候補毎に、評価値を降順にソートすることで評価値リストを生成する(ステップS41)。
そして、制御部1101は、評価値リストが最小となるVServerを移動先に選択する(ステップS43)。そして処理は端子Dを介して図24の処理に移行する。
そして図24を用いて端子F以降の処理を説明する。ステップS37でVMではないと判断されると、移動対象がVirtual routerであることになる。
従って、制御部1101は、第1評価値算出部1102に対して、Virtual routerを他のAServerへ移動させることを仮定した場合における各スイッチ及びVServerの評価値を算出させる(ステップS45)。この処理では、他のAServerが複数存在する場合には、各他のAServerを移動先候補として、ステップS3と同様に各スイッチ及びVServerの評価値を算出する。但し、移動対象によって変化するのは、一部のスイッチなどであるから、そのスイッチなどについてのみ評価値を算出する。なお、本ステップの処理については、ステップS31及びS39と共に後に詳細に説明する。
そうすると、制御部1101は、移動先候補毎に、評価値を降順にソートすることで評価値リストを生成する(ステップS47)。
そして、制御部1101は、評価値リストが最小となるAServerを移動先に選択する(ステップS49)。
その後、制御部1101は、移動後の評価値リストが移動前の評価値リスト(ステップS3で算出された評価値から得られる評価値リスト)より小さいか否かを判断する(ステップS51)。この条件を満たさない場合には、移動させても出力トラフィックの平準化に寄与しないので、ソートリストから次の移動対象を取り出すことにする。よって、処理は端子Aを介して図22のステップS25に戻る。
一方、移動後の評価値リストが移動前の評価値リストより小さい場合には、制御部1101は、移動対象を、選択された移動先に移動するように、移動制御部1300又は変更制御部1200に指示を行う(ステップS53)。そして処理は終了する。
ステップS53では、VMやVRを移動させる場合には、現在配置されている物理マシンと移動先の物理マシンを指定して所定のコマンドを実行することで実現される。また、管理データ格納部1400のデータも更新する。
さらに、L2−Treeを変更する場合には、サブネット内通信において経由するSSwitchを変更することになる。この場合、変更先のSSwitchを経由するようにVLAN IDを変更する。従って、図25に模式的に示すように、L2−Treeに係るサブネットに属するVMが配置されている各VServerにおけるVirtual switchに対して、変更先のSSwitchに対応するVLAN ID(図25では「3」)を、L2−Treeに係るサブネットに属するVMから出力するパケットに付加するように設定する。より具体的には上記の条件を満たすVMがつながれた、Virtual switchの特定のポートから出力されるパケットに、変更先のSSwitchに対応するVLAN IDを設定する。なお、図25に示すように、異なるサブネットのVMと通信を行う場合にはVirtual routerを経由するので、その場合には異なるVLAN ID(図25では「2」)を付与する。
次に、図26乃至図31を用いてVirtual routerが移動される場合について説明する。図26は、初期状態を表しており、AServer3にVirtual router2及びVirtual router3が起動されているため、SSwitch3のUplinkにおいてレイテンシが大きくなってしまっている(部分X1)。本実施の形態では、図27に示すように、各スイッチ及び各VServerについて出力トラフィックについての評価値を算出する。そうすると、SSwitch3の評価値は「5」となって選択される。図21の説明に従えば、Virtual routerが移動対象となる。
そして、図28に示すように、Virtual router2への出力トラフィックを集約して評価値を算出すると「2」となり、Virtual router3への出力トラフィックを集約して評価値を算出すると「3」となる。従って、最初に移動対象として選択されるのはVirtual router3となる。
そうすると、Virtual router3を、AServer1に移動させる第1のケースと、AServer2に移動させる第2のケースとについて、評価値リストを計算することになる。
第1のケースでは、図29に示すように、移動元AServer3に接続されるSSwitch3と、移動先AServer1に接続されるSSwitch1と、Virtual router3を経由するトラフィックが通過するLSwitch1とについてのみ、評価値を算出し直すことになる。図29の場合には、SSwitch3については評価値が減り、SSwitch1については評価値が増加し、LSwitch1については結果的に評価値が変わらないということになる。この場合、評価値リストは[4,3,3,3,2,2,2,1,0,0,0,0]となる。最大評価値は「5」から「4」になっているので、移動前より評価値リストが小さいことは明らかである。
第2のケースでは、図30に示すように、移動元AServer3に接続されるSSwitch3と、移動先AServer2に接続されるSSwitch2と、Virtual router3を経由するトラフィックが通過するLSwitch1とについてのみ、評価値を算出し直すことになる。図30の場合には、SSwitch3については評価値が減り、SSwitch2については評価値が増加し、LSwitch1については結果的に評価値が変わらないということになる。この場合、評価値リストは[3,3,3,3,2,2,2,1,1,0,0,0]となる。最大評価値は「5」から「3」になっているので、移動前より評価値が小さいことは明らかである。さらに、第1の場合よりも最大評価値が「4」から「3」に小さくなっていたので、AServer2が適切な移動先であることが分かる。
すなわち、図31に示すような状態に変更することで、移動前よりも、出力トラフィックが平準化される。
次に、図32乃至図39を用いてVMが移動される場合について説明する。図32は初期状態を表しており、VM3からVM2へのトラフィックと、VM4からVM1へのトラフィックが重なってしまってLSwitch1のDownlinkのレイテンシが大きくなってしまっている(部分X2)。
本実施の形態では、図33に示すように、各スイッチ及び各VServerについて出力トラフィックについての評価値を算出する。そうすると、LSwitch1の評価値は「5」となって選択される。図21の説明に従えば、送信先VMが移動対象となる。
そして、図34に示すように、VM1からの出力トラフィックを集約して評価値を算出すると「2」となり、VM2からの出力トラフィックを集約して評価値を算出すると「3」となる。従って、最初に移動対象として選択されるのはVM2となる。
そうすると、VM2を、VServer2に移動させる第1のケースと、VServer3に移動させる第2のケースと、VServer4に移動させる第3のケースと、VServer5に移動させる第4のケースとについて、評価値リストを算出することになる。
第1のケースでは、図35に示すように、移動元のVServer1と、移動先のVServer2と、移動元のVServer1と移動先のVServer2とが接続されているLSwitch1とについて、評価値を計算し直すことになる。図35の場合には、VServer1については評価値が減り、VServer2についても評価値が減り、LSwitch1についても評価値が減るということになる。この場合、評価値リストは[3,2,2,2,2,1,1,1,1,0,0]となる。最大評価値は「5」から「3」になっているので、移動前より評価値が小さいことは明らかである。
第2のケースでは、図36に示すように、移動元のVServer1と、移動先のVServer3と、移動元のVServer1が接続されているLSwitch1と、移動先のVServer3が接続されているLSwitch2と、移動対象であるVM2のサブネット内通信で経由するSSwitch2とについて、評価値を計算し直すことになる。図36の場合には、VServer1については評価値が減り、VServer3については評価値は変わらず、LSwitch1については評価値は減り、LSwitch2については評価値が増加し、SSwitch2については評価値が増加するということになる。この場合、評価値リストは[4,4,3,3,2,1,1,1,1,0,0]となる。最大評価値は「5」から「4」になっているので、移動前より評価値が小さいことは明らかである。
第3のケースでは、図37に示すように、移動元のVServer1と、移動先のVServer4と、移動元のVServer1が接続されているLSwitch1と、移動先のVServer4が接続されているLSwitch2と、移動対象であるVM2のサブネット内通信で経由するSSwitch2とについて、評価値を計算し直すことになる。図37の場合には、VServer1については評価値が減り、VServer4については評価値は変わらず、LSwitch1については評価値は減り、LSwitch2については評価値が増加し、SSwitch2については評価値が増加するということになる。この場合、評価値リストは[4,4,3,3,2,1,1,1,1,0,0]となる。最大評価値は「5」から「4」になっているので、移動前より評価値が小さいことは明らかである。
第4のケースでは、図38に示すように、移動元のVServer1と、移動先のVServer5と、移動元のVServer1が接続されているLSwitch1と、移動先のVServer5が接続されているLSwitch3と、移動対象であるVM2のサブネット内通信で経由するSSwitch2とについて、評価値を計算し直すことになる。図38の場合には、VServer1については評価値が減り、VServer5については評価値は変わらず、LSwitch1については評価値は減り、LSwitch3については評価値が増加し、SSwitch2については評価値が増加するということになる。この場合、評価値リストは[4,4,3,3,2,2,1,1,1,0,0]となる。最大評価値は「5」から「4」になっているので、移動前より評価値が小さいことは明らかである。
第1のケースから第4のケースについて評価値リストを比較すると、第1のケースが最大評価値が小さいので、評価値リストとしても小さいと判断される。
すなわち、図39に示すような状態に変更することで、移動前よりも、出力トラフィックが平準化される。
次に、図40乃至図45を用いてL2−Tree(サブネット内通信)が移動される場合について説明する。図40は初期状態を表しており、VM7からVM6へのトラフィックと、VM7からVM5へのトラフィックと、VM2からVM4へのトラフィックとが重なってしまってSSwitch2のDownlinkのレイテンシが大きくなってしまっている(部分X3)。
本実施の形態では、図41に示すように、各スイッチ及び各VServerについて出力トラフィックについての評価値を算出する。そうすると、SSwitch2の評価値は「3」となって選択される。図21の説明に従えば、送信先VM、VR及びL2−Treeが移動対象となる。但し、SSwitch2はAServerに接続されていないので、VRは移動対象として選択されない。
そして、図42に示すように、VM4からの出力トラフィックを集約して評価値を算出すると「1」となり、VM5からの出力トラフィックを集約して評価値を算出すると「1」となり、VM6からの出力トラフィックを集約して評価値を算出すると「1」となり、VM3及びVM5乃至VM7についてのサブネットL2−Tree_aについての評価値は「2」となり、VM1、VM2及びVM4についてのサブネットL2−Tree_bについての評価値は「1」となる。従って、最初に選択されるのはL2−Tree_aとなる。
そうすると、L2−Tree_aを、SSwitch1に移動させる第1のケースと、SSwitch3に移動させる第2のケースとについて、評価値リストを算出することになる。
第1のケースでは、図43に示すように、移動元のSSwitch2と、移動先のSSwitch1とについて、評価値を計算し直すことになる。図43の場合には、SSwitch2については評価値が減り、SSwicth1については評価値が増加するということになる。この場合、評価値リストは[3,2,2,1,1,1,1,1,1,0,0]となる。評価値リストは、移動前から変化していない。
第2のケースでは、図44に示すように、移動元のSSwitch2と、移動先のSSwitch3とについて、評価値を計算し直すことになる。図44の場合には、SSwitch2については評価値が減り、SSwicth3については評価値が増加するということになる。この場合、評価値リストは[2,2,2,1,1,1,1,1,1,0,0]となる。最大評価値は「3」から「2」になっているので、移動前より評価値が小さいことは明らかである。
第1のケースと第2のケースについて評価値リストを比較すると、第2のケースが最大評価値が小さいので、評価値リストとしても小さいと判断される。
すなわち、図45に示すような状態に変更することで、移動前よりも、出力トラフィックが平準化される。
以上のように、従来技術で行われている物理スイッチによる経路切り替えでは緩和できないトラフィックの偏りを平準化(均衡)させることができる。これによって、VM間の通信性能が向上する。また、トラフィックの平準化が行われることによって、各物理リンクに余剰帯域が増加するため、一時的に増加するトラフィックによる輻輳を回避できる可能性が高い。
また、上で述べた処理は処理負荷が低く計算時間が短い。具体的には物理リンク単位で第1段階の評価値を算出した上で、選択された物理リンクについてフローを集約してVM、VR又はL2−Treeについて評価値を算出するので、集約処理の負荷が削減されている。さらに、移動又は変更されるVM、VR又はL2−Treeに関係する物理装置についてのみ評価値の更新を行う点でも、処理負荷が削減されている。
[補足]
[フローの集約について]
着目する物理リンクに応じて集約すべきフローが異なる。
(a)SSwitchのUplink
Virtual router毎のフロー
(b)SSwitchのDownlink
Virtual router毎のフロー、L2−Tree毎のフロー、送信元VM毎のフロー及び送信先VM毎のフロー
VMについては、移動先を決定する処理のために、Virtual routerを経由するフローと、Virtual routerを経由しないフローとを区別して集約する。
(c)LSwitchのUplink
Virtual router毎のフロー、L2−Tree毎のフロー、送信元VM毎のフロー及び送信先VM毎のフロー
VMについては、移動先を決定する処理のために、Virtual routerを経由するフローと、Virtual routerを経由しないフローとを区別して集約する。
(d)LSwitchのDownlink
送信元VM毎のフロー、送信先VM毎のフロー
VMについては、移動先を決定する処理のために、Virtual routerを経由するフローと、Virtual routerを経由しないフローとを区別して集約する。
(e)VServer
送信元VM毎のフロー、送信先VM毎のフロー
VMについては、移動先を決定する処理のために、Virtual routerを経由するフローと、Virtual routerを経由しないフローとを区別して集約する。
[移動により変更されるトラフィック]
移動すべきVM、Virtual router又はL2−Treeが特定されると、仮に移動させて評価値を更新するが、その際に影響を受けるのは、図46に示すようなトラフィックである。このようなトラフィックが通過するスイッチ及びVServerの評価値が変化する。
[移動先の決定処理について]
VM、VR又はL2−Treeが移動又は変更されることによって影響を受ける物理リンクを有するスイッチ及びVServerのみについて、スイッチ及びVServerについて評価値を再計算する。この際、移動前の移動対象(VM、VR又はL2−Tree)の評価値を用いて、スイッチ及びVServerについての評価値を更新する。
(1)Virtual router又はL2−Treeを移動させる場合
SSwitchのUplink及びDownlink、LSwitchのUplink
これらについては、移動先のAServerに接続されているSSwitch又はSSwitchへ移動対象の評価値分だけ影響がある。
(2)VMを移動させる場合
移動対象のVMを同じLSwitchに接続されているVServerに移動させる場合には、以下で述べる8個の出力トラフィックが変化する。
一方、移動対象のVMを異なるLSwitchに接続されているVServerに移動させる場合には、以下で述べる16個の出力トラフィックが変化する。
ここで以下の説明に用いる記号の説明を行っておく。
Figure 0006213303
(A)同じLSwitchに接続されているVServerに移動させる場合
図47に示すように、1つのLSwitchにN個のVServerが接続されている場合に、1番目のVServerに起動されているVMをN番目のVServerに移動させることを想定する。この場合、(1)乃至(8)のトラフィックに変化が生ずる。具体的には、以下に表されるような変更がある。
Figure 0006213303
以下、このような場合について具体的に示す。ここで、図48に示す移動前のトラフィックに基づき説明する。なお、SSwitch2側にVirtual routerが設けられており、SSwitch1にはL2−Treeが設定されているものとする。そして、VMはVServer1からVServer2へ移動するものとする。さらに、図48において点線についてはVMからの出力トラフィックを表しており、実線についてはVMへの出力トラフィックを表すものとする。
図49は移動後のトラフィックを表している。なお、移動元のVServer1内のVMについてのトラフィックは図示せずとも「0」に変化する。そして、VServer1からLSwitch1への出力トラフィックと、LSwitch1からVServer1への出力トラフィックと、VServer2内のVMへの出力トラフィック及びVMからの出力トラフィックと、VServer2からLSwitch1への出力トラフィックと、LSwitch1からVServer2への出力トラフィックとが変化する。
図47の(3)の出力トラフィックは、図50に示すように、VM2からVM1へのサブネット内通信(L2−Tree)と、VM2からVM1へのサブネット間通信(Virtual router)との和になっている。「2」と「14」は、図48に示されている移動前の出力トラフィックを表している。
図47の(4)の出力トラフィックは、図51に示すように、VM1からVM2へのサブネット内通信(L2−Tree)と、VM2からVM1へのサブネット内通信(Virtual router)との和となっている。「1」と「15」は、図48に示されている移動前の出力トラフィックを表している。
図47の(5)の出力トラフィックは、図52に示すように、VM2からVM1へのサブネット内通信(L2−Tree)と、VM4及びVM5からVM1へのサブネット内通信(L2−Tree)と、VM2乃至VM5からVM1へのサブネット間通信(Virtual router)と、VM1からVM3へのサブネット間通信(Virtual router)との和となる。「2」「4」「5」「6」は、図48に示されている移動前の出力トラフィックを表している。
図47の(6)の出力トラフィックは、図53に示すように、VM1からVM2へのサブネット内通信(L2−Tree)と、VM1からVM4及びVM5へのサブネット内通信(L2−Tree)と、VM1からVM2乃至VM5へのサブネット間通信(Virtual router)と、VM3からVM1へのサブネット間通信(Virtual router)との和となっている。「1」「3」「6」「5」は、図48に示されている移動前の出力トラフィックを表している。
図47の(7)の出力トラフィックは、図54に示すように、VM1からVM3へのサブネット内通信(L2−Tree)である。「5」は、図48に示されている移動前の出力トラフィックを表している。
図47の(8)の出力トラフィックは、図55に示すように、VM3からVM1へのサブネット内通信(L2−Tree)である。「6」は、図48に示されている移動前の出力トラフィックを表している。
(B)異なるLSwitchに接続されているVServerに移動させる場合
図56に示すように、1つのLSwitchにN個のVServerが接続されており、全部でM個のLSwitchが設けられている場合に、1番目のVServerに起動されているVMをM*N番目のVServerに移動させることを想定する。この場合、(1)乃至(16)のトラフィックに変化が生ずる。具体的には、以下に表されるような変更がある。
Figure 0006213303
Figure 0006213303
以下、このような場合について具体的に示す。ここで、図57に示す移動前のトラフィックに基づき説明する。なお、SSwitch2側にVirtual routerが設けられており、SSwitch1にはL2−Treeが設定されているものとする。そして、VMはVServer1からVServer6へ移動するものとする。さらに、図57において点線についてはVMからの出力トラフィックを表しており、実線についてはVMへの出力トラフィックを表すものとする。
図58は移動後のトラフィックを表している。なお、移動元のVServer1内のVMについてのトラフィックは図示せずとも「0」に変化する。そして、VServer1からLSwitch1への出力トラフィックと、LSwitch1からVServer1への出力トラフィックと、LSwitch1からSSwitch1への出力トラフィックと、SSwitch1からLSwitch1への出力トラフィックと、LSwitch1からSSwitch2への出力トラフィックと、SSwitch2からLSwitch1への出力トラフィックと、SSwitch1からLSwitch3への出力トラフィックと、LSwitch3からSSwitch1への出力トラフィックと、SSwitch2からLSwitch3への出力トラフィックと、LSwitch3からSSwitch2への出力トラフィックと、VServer6内のVMへの出力トラフィック及びVMからの出力トラフィックと、VServer6からLSwitch3への出力トラフィックと、LSwitch3からVServer6への出力トラフィックとが変化する。
図56の(3)の出力トラフィックは、図59に示すように、VM2からVM1へのサブネット内通信(L2−Tree)と、VM2からVM1へのサブネット間通信(Virtual router)との和になっている。「2」と「24」は、図57に示されている移動前の出力トラフィックを表している。
図56の(4)の出力トラフィックは、図60に示すように、VM1からVM2へのサブネット内通信(L2−Tree)と、VM1からVM2へのサブネット間通信(Virtual router)との和となっている。「1」と「25」は、図57に示されている移動前の出力トラフィックを表している。
図56の(5)の出力トラフィックは、図61に示すように、VM2からVM1へのサブネット内通信(L2−Tree)と、VM3からVM1へのサブネット内通信(L2−Tree)との和となる。「2」「6」は、図57に示されている移動前の出力トラフィックを表している。
図56の(6)の出力トラフィックは、図62に示すように、VM1からVM2へのサブネット内通信(L2−Tree)と、VM1からVM3へのサブネット内通信(L2−Tree)との和となる。「1」「5」は、図57に示されている移動前の出力トラフィックを表している。
図56の(7)の出力トラフィックは、図63に示すように、VM2及びVM3からVM1へのサブネット間通信(Virtual router)である。「26」は、図57に示されている移動前の出力トラフィックを表している。
図56の(8)の出力トラフィックは、図64に示すように、VM1からVM2及びVM3へのサブネット間通信(Virtual router)である。「23」は、図57に示されている移動前の出力トラフィックを表している。
図56の(9)の出力トラフィックは、図65に示すように、VM2からVM1へのサブネット内通信(L2−Tree)と、VM3からVM1へのサブネット内通信(L2−Tree)と、VM5からVM1へのサブネット内通信(L2−Tree)の和となる。「2」「6」「12」は、図57に示されている移動前の出力トラフィックを表している。
図56の(10)の出力トラフィックは、図66に示すように、VM1からVM2へのサブネット内通信(L2−Tree)と、VM1からVM3へのサブネット内通信(L2−Tree)と、VM1からVM5へのサブネット内通信(L2−Tree)の和となる。「1」「5」「11」は、図57に示されている移動前の出力トラフィックを表している。
図56の(11)の出力トラフィックは、図67に示すように、VM2、VM3、VM5乃至VM7からVM1へのサブネット間通信(Virtual router)と、VM1からVM6及びVM7へのサブネット間通信(Virtual router)との和となっている。「10」と「17」は、図57に示されている移動前の出力トラフィックを表している。
図56の(12)の出力トラフィックは、図68に示すように、VM1からVM2、VM3、VM5乃至VM7へのサブネット間通信(Virtual router)と、VM6及びVM7からVM1へのサブネット間通信(Virtual router)との和となっている。「9」と「18」は、図57に示されている移動前の出力トラフィックを表している。
図56の(13)の出力トラフィックは、図69に示すように、VM2からVM1へのサブネット内通信(L2−Tree)と、VM3、VM5及びVM6からVM1へのサブネット内通信(L2−Tree)と、VM2、VM3、VM5乃至VM7からVM1へのサブネット間通信(Virtual router)と、VM1からVM7へのサブネット間通信(Virtual router)との和となっている。「2」「4」「22」「21」は、図57に示されている移動前の出力トラフィックを表している。
図56の(14)の出力トラフィックは、図70に示すように、VM1からVM2へのサブネット内通信(L2−Tree)と、VM1からVM3、VM5及びVM6へのサブネット間通信(Virtual router)と、VM1からVM2、VM3、VM5乃至VM7へのサブネット間通信(Virtual router)と、VM7からVM1へのサブネット間通信(Virtual router)との和となっている。「1」「3」「21」「22」は、図57に示されている移動前の出力トラフィックを表している。
図56の(15)の出力トラフィックは、図71に示すように、VM1からVM6へのサブネット内通信(L2−Tree)である。「21」は、図57に示されている移動前の出力トラフィックを表している。
図56の(16)の出力トラフィックは、図72に示すように、VM6からVM1へのサブネット内通信(L2−Tree)である。「22」は、図57に示されている移動前の出力トラフィックを表している。
[移動後の評価値算出の処理負荷削減]
どの移動先を選択するかについては評価値リストで判断するが、最終的には移動前の評価値リストより小さい評価値リストであれば移動が実際になされることになる。よって、移動前の評価値リストにおいて最大評価値以上の評価値がいずれかのスイッチ又はVServerについて算出された場合には、その移動先についての評価値算出を打ち切ることで、計算量を削減できる。
例えば、移動前の状態の一例を図73に示す。図73の例では、AServer3にVirtual routerが起動されているが、ここではVirtual routerを移動先候補AServer1に移動させる場合を考える。なお、移動前の評価値リストにおける最大評価値は「5」である。
この例では、図74に示すように、移動先AServer1が接続されているSSwitch1の評価値を算出し直すと、「6」が得られたものとする。そうすると、SSwitch3等の評価値を更新することになるが、更新せずともAServer1を選択することはないので、移動先AServer1についての評価値算出処理は打ち切り、移動先候補AServer2についての処理に移行する。
さらに、図75に示すように、SSwitchのDownlinkが評価値最大で選択され、VServer1に起動された送信先VMが移動対象として選択されたとする。しかし、送信先VMをVServer1が接続されているLSwitchに接続されているVServer2及びVServer3に移動させても、SSwitchのDownlinkの出力トラフィックは変わらない。従って、VServer2及びVServer3を移動先候補から除外できる。このようにすれば、評価値の計算負荷を削減できる。
また、図76に示すように、LSwitchのUplinkが評価値最大で選択され、VServer1に起動された送信元VMが移動対象として選択されたとする。しかし、送信元VMをVServer1が接続されているLSwitchに接続されているVServer2及びVServer3に移動させても、LSwitchのUplinkの出力トラフィックは変わらない。従って、VServer2及びVServer3を移動先候補から除外できる。このようにすれば、評価値の計算負荷を削減できる。
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。図7に示したリソース制御装置1000の機能ブロック構成は一例であり、プログラムモジュール構成やファイル構成と一致しない場合もある。
処理フローについても、処理結果が変わらない限り、処理ステップの実行順番を入れ替えたり、複数ステップを並列実行するようにしても良い。
なお、上で述べたリソース制御装置1000は、コンピュータ装置であって、図77に示すように、メモリ2501とCPU(Central Processing Unit)2503とハードディスク・ドライブ(HDD:Hard Disk Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本実施の形態をまとめると、以下のようになる。
本実施の形態に係る情報処理システムは、(A)複数のサブネットの少なくともいずれかに属する仮想マシンが起動される複数の第1の情報処理装置と、(B)サブネット間の通信に用いられる仮想ルータが起動される複数の第2の情報処理装置と、(C)サブネット内の通信経路と仮想マシンの配置と仮想ルータの配置とを制御する制御装置と、(D)複数の第1の情報処理装置と複数の第2の情報処理装置と制御装置とを接続する複数のスイッチとを有する。そして、上で述べた複数のスイッチは、(d1)複数の第1の情報処理装置に接続する複数の第1のスイッチと、(d2)複数の第2の情報処理装置に接続する複数の第2のスイッチとを含む。また、複数の第1のスイッチの各々は、複数の第2のスイッチのうちの2以上の第2のスイッチと接続されている。さらに、上で述べた制御装置は、(c1)複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、複数のスイッチの各々の通信量に関する所定の評価値とに基づき、仮想マシンと、仮想ルータと、いずれかのサブネット内の通信経路とのうちいずれかを選択して、選択された仮想マシン又は仮想ルータの配置先若しくは選択されたサブネット内の通信経路を変更する。
単に仮想マシンのみを移動させたり、スイッチ間の通信経路を切り替えたりするのでは解消できないネットワーク負荷の平準化が可能となる。すなわち、物理的な装置の通信量に基づき、ネットワーク負荷の平準化という観点から最も適切な変更対象を、仮想マシンの配置先の第1の情報処理装置と、仮想ルータの配置先の第2の情報処理装置と、いずれかのサブネット内の通信経路とから選択できるようになる。
また、上で述べた制御装置が、(c2)複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、複数のスイッチの各々の通信量に関する所定の評価値とから、複数の第1の情報処理装置と複数のスイッチとを含む物理装置のうちいずれか1つを選択し、(c3)選択した物理装置に関わるデータフローを、仮想マシン単位とサブネット間単位とサブネット内単位との少なくともいずれかで集約し、当該集約結果に基づき仮想マシンと仮想ルータとサブネット内の通信経路とを含む変更対象のいずれかを選択するようにしても良い。一旦、物理的な装置について絞り込みを行った後、データフローを集約することで変更対象を決定できるので、処理負荷を削減しつつ、ネットワーク負荷の平準化に効果的な変更対象を選択できるようになる。
さらに、上で述べた制御装置が、(c4)選択した変更対象を仮に変更先候補に変更した複数のケースの各々について、複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、複数のスイッチの各々の通信量に関する所定の評価値とを特定し、(c5)当該複数の第1の情報処理装置の各々の通信量に関する所定の評価値と複数のスイッチの各々の通信量に関する所定の評価値とに基づき、複数のケースのうち、所定の評価値の平準化に関する条件を満たすケースを特定し、(c6)特定したケースに従って、選択した変更対象を変更先候補に変更するようにしても良い。このようにすれば、平準化に対して効果のある変更先候補を特定できるようになる。
さらに、上で述べた所定の評価値が、出力トラフィックの最大値又は平均値である場合もある。
また、上で述べた条件が、複数の第1の情報処理装置の各々の通信量に関する所定の評価値と複数のスイッチの各々の通信量に関する所定の評価値とを降順に並べることで得られる、複数のケースの評価値リストのうち、最も小さい評価値リストのケースであるという条件と、最も小さい評価値リストが、現在の評価値リストよりも小さいという条件とを含むようにしても良い。
なお、上で述べたような処理をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROMなどの光ディスク、光磁気ディスク、半導体メモリ(例えばROM)、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、RAM等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
複数のサブネットの少なくともいずれかに属する仮想マシンが起動される複数の第1の情報処理装置と、
サブネット間の通信に用いられる仮想ルータが起動される複数の第2の情報処理装置と、
サブネット内の通信経路と前記仮想マシンの配置と前記仮想ルータの配置とを制御する制御装置と、
前記複数の第1の情報処理装置と前記複数の第2の情報処理装置と前記制御装置とを接続する複数のスイッチと、
を有し、
前記複数のスイッチは、
前記複数の第1の情報処理装置に接続する複数の第1のスイッチと、
前記複数の第2の情報処理装置に接続する複数の第2のスイッチと
を含み、
前記複数の第1のスイッチの各々は、前記複数の第2のスイッチのうちの2以上の第2のスイッチと接続されており、
前記制御装置は、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とに基づき、前記仮想マシンと、前記仮想ルータと、いずれかのサブネット内の通信経路とのうちいずれかを選択して、選択された前記仮想マシン又は前記仮想ルータの配置先若しくは選択された前記サブネット内の通信経路を変更する
情報処理システム。
(付記2)
前記制御装置が、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とから、前記複数の第1の情報処理装置と前記複数のスイッチとを含む物理装置のうちいずれか1つを選択し、
選択した前記物理装置に関わるデータフローを、仮想マシン単位とサブネット間単位とサブネット内単位との少なくともいずれかで集約し、当該集約結果に基づき前記仮想マシンと前記仮想ルータと前記サブネット内の通信経路とを含む変更対象のいずれかを選択する、
付記1記載の情報処理システム。
(付記3)
前記制御装置が、
選択した前記変更対象を仮に変更先候補に変更した複数のケースの各々について、前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とを特定し、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と前記複数のスイッチの各々の通信量に関する所定の評価値とに基づき、前記複数のケースのうち、前記所定の評価値の平準化に関する条件を満たすケースを特定し、
特定した前記ケースに従って、選択した前記変更対象を変更先候補に変更する
付記2記載の情報処理システム。
(付記4)
前記所定の評価値が、出力トラフィックの最大値又は平均値である
付記1乃至3のいずれか1つ記載の情報処理システム。
(付記5)
前記条件が、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と前記複数のスイッチの各々の通信量に関する所定の評価値とを降順に並べることで得られる、前記複数のケースの評価値リストのうち、最も小さい評価値リストのケースであるという条件と、
前記最も小さい評価値リストが、現在の評価値リストよりも小さいという条件と、
を含む付記3記載の情報処理システム。
(付記6)
複数のサブネットの少なくともいずれかに属する仮想マシンが起動される複数の第1の情報処理装置と、サブネット間の通信に用いられる仮想ルータが起動される複数の第2の情報処理装置と、サブネット内の通信経路と前記仮想マシンの配置と前記仮想ルータの配置とを制御する制御装置と、前記複数の第1の情報処理装置と前記複数の第2の情報処理装置と前記制御装置とを接続する複数のスイッチと有する情報処理システムであって、前記複数のスイッチは、前記複数の第1の情報処理装置に接続する複数の第1のスイッチと、前記複数の第2の情報処理装置に接続する複数の第2のスイッチとを含み、前記複数の第1のスイッチの各々は、前記複数の第2のスイッチのうちの2以上の第2のスイッチと接続されている情報処理システムにおける前記制御装置が、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とを取得し、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とに基づき、前記仮想マシンと、前記仮想ルータと、いずれかのサブネット内の通信経路とのうちいずれかを選択して、選択された前記仮想マシン又は前記仮想ルータの配置先若しくは選択された前記サブネット内の通信経路を変更する
処理を実行する制御方法。
(付記7)
前記変更する処理が、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とから、前記複数の第1の情報処理装置と前記複数のスイッチとを含む物理装置のうちいずれか1つを選択し、
選択した前記物理装置に関わるデータフローを、仮想マシン単位とサブネット間単位とサブネット内単位との少なくともいずれかで集約し、当該集約結果に基づき前記仮想マシンと前記仮想ルータと前記サブネット内の通信経路とを含む変更対象のいずれかを選択する、
処理を含む付記6記載の制御方法。
(付記8)
複数のサブネットの少なくともいずれかに属する仮想マシンが起動される複数の第1の情報処理装置と、サブネット間の通信に用いられる仮想ルータが起動される複数の第2の情報処理装置と、サブネット内の通信経路と前記仮想マシンの配置と前記仮想ルータの配置とを制御する制御装置と、前記複数の第1の情報処理装置と前記複数の第2の情報処理装置と前記制御装置とを接続する複数のスイッチと有する情報処理システムであって、前記複数のスイッチは、前記複数の第1の情報処理装置に接続する複数の第1のスイッチと、前記複数の第2の情報処理装置に接続する複数の第2のスイッチとを含み、前記複数の第1のスイッチの各々は、前記複数の第2のスイッチのうちの2以上の第2のスイッチと接続されている情報処理システムにおける前記制御装置に、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とを取得させ、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とに基づき、前記仮想マシンと、前記仮想ルータと、いずれかのサブネット内の通信経路とのうちいずれかを選択して、選択された前記仮想マシン又は前記仮想ルータの配置先若しくは選択された前記サブネット内の通信経路を変更する
処理を実行させるための制御プログラム。
(付記9)
前記変更させる処理が、
前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とから、前記複数の第1の情報処理装置と前記複数のスイッチとを含む物理装置のうちいずれか1つを選択し、
選択した前記物理装置に関わるデータフローを、仮想マシン単位とサブネット間単位とサブネット内単位との少なくともいずれかで集約し、当該集約結果に基づき前記仮想マシンと前記仮想ルータと前記サブネット内の通信経路とを含む変更対象のいずれかを選択する、
処理を含む付記8記載の制御プログラム。
1000 リソース制御装置
1100 平準化処理部
1200 変更制御部
1300 移動制御部
1400 管理データ格納部
1500 収集データ格納部
1600 トラフィックデータ収集部

Claims (9)

  1. 複数のサブネットの少なくともいずれかに属する仮想マシンが起動される複数の第1の情報処理装置と、
    サブネット間の通信に用いられる仮想ルータが起動される複数の第2の情報処理装置と、
    サブネット内の通信経路と前記仮想マシンの配置と前記仮想ルータの配置とを制御する制御装置と、
    前記複数の第1の情報処理装置と前記複数の第2の情報処理装置と前記制御装置とを接続する複数のスイッチと、
    を有し、
    前記複数のスイッチは、
    前記複数の第1の情報処理装置に接続する複数の第1のスイッチと、
    前記複数の第2の情報処理装置に接続する複数の第2のスイッチと
    を含み、
    前記複数の第1のスイッチの各々は、前記複数の第2のスイッチのうちの2以上の第2のスイッチと接続されており、
    前記制御装置は、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とに基づき、前記仮想マシンと、前記仮想ルータと、いずれかのサブネット内の通信経路とのうちいずれかを選択して、選択された前記仮想マシン又は前記仮想ルータの配置先若しくは選択された前記サブネット内の通信経路を変更する
    情報処理システム。
  2. 前記制御装置が、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とから、前記複数の第1の情報処理装置と前記複数のスイッチとを含む物理装置のうちいずれか1つを選択し、
    選択した前記物理装置に関わるデータフローを、仮想マシン単位とサブネット間単位とサブネット内単位との少なくともいずれかで集約し、当該集約結果に基づき前記仮想マシンと前記仮想ルータと前記サブネット内の通信経路とを含む変更対象のいずれかを選択する、
    請求項1記載の情報処理システム。
  3. 前記制御装置が、
    選択した前記変更対象を仮に変更先候補に変更した複数のケースの各々について、前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とを特定し、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と前記複数のスイッチの各々の通信量に関する所定の評価値とに基づき、前記複数のケースのうち、前記所定の評価値の平準化に関する条件を満たすケースを特定し、
    特定した前記ケースに従って、選択した前記変更対象を変更先候補に変更する
    請求項2記載の情報処理システム。
  4. 前記所定の評価値が、出力トラフィックの最大値又は平均値である
    請求項1乃至3のいずれか1つ記載の情報処理システム。
  5. 前記条件が、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と前記複数のスイッチの各々の通信量に関する所定の評価値とを降順に並べることで得られる、前記複数のケースの評価値リストのうち、最も小さい評価値リストのケースであるという条件と、
    前記最も小さい評価値リストが、現在の評価値リストよりも小さいという条件と、
    を含む請求項3記載の情報処理システム。
  6. 複数のサブネットの少なくともいずれかに属する仮想マシンが起動される複数の第1の情報処理装置と、サブネット間の通信に用いられる仮想ルータが起動される複数の第2の情報処理装置と、サブネット内の通信経路と前記仮想マシンの配置と前記仮想ルータの配置とを制御する制御装置と、前記複数の第1の情報処理装置と前記複数の第2の情報処理装置と前記制御装置とを接続する複数のスイッチと有する情報処理システムであって、前記複数のスイッチは、前記複数の第1の情報処理装置に接続する複数の第1のスイッチと、前記複数の第2の情報処理装置に接続する複数の第2のスイッチとを含み、前記複数の第1のスイッチの各々は、前記複数の第2のスイッチのうちの2以上の第2のスイッチと接続されている情報処理システムにおける前記制御装置が、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とを取得し、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とに基づき、前記仮想マシンと、前記仮想ルータと、いずれかのサブネット内の通信経路とのうちいずれかを選択して、選択された前記仮想マシン又は前記仮想ルータの配置先若しくは選択された前記サブネット内の通信経路を変更する
    処理を実行する制御方法。
  7. 前記変更する処理が、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とから、前記複数の第1の情報処理装置と前記複数のスイッチとを含む物理装置のうちいずれか1つを選択し、
    選択した前記物理装置に関わるデータフローを、仮想マシン単位とサブネット間単位とサブネット内単位との少なくともいずれかで集約し、当該集約結果に基づき前記仮想マシンと前記仮想ルータと前記サブネット内の通信経路とを含む変更対象のいずれかを選択する、
    処理を含む請求項6記載の制御方法。
  8. 複数のサブネットの少なくともいずれかに属する仮想マシンが起動される複数の第1の情報処理装置と、サブネット間の通信に用いられる仮想ルータが起動される複数の第2の情報処理装置と、サブネット内の通信経路と前記仮想マシンの配置と前記仮想ルータの配置とを制御する制御装置と、前記複数の第1の情報処理装置と前記複数の第2の情報処理装置と前記制御装置とを接続する複数のスイッチと有する情報処理システムであって、前記複数のスイッチは、前記複数の第1の情報処理装置に接続する複数の第1のスイッチと、前記複数の第2の情報処理装置に接続する複数の第2のスイッチとを含み、前記複数の第1のスイッチの各々は、前記複数の第2のスイッチのうちの2以上の第2のスイッチと接続されている情報処理システムにおける前記制御装置に、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とを取得させ、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とに基づき、前記仮想マシンと、前記仮想ルータと、いずれかのサブネット内の通信経路とのうちいずれかを選択して、選択された前記仮想マシン又は前記仮想ルータの配置先若しくは選択された前記サブネット内の通信経路を変更する
    処理を実行させるための制御プログラム。
  9. 前記変更させる処理が、
    前記複数の第1の情報処理装置の各々の通信量に関する所定の評価値と、前記複数のスイッチの各々の通信量に関する所定の評価値とから、前記複数の第1の情報処理装置と前記複数のスイッチとを含む物理装置のうちいずれか1つを選択し、
    選択した前記物理装置に関わるデータフローを、仮想マシン単位とサブネット間単位とサブネット内単位との少なくともいずれかで集約し、当該集約結果に基づき前記仮想マシンと前記仮想ルータと前記サブネット内の通信経路とを含む変更対象のいずれかを選択する、
    処理を含む請求項8記載の制御プログラム。
JP2014035964A 2014-02-26 2014-02-26 情報処理システム、制御装置及び制御プログラム Expired - Fee Related JP6213303B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014035964A JP6213303B2 (ja) 2014-02-26 2014-02-26 情報処理システム、制御装置及び制御プログラム
US14/607,410 US9641439B2 (en) 2014-02-26 2015-01-28 Information processing system and control apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014035964A JP6213303B2 (ja) 2014-02-26 2014-02-26 情報処理システム、制御装置及び制御プログラム

Publications (2)

Publication Number Publication Date
JP2015162757A JP2015162757A (ja) 2015-09-07
JP6213303B2 true JP6213303B2 (ja) 2017-10-18

Family

ID=53883357

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014035964A Expired - Fee Related JP6213303B2 (ja) 2014-02-26 2014-02-26 情報処理システム、制御装置及び制御プログラム

Country Status (2)

Country Link
US (1) US9641439B2 (ja)
JP (1) JP6213303B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10594627B2 (en) 2016-01-27 2020-03-17 Oracle International Corporation System and method for supporting scalable representation of switch port status in a high performance computing environment
US11271870B2 (en) 2016-01-27 2022-03-08 Oracle International Corporation System and method for supporting scalable bit map based P_Key table in a high performance computing environment
KR102777344B1 (ko) * 2024-06-12 2025-03-10 주식회사 아라드네트웍스 독립적인 다중 네트워크를 포함하는 홈네트워크시스템 및 통신방법
KR102777340B1 (ko) * 2024-06-12 2025-03-10 주식회사 아라드네트웍스 Vpn호핑을 통한 논리적 다중 망분리 통신방법 및 이를 수행하는 통신시스템

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8145760B2 (en) * 2006-07-24 2012-03-27 Northwestern University Methods and systems for automatic inference and adaptation of virtualized computing environments
JP2012511292A (ja) 2008-12-10 2012-05-17 エヌイーシー ヨーロッパ リミテッド 基盤ネットワーク上で少なくとも1つの仮想ネットワークを動作させる方法および仮想ネットワーク環境
JP5280933B2 (ja) * 2009-05-13 2013-09-04 日本電信電話株式会社 サーバ並列配信システムと方法およびプログラム
JP5375403B2 (ja) * 2009-07-23 2013-12-25 富士通株式会社 仮想マシン移動制御プログラム,仮想マシン移動制御方法および仮想マシン移動制御装置
US20120102190A1 (en) 2010-10-26 2012-04-26 International Business Machines Corporation Inter-virtual machine communication
US10013281B2 (en) * 2011-06-29 2018-07-03 Microsoft Technology Licensing, Llc Controlling network utilization
US9137052B2 (en) * 2011-08-17 2015-09-15 Nicira, Inc. Federating interconnection switching element network to two or more levels
US8879396B2 (en) * 2011-11-15 2014-11-04 Oracle International Corporation System and method for using dynamic allocation of virtual lanes to alleviate congestion in a fat-tree topology
US9294407B2 (en) * 2013-06-26 2016-03-22 Vmware, Inc. Network device load balancing in a virtualized computing environment

Also Published As

Publication number Publication date
US20150244627A1 (en) 2015-08-27
US9641439B2 (en) 2017-05-02
JP2015162757A (ja) 2015-09-07

Similar Documents

Publication Publication Date Title
JP2016018387A (ja) 情報処理システム、制御方法及び制御プログラム
Noormohammadpour et al. Datacenter traffic control: Understanding techniques and tradeoffs
CN107077340B (zh) 负载均衡
JP5975083B2 (ja) 通信システム、制御装置、パケット転送経路の制御方法およびプログラム
Ghorbani et al. Micro load balancing in data centers with DRILL
Ghaznavi et al. Service function chaining simplified
US20200136973A1 (en) Dynamically balancing traffic in a fabric using telemetry data
Han et al. Software defined networking-based traffic engineering for data center networks
CN107995045B (zh) 网络功能虚拟化的可适性服务功能链路径选择方法及系统
CN106059915A (zh) 基于sdn控制器实现租户南北向流量限速的系统及方法
JP6213303B2 (ja) 情報処理システム、制御装置及び制御プログラム
Kim et al. An energy-aware service function chaining and reconfiguration algorithm in NFV
JP6761210B2 (ja) ネットワークシステム、ネットワーク制御方法および制御装置
Tajiki et al. CECT: computationally efficient congestion-avoidance and traffic engineering in software-defined cloud data centers
Dominicini et al. KeySFC: Traffic steering using strict source routing for dynamic and efficient network orchestration
Zhang et al. Joint optimization of virtual function migration and rule update in software defined NFV networks
Wang et al. QoS-aware multipathing in datacenters using effective bandwidth estimation and SDN
Zu et al. Resource aware chaining and adaptive capacity scaling for service function chains in distributed cloud network
Han et al. SAVE: Energy-aware virtual data center embedding and traffic engineering using SDN
Tomovic et al. RO-RO: Routing optimality-reconfiguration overhead balance in software-defined ISP networks
Saxena et al. Review of SDN-based load-balancing methods, issues, challenges, and roadmap
Priyadarsini et al. A new approach for SDN performance enhancement
EP2978175A1 (en) A method of communicating information over a network and a system for communicating information over a network
CN112822233A (zh) 流量重定向方法及装置
Song et al. Ashman: A bandwidth fragmentation-based dynamic flow scheduling for data center networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161102

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170807

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170822

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170904

R150 Certificate of patent or registration of utility model

Ref document number: 6213303

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees