JP6543231B2 - 仮想マシンの接続制御システムおよび仮想マシンの接続制御方法 - Google Patents

仮想マシンの接続制御システムおよび仮想マシンの接続制御方法 Download PDF

Info

Publication number
JP6543231B2
JP6543231B2 JP2016162975A JP2016162975A JP6543231B2 JP 6543231 B2 JP6543231 B2 JP 6543231B2 JP 2016162975 A JP2016162975 A JP 2016162975A JP 2016162975 A JP2016162975 A JP 2016162975A JP 6543231 B2 JP6543231 B2 JP 6543231B2
Authority
JP
Japan
Prior art keywords
command
spp
gui
abstraction
virtual machine
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.)
Active
Application number
JP2016162975A
Other languages
English (en)
Other versions
JP2018032156A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016162975A priority Critical patent/JP6543231B2/ja
Publication of JP2018032156A publication Critical patent/JP2018032156A/ja
Application granted granted Critical
Publication of JP6543231B2 publication Critical patent/JP6543231B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、仮想マシンの接続制御システムおよび仮想マシンの接続制御方法に関する。
NFV(Network Functions Virtualization:ネットワーク機能仮想化)による仮想化技術の進展などを背景に、サービス毎にシステムを構築して運用することが行われている。また、上記サービス毎にシステムを構築する形態から、サービス機能を再利用可能なモジュール単位に分割し、独立した仮想マシン(VM:Virtual Machineやコンテナなど)環境の上で動作させることで、部品のようにして必要に応じて利用し運用性を高めるといったSFC(Service Function Chaining)と呼ばれる形態が主流となりつつある(非特許文献1参照)。
複数の仮想マシン(以下、適宜VMと略称する)を接続、連携させる手法はInter-VM Communicationと呼ばれ、データセンタなどの大規模な環境では、VM間の接続には、仮想スイッチが標準的に利用されてきた。しかし、通信の遅延が大きい手法であることから、より高速な手法が新たに提案されている。例えば、SR-IOV(Single Root I/O Virtualization)と呼ばれる特別なハードウェアを用いる手法や、高速パケット処理ライブラリであるIntel DPDK(Intel Data Plane Development Kit)(以下、DPDKという)を用いたソフトウェアによる手法などが提案されている(非特許文献2参照)。DPDKは、パケット処理のパフォーマンスとスループットを大幅に高めて、データプレーン・アプリケーションに多くの時間を確保することを可能にする。
DPDKは、CPU(Central Processing Unit)やNIC(Network Interface Card)などのコンピュータ資源を占有的に使用する。このため、SFCのようにモジュール単位で柔軟につなぎ替える用途には適用しづらい。これを緩和するためのアプリケーションであるSPP(Soft Patch Panel)がある(非特許文献3参照)。SPPは、VM間に共有メモリを用意し、各VMが同じメモリ空間を直接参照できる構成にすることで、仮想化槽でのパケットコピーを省略する。また、物理NICと共有メモリ間のパケットのやり取りには、DPDKを用いて高速化を実現する。SPPは、各VMのメモリ交換の参照先を制御することで、パケットの入力先、出力先をソフトウェア的に変更することができる。こうすることで、SPPは、VM間やVMと物理NIC間の動的な接続切替を実現する。
図15は、SPPの概要を説明する図であり、(a)はそのハードウェア構成図、(b)はそのSPPのリソース管理のイメージ図である。
図15(a)に示すように、SPPを有するVM間接続装置10は、各VM5と外部ネットワーク(External Network)6とを接続するサーバである。VM間接続装置10は、外部ネットワーク6に接続するための物理ポート(Physical Ports)7と、SPPコントローラ(SPP Controller)20aによって制御されるSPP20と、ルータ8と、VM5と、を備える。なお、VM5は、VM間接続装置10の外部にあってもよい。
SPP20は、DPDKリソースを管理するためのフレームワーク(framework)であり、リソースの管理を担当するDPDKアプリケーションから構成される。SPP20は、DPDKをベースとしたVM間接続機能であり、従来の仮装スイッチ製品と比較して非常に高速に転送処理を行うことが可能となる。
SPPコントローラ20aは、制御端末装置(Control Terminal)30からのコマンドライン31によって操作される。SPPコントローラ20aは、コマンドライン31による接続制御を基に、VM間を接続するためのリソース割り当てや経路設定を行う。
図15(b)に示すSPPのリソース管理(Resource management in SPP)では、物理ポート7を「NIC(Network Interface Card)」、SPP20の仮想NWリソースの割り当ての一例を「ivshmem,vhost,vSwitch」、VM5を「VM」で表記するとともに、「NIC」と仮想NWリソース「ivshmem,vhost,vSwitch」と「VM」との接続(経路設定)を太実線で表記している。
SPPは、DPDKの高速性を維持しつつ柔軟にSFCを行うことが可能である。
Internet Engineering Task Force (IETF), J. Halpern, Ed. Ericsson, C. Pignataro, Ed. Cisco, October 2015.Service Function Chaining (SFC) Architecture ", [online],[平成28年7月20日検索],インターネット 〈 URL : https://www.ietf.org/rfc/rfc7665.txt〉 IntelDPDK,[online],[平成28年7月20日検索],インターネット 〈 URL : http://dpdk.org/〉 Soft Patch Panel, [online],[平成28年7月20日検索],インターネット 〈 URL : http://dpdk.org/browse/apps/spp/〉
しかしながら、SPPは、コマンドラインによる操作が必須であるため、コマンドラインによる操作が複雑であるという課題がある。例えば、図15(a)に示すように、コマンドライン31から独自コマンドを入力するなど複雑な作業を行わねばならず運用が困難となると考えられる。
このような背景を鑑みて本発明がなされたのであり、本発明は、SPPの操作を抽象化し、GUIにより直感的に操作することができる仮想マシンの接続制御システムおよび仮想マシンの接続制御方法を提供することを課題とする。
前記した課題を解決するため、請求項1に記載の発明は、複数の仮想マシンを動作させる仮想マシンの接続制御システムであって、前記仮想マシンを含むリソースを管理するSPPを備えるSPPサーバと、前記SPPサーバと連携し、前記仮想マシンを接続するためのリソース割り当ておよび経路設定をGUI操作により行うGUI端末と、を備え、前記GUI端末は、前記GUI操作を制御するGUI制御部と、前記GUI操作に応じて前記SPPへのコマンドを、抽象化コマンドとして生成するコマンド生成機能部と、を備え、前記SPPサーバは、生成された前記抽象化コマンドを、前記SPPが使用可能なSPPのコマンドに変換するコマンド変換機能部を備えることを特徴とする仮想マシンの接続制御システムとした。
また、請求項4に記載の発明は、複数の仮想マシンを動作させる仮想マシンの接続制御システムが実行する仮想マシンの接続制御方法であって、前記仮想マシンの接続制御システムは、前記仮想マシンを含むリソースを管理するSPPを備えるSPPサーバと、前記SPPサーバと連携し、前記仮想マシンを接続するためのリソース割り当ておよび経路設定をGUI操作により行うGUI端末と、を有し、前記GUI端末は、前記GUI操作を制御するステップと、前記GUI操作に応じて前記SPPへのコマンドを、抽象化コマンドとして生成するステップと、を実行し、前記SPPサーバは、生成された前記抽象化コマンドを、前記SPPが使用可能なSPPのコマンドに変換するステップを実行することを特徴とする仮想マシンの接続制御方法とした。
このようにすることで、SPPの操作を抽象化し、GUIにより直感的に操作することができる。例えば、DPDKやvhostなどの仮想ネットワークリソースを抽象化し、グラフィカルな操作を実現することができる。
具体的には、(1)GUI操作により、簡易にサービス機能の追加、削除を行うことができ、システムのアップデートを容易にすることができる。(2)VMおよびそれらのコネクション操作、監視をグラフィカルに実行することで、システムの運用性を高めることができる。(3)VMの接続をグラフィカルに接続し、VM間の中間状態をも含め直感的に監視をすることで、開発および運用における工程を迅速化し、サービス提供サイクルを早めることができる。
また、請求項2に記載の発明は、前記コマンド生成機能部は、前記仮想マシン間を接続する経路に前記SPPのポートオブジェクトを介在させる第1の抽象化レベルの第1抽象化コマンドと、前記仮想マシン間を接続する経路に前記SPPのポートオブジェクトを介在させることなく接続する、前記第1の抽象化レベルより抽象度合いの高い第2の抽象化レベルの第2抽象化コマンドと、を生成することを特徴とする仮想マシンの接続制御システムとした。
このようにすることで、ユーザの意向に合わせた、GUI操作を実現することができる。例えば、抽象化レベル1では、抽象化されたSPPのリソースのうち、仮想マシン間を接続する経路にSPPのポートオブジェクトが介在したGUI操作をさせることができる。抽象化レベル2では、VMおよびその経路のみをGUI操作させることができる。
また、請求項3に記載の発明は、前記コマンド生成機能部が、ユーザのGUI操作によるイベントを監視し、イベント発生を通知するGUIイベント監視部と、GUIに表示されるオブジェクトのIDおよびオブジェクト状態を保持するオブジェクト管理部と、前記GUIイベント監視部からの通知に基づいて、前記抽象化コマンドを生成するコマンド生成部と、生成された前記抽象化コマンドをSPPサーバへ送付するコマンド送信部と、を備え、前記コマンド変換機能部は、前記GUI端末の前記コマンド送信部からの前記抽象化コマンドが付されたメッセージを受信するコマンド受信部と、前記抽象化コマンドをSPPのコマンドへ展開するための管理情報を格納する管理情報格納部と、前記管理情報を参照して、前記抽象化コマンドをSPPのコマンドへ展開し、前記SPPへ入力するコマンド展開部と、を備えることを特徴とする仮想マシンの接続制御システムとした。
このように、コマンド生成機能部は、各部を制御してGUI操作による構成変更処理からコマンドを生成し、SPPへGUI操作により生成された抽象化コマンドを発行する。コマンド変換機能部は、各部を制御してこの抽象化コマンドをSPPへ投入するコマンドへ変換する。これにより、SPPの操作を抽象化し、GUIにより直感的に操作することができる。また、GUI操作により、簡易にサービス機能の追加、削除を行うことができ、システムのアップデートを容易にし、システムの運用性を高めることができる。また、VM間の中間状態をも含め直感的に監視をすることで、開発および運用における工程を迅速化し、サービス提供サイクルを早めることができる。
本発明によれば、SPPの操作を抽象化し、GUIにより直感的に操作することができる仮想マシンの接続制御システムおよび仮想マシンの接続制御方法を提供することができる。
本発明の実施形態に係る仮想マシンの接続制御システムを示す構成図である。 本発明の実施形態に係る仮想マシンの接続制御システムにおけるGUI端末のGUI操作とコマンド生成、およびSPPへのコマンド発行を説明する図である。 非特許文献3の技術による接続構成例<比較例1:接続構成>を示すイメージ図である。 非特許文献3の技術による接続設定例<比較例1:接続設定>を示すイメージ図である。 本発明の実施形態に係る仮想マシンの接続制御システムの<実施例1:接続構成:抽象化レベル1>を示す図であり、(a)は図2を再掲した図、(b)は図2のGUI画面に表示される抽象化されたSPPによる接続構成を示す図である。 本発明の実施形態に係る仮想マシンの接続制御システムの<実施例1:接続構成:抽象化レベル2>を示す図である。 非特許文献3の技術による接続変更例<比較例2:接続変更>を示すイメージ図であり、(a)はネットワーク経路の変更前、(b)はネットワーク経路の変更後を示す。 本発明の実施形態に係る仮想マシンの接続制御システムの<実施例2:接続変更:抽象化レベル1>を示す図であり、(a)はネットワーク経路の変更前、(b)はネットワーク経路の変更後を示す図である。 本発明の実施形態に係る仮想マシンの接続制御システムの<実施例2:抽象化レベル2>を示す図であり、(a)はネットワーク経路の変更前、(b)はネットワーク経路の変更後を示す。 本発明の実施形態に係る仮想マシンの接続制御システムの<実施例3:コマンド展開:抽象化レベル1>を示す図であり、(a)はコマンド展開前、(b)はコマンド展開後を示す図である。 本発明の実施形態に係る仮想マシンの接続制御システムの<実施例3:コマンド展開:抽象化レベル2>を示す図であり、(a)はコマンド展開前、(b)はコマンド展開後を示す図である。 VMとVMとを接続する経路におけるオブジェクトの関係性を示す図であり、(a)は非特許文献3の技術のオブジェクト、(b)は本実施形態の抽象化レベル1のオブジェクト、(c)は本実施形態の抽象化レベル2のオブジェクトを示す図である。 本発明の実施形態に係る仮想マシンの接続制御システムの管理情報格納部に格納されるリソースのデータ構造の一例を示す図である。 本発明の実施形態に係る仮想マシンの接続制御システムのリソースの接続パターンを示す図であり、(a)はVMへの接続、(b)はNICへの接続、(c)はportへの接続を示す図である。 SPPの概要を説明する図であり、(a)はそのハードウェア構成図、(b)はそのSPPのリソース管理のイメージ図である。
以下、図面を参照して本発明を実施するための形態(以下、「本実施形態」という)における仮想マシンの接続制御システム等について説明する。
図1は、本発明の実施形態に係る仮想マシンの接続制御システムを示す構成図である。本実施形態の仮想マシンの接続制御システムは、サービス機能を再利用可能なモジュール単位に分割し、仮想マシンを独立した環境の上で動作させることで、部品のようにして必要に応じて利用し運用性を高めるといったSFCに適用した例である。
図1に示すように、仮想マシンの接続制御システム100は、GUI(Graphical User Interface)端末110と、バックエンドでネットワーク1につながるSPPサーバ120と、を備える。GUI端末110とSPPサーバ120は、ルータ2を介して接続され、ルータ2は例えばWAN(Wide Area Network)からなるネットワーク1に接続される。
<GUI端末>
GUI端末110は、SPPサーバ120と連携し、仮想マシンを接続するためのリソース割り当ておよび経路設定をGUI操作により行う。
GUI端末110は、コマンド生成機能部111と、GUI制御部116と、を備える。コマンド生成機能部111は、GUIイベント監視部112と、オブジェクト管理部113と、コマンド生成部114と、コマンド送信部115と、を備える。
コマンド生成機能部111は、GUI操作から抽象化コマンドを生成する。具体的には、コマンド生成機能部111は、GUI操作(例えば、GUI操作による構成変更処理)に応じてSPPサーバ120のSPP124へのコマンドを、抽象化コマンドとして生成する。ちなみに、非特許文献3の技術では、コマンドライン31(図15参照)による操作であり、GUI操作からコマンドを生成するものはなかった。
また、後記各<実施例>で説明するように、コマンド生成機能部111は、仮想マシン間を接続する経路にSPPのポートオブジェクトを介在させる第1の抽象化レベルの第1抽象化コマンドと、仮想マシン間を接続する経路にSPPのポートオブジェクトを介在させることなく接続する、第1の抽象化レベルより抽象度合いの高い第2の抽象化レベルの第2抽象化コマンドと、を生成する。
GUIイベント監視部112は、ユーザのGUI操作によるイベント(例えば、ポートおよびVM間のリンクの結線、解除)を監視し、イベント発生をコマンド生成部114へ通知する。
オブジェクト管理部113は、GUI画面210(図2参照)に表示されるオブジェクト(VM、ポートおよびそれらを結ぶリンク)のIDおよびオブジェクト状態(リンクの有無、どのオブジェクトと結線されているかなど)を保持する。
コマンド生成部114は、GUIイベント監視部112からの通知に基づき、抽象化コマンドを生成し、コマンド送信部115へ送付する。
コマンド送信部115は、生成された抽象化コマンドをSPPサーバ120のコマンド受信部122へ送付する。
GUI制御部116は、グラフィック要素により情報を画面に提示するとともに、ポインティングデバイスにより前記画面上の位置および動きを指示するGUI操作を制御する。
<SPPサーバ>
SPPサーバ120は、コマンド変換機能部121と、SPP124と、複数の仮想マシン(VM)125と、を備える。コマンド変換機能部121は、コマンド受信部122と、コマンド展開部123と、管理情報格納部123Aと、を備える。
コマンド変換機能部121は、GUI操作に応じて生成されたコマンド(抽象化コマンド)を、SPP124が使用可能な元のSPPのコマンドに変換する。このコマンド変換をコマンド展開と呼ぶ。また、コマンド変換機能部121は、SPP124へのコマンド入力(投入)を行う。
なお、コマンド変換機能部121は、非特許文献3の技術によるSPPにはなく、コマンド生成機能部111と共に独自に追加実装されたものである。
コマンド受信部122は、GUI端末のコマンド送信部115からの抽象化コマンドが付されたメッセージを受信する。
管理情報格納部123Aは、抽象化コマンドをSPPのコマンドへ展開するための管理情報を格納する。管理情報格納部123Aは、SPPリソース、ポート(port)オブジェクトおよびVMオブジェクトの関係を保持する。具体的には、管理情報格納部123Aは、SPPのリソース(NIC,ring)を抽象化されたportオブジェクトおよびVMオブジェクトとしてユーザに操作させるためのデータ構造(図13参照)を有する。管理情報の一例については図12〜図14により後記する。
コマンド展開部123は、管理情報格納部123Aを参照して、抽象化コマンドをSPPのコマンドに展開し、SPP124へ入力(投入)する。
SPP124は、仮想マシンを含むリソースを管理する。
<コマンド生成機能部111およびコマンド変換機能部121の配置>
本実施形態では、GUI端末110が、コマンド生成機能部111を備え、SPPサーバ120が、コマンド変換機能部121を備えている。上記配置については、以下の理由に基づく。
GUI端末110は、GUIの更新が行われた場合、例えばGUI操作がされたときに、GUI画面の遷移を細かく観察しなければならない。具体的には、GUI制御部116は、GUI操作を監視し、GUI操作が行われると、コマンド生成機能部111は、GUI操作からコマンドを迅速に生成しなければならない。仮に、コマンド生成機能部111がGUI端末110の外にネットワーク1を介して離れて設置されている場合、GUI操作からコマンドを生成までに遅延が生じる。このため、コマンド生成機能部111は、GUI端末110内にあった方がよい。一旦、コマンドを生成すると、コマンド自体はネットワーク1を経由してSPPサーバ120に送信しても遅延の問題はない。
一方、コマンド変換機能部121がSPPサーバ120側にある理由としては、GUI端末110が複数あった場合に集約して管理できることが挙げられる。
以下、上述のように構成された仮想マシンの接続制御システム100の動作を説明する。
[概要]
図2は、本発明の実施形態に係る仮想マシンの接続制御システムにおけるGUI端末のGUI操作とコマンド生成、およびSPPへのコマンド発行を説明する図である。
図2に示すように、GUI端末110は、コマンド生成機能部111と、GUI操作を表示するGUI画面210と、を有する。
GUI端末110は、SPPサーバ120の仮想マシンVM#1〜#5から取得したリソース情報(図示省略)を基に、GUIへ更新反映する。図2では、GUI画面210には、ポートPort#1,#2と、仮想マシンVM#1〜#5と、これらを繋ぐ線と、モジュールメニュー150と、が表示されている。ここでは、ポートPort#1は、負荷ツールA(テストモジュールの1つ)の接続点(DPDKでは、NWの端点をPortと呼ぶ)であり、ポートPort#2は、トラフィック計測点(監視モジュールの1つ)である。また、図2の白抜き矢印(⇒印)は、マウス等のポインティングデバイスの指示点である。
図2の符号aに示すように、GUI画面210上のVM等の位置を、上記ポインティングデバイスの指示点によって指定または移動するようなGUI操作を行うことで、GUI操作によりVM間の接続を変更可能である。
また、コマンド生成機能部111は、SPPサーバ120のSPP124へコマンド(抽象化コマンド)を発行する(図2の符号b参照)。
SPPサーバ120は、GUI端末110に対して、SPPサーバ120の仮想マシンVM#1〜#5から取得したリソース情報を基に、GUIへ更新反映する(図2の符号c参照)。これにより、GUI端末110側では、SPPのリソース(NIC,ring)を抽象化されたportオブジェクトおよびVMオブジェクトとしてユーザに操作させることができる。
[適用例]
非特許文献3の技術を用いる例については<比較例>で、また、本実施形態の例については<実施例>で説明する。
<比較例1>
図3は、非特許文献3の技術による接続構成例<比較例1:接続構成>を示すイメージ図である。図3中の矢印は、この矢印方向にネットワークリソース等が接続されることを示している。
<比較例1>で用いる図3および図4(後記)は、説明のためのイメージ図である。図3および図4は、抽象化をしない場合(<実施例1>を用いない場合)に、GUIによる操作をしようとしたときはSPPのオブジェクトはこのように表現できる。なお、後記する<実施例1>で用いる図5および図6(後記)は、実際のGUIによる操作を示す図である。ちなみに、非特許文献3の技術は、あくまでもコマンドラインによる操作であり、図3および図4のようなGUI表現が存在するものではない。
図3は、SPPにおけるプロセスと、ネットワークリソースをGUIとして表現した場合のイメージ例である。例えば、図3のイメージ図は、前記図15(a)に示すVM間接続装置10のSPP20をGUIとして表現している。
図3のSPPによる接続構成例において、SPPによるプロセスとネットワークリソースは、下記の通りである。
SPPにおけるプロセスは、VNF1,VNF2,…,FWD0,FWD1,…があるとする。上記FWD0〜FWD3は、上記プロセスのフォワーダであり、id:sec1〜id:sec5で表記される。上記VNF1〜VNF3は、上記プロセスのVM上にのるアプリケーションであり、id:sec6〜id:sec8で表記される。上記VNF1,VNF2,…は、例えば前記図15(a)に示すVM5に対応する。上記FWD0,FWD1,…は、前記図15(a)には表されていないが、バックグランドで動作している、ネットワークを転送するプロセスである。
SPPにおけるネットワークリソースは、ring0,ring1,…,NIC0,NIC1,…である。上記ring0,ring1,…は、前記図15(a)に示すSPP20の差し込み口に対応し、上記NIC0,NIC1,…は、前記図15(a)に示す物理ポート7のNICに対応する。
図3の接続構成例では、NIC0のR(Received eXchange:受信変換)を上記プロセスFWD0のT(Transmit eXchange:送信変換)に接続し、FWD0の Rをring0のTに接続し、ring0の RをVNF1のTに接続する。以下同様に、VNF1のRをring1のTに接続し、ring1の RをFWD1の Tに接続する。FWD1の Rをring2のTに接続し、ring2の RをVNF2のTに接続する。そして、VNF2のRをring3のTに接続し、ring3の RをFWD2(id:sec4で記述されるFWD2)の Tに接続する。FWD2の Rをring4のTに接続し、ring4の RをVNF3のTに接続する。そして、VNF3のRをring5のTに接続し、ring5の RをFWD3の Tに接続し、FWD3の RをNIC1のTに接続する。
図4は、非特許文献3の技術による接続設定例<比較例1:接続設定>を示すイメージ図である。
図4の接続設定例では、NIC0のRをFWD0のTに接続し、FWD0の Rをring0のTに接続し、ring0の RをVNF1のTに接続する。VNF1のRをring1のTに接続し、ring1の RをFWD1の Tに接続し、FWD1の RをNIC1のTに接続する。
図4のネットワーク経路を設定するために、以下のコマンドを入力する。このコマンド入力の記述方法については、非特許文献3のSPPの仕様に準拠する。なお、下記コマンドにおいて、secはSecondary processであり、SPPにおけるプロセスVNF, FWDを記述する。また、各数値は、上記プロセスまたはネットワークリソースのidである。下記コマンドを入力すると、図4に示す接続設定が行われる。
SPP>sec 0;add ring 0
SPP>sec 0;add ring 1
SPP>sec 1;add ring 0
SPP>sec 1;add ring 1
SPP>sec 2;add ring 0
SPP>sec 2;add ring 1
SPP>sec 2;patch 0 1
SPP>sec 0;patch 0 2
SPP>sec 1;patch 3 1
SPP>sec 2;forward
SPP>sec 1;forward
SPP>sec 0;forward
<実施例1>
<実施例1>は、仮想スイッチの接続処理(仮想NWリソース)を抽象化して表現するものである。<実施例1>は、非特許文献3の技術による<比較例1>に対比させている。
図5は、本発明の実施形態に係る仮想マシンの接続制御システムの<実施例1:接続構成:抽象化レベル1>を示す図であり、(a)は図2を再掲した図、(b)は図2のGUI画面210に表示される抽象化されたSPPによる接続構成を示す図である。図3の仮想スイッチの接続処理が、図5(b)のように、抽象化して表現される。
図5(b)に示すように、GUI端末110のGUI画面210(図2、図5(a)参照)には、SPPのリソースが抽象化して表示される。図5の接続設定例では、NIC0のTをポートp1に接続し、p1を介してVNF1のTに接続し、VNF1のRをp2に接続し、p2をp4に接続し、p4を介してVNF2のTに接続する。VNF2のRをp5に接続し、p5をp7に接続し、p7を介してVNF3のTに接続する。VNF3のRをp8に接続し、p8を介してNIC1のRに接続する。なお、オブジェクトには、ring、NICがあり、それらを総称してポートpと呼ぶ。
<実施例1>の接続構成を、<比較例1>(図3参照)と比較して分かるように、SPPリソースの抽象化によって、図5(b)ではSPPにおけるプロセスFWDおよびSPPにおけるネットワークリソースringがなくなり、ポートpに置き換わっている。
ちなみに、SPPにおけるプロセス(FWD, VNFなど)に対して一つずつ記述するのが、元々のSPPのコマンドである。しかしながら、本当に操作するときに必要なものは、上記プロセスFWDなどではなく、何処と何処とのringをつなぐことが本来実現したい目的である。本実施形態では、本来実現したい目的を浮き彫りにするように抽象化するものである。すなわち、抽象化することで、SPPの詳細なところをユーザから見えないようにする。
図5(b)では、FWDおよびringがなくなって抽象化されている。また、余分なものを見せないという見た目の抽象化(視覚上の抽象化)だけではなく、コマンドの抽象化(コマンドの簡素化)による直感的な操作性向上の効果が大きい。
従来例(<比較例1>)では、前記図15(a)に示すように、コマンドライン31から独自コマンドを入力するなど複雑な作業を行わねばならず運用が困難となっていたが、<実施例1>では、SPPの操作を抽象化し、それに伴うGUI操作を可能にする。そして、GUI操作に応じてSPPへのコマンドを生成する。GUI操作に応じてSPPへのコマンドを生成することは、GUI端末110のコマンド生成機能部111(図2、図5(a)参照)が担っている。本実施形態では、GUI操作に応じてSPPへのコマンドが生成されるので、コマンドラインによるコマンド入力が不要になる。
図5(b)の符号dに示すように、コマンド生成機能部111のコマンド生成部114(図1参照)は、GUI操作により抽象化コマンドを生成する。上記抽象化コマンドは、上記SPPのリソースを抽象化するためのコマンドである。抽象化コマンドの具体例については、後記する。
また、抽象化されたSPPのリソースは、GUI操作により変更が反映される。具体的には、コマンド生成機能部111(図1参照)のGUIイベント監視部112は、ユーザのGUI操作によるイベント(ポートおよびVM間のリンクの結線、解除)を監視し、イベント発生時にコマンド生成部114へ通知する。また、オブジェクト管理部113は、GUIに表示されるオブジェクト(VM、ポートおよびそれらを結ぶリンク)のIDおよびオブジェクト状態(リンクの有無、どのオブジェクトと結線されているかなど)を保持している。コマンド生成部114は、GUIイベント監視部112からの通知に基づき、抽象化コマンドを生成する。
一方、SPPサーバ120側では、抽象化された表現と元の表現との差分を吸収するために、抽象化コマンドを元のSPPのコマンドに変換するコマンド変換(コマンド展開)を行う。
抽象化されたコマンドを、元のSPPのコマンドに戻すときに、抽象化されたコマンドだけでは、例えばいずれのFWDに対して発行されたものかが見えない。そこで、本実施形態では、どこのポートに対する操作は、どのFWDが管理しているものかを示す情報を、管理情報として管理情報格納部123A(図1参照)保存しておく。SPPサーバ120のコマンド変換機能部121(図1参照)は、管理情報格納部123Aの管理情報を参照して、発行された抽象化コマンドを解釈して、元のSPPのコマンドに変換する。
次に、抽象化度合いのより高い抽象化レベル2について説明する。
抽象化レベル2は、上記抽象化レベル1(図5参照)をより抽象化した(抽象化の度合いが高い)ものである。
図6は、本発明の実施形態に係る仮想マシンの接続制御システムの<実施例1:接続構成:抽象化レベル2>を示す図である。
図6に示すように、抽象化レベル2では、NIC0のTをVNF1のTに接続し、VNF1のRをVNF2のTに接続し、VNF2のRをVNF3のTに接続し、VNF3のRをNIC1のRに接続する。
コマンド生成機能部111のコマンド生成部114(図1参照)は、GUI操作により抽象化レベル2の抽象化コマンドを生成する。また、SPPサーバ120のコマンド変換機能部121(図1参照)は、抽象化された表現と元の表現との差分を吸収するために、抽象化レベル2で抽象化された抽象化コマンドを元のコマンドに変換するコマンド変換(コマンド展開)を行う。
図6に示すように、仮想マシンの接続制御システム100は、ユーザに対して、抽象化されたSPPのリソースのうち、VMおよびその経路のみをGUI操作させることができる。また、ユーザに対して、GUIの抽象化の度合いを選択させることを可能とする。
ここで、GUIの抽象化を、抽象化レベル1にするか抽象化レベル2にするかは、ユーザが選択可能である。抽象化レベル1または抽象化レベル2のいずれの場合においても、GUI端末110のコマンド生成機能部111(図2参照)が、GUI操作に応じて、該当する抽象化レベルでSPPへのコマンドを生成する。そして、GUI端末110は、SPPサーバ120のSPP124へコマンドを発行する(図2の符号b参照)。また、コマンド変換機能部121は、抽象化コマンドを元のコマンドに変換するSSPへのコマンド変換および入力(投入)を行う。なお、SPP124は、非特許文献3の技術に準拠したコマンドのみで動作するので、SSPへのコマンド変換および入力は不可欠である。ただし、このコマンド変換機能および前記コマンド生成機能は、仮想マシンの接続制御システム100のどこに設置されていてもよい。
以上、非特許文献3の技術を用いる<比較例1>と本実施形態の接続設定例の<実施例1>について説明した。また、<実施例1>では、抽象化度合いの異なる抽象化レベル1と抽象化レベル2についてそれぞれ説明した。
次に、ネットワーク経路の変更手順例について説明する。非特許文献3の技術を用いる<比較例2>とそれに対応する本実施形態の<実施例2>について述べる。
<比較例2>
図7は、非特許文献3の技術による接続変更例<比較例2:接続変更>を示すイメージ図であり、(a)はネットワーク経路の変更前、(b)はネットワーク経路の変更後を示す。図7中の矢印は、この矢印方向にネットワークリソース等が接続されることを示している。図7は、SPPにおけるプロセスと、ネットワークリソースをGUIとして表現した場合のイメージ例である。
なお、上述したように、非特許文献3の技術は、あくまでもコマンドラインによる操作であり、図7のようなGUI表現が存在するものではない。また、図7においてVNFのブロックの上部にidを表記(例えば図7(a)のVNF1のブロック上部にid:sec4を表記)しているが、このidはSPPにおいて記述(SPPのなかでidを見る手段がありそれを記述)されているものであり、説明の便宜上ここに付している(以下、各図において同様)。
図7(a)の接続変更前では、NIC0のRをFWD0のTに接続し、FWD0の Rをring0のTに接続し、ring0の RをVNF1のTに接続している。そして、VNF1のRをring1のTに接続し、ring1の RをFWD1の Tに接続している。FWD1の Rをring2のTに接続し、ring2の RをFWD3の Tに接続し、FWD3の RをNIC1のTに接続している。
図7(b)の接続変更後では、ring2の RをVNF2のTにつなぎ替え(図7(b)の符号e;白抜き矢印参照)、VNF2のRをring3のTに接続する経路を追加し(図7(b)の符号f参照)、ring3の RをFWD3の Tに接続する経路を追加する(図7(b)の符号g参照)。
図7のネットワーク経路の変更を設定するために、以下のコマンドを入力する。
SPP>sec 2;patch 2 5
SPP>sec 5;add ring 3
SPP>sec 3;add ring 3
SPP>sec 5;patch 2 5
SPP>sec 5;patch 5 3
SPP>sec 3;patch 5 3
<実施例2>
<実施例2>は、非特許文献3の技術による<比較例2>に対して、仮想スイッチの接続処理(仮想NWリソース)を抽象化して表現するものである。
図8は、本発明の実施形態に係る仮想マシンの接続制御システムの<実施例2:接続変更:抽象化レベル1>を示す図であり、(a)はネットワーク経路の変更前、(b)はネットワーク経路の変更後を示す。
図8(a)の接続変更前では、NIC0のRをポートp1に接続し、p1を介してVNF1のTに接続し、VNF1のRをp2に接続し、p2をp3に接続し、p3を介してNIC1のRに接続している。
ここで、<実施例2>(図8(a)参照)は、<比較例2>(図7(a)参照)と比較して分かるように、プロセスVNFおよびネットワークリソースringがなくなり、ポートpに置き換わっている。
図8(b)の接続変更後では、p3の出力をVNF2のTにつなぎ替え(図8(b)の符号h;白抜き矢印参照)、VNF2のRをp4に接続する経路を追加し(図8(b)の符号i参照)、p4を介してNIC1のR に接続する経路を追加する(図8(b)の符号j参照)。
図8のネットワーク経路の変更を設定するために、下記の抽象化レベル1の抽象化コマンドを入力する。
SPP>port3→vnf2
SPP>vnf2→port4
SPP>port4→NIC1
このように、<実施例2:抽象化レベル1>では、GUIの抽象化にともない、コマンドも抽象化する。抽象化されたコマンド(抽象化レベル1の抽象化コマンド)は、コマンド変換機能部121(図1参照)により元のSPPコマンドへ展開される(後記図10参照)。
次に、抽象化度合いのより高い抽象化レベル2について説明する。
図9は、本発明の実施形態に係る仮想マシンの接続制御システムの<実施例2:抽象化レベル2>を示す図であり、(a)はネットワーク経路の変更前、(b)はネットワーク経路の変更後を示す。
抽象化レベル2は、上記抽象化レベル1(図8参照)をより抽象化した(抽象化の度合いが高い)ものである。
図9(a)に示すように、抽象化レベル2の接続変更前では、NIC0のTをVNF1のTに接続し、VNF1のRをNIC1のRに接続している。
図9(b)に示すように、抽象化レベル2の接続変更後では、NIC1のR をVNF2のTにつなぎ替え(図9(b)の符号k;白抜き矢印参照)、VNF2のRをNIC1のTに接続する経路を追加する(図9(b)の符号l参照)。
図9のネットワーク経路の変更を設定するために、下記の抽象化レベル2の抽象化コマンドを入力する。
SPP>vnf1→vnf2
SPP>vnf2→NIC1
このように、<実施例2:接続変更:抽象化レベル2>では、GUIの抽象化にともない、コマンドも抽象化する。抽象化されたコマンド(抽象化レベル2の抽象化コマンド)は、コマンド変換機能部121(図1参照)により元のSPPコマンドへ展開される(後記図11参照)。
以上、非特許文献3の技術を用いる<比較例2>と本実施形態の<実施例2:接続変更>について説明した。また、<実施例2:接続変更>では、抽象化度合いの異なる抽象化レベル1と抽象化レベル2についてそれぞれ説明した。
<実施例3>
<実施例3>は、前記つなぎ替えにおけるコマンド展開について説明する。
図10は、本発明の実施形態に係る仮想マシンの接続制御システムの<実施例3:コマンド展開:抽象化レベル1>を示す図であり、(a)はコマンド展開前、(b)はコマンド展開後を示す。
図10は、port→vnf1からport1→port2へのつなぎ替えにおけるコマンド展開の例である。
図10(a)のコマンド展開前(抽象化コマンド)の、つなぎ替え前では、NIC0のTをP1に接続し、p1を介してVNF1に接続し(図10(a)の符号m;破線矢印参照)、VNF1をp2に接続し、p2を介してNIC1のRに接続している。
図10(a)のコマンド展開前(抽象化コマンド)の、つなぎ替え後では、p1の出力をVNF1を跨いでp2につなぎ替える(図10(a)の符号n参照)。
上記抽象化コマンド(抽象化レベル1)を元のSPPコマンドへ展開する。
図10(b)のコマンド展開後(SPPコマンド)の、つなぎ替え前では、NIC0の Tをring1のTに接続し、ring1のRをFWD1の Tに接続し、FWD1の Rをring2のTに接続し(図10(b)の符号o;破線矢印参照)、ring2の RをVNF1のTに接続している。VNF1のRをring3のTに接続し、ring3の RをFWD2の Tに接続し、FWD2のRをring4のTに接続している。ring4のRをNIC1の Rに接続している。
図10(b)のコマンド展開後(SPPコマンド)の、つなぎ替え後では、FWD1の Rを、ring2およびVNF1を跨いでring3のTにつなぎ替える(図10(b)の符号p参照)。
図10のport1→vnf1からport1→port2へのつなぎ替えにおけるコマンド展開は、下記の通りである。
入力コマンド(抽象化コマンド:抽象化レベル1)
SPP>port1→port2
をコマンド展開して、下記のSPPコマンドに変換する。
SPP>sec 1;del ring 2
SPP>sec 1;add ring 3
SPP>sec 1;patch 2 3
なお、上記「sec 1」はSPPで定められた表記である。
図11は、本発明の実施形態に係る仮想マシンの接続制御システムの<実施例3:コマンド展開:抽象化レベル2>を示す図であり、(a)はコマンド展開前、(b)はコマンド展開後を示す。
図11は、port1→vnf1からport1→port2へのつなぎ替えにおけるコマンド展開の例である。
図11(a)のコマンド展開前(抽象化コマンド:抽象化レベル2)の、つなぎ替え前では、NIC0のTをVNF1に接続し、VNF1をVNF2に接続し(図11(a)の符号q;破線矢印参照)、VNF2をNIC1のRに接続している。
図11(a)のコマンド展開前(抽象化コマンド:抽象化レベル2)の、つなぎ替え後では、VNF1をNIC1のRに接続するようにつなぎ替える(図11(b)の符号r参照)。
上記抽象化コマンド(抽象化レベル2)を、抽象化コマンド(抽象化レベル1)に展開する。
図11(b)のコマンド展開後(抽象化コマンド:抽象化レベル1)の、つなぎ替え前では、NIC0のTをp1に接続し、p1を介してVNF1に接続し、VNF1をp2に接続し、p2を介してVNF2に接続し(図11(b)の符号s;破線矢印参照)、VNF2をp3に接続し、p3を介してNIC1のRに接続している。
図11(b)のコマンド展開後(抽象化コマンド:抽象化レベル1)の、つなぎ替え後では、VNF1をp2およびVNF2を跨いでp3につなぎ替える(図11(b)の符号t参照)。
図11(a)のvnf1→NIC1のつなぎ替えにおけるコマンド展開(抽象化コマンド:抽象化レベル2)と、図11(b)のvnf1→NIC1のつなぎ替えにおけるコマンド展開(抽象化コマンド:抽象化レベル1)とは、下記の通りである。
入力コマンド(抽象化コマンド:抽象化レベル2)
SPP>vnf1→NIC1
をコマンド展開して、下記の抽象化コマンド(抽象化レベル2→抽象化レベル1)に変換する。
SPP>port2 remove vnf2
SPP>port3 remove vnf2
SPP >port2→port3
なお、図11では、抽象化コマンド(抽象化レベル2)を抽象化コマンド(抽象化レベル1)にコマンド展開する例を示したが、図10と同様の方法により、抽象化コマンド(抽象化レベル2)を元のSPPコマンドへ展開することも可能である。
[オブジェクトの関係性]
次に、VMを接続する経路におけるオブジェクトの関係性について説明する。
図12は、VMとVMとを接続する経路におけるオブジェクトの関係性を示す図であり、(a)は非特許文献3の技術(既存技術)のオブジェクト、(b)は本実施形態の抽象化レベル1のオブジェクト、(c)は本実施形態の抽象化レベル2のオブジェクトを示す。
図12(a)に示す非特許文献3の技術では、VMとVMとをつなぐ最も簡単な経路に、オブジェクトFWD(DPDK process)と、オブジェクトRing(DPDK resource)とを有する。非特許文献3の技術では、最も簡単な経路であってもオブジェクトFWDとRingの最小セットが必要である。
図12(b)に示す本実施形態の抽象化レベル1では、VMとVMとをつなぐ経路に入るのはオブジェクトPortだけである。
図12(c)に示す本実施形態の抽象化レベル2では、VMとVMとをつなぐ経路にオブジェクトはない。
仮想マシンの接続制御システム100(図1参照)は、以上のオブジェクトの関係性を把握している。
[リソースのデータ構造]
次に、リソースのデータ構造について説明する。
図13は、管理情報格納部123A(図1参照)に格納されるリソースのデータ構造の一例を示す図である。
図13に示すリソースのデータ構造では、vmのデータ構造の中に、下記のようにそれぞれ所属するポートportを、集合体portsで持っている。
Figure 0006543231
上記ポートportであるオブジェクトは、別のデータ構造として下記を有する。
Figure 0006543231
上記ポートportは、rxおよびtxを有し、ここでは、rx:{ resource_id:yyy },tx:{ resource_id:zzz }である。resource_idは、SPPがもつ元のidである。vmのデータ構造では、このresource_idを持つことで、例えばVMからVMに直接接続する場合(図12(c)参照)に対応できる。
[リソースの接続パターン]
次に、リソースの接続パターンについて説明する。
図14は、リソースの接続パターンを示す図であり、(a)はVMへの接続、(b)はNICへの接続、(c)はportへの接続を示す。
例えば、図13のリソースのデータ構造において、vmが、このresource_idを持つことで、図14(a)に示すVMへの接続を行うことができる。すなわち、図14(a)に示すように、VM(id:v1)をVM(id:v2)につなぎ替えをしようとする場合、まずVM(id:v1)がデータ構造として持つPortのどれに対応する操作であるかをみる。ここでは、VM(id:v1)は、Port(id:p1)に対応する操作であるので、Port(id:p1)どこにつながっているかをみる。ここでは、Port(id:p1)はVM(id:v2)につながっている。VM(id:v1)をVM(id:v2)につなぎ替えをしようとする場合、上記リソースのデータ構造からつなぎ先を辿っていき、つなぎ替えのためにコマンドを発行する。
NICへの接続(図14(b)参照)、portへの接続(図14(c)参照)も同様である。
以上説明したように、本実施形態に係る仮想マシンの接続制御システム100(図1参照)は、仮想マシンを含むリソースを管理するSPPを備えるSPPサーバ120と、SPPサーバ120と連携し、仮想マシンを接続するためのリソース割り当ておよび経路設定をGUI操作により行うGUI端末110と、を備える。また、GUI端末110は、GUI操作に応じてSPPへのコマンドを、抽象化コマンドとして生成するコマンド生成機能部111を備える。SPPサーバ120は、生成された抽象化コマンドを、SPPが使用可能なSPPのコマンドに変換するコマンド変換機能部121を備える。
特に、仮想マシンの接続制御システム100は、GUI操作に応じてSPPへのコマンド(抽象化コマンド)を生成して、SPPへコマンドを発行するコマンド生成機能部111と、SPPのリソース(NIC,ring)を抽象化されたportオブジェクトおよびVMオブジェクトとしてユーザに操作させるためのデータ構造を有し、かつSPPリソース、portオブジェクトおよびVMオブジェクトの関係を保持する管理情報格納部123Aと、上記管理情報を参照して、生成されたコマンド(抽象化コマンド)をSPPへ投入するコマンドへ変換するコマンド変換機能部121と、を備える。
このようにすることで、GUI操作による構成変更処理からコマンドを生成し、これをSPPへ投入するコマンドへ変換することで、SPPの操作を抽象化し、GUIにより直感的に操作することができる。例えば、DPDKやvhostなどの仮想ネットワークリソースを抽象化し、グラフィカルな操作を実現することができる。
具体的には、(1)GUI操作により、簡易にサービス機能の追加、削除を行うことができ、システムのアップデートを容易にすることができる。(2)VMおよびそれらのコネクション操作、監視をグラフィカルに実行することで、システムの運用性を高めることができる。(3)VMの接続をグラフィカルに接続し、VM間の中間状態をも含め直感的に監視をすることで、開発および運用における工程を迅速化し、サービス提供サイクルを早めることができる。
上述したように、SPPは、DPDKの高速性を維持しつつ柔軟にSFCを行うことが可能であるが、コマンドライン31(図15参照)による操作が複雑である。すなわち、コマンドライン31から独自コマンドを入力するなど複雑な作業を行わねばならず運用が困難であった。これに対して、本実施形態では、SPPの上記利点を活かしつつ、SPPの課題であったコマンドライン31による操作を排して、GUI操作により、直感的に操作することができる。
また、本実施形態では、コマンド生成機能部111が、仮想マシン間を接続する経路にSPPのポートオブジェクトを介在させる第1の抽象化レベルの第1抽象化コマンドと、仮想マシン間を接続する経路にSPPのポートオブジェクトを介在させることなく接続する、第1の抽象化レベルより抽象度合いの高い第2の抽象化レベルの第2抽象化コマンドと、を生成する。
このようにすることで、ユーザの意向に合わせた、GUI操作を実現することができる。例えば、抽象化レベル1では、抽象化されたSPPのリソースのうち、仮想マシン間を接続する経路にSPPのポートオブジェクトが介在したGUI操作させることができる。抽象化レベル2では、VMおよびその経路のみをGUI操作させることができる。また、ユーザは、GUIの抽象化の度合いを選択することができる。このように、抽象化することで、SPPの詳細なところをユーザから見えないようにすることができる。
また、本実施形態では、コマンド生成機能部111が、ユーザのGUI操作によるイベント(ポートおよびVM間のリンクの結線、解除)を監視し、イベント発生時にコマンド生成部114へ通知するGUIイベント監視部112と、GUIに表示されるオブジェクト(VM、ポートおよびそれらを結ぶリンク)のIDおよびオブジェクト状態(リンクの有無、どのオブジェクトと結線されているかなど)を保持するオブジェクト管理部113と、GUIイベント監視部112からの通知に基づき、抽象化コマンドを生成し、コマンド送信部115へ送付するコマンド生成部114と、抽象化コマンドをサーバのコマンド受信部122へ送付するコマンド送信部115と、を備える。また、コマンド変換機能部121が、GUI端末110のコマンド送信部115からのメッセージを受信するコマンド受信部122と、抽象化コマンドをSPPのコマンドへ展開するための管理情報を格納する管理情報格納部123Aと、管理情報を参照して、抽象化コマンドをSPPのコマンドへ展開し、SPPへ送付するコマンド展開部123と、を備える。
このように、コマンド生成機能部111は、各部を制御してGUI操作による構成変更処理からコマンド(抽象化コマンド)を生成し、SPPへGUI操作により生成されたコマンドを発行する。コマンド変換機能部121は、各部を制御してこの抽象化コマンドをSPPへ投入するコマンドへ変換する。これにより、SPPの操作を抽象化し、GUIにより直感的に操作することができる。また、GUI操作により、簡易にサービス機能の追加、削除を行うことができ、システムのアップデートを容易にし、システムの運用性を高めることができる。また、VM間の中間状態をも含め直感的に監視をすることで、開発および運用における工程を迅速化し、サービス提供サイクルを早めることができる。
なお、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上述文書中や図面中に示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行するためのソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、又は、IC(Integrated Circuit)カード、SD(Secure Digital)カード、光ディスク等の記録媒体に保持することができる。
1 ネットワーク
2 ルータ
100 仮想マシンの接続制御システム
110 GUI端末
111 コマンド生成機能部
112 GUIイベント監視部
113 オブジェクト管理部
114 コマンド生成部
115 コマンド送信部
116 GUI制御部
120 SPPサーバ
121 コマンド変換機能部
122 コマンド受信部
123 コマンド展開部
123A 管理情報格納部
124 SPP
125 仮想マシン(VM)
150 モジュールメニュー
210 GUI画面
VM 仮想マシン(オブジェクト)
Port ポート(オブジェクト)
NIC,ring SPPのリソース(オブジェクト)

