(57)【要約】【課題】物理マシンの内部に形成された仮想マシンの減設時において、パケットロスの発生を予防すること。【解決手段】パッチコントローラ４は、仮想パスのうちの削除対象ノードの減設を検出すると、仮想パスにおいて削除対象ノードに対して１つ上流側に位置する削除直前ノードと、１つ下流側に位置する削除直後ノードとをそれぞれ抽出し、削除対象ノードが処理中の滞留パケットを削除直後ノードに排出するための迂回パスと、削除直前ノードからの転送パケットを削除直後ノードに流すように接続することで、仮想パスから削除対象ノードを除外した変更後パスとを形成し、迂回パスにおいて滞留パケットを削除直後ノードに排出する処理を、変更後パスにおいて転送パケットを削除直後ノードに転送する処理よりも優先させることを特徴とする。【選択図】図１
2019140444.tif 000002
【特許請求の範囲】
【請求項１】
外部のネットワークとの間でパケットを送受信する物理インタフェースと、内部に構築した複数台の仮想マシンとの間でパケットを転送する仮想パスを形成する物理マシンを制御する機能連携装置であって、
前記機能連携装置は、
前記仮想パスのうちの削除対象ノードの減設を検出すると、前記仮想パスにおいて前記削除対象ノードに対して１つ上流側に位置する削除直前ノードと、１つ下流側に位置する削除直後ノードとをそれぞれ抽出し、
前記削除対象ノードが処理中の滞留パケットを前記削除直後ノードに排出するための迂回パスと、前記削除直前ノードからの転送パケットを前記削除直後ノードに流すように接続することで、前記仮想パスから前記削除対象ノードを除外した変更後パスとを形成し、
前記迂回パスにおいて前記滞留パケットを前記削除直後ノードに排出する処理を、前記変更後パスにおいて前記転送パケットを前記削除直後ノードに転送する処理よりも優先させることを特徴とする
機能連携装置。
【請求項２】
外部のネットワークとの間でパケットを送受信する物理インタフェースと、内部に構築した複数台の仮想マシンとの間で転送部を介してパケットを転送する物理マシンと、その物理マシン内の前記転送部を制御する機能連携装置とを用いる仮想マシン通信システムであって、
前記機能連携装置は、
削除対象ノードとなる前記仮想マシンの減設を検出すると、前記削除対象ノードの上流側に位置する削除直前ノードと、下流側に位置する削除直後ノードとに加えて、前記削除直前ノードから前記削除対象ノードにパケットを転送する削除入力転送部と、前記削除対象ノードから前記削除直後ノードにパケットを転送する削除出力転送部とをそれぞれ抽出し、
前記削除出力転送部は、パケットの出力先を前記削除直後ノードから前記削除入力転送部に切り替え、
前記削除入力転送部は、
パケットの出力先を前記削除対象ノードから前記削除直後ノードに切り替え、
前記削除直前ノードから入力されたパケットを第１の入力用キューに格納するとともに、前記削除出力転送部から入力されたパケットを第２の入力用キューに格納し、
前記削除直後ノードに転送するパケットを読み取る元となる入力用キューについて、前記第２の入力用キューにパケットが存在するときは前記第２の入力用キューから読み取り、前記第２の入力用キューにパケットが存在しないときは前記第１の入力用キューから読み取るように切り替えることを特徴とする
仮想マシン通信システム。
【請求項３】
入力側の前記物理インタフェースと、１つ以上の前記仮想マシンと、前記削除対象ノードの前記仮想マシンと、出力側の前記物理インタフェースとの順にパケットが転送されるように前記転送部が構成されており、
前記削除入力転送部は、パケットの出力先を前記削除対象ノードである前記仮想マシンから、前記削除直後ノードである出力側の前記物理インタフェースに切り替えることを特徴とする
請求項２に記載の仮想マシン通信システム。
【請求項４】
入力側の前記物理インタフェースと、１つ以上の前記仮想マシンと、出力側の前記物理インタフェースとの順にパケットが転送されるように前記転送部が構成されており、
前記削除入力転送部は、パケットの出力先を前記削除対象ノードである前記仮想マシンから、前記削除直後ノードである前記仮想マシンに切り替えることを特徴とする
請求項２に記載の仮想マシン通信システム。
【請求項５】
外部のネットワークとの間でパケットを送受信する物理インタフェースと、内部に構築した複数台の仮想マシンとの間でパケットを転送する仮想パスを形成する物理マシンを制御する機能連携装置による機能連携方法であって、
前記機能連携装置は、
前記仮想パスのうちの削除対象ノードの減設を検出すると、前記仮想パスにおいて前記削除対象ノードに対して１つ上流側に位置する削除直前ノードと、１つ下流側に位置する削除直後ノードとをそれぞれ抽出し、
前記削除対象ノードが処理中の滞留パケットを前記削除直後ノードに排出するための迂回パスと、前記削除直前ノードからの転送パケットを前記削除直後ノードに流すように接続することで、前記仮想パスから前記削除対象ノードを除外した変更後パスとを形成し、
前記迂回パスにおいて前記滞留パケットを前記削除直後ノードに排出する処理を、前記変更後パスにおいて前記転送パケットを前記削除直後ノードに転送する処理よりも優先させることを特徴とする
機能連携方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機能連携装置、仮想マシン通信システム、および、機能連携方法に関する。
【背景技術】
【０００２】
仮想パッチパネル技術は、筐体内の物理ＮＩＣ（Network Interface Card）や仮想マシン間のパッチを動的に繋ぎ変えることで、仮想マシンを機能連携させる技術である。非特許文献１には、特定の転送機能が専用のＣＰＵコアを占有して、仮想マシン間のデータの受け渡しを行う仮想パッチパネル技術が記載されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】小川泰文・中村哲朗・高田直樹・中村宏之、「高速かつ柔軟な仮想マシン間接続を実現するSoft Patch Panelの提案および評価」、信学技報, vol. 116, no. 322, NS2016-116, pp. 85-90, 2016年11月.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来技術の仮想パッチパネルでは、仮想マシンの減設時にパケットロスが発生してしまう。以下、パケットロスの詳細について、図２３〜図２５で説明する。
【０００５】
図２３は、仮想パッチパネル技術が採用された物理マシン９ｚの構成図である。物理マシン９ｚは、仮想マシン１１ｚ，１２ｚと、転送機能２１ｚ〜２３ｚと、物理ＮＩＣ３１ｚ，３２ｚとを有する。
物理ＮＩＣ３１ｚ，３２ｚは、物理マシン９ｚの外部との間でパケットを送受信するインタフェースである。以下では、物理ＮＩＣ３１ｚ，３２ｚを総称して「物理ＮＩＣ３０ｚ」とする。
仮想マシン１１ｚ，１２ｚは、物理マシン９ｚの内部に形成される仮想的な計算機である。以下では、仮想マシン１１ｚ，１２ｚを総称して「仮想マシン１０ｚ」とする。
【０００６】
転送機能２１ｚ〜２３ｚは、物理ＮＩＣ３０ｚと仮想マシン１０ｚとの間の筐体内の通信と、複数の仮想マシン１０ｚ間の筐体内の通信とを転送する機能部である。以下では、転送機能２１ｚ〜２３ｚを総称して「転送機能２０ｚ」とする。各転送機能２０ｚには、楕円の「ｉ」で図示したパケットの入力を受け付ける入力ＩＦ（インタフェース）と、楕円の「ｏ」で図示したパケットの出力先となる出力ＩＦとを有する。
【０００７】
パッチコントローラ４ｚは、各転送機能２０ｚに対して、転送に使用する入力ＩＦおよび出力ＩＦを設定する。これにより、物理ＮＩＣ３０ｚと仮想マシン１０ｚとの間のパッチと、複数の仮想マシン１０ｚ間のパッチとを自由に変更することができる。ただし、これらのＩＦには、以下の前提条件がある。
・同じ転送機能２０ｚが、自身の有する複数の入力ＩＦからそれぞれ別々のパケットを同時に受信できる。しかし、複数の転送機能２０ｚ内の各入力ＩＦは、同じ物理ＮＩＣ３０ｚから同時にパケットを受信できない。
・同じ転送機能２０ｚが、自身の有する複数の出力ＩＦからそれぞれ別々のパケットを同時に送信できる。しかし、複数の転送機能２０ｚ内の各入力ＩＦは、同じ物理ＮＩＣ３０ｚに向けて同時にパケットを送信できない。
【０００８】
図２４は、図２３の物理マシン９ｚに対して、トラフィックのパス（経路）を設定したときの構成図である。太線矢印に示すように、パスは、「物理ＮＩＣ３１ｚ→転送機能２１ｚ→仮想マシン１１ｚ→転送機能２２ｚ→仮想マシン１２ｚ→転送機能２３ｚ→物理ＮＩＣ３２ｚ」の順に設定されていたとする。
このパスに沿って、パケットが、Ｐの後の数字が小さい順に（連番で）流れている。例えば、パケットＰ２は転送機能２３ｚ内に存在し、パケットＰ３，Ｐ４は仮想マシン１２ｚ内に存在しているとする。
【０００９】
図２５は、図２４の状態から仮想マシン１２ｚを減設したときの構成図である。「物理ＮＩＣ３１ｚ→転送機能２１ｚ→仮想マシン１１ｚ→転送機能２２ｚ→物理ＮＩＣ３２ｚ」のように、図２４のパスから「仮想マシン１２ｚ→転送機能２３ｚ」の部分を減設したとする。
このとき、仮想マシン１２ｚや転送機能２３ｚの内部で処理中だった滞留パケットＰ２，Ｐ３，Ｐ４は、物理ＮＩＣ３２ｚに流れずにパケットロスとなってしまう。
【００１０】
そこで、本発明は、物理マシンの内部に形成された仮想マシンの減設時において、パケットロスの発生を予防することを、主な課題とする。
【課題を解決するための手段】
【００１１】
前記課題を解決するために、本発明の機能連携装置は、以下の特徴を有する。
本発明は、外部のネットワークとの間でパケットを送受信する物理インタフェースと、内部に構築した複数台の仮想マシンとの間でパケットを転送する仮想パスを形成する物理マシンを制御する機能連携装置であって、
前記機能連携装置が、
前記仮想パスのうちの削除対象ノードの減設を検出すると、前記仮想パスにおいて前記削除対象ノードに対して１つ上流側に位置する削除直前ノードと、１つ下流側に位置する削除直後ノードとをそれぞれ抽出し、
前記削除対象ノードが処理中の滞留パケットを前記削除直後ノードに排出するための迂回パスと、前記削除直前ノードからの転送パケットを前記削除直後ノードに流すように接続することで、前記仮想パスから前記削除対象ノードを除外した変更後パスとを形成し、
前記迂回パスにおいて前記滞留パケットを前記削除直後ノードに排出する処理を、前記変更後パスにおいて前記転送パケットを前記削除直後ノードに転送する処理よりも優先させることを特徴とする。
【００１２】
これにより、削除対象ノード上の滞留パケットが優先的に迂回パスから削除直後ノードに排出されるので、滞留パケットのパケットロスを予防することができる。
【００１３】
本発明は、外部のネットワークとの間でパケットを送受信する物理インタフェースと、内部に構築した複数台の仮想マシンとの間で転送部を介してパケットを転送する物理マシンと、その物理マシン内の前記転送部を制御する機能連携装置とを用いる仮想マシン通信システムであって、
前記機能連携装置が、
削除対象ノードとなる前記仮想マシンの減設を検出すると、前記削除対象ノードの上流側に位置する削除直前ノードと、下流側に位置する削除直後ノードとに加えて、前記削除直前ノードから前記削除対象ノードにパケットを転送する削除入力転送部と、前記削除対象ノードから前記削除直後ノードにパケットを転送する削除出力転送部とをそれぞれ抽出し、
前記削除出力転送部が、パケットの出力先を前記削除直後ノードから前記削除入力転送部に切り替え、
前記削除入力転送部が、
パケットの出力先を前記削除対象ノードから前記削除直後ノードに切り替え、
前記削除直前ノードから入力されたパケットを第１の入力用キューに格納するとともに、前記削除出力転送部から入力されたパケットを第２の入力用キューに格納し、
前記削除直後ノードに転送するパケットを読み取る元となる入力用キューについて、前記第２の入力用キューにパケットが存在するときは前記第２の入力用キューから読み取り、前記第２の入力用キューにパケットが存在しないときは前記第１の入力用キューから読み取るように切り替えることを特徴とする。
【００１４】
これにより、第２の入力用キュー内に一時的に積まれた削除対象ノード上の滞留パケットが、第１の入力用キューに積まれた転送パケットよりも優先的に削除直後ノードに排出されるので、滞留パケットのパケットロスを予防することができる。
【００１５】
本発明は、入力側の前記物理インタフェースと、１つ以上の前記仮想マシンと、前記削除対象ノードの前記仮想マシンと、出力側の前記物理インタフェースとの順にパケットが転送されるように前記転送部が構成されており、
前記削除入力転送部が、パケットの出力先を前記削除対象ノードである前記仮想マシンから、前記削除直後ノードである出力側の前記物理インタフェースに切り替えることを特徴とする。
【００１６】
これにより、削除対象ノードが出力側の物理インタフェースの周辺に位置する構成において、削除対象ノードを減設した後でも、パケットを適切に出力側の物理インタフェースに流すことができる。
【００１７】
本発明は、入力側の前記物理インタフェースと、１つ以上の前記仮想マシンと、出力側の前記物理インタフェースとの順にパケットが転送されるように前記転送部が構成されており、
前記削除入力転送部が、パケットの出力先を前記削除対象ノードである前記仮想マシンから、前記削除直後ノードである前記仮想マシンに切り替えることを特徴とする。
【００１８】
これにより、削除対象ノードが出力側の物理インタフェースからは遠い位置に存在する構成において、削除対象ノードを減設した後でも、パケットを適切に出力側の物理インタフェースに流すことができる。
【発明の効果】
【００１９】
本発明によれば、物理マシンの内部に形成された仮想マシンの減設時において、パケットロスの発生を予防することができる。
【図面の簡単な説明】
【００２０】
【図１】本実施形態に係わる仮想パッチパネル技術が採用された仮想マシン通信システムの構成図である。
【図２】本実施形態に係わる図１の転送機能の詳細を示す構成図である。
【図３】本実施形態に係わる削除対象ノードが通常パスの終点側に存在していたときの削除前の構成例である。
【図４】本実施形態に係わる削除対象ノードが通常パスの終点側に存在していたときの削除後の構成例である。
【図５】本実施形態に係わる削除対象ノードが通常パスの始点側に存在していたときの削除前の構成例である。
【図６】本実施形態に係わる削除対象ノードが通常パスの始点側に存在していたときの削除後の構成例である。
【図７】本実施形態に係わる削除対象ノードが通常パスの途中側に存在していたときの削除前の構成例である。
【図８】本実施形態に係わる削除対象ノードが通常パスの途中側に存在していたときの削除後の構成例である。
【図９】本実施形態に係わるパスに組み込まれた仮想マシンを減設する第１工程の状態を示す構成例である。
【図１０】本実施形態に係わるパスに組み込まれた仮想マシンを減設する第２工程の状態を示す構成例である。
【図１１】本実施形態に係わるパスに組み込まれた仮想マシンを減設する第３工程の状態を示す構成例である。
【図１２】本実施形態に係わるパスに組み込まれた仮想マシンを減設する第４工程の状態を示す構成例である。
【図１３】本実施形態に係わるパスに組み込まれた仮想マシンを減設する第５工程の状態を示す構成例である。
【図１４】本実施形態に係わるパスに組み込まれた仮想マシンを減設する第６工程の状態を示す構成例である。
【図１５】本実施形態に係わるパスに組み込まれた仮想マシンを減設する第７工程の状態を示す構成例である。
【図１６】本実施形態に係わるパスに組み込まれた仮想マシンを減設する第８工程の状態を示す構成例である。
【図１７】本実施形態に係わる増設された仮想マシンをパスに組み込む第１工程の状態を示す構成例である。
【図１８】本実施形態に係わる増設された仮想マシンをパスに組み込む第２工程の状態を示す構成例である。
【図１９】本実施形態に係わる増設された仮想マシンをパスに組み込む第３工程の状態を示す構成例である。
【図２０】本実施形態に係わる増設された仮想マシンをパスに組み込む第４工程の状態を示す構成例である。
【図２１】本実施形態に係わる増設された仮想マシンをパスに組み込む第５工程の状態を示す構成例である。
【図２２】本実施形態に係わる増設された仮想マシンをパスに組み込む第６工程の状態を示す構成例である。
【図２３】仮想パッチパネル技術が採用された物理マシンの構成図である。
【図２４】図２３の物理マシンに対して、トラフィックのパス（経路）を設定したときの構成図である。
【図２５】図２４の状態から仮想マシンを減設したときの構成図である。
【発明を実施するための形態】
【００２１】
以下、本発明の一実施形態について、図面を参照して詳細に説明する。
【００２２】
図１は、仮想パッチパネル技術が採用された仮想マシン通信システムの構成図である。
仮想マシン通信システムを構成する物理マシン９と、物理マシン９を制御するパッチコントローラ４とは、それぞれＣＰＵ（Central Processing Unit）と、メモリと、ハードディスクなどの記憶手段（記憶部）と、ネットワークインタフェースとを有するコンピュータとして構成される。
このコンピュータは、ＣＰＵが、メモリ上に読み込んだプログラム（アプリケーションや、その略のアプリとも呼ばれる）を実行することにより、各処理部により構成される制御部（制御手段）を動作させる。
【００２３】
図１の物理マシン９は、図２３の物理マシン９ｚと同様に、以下の構成要素を有する。
・物理マシン９の外部との間でパケットを送受信するインタフェースである物理ＮＩＣ３１，３２。以下では、物理ＮＩＣ３１，３２を総称して「物理ＮＩＣ３０」とする。
・物理マシン９の内部に形成される仮想的な計算機である仮想マシン１１，１２。以下では、仮想マシン１１，１２を総称して「仮想マシン１０」とする。
・物理ＮＩＣ３０と仮想マシン１０との間の筐体内の通信と、複数の仮想マシン１０間の筐体内の通信とを転送する機能部である転送機能２１〜２３。以下では、転送機能２１〜２３を総称して「転送機能２０」とする。各転送機能２０には、楕円の「ｉ」で図示したパケットの入力を受け付ける入力ＩＦ（インタフェース）と、楕円の「ｏ」で図示したパケットの出力先となる出力ＩＦとを有する。
・各転送機能２０に対して、転送に使用する入力ＩＦおよび出力ＩＦを設定するパッチコントローラ（機能連携装置）４。
【００２４】
一方、図１の物理マシン９は、図２３の物理マシン９ｚに対して、以下の構成要素が追加されている。
・各転送機能２０に対して、入力ＩＦとは別に、パケットの入力を受け付ける冗長ＩＦ（楕円の「ｖ」で図示）。
・各転送機能２０に対して、パケットの入力を受け付ける（刈り取る）先を、入力ＩＦおよび冗長ＩＦのいずれかにするかを切り替える系切替部２１１，２２１，２３１（以下では「系切替部２００」と総称する）。
・パッチコントローラ４に対して、仮想マシン１０の増設および減設を検出するとともに、仮想マシン１０の減設時のパケットロスを予防するための通信路（迂回パス）を形成するように、各転送機能２０を制御する機能増減判定部４１。
【００２５】
図２は、図１の転送機能２１の詳細を示す構成図である。
符号１０１は、系切替部２１１による切り替えが行われていない通常時の（切替オフの）パケットの通信路を示す。入力ＩＦから入力されるパケットは、順に入力ＩＦの入力キュー２１２（第１の入力用キュー）に格納される。系切替部２１１は、入力キュー２１２からパケットを刈り取り、出力ＩＦに転送するようにパケットの通信路を設定している。
符号１０２は、系切替部２１１による切替が行われている仮想マシン１０の減設時の（切替オンの）パケットの通信路を示す。冗長ＩＦから入力されるパケットは、順に冗長ＩＦの冗長キュー２１３（第２の入力用キュー）に格納される。系切替部２１１は、冗長キュー２１３からパケットを刈り取り、出力ＩＦに転送するようにパケットの通信路を設定している。
【００２６】
以下、図３〜図８を参照して、仮想マシン１０の減設時にパッチコントローラ４が設定する通信路（迂回パス）を説明する。この説明のために、本明細書では、以下の用語を定義する。
「仮想パス」は、物理マシン９に受信され、物理マシン９の筐体内を通過し、物理マシン９から送信されるまでのパケットの通信路である。なお、１本の論理的なパスは、例えば、仮想パッチパネル技術を採用することにより、隣接するＩＦ間の通信路（パッチ）を順に接続することで形成される。仮想パスの状態は、通常パス、迂回パス、変更後パスである。
・「通常パス」は、通常時に（仮想マシン１０の減設前または増設前に）おけるパスの状態である。
・「迂回パス」は、仮想マシン１０の減設中に、滞留パケットを優先的に排出されるために一時的に形成されるパスである。なお、仮想マシン１０の増設中には迂回パスは用いない。
・「変更後パス」は、仮想マシン１０の変更後（減設後または増設後）のパスの状態である。
【００２７】
「ノード」とは、物理マシン９内部のパスを構成するネットワーク上の点であり、仮想マシン１０または物理ＮＩＣ３０である。以下、仮想マシン１０の減設処理に着目して、削除対象ノード、削除直前ノード、削除直後ノードを定義する。
・「削除対象ノード」は、機能増減判定部４１により減設されると判定された仮想マシン１２である。
・「削除直前ノード」は、削除対象ノードからみて、通常パスのすぐ上流側（直前）に位置するノードである。つまり、削除対象ノードと削除直前ノードとの間は、１つの転送機能２０により中継されている。
・「削除直後ノード」は、削除対象ノードからみて、通常パスのすぐ下流側（直後）に位置するノードである。つまり、削除対象ノードと削除直後ノードとの間は、１つの転送機能２０により中継されている。
【００２８】
転送機能２０（転送部）は、接続するノード間でパケットを転送する。なお、削除対象ノードに直接接続されている転送機能２０を、機能増減判定部４１からの指示対象として以下のように定義する。
・「削除入力転送機能（削除入力転送部）」は、削除対象ノードにパケットを入力する転送機能２０である。つまり、削除入力転送機能は、削除直前ノードからのパケットを削除対象ノードに転送する。
・「削除出力転送機能（削除出力転送部）」は、削除対象ノードがパケットを出力する先となる転送機能２０である。つまり、削除出力転送機能は、削除対象ノードからのパケットを削除直後ノードに転送する。
【００２９】
図３，図４は、削除対象ノードが通常パスの終点側に存在していたときの構成例である。この構成例を定義した用語に当てはめると、以下のようになる。
・「削除対象ノード」は、図３の×印で記載される仮想マシン１２であり、「削除直前ノード」は、仮想マシン１１であり、「削除直後ノード」は、物理ＮＩＣ３２である。
・「削除入力転送機能」は、転送機能２２であり、「削除出力転送機能」は、転送機能２３である。
・「通常パス」は、図３の太線矢印で記載される「物理ＮＩＣ３１→仮想マシン１１→仮想マシン１２→物理ＮＩＣ３２」の順に形成されるパスである。
・「迂回パス」は、図４の細線矢印で記載される「仮想マシン１２→転送機能２３→転送機能２２」の順に形成されるパスである。
・「変更後パス」は、図４の太線矢印で記載される「物理ＮＩＣ３１→仮想マシン１１→物理ＮＩＣ３２」の順に形成されるパスである。
【００３０】
図５，図６は、削除対象ノードが通常パスの始点側に存在していたときの構成例である。この構成例を定義した用語に当てはめると、以下のようになる。
・「削除対象ノード」は、図５の×印で記載される仮想マシン１１であり、「削除直前ノード」は、物理ＮＩＣ３１であり、「削除直後ノード」は、仮想マシン１２である。
・「削除入力転送機能」は、転送機能２１であり、「削除出力転送機能」は、転送機能２２である。
・「通常パス」は、図５の太線矢印で記載される「物理ＮＩＣ３１→仮想マシン１１→仮想マシン１２→物理ＮＩＣ３２」の順に形成されるパスである。
・「迂回パス」は、図６の細線矢印で記載される「仮想マシン１１→転送機能２２→転送機能２１」の順に形成されるパスである。
・「変更後パス」は、図６の太線矢印で記載される「物理ＮＩＣ３１→仮想マシン１２→物理ＮＩＣ３２」の順に形成されるパスである。
【００３１】
図７，図８は、削除対象ノードが通常パスの途中側に存在していたときの構成例である。この構成例を定義した用語に当てはめると、以下のようになる。
・「削除対象ノード」は、図７の×印で記載される仮想マシン１２であり、「削除直前ノード」は、仮想マシン１１であり、「削除直後ノード」は、仮想マシン１３である。
・「削除入力転送機能」は、転送機能２２であり、「削除出力転送機能」は、転送機能２３である。
・「通常パス」は、図７の太線矢印で記載される「物理ＮＩＣ３１→仮想マシン１１→仮想マシン１２→仮想マシン１３→物理ＮＩＣ３２」の順に形成されるパスである。
・「迂回パス」は、図８の細線矢印で記載される「仮想マシン１２→転送機能２３→転送機能２２」の順に形成されるパスである。
・「変更後パス」は、図８の太線矢印で記載される「物理ＮＩＣ３１→仮想マシン１１→仮想マシン１３→物理ＮＩＣ３２」の順に形成されるパスである。
【００３２】
以上説明した通常パス内の削除対象ノードの位置による３つのバリエーション（終点側、始点側、および、途中側）において、パッチコントローラ４が指示する以下の（手順１）〜（手順５）のパス切替処理を共通して用いることができる。
（手順１）機能増減判定部４１は、通常パス「削除直前ノード→削除入力転送機能→削除対象ノード→削除出力転送機能→削除直後ノード」の中から削除対象ノードを検出する。そして、機能増減判定部４１は、削除直前ノード、削除入力転送機能、削除対象ノード、削除出力転送機能、削除直後ノードをそれぞれ抽出する。
【００３３】
（手順２）機能増減判定部４１は、第１の減設時命令を削除出力転送機能に対して送信する。第１の減設時命令に従って、削除出力転送機能は、通常パスの一部を、迂回パス「削除対象ノード→削除出力転送機能→削除入力転送機能」に変更する。つまり、削除出力転送機能の系切替部２００は、自身の出力を通常パス（削除直後ノード）から迂回パス（削除入力転送機能の冗長ＩＦ）に切り替える。
【００３４】
（手順３）機能増減判定部４１は、第２の減設時命令を削除入力転送機能に対して送信する。第２の減設時命令に従って、削除入力転送機能は、通常パスから削除対象ノードを離脱させることで、「削除直前ノード→削除入力転送機能→削除直後ノード」の変更後パスに変更される。この状態では、削除入力転送機能は、迂回パスからの入力と、変更後パスからの入力とが共存している。
【００３５】
（手順４）削除入力転送機能は、第２の減設時命令に従って、迂回パス内の滞留パケットを、削除直前ノードから入力される転送パケットよりも優先して変更後パスの出力側に流す。つまり、迂回パスから入力される滞留パケットが冗長ＩＦのキュー（図２の冗長キュー２１３）に存在するうちは、迂回パス「削除対象ノード→削除出力転送機能→削除入力転送機能」から滞留パケットを刈り取って、変更後パスの出力側（削除直後ノード）に転送する。これにより、滞留パケットが冗長ＩＦを介して適切に迂回されることで、仮想マシンの減設中におけるパケットロスを予防できる。
【００３６】
（手順５）そして、迂回パスからの滞留パケットが冗長ＩＦのキューから無くなった後は、削除入力転送機能は、変更後パスを有効化することで、削除直前ノードから入力ＩＦのキュー（図２の入力キュー２１２）に積まれた転送パケットを刈り取って、削除直後ノードに転送する。また、迂回パス内の滞留パケットが無くなったことで役割を終えた迂回パスを削除してもよい。つまり、削除出力転送機能を停止させるとともに、削除対象ノードを削除する。
【００３７】
以下、（手順１）〜（手順５）に示すパス切替処理を、削除対象ノードが通常パスの終点側に存在していた場合（図３，図４）に適用したときの詳細について、図９以降で説明する。
まず、機能増減判定部４１は、図３の通常パス「物理ＮＩＣ３１→仮想マシン１１→仮想マシン１２→物理ＮＩＣ３２」から、×印の削除対象ノード（＝仮想マシン１２）の直前の転送機能２２と、仮想マシン１２の直後の転送機能２３とをそれぞれ抽出する（手順１）。
【００３８】
図９では、転送機能２３内の系切替部２３１は、転送機能２３の出力先を物理ＮＩＣ３２から転送機能２２の冗長ＩＦに変更する（手順２）。これにより、転送機能２３内の滞留パケットＰ２と、仮想マシン１２内の滞留パケットＰ３，Ｐ４とが順に、冗長ＩＦのキューに積まれる（図１０）。
図１１では、転送機能２２内の系切替部２２１は、転送機能２２の出力ＩＦを仮想マシン１２から物理ＮＩＣ３２に変更する（手順３）。これにより、転送機能２２内の転送パケットＰ５は、減設中に仮想マシン１２には流入せず、物理ＮＩＣ３２から外部に転送される（図１２）。
図１３では、転送機能２２内の系切替部２２１は、転送機能２２のパケットを刈り込む元を入力ＩＦから冗長ＩＦに変更することで、切替オンにする（手順４）。これにより、転送機能２２の冗長ＩＦのキュー内の滞留パケットＰ２，Ｐ３，Ｐ４は、物理ＮＩＣ３２から外部に転送される（図１４）。
【００３９】
図１５では、転送機能２２内の系切替部２２１は、転送機能２２のパケットを刈り込む元を、待ちキューが０になった冗長ＩＦから入力ＩＦに変更することで、切替オフにする（手順５）。これにより、転送機能２２の入力ＩＦを介して入力される後続の転送パケットＰ６，Ｐ７，Ｐ８，Ｐ９が、物理ＮＩＣ３２から外部に転送される（図１６）。
そして、パッチコントローラ４は、転送機能２２から自身の入力ＩＦからの刈り取りを再開した旨の通知（切替オフの通知）を受け、トラフィックのパスの範囲外となり使用されなくなった転送機能２３を停止する。また、仮想マシン１２は、例えば、ユーザによって手動で停止される。
【００４０】
以上説明したように、削除対象ノードの周辺に迂回パスを設け、その迂回パスから滞留パケットを適切に排出することで、削除対象ノード周辺のパケットロスを予防できる。一方、図１７からは、仮想マシンの増設処理の詳細を説明する。
【００４１】
図１７は、仮想マシン１２がユーザによって手動で増設された直後の状態である。このままでは仮想マシン１２は他のノードと通信できないので、通常パスに組み込む必要がある。
パッチコントローラ４は、仮想マシン１２の増設により、図１８の通常パス「物理ＮＩＣ３１→仮想マシン１１→物理ＮＩＣ３２」から、図２４の変更後パス「物理ＮＩＣ３１→仮想マシン１１→仮想マシン１２→物理ＮＩＣ３２」に変更する指示を管理者などから受け付ける。
パッチコントローラ４は、通常パス上で仮想マシン１２の直前に位置する転送機能２２に第１の増設時命令を送信し、通常パス上で仮想マシン１２の直後に位置する転送機能２３に第２の増設時命令を送信する。
【００４２】
図１９では、第１の増設時命令により転送機能２２の出力先を物理ＮＩＣ３２から仮想マシン１２に変更する。これにより、転送機能２２の入力ＩＦから刈り取ったパケットＰ２が仮想マシン１２に転送されるので、仮想マシン１２が変更後パスに組み込まれる（図２０）。同様に、転送機能２２は、後続のパケットＰ３も、入力ＩＦから刈り取る。
【００４３】
図２１では、第２の増設時命令により起動された転送機能２３は、自身の入力元を仮想マシン１２に設定し、自身の出力先を物理ＮＩＣ３２に設定する。これにより、仮想マシン１２が処理したパケットＰ２，Ｐ３，…は、順に転送機能２３を介して物理ＮＩＣ３２から外部に転送される（図２２）。
このように、増設時は仮想マシン滞留によるパケットロスが発生しないため、冗長ＩＦを使用しなくて済む。
【００４４】
以上説明したように、本実施形態では、パッチコントローラ４内の機能増減判定部４１が仮想マシン１０の減設箇所を特定し、その減設箇所付近の各転送機能２０に対して、削除対象ノード内のパケットを排出する迂回パスと、削除対象ノードを切り離した変更後パスとを形成するように制御する。
そして、各転送機能２０は、通常パス上のパケットよりも優先して迂回パス上のパケットを冗長キュー２１３経由で下流側に流すように系切替部２００を動作させることで、削除対象ノード内のパケットを効率的に転送し、パケットロスを予防することができる。つまり、効率的に仮想マシンを減設することができる。
【００４５】
なお、本実施形態においては、本発明に係る物理マシン９の内部構成として、図１に示す２台の仮想マシン１０と、３つの転送機能２０と、２つの物理ＮＩＣ３０とで説明したが、これらの個数や構成に限定されない。また、本発明では、一般的なコンピュータのハードウェア資源を、パッチコントローラ４の各手段として動作させるプログラムによって実現することができる。そして、このプログラムは、通信回線を介して配布したり、ＣＤ−ＲＯＭ等の記録媒体に記録して配布したりすることも可能である。
【符号の説明】
【００４６】
４      パッチコントローラ（機能連携装置）
９      物理マシン
１１〜１３（１０）  仮想マシン
２１〜２４（２０）  転送機能（転送部）
３１，３２（３０）  物理ＮＩＣ（物理インタフェース）
４１    機能増減判定部
２１１  系切替部
２２１  系切替部
２３１  系切替部
【図１】
2019140444.tif 000003
【図２】
2019140444.tif 000004
【図３】
2019140444.tif 000005
【図４】
2019140444.tif 000006
【図５】
2019140444.tif 000007
【図６】
2019140444.tif 000008
【図７】
2019140444.tif 000009
【図８】
2019140444.tif 000010
【図９】
2019140444.tif 000011
【図１０】
2019140444.tif 000012
【図１１】
2019140444.tif 000013
【図１２】
2019140444.tif 000014
【図１３】
2019140444.tif 000015
【図１４】
2019140444.tif 000016
【図１５】
2019140444.tif 000017
【図１６】
2019140444.tif 000018
【図１７】
2019140444.tif 000019
【図１８】
2019140444.tif 000020
【図１９】
2019140444.tif 000021
【図２０】
2019140444.tif 000022
【図２１】
2019140444.tif 000023
【図２２】
2019140444.tif 000024
【図２３】
2019140444.tif 000025
【図２４】
2019140444.tif 000026
【図２５】
2019140444.tif 000027