Claims (4)

  1. 複数の仮想マシンを動作させる仮想マシンの接続制御システムであって、
    前記仮想マシンを含むリソースを管理するSPP(Soft Patch Panel)を備えるSPPサーバと、
    前記SPPサーバと連携し、前記仮想マシンを接続するためのリソース割り当ておよび経路設定をGUI(Graphical User Interface)操作により行うGUI端末と、を備え、
    前記GUI端末は、
    前記GUI操作を制御するGUI制御部と、
    前記GUI操作に応じて前記SPPへのコマンドを、抽象化コマンドとして生成するコマンド生成機能部と、を備え、
    前記SPPサーバは、
    生成された前記抽象化コマンドを、前記SPPが使用可能なSPPのコマンドに変換するコマンド変換機能部を備える
    ことを特徴とする仮想マシンの接続制御システム。
  2. 前記コマンド生成機能部は、
    前記仮想マシン間を接続する経路に前記SPPのポートオブジェクトを介在させる第1の抽象化レベルの第1抽象化コマンドと、
    前記仮想マシン間を接続する経路に前記SPPのポートオブジェクトを介在させることなく接続する、前記第1の抽象化レベルより抽象度合いの高い第2の抽象化レベルの第2抽象化コマンドと、を生成する
    ことを特徴とする請求項1に記載の仮想マシンの接続制御システム。
  3. 前記コマンド生成機能部は、
    ユーザのGUI操作によるイベントを監視し、イベント発生を通知するGUIイベント監視部と、
    GUIに表示されるオブジェクトのIDおよびオブジェクト状態を保持するオブジェクト管理部と、
    前記GUIイベント監視部からの通知に基づいて、前記抽象化コマンドを生成するコマンド生成部と、
    生成された前記抽象化コマンドをSPPサーバへ送付するコマンド送信部と、を備え、
    前記コマンド変換機能部は、
    前記GUI端末の前記コマンド送信部からの前記抽象化コマンドが付されたメッセージを受信するコマンド受信部と、
    前記抽象化コマンドをSPPのコマンドへ展開するための管理情報を格納する管理情報格納部と、
    前記管理情報を参照して、前記抽象化コマンドをSPPのコマンドへ展開し、前記SPPへ入力するコマンド展開部と、を備える
    ことを特徴とする請求項1に記載の仮想マシンの接続制御システム。
  4. 複数の仮想マシンを動作させる仮想マシンの接続制御システムが実行する仮想マシンの接続制御方法であって、
    前記仮想マシンの接続制御システムは、前記仮想マシンを含むリソースを管理するSPP(Soft Patch Panel)を備えるSPPサーバと、前記SPPサーバと連携し、前記仮想マシンを接続するためのリソース割り当ておよび経路設定をGUI(Graphical User Interface)操作により行うGUI端末と、を有し、
    前記GUI端末は、
    前記GUI操作を制御するステップと、
    前記GUI操作に応じて前記SPPへのコマンドを、抽象化コマンドとして生成するステップと、を実行し、
    前記SPPサーバは、
    生成された前記抽象化コマンドを、前記SPPが使用可能なSPPのコマンドに変換するステップを実行する
    ことを特徴とする仮想マシンの接続制御方法。
JP2016162975A 2016-08-23 2016-08-23 仮想マシンの接続制御システムおよび仮想マシンの接続制御方法 Active JP6543231B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016162975A JP6543231B2 (ja) 2016-08-23 2016-08-23 仮想マシンの接続制御システムおよび仮想マシンの接続制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016162975A JP6543231B2 (ja) 2016-08-23 2016-08-23 仮想マシンの接続制御システムおよび仮想マシンの接続制御方法

Publications (2)

Publication Number Publication Date
JP2018032156A JP2018032156A (ja) 2018-03-01
JP6543231B2 true JP6543231B2 (ja) 2019-07-10

Family

ID=61304335

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016162975A Active JP6543231B2 (ja) 2016-08-23 2016-08-23 仮想マシンの接続制御システムおよび仮想マシンの接続制御方法

Country Status (1)

Country Link
JP (1) JP6543231B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7272437B2 (ja) * 2019-07-09 2023-05-12 日本電信電話株式会社 Sppサーバ、仮想マシンの接続制御システム、sppサーバの接続制御方法およびプログラム
US12001895B2 (en) 2019-10-08 2024-06-04 Nippon Telegraph And Telephone Corporation Server delay control system, server delay control device, server delay control method, and program
CN118355641A (zh) 2021-12-08 2024-07-16 日本电信电话株式会社 服务器内数据传输装置、服务器内数据传输方法以及程序

Also Published As

Publication number Publication date
JP2018032156A (ja) 2018-03-01

Similar Documents

Publication Publication Date Title
US10698717B2 (en) Accelerator virtualization method and apparatus, and centralized resource manager
WO2014188939A1 (ja) ネットワークの構成及び動作の可視化装置
US11496414B2 (en) Interoperable cloud based media processing using dynamic network interface
CN112015521B (zh) 推理服务的配置方法、装置、电子设备及存储介质
JP6543231B2 (ja) 仮想マシンの接続制御システムおよび仮想マシンの接続制御方法
JPWO2009104400A1 (ja) 情報処理装置、情報処理システム、設定プログラム送信方法及びサーバ設定プログラム
WO2015118875A1 (ja) 仮想ネットワーク機能の最適配置方法、ネットワーク制御装置、ネットワーク管理装置およびネットワークシステム
JP2019511887A (ja) 管理方法および装置
TWI567733B (zh) 計算元件裝拆系統及計算元件裝拆方法
US20160364261A1 (en) Apparatus and method for providing adaptive virtual desktop operating system service
JP7132494B2 (ja) マルチクラウド運用プログラム、およびマルチクラウド運用方法
JPWO2017170312A1 (ja) ネットワークシステム、その管理方法および装置
US20220171650A1 (en) Network system, management method and apparatus thereof, and server
JP6202091B2 (ja) 情報処理装置、及び、配備方法
US20200364073A1 (en) Management apparatus, host apparatus, management method, and program
US8862683B2 (en) KVM switch and KVM system
US20150212834A1 (en) Interoperation method of newtork device performed by computing device including cloud operating system in could environment
CN114270785B (zh) 设定装置、通信***、设定方法以及程序
JPWO2013046595A1 (ja) 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム
CN109962788B (zh) 多控制器调度方法、装置和***及计算机可读存储介质
JP7176080B2 (ja) システムの管理のための方法、非一時的コンピュータ可読媒体およびシステムを管理するように構成された管理装置
JP2019016889A (ja) 管理装置、管理システム、ネットワーク機器設定方法、及びプログラム
JP7437408B2 (ja) 設定装置、通信システム、設定方法、及びプログラム
WO2022254953A1 (ja) 制御システムおよび制御方法
JP6617077B2 (ja) 仮想マシンの接続制御システム、仮想マシンの接続制御方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190531

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: 20190611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190614

R150 Certificate of patent or registration of utility model

Ref document number: 6543231

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150