JP2019028868A - Data-processing function migration system, data processor, data-processing function migration method, and program - Google Patents
Data-processing function migration system, data processor, data-processing function migration method, and program Download PDFInfo
- Publication number
- JP2019028868A JP2019028868A JP2017149849A JP2017149849A JP2019028868A JP 2019028868 A JP2019028868 A JP 2019028868A JP 2017149849 A JP2017149849 A JP 2017149849A JP 2017149849 A JP2017149849 A JP 2017149849A JP 2019028868 A JP2019028868 A JP 2019028868A
- Authority
- JP
- Japan
- Prior art keywords
- data processing
- data
- migration
- flow
- processing device
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、仮想マシンのライブマイグレーションに関連するものである。 The present invention relates to live migration of virtual machines.
近年、これまで物理サーバを用いることでしか実現できなかったアプリケーションの稼働をソフトウェアプラットフォーム上で行う仮想マシン技術が発達している。仮想マシンはソフトウェアにより実現され、仮想マシンを稼働させる環境が存在する物理プラットフォーム上で稼働する。 In recent years, virtual machine technology has been developed for running applications on a software platform that could only be realized using a physical server. The virtual machine is realized by software and operates on a physical platform where an environment for operating the virtual machine exists.
そして、稼働環境を持つサーバが複数存在する場合、仮想マシン内のソフトを稼働させた状態で、仮想マシンを稼働するサーバ(物理サーバ)を別のサーバに変更することができる、という特徴を持つ。このため、仮想マシン内で稼働するアプリケーションを止めることなく、それまで仮想マシンを稼働させていたサーバからバックアップ用のサーバに仮想マシンを移動させることができる。この動作はライブマイグレーションと呼ばれ、サーバの故障時やメンテナンス時にサービスを継続させる手段として用いられる。 And when there are multiple servers with operating environments, the server (physical server) that operates the virtual machine can be changed to another server while the software in the virtual machine is operating. . For this reason, it is possible to move the virtual machine from the server on which the virtual machine has been operated to the backup server without stopping the application running in the virtual machine. This operation is called live migration, and is used as a means for continuing service at the time of server failure or maintenance.
ライブマイグレーションを行う際、仮想マシンはデータの処理を継続する。この際、データの更新が発生する。あるデータのマイグレーションが終了した後、データの更新が生じた場合、移行先の仮想マシンでデータの整合性をとるため、更新後のデータもあわせて移行する必要がある。移行方法には2つの既存方式が存在する。これらはpre−copy方式とpost−copy方式と呼ばれる。 When performing live migration, the virtual machine continues to process data. At this time, data update occurs. When data update occurs after migration of certain data is completed, it is necessary to migrate the updated data together in order to ensure data consistency in the migration destination virtual machine. There are two existing methods for migration. These are called a pre-copy method and a post-copy method.
pre−copy方式は、移行開始時点で移行元サーバに存在する、移行対象の仮想マシンのデータを全て移行した後、移行中に生じた更新データを再送する方式である。データ処理は移行が完了するまで、移行元で行う。そして、移行が完了すると、移行先でのデータ処理を開始する。 The pre-copy method is a method of retransmitting update data generated during migration after migrating all the data of the migration target virtual machine existing in the migration source server at the time of migration start. Data processing is performed at the migration source until the migration is completed. When the migration is completed, data processing at the migration destination is started.
post−copy方式は、仮想マシンを移行先で稼働させるために必要な最低限のデータを送信し、完了後、データ処理を移行先で行う方式である。この方式では、移行先でデータ処理を行うにあたり、移行されていないデータや最新化されていないデータをアクセスする状況が生じる。このとき、アクセス対象のデータの最新版を移行元で稼働する仮想マシンから入手し、データの整合性を保つ。両方式の動作は、非特許文献1に記載されている。
The post-copy method is a method in which the minimum data necessary for operating a virtual machine at the migration destination is transmitted, and data processing is performed at the migration destination after completion. In this method, when data processing is performed at the migration destination, a situation occurs in which data that has not been migrated or data that has not been updated is accessed. At this time, the latest version of the data to be accessed is obtained from the virtual machine running on the migration source, and the data consistency is maintained. Both types of operation are described in
仮想マシンがパケットのデータをトリガーとしてデータ処理を行う場合がある。仮想マシンでルータソフトウェアを実行し、パケット処理を行う場合等がそれに該当する。例えば、ルータがパケットの転送先を決定するとき、パケットヘッダをメモリに書き込み、送信先アドレスを参照し、フォワーディングテーブルをもとに行き先を決定する。このとき、ヘッダの書き込みやフォワーディングテーブルの検索等の処理でメモリに記録されているデータの更新が生じる。 A virtual machine may process data using packet data as a trigger. For example, the router software is executed in a virtual machine and packet processing is performed. For example, when a router determines a packet transfer destination, it writes a packet header in a memory, refers to a transmission destination address, and determines a destination based on a forwarding table. At this time, data recorded in the memory is updated by processing such as writing a header or searching a forwarding table.
データの大容量化や端末数の増加に伴い、処理すべきパケット数は年々増加している。それに伴い、このようなデータ更新の回数は増加し、更新データ量も増加している。このような状況において、既存方式を用いると次のような問題が生じる。 With the increase in data capacity and the number of terminals, the number of packets to be processed is increasing year by year. Accordingly, the number of such data updates has increased, and the amount of update data has also increased. In such a situation, the use of the existing method causes the following problems.
pre−copy方式では、データ更新に伴う更新データの発生スピードがデータの転送スピードを上回る場合、更新データの送信が完了しない。結果、マイグレーションが完了しない、という問題が発生する。 In the pre-copy method, transmission of update data is not completed when the generation speed of update data accompanying data update exceeds the data transfer speed. As a result, there arises a problem that migration is not completed.
post−copy方式では、当該問題の影響は緩和される。しかし、データ処理を移行先で行い、未更新のデータを使用するときに移行元で稼働する仮想マシンから入手するため、更新データが到着するまでパケットを転送できない。処理すべきパケット量が大きい時、この事象のため多くのパケットが未処理のまま仮想マシンに滞留し、バッファあふれが起きる、という問題が生じる。 In the post-copy method, the influence of the problem is mitigated. However, since data processing is performed at the migration destination and unupdated data is used, it is obtained from a virtual machine that operates at the migration source, so that packets cannot be transferred until the updated data arrives. When the amount of packets to be processed is large, a problem arises that due to this event, many packets remain unprocessed in the virtual machine, resulting in buffer overflow.
本発明は上記の点に鑑みてなされたものであり、データ処理機能のライブマイグレーションを行う際に、移行元サーバから移行先サーバへ送信する時間当たりの更新データ量を削減することを可能とする技術を提供することを目的とする。 The present invention has been made in view of the above points, and makes it possible to reduce the amount of update data per hour transmitted from the migration source server to the migration destination server when performing live migration of the data processing function. The purpose is to provide technology.
開示の技術によれば、移行元のデータ処理装置、移行先のデータ処理装置、及びコントローラを備え、前記移行元のデータ処理装置におけるデータ処理機能を、前記移行先のデータ処理装置に移行させるデータ処理機能移行システムであって、
前記移行元のデータ処理装置が、前記データ処理機能のデータを前記移行先のデータ処理装置に送信し、
前記移行元のデータ処理装置が、前記データ処理機能により処理されるフロー群に属する特定のフローを指定し、当該指定されたフローの処理に伴い生じる更新データを前記移行先のデータ処理装置に転送し、
前記コントローラが、前記指定されたフローのパケットが前記移行先のデータ処理装置に到達するようにネットワークの経路を変更する
ことを特徴とするデータ処理機能移行システムが提供される。
According to the disclosed technology, data that includes a migration source data processing device, a migration destination data processing device, and a controller, and that migrates the data processing function in the migration source data processing device to the migration destination data processing device A processing function migration system,
The migration source data processing device transmits the data processing function data to the migration destination data processing device,
The migration source data processing device designates a specific flow belonging to a flow group processed by the data processing function, and transfers update data generated by processing of the designated flow to the migration destination data processing device And
A data processing function migration system is provided in which the controller changes a network path so that the packet of the designated flow reaches the migration destination data processing device.
開示の技術によれば、データ処理機能のライブマイグレーションを行う際に、移行元サーバから移行先サーバへ送信する時間当たりの更新データ量を削減することを可能とする技術が提供される。 According to the disclosed technology, there is provided a technology capable of reducing the amount of update data per time transmitted from the migration source server to the migration destination server when performing live migration of the data processing function.
以下、図面を参照して本発明の実施の形態(本実施の形態)を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。 Hereinafter, an embodiment (this embodiment) of the present invention will be described with reference to the drawings. The embodiment described below is merely an example, and the embodiment to which the present invention is applied is not limited to the following embodiment.
(システム構成)
図1に、本実施の形態におけるシステム構成例を示す。図1に示すように、本実施の形態に係るシステムは、データ処理装置21、22、コントローラ11、フロー識別装置31〜33を有し、これらの装置が通信可能にネットワーク接続されている。なお、図示する各装置の台数は一例に過ぎない。
(System configuration)
FIG. 1 shows a system configuration example according to the present embodiment. As shown in FIG. 1, the system according to the present embodiment includes
図1の上側に示すように、データ処理装置21、22、コントローラ11、フロー識別装置31〜33の間にコントロールプレーンネットワークが設定されている。また、図1の下側に示すように、データ処理装置21、22、コントローラ11、フロー識別装置31〜33の間にデータプレーンネットワークが構築されている。
As shown in the upper side of FIG. 1, a control plane network is set among the
装置間を接続するネットワークには、転送装置が存在し、転送装置に設定される経路情報に基づき、ネットワーク内でパケット転送が行われる。 A transfer device exists in a network connecting devices, and packet transfer is performed in the network based on path information set in the transfer device.
図2に、データ処理装置21の機能構成を示す。なお、各データ処理装置は同様の構成であるため、例としてデータ処理装置21を用いて説明する。
FIG. 2 shows a functional configuration of the
図2に示すように、データ処理装置21は、演算機能40、記録媒体44、入出力インタフェース45を有する。入出力インタフェース45は、ネットワークを介したデータの入出力を行う。記録媒体44はメモリ等でありプログラム、データ等を格納する。
As shown in FIG. 2, the
図2に示すように、演算機能40は、処理機能41、42(データ処理機能と称してもよい)、及び管理機能43を有する。処理機能41(処理機能42も同様)は、データ処理装置21に到着したパケットに伴い生じるデータ処理を実行する。例えば、処理機能41が仮想マシン上のルータソフトウェアである場合において、処理機能41によるデータ処理は、例えば、入力されたパケットのパケットヘッダをメモリ(例:記録媒体44)に書き込み、送信先アドレスを参照し、記録媒体44に格納されているフォワーディングテーブルをもとに行き先を決定する、といった処理である。
As shown in FIG. 2, the
管理機能42は、処理機能41、42が使用するメモリ(記録媒体44)の管理や、処理機能の移行に関する制御を行う。
The
図3に、フロー識別装置31の機能構成を示す。なお、各フロー識別装置は同様の構成であるため、例としてフロー識別装置31を用いて説明する。
FIG. 3 shows a functional configuration of the
フロー識別装置31は、到着したパケットを識別し、そのパケットが属するフローとその出力インタフェースの決定、ならびに該インタフェースへのパケット転送を行う装置である。
The
図3に示すように、フロー識別装置31は、演算機能33、記録媒体36、入出力インタフェース37を有する。入出力インタフェース37は、ネットワークを介したデータの入出力を行う。記録媒体36はメモリ等でありプログラム、データ等を格納する。格納されるデータとして、フローテーブルが含まれる。
As shown in FIG. 3, the
図3に示すように、演算機能33は、パケット識別機能34、及びパケット転送機能35を有する。パケット識別機能34は、到着したパケットを識別する。パケット転送機能35は、パケット識別機能34により識別パケットが属するフローとその出力インタフェースの決定、ならびに該インタフェースへのパケット転送を行う。
As shown in FIG. 3, the
図1に示したコントローラ11は、移行の進捗を管理し、進捗度合いに応じた処理の実行をデータ処理装置、フロー識別装置に指示するとともに、処理機能とフロー識別装置の間の転送経路となるパケットトンネルをネットワーク上に設定する。なお、コントローラ11の機能をデータ処理装置あるいはフロー識別装置が備えてもよい。
The
(ハードウェア構成例)
図1に示した各装置は、物理マシン上で動作する仮想マシン(処理機能は仮想マシン上のソフトウェア)であってもよいし、図1に示した各装置は物理マシンであって、処理機能が物理マシンの中の仮想マシンであってもよいし、その他の構成であってもよい。
(Hardware configuration example)
Each device shown in FIG. 1 may be a virtual machine (processing function is software on a virtual machine) operating on a physical machine, or each device shown in FIG. May be a virtual machine in a physical machine, or other configurations.
いずれの場合でも、各装置(図1に示すデータ処理装置21、22、フロー識別装置31〜33、コントローラ11のそれぞれ)は、コンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、当該装置が有する機能は、コンピュータに内蔵されるCPUやメモリ等のハードウェア資源を用いて、当該装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
In any case, each device (each of the
図4は、本実施の形態における上記装置のハードウェア構成例を示す図である。図4の装置は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、インタフェース装置105、表示装置106、及び入力装置107等を有する。
FIG. 4 is a diagram illustrating a hardware configuration example of the above-described apparatus according to the present embodiment. 4 includes a
当該装置での処理を実現するプログラムは、例えば、CD−ROM又はメモリカード等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
A program for realizing processing in the apparatus is provided by a
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って当該装置に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。
The
(動作概要)
図1に示す構成における処理機能(ここではデータ処理装置21の処理機能41とする)の移行処理の流れの概要を説明する。
(Overview of operation)
An overview of the flow of the migration process of the processing function (here, the
まず、オペレータが、データ処理装置21における処理機能41の移行を決定する。コントローラ11は、フロー識別装置31〜33から移行前の処理機能41へとトラヒックを誘導するためのトンネル経路をネットワークに設定する。同時に、コントローラ11は、移行対象の処理機能41が存在するデータ処理装置21に、移行対象の処理機能41が処理しているトラヒックフローの情報を通知するよう指示する。
First, the operator decides to move the
データ処理装置21において、管理機能43は、移行対象の処理機能41が処理しているトラヒックフローの情報を取得する。次に、管理機能43は情報に記載のあるフローを複数のグループに分割する。管理機能43は、グループ毎にメモリ領域を用意し、フローの処理に必要なデータをメモリ領域に記録する。このとき、あるグループのメモリ領域には、そのグループに属するフローの処理に必要なデータのみを記録する。
In the
メモリ領域への記録の完了後、トラヒックフローのパケット処理に伴うデータの更新、参照先を、フローが属するグループ用のメモリ領域にする。これに伴い、仮想マシン(データ処理装置21)が参照するメモリのアドレスの更新処理が実行される。その後、管理機能43は、トラヒックフローとそのグループの情報をコントローラ11に送信する。
After the recording to the memory area is completed, the data update accompanying the packet processing of the traffic flow and the reference destination are set to the memory area for the group to which the flow belongs. Along with this, update processing of the address of the memory referred to by the virtual machine (data processing device 21) is executed. Thereafter, the
コントローラ11は、データ処理装置21からトラヒックフローの情報を受信すると、該当フローの出力先を最初に設定したトンネルへと切り替えるよう、フロー識別装置31〜33に指示する。このとき、切り替えるフローの情報とトンネルの情報を、フロー識別装置31〜33に通知する。それを受けて、フロー識別装置31〜33はフロー識別を開始し、指示されたフローに属するパケットをトンネルへと出力する。
When receiving the traffic flow information from the
データ処理装置21内の管理機能43は、移行対象の処理機能41のデータを、移行先のデータ処理装置22へと送信する。このときに送信するデータは、処理機能41の実行データの全体、もしくは一部を含む。同時に、移行対象の処理機能41で処理を行うパケットのうち、最初に設定したトンネルを経由せずに処理機能41に到達するものを移行先のデータ処理装置22へと転送するよう、ネットワーク内の転送装置に存在する経路情報を変更する。このため、データ処理装置21は経路変更指示をコントローラ11に送信する。これを受けて、コントローラ11はネットワーク内の転送装置の経路情報を変更する。
The
データ処理装置21、22間のデータ送信完了後、予め設定した方法に基づき1つのフローグループを決定し、その更新データを移行先へと転送する。更新データの移行が完了すると、データ処理装置21は完了したフローグループの情報をコントローラに通知する。同時に、次のフローグループの更新データを移行先へと転送する。コントローラ11はそれを受け、フローグループに属するフローの情報をフロー識別装置31〜33に通知し、フロー識別装置31〜33は、該当するフローを移行前のインタフェースへと出力する。この処理を、全フローグループの更新データを移行し終わるまで繰り返す。
After data transmission between the
上記の一連の処理が終了すると、フロー識別装置31〜33は移行前のインタフェースを介して処理機能41に向かう全てのトラヒックを移行後のデータ処理装置22へ送信することになる。
When the above-described series of processing ends, the
全てのフローグループに対する更新データの移行処理が完了すると、データ処理装置21はコントローラ11に処理機能41の移行が完了したことを示す通知を送信する。同時に移行前の処理機能41に割り当てていたメモリ領域を全て開放する。コントローラ11は通知を受信すると、最初に設定したトンネルを開放する。そして、フロー識別装置31〜33に対し、処理機能41の移行に伴い発生したフロー識別処理を移行前の状態に戻すよう指示を出す。フロー識別装置31〜33は指示を受けて、フロー識別処理を移行前の状態に戻す。
When the update data migration processing for all the flow groups is completed, the
(動作詳細)
以下、上述した一連の処理のより具体的な例を、図5〜図10を参照して説明する。
(Operation details)
Hereinafter, a more specific example of the series of processes described above will be described with reference to FIGS.
ここでは、図5に示すように、コントローラ11、データ処理装置21、22、フロー識別装置31、32による動作例として、データ処理装置21における処理機能41をデータ処理装置22に移行する場合の動作例を説明する。
Here, as shown in FIG. 5, as an operation example by the
図5に示すとおり、データ処理装置21内で処理機能41が稼働しており、フロー51、52が、フロー識別装置31から処理機能41を経由して、フロー識別装置32へと向かっている。処理機能41では、フロー51、52の処理を行う。
As shown in FIG. 5, the
図6に示すように、処理機能41をデータ処理装置21からデータ処理装置22へと移行する際に、まず、オペレータはコントローラ11に移行の指示を送る(S(ステップ)1)。
As shown in FIG. 6, when the
指示を受けたコントローラ11は、ネットワーク(データプレーンネットワーク)にフロー識別装置31、32とデータ処理装置21を結ぶトンネル81を設定する(S2)。図6には、データ処理装置21とフロー識別装置31との間、及び、データ処理装置21とフロー識別装置32との間のそれぞれにおいてトンネル81が設定されたことが示されている。
Upon receiving the instruction, the
同時に、コントローラ11は、処理機能41が存在するデータ処理装置21に、処理機能41が処理しているトラヒックフローの情報を通知するよう指示する(S3)。
At the same time, the
続いて、図7左側に示すように、データ処理装置21は、自身の管理機能43により移行対象の処理機能41が処理しているトラヒックフローの情報を取得する(S4)。図7の左側において、フロー情報は、管理機能43が管理するメモリ領域(例:記録媒体44内の領域)に格納されていることが示されており、当該フロー情報が管理機能43により取得される。また、図7の左側には、管理機能43により管理されるメモリアドレス変換テーブルが示されている。
Subsequently, as shown on the left side of FIG. 7, the
メモリアドレス変換テーブルは、ページテーブルとも呼ばれ、処理機能41(プロセス)が使用する仮想メモリアドレスと、データが格納されるメモリ領域の物理メモリアドレスとの間の変換を行うテーブルである。 The memory address conversion table is also called a page table, and is a table that performs conversion between a virtual memory address used by the processing function 41 (process) and a physical memory address of a memory area in which data is stored.
次に、管理機能43は、取得した情報に記載のあるフロー(ここでは、フロー51とフロー52)を複数のグループに分割する。ここでは、フロー51をグループ61に、フロー52をグループ62へと組み込む。
Next, the
管理機能43は、フローグループ毎にメモリ領域を用意し、フローの処理に必要なデータをメモリ領域に記録する(S5)。ここでは、図7の右側に示すように、フロー51,52それぞれにメモリ領域71、72を割り当て、それぞれのデータを、元のメモリ領域70からコピーする。
The
そして、フロー51に属するパケットの処理をメモリ領域71で、フロー52に属するパケットの処理をメモリ領域72で行うよう、管理機能43がメモリの参照先情報を更新する(S6)。具体的には、図7の右側に示すように、データ処理装置21が有する前述したメモリアドレス変換テーブルのフロー51用のアドレスに、フロー51用のメモリアドレスとしてメモリ領域71のアドレスが記録され、メモリアドレス変換テーブルのフロー52用のアドレスに、フロー52用のメモリアドレスとしてメモリ領域72のアドレスが記録される。処理機能41は、当該メモリアドレス変換テーブルに記録されたメモリアドレスのメモリ領域を用いて、各フローのパケットの処理を行う。そして、データ処理装置21はコントローラ11にフロー51と52の情報を通知する(S7)。
Then, the
また、管理機能43は、同一フローの処理に伴い生じるデータ更新の中でも、移行対象となるデータを記録するメモリ領域を別に割り当てることとしてもよい。例えば、移行しないデータを書き込むための仮想メモリアドレスを用意し、該アドレスでアクセス可能なデータを移行しないデータと見なし、その他のデータを移行するデータと見なす、という方法を用いることができる。この場合、前述したメモリアドレスアドレス変換テーブルにより、移行しないデータは、移行しないデータ用のメモリ領域に記録され、移行するデータは、移行するデータ用のメモリ領域に書き込まれる。移行しないデータの例として、IPSecの暗号化処理やパケットフォワーディング、Deep Packet Inspectionでパケットのペイロードを調査するときに生じる、一時的なデータや計算データなどがある。そして、移行するデータの例としては、NAPTのアドレス変換情報や、サーバへの攻撃パケットの検知をパケットの振る舞いの時系列データで行う場合の時系列データ、そして、IoTのセンサーからのデータを集約してクラウドで処理を行う場合の集約データとデータ提供元センサーの情報などがある。
In addition, the
次に、図8を参照して説明する。コントローラ11は、データ処理装置21からトラヒックフロー51、52の情報を受信すると、これらのフローの識別を開始し、これらのフローの出力先をトンネル81にするよう、フロー識別装置31、32に向けて指示を送信する(S8)。
Next, a description will be given with reference to FIG. When the
通知を受信すると、フロー識別装置31、32はフロー識別を開始し、フロー51、52に属するパケットをトンネル81へと出力する(S9)。図8に示すように、この出力先変更により、フロー識別装置31が受信するフロー51、52のパケットは、トンネル81に出力されてデータ処理装置21に届けられ、フロー識別装置32が受信するフロー51、52のパケットもトンネル81に出力されてデータ処理装置21に届けられる。
When the notification is received, the
出力先の変更が完了すると、フロー識別装置31、32はコントローラ11に出力先の変更完了を通知する(S9)。
When the change of the output destination is completed, the
出力先の変更完了の通知を受信したコントローラ11は、データ処理装置21に、処理機能41の移行準備が完了したことを通知する(S10)。同時に、データ処理装置21に向かっていたフロー51、52のパケットの転送先をデータ処理装置22へと変更するように、コントローラ11は、ネットワーク内の転送装置の経路情報を変更する(S11)。
The
次に、図9を参照して説明する。データ処理装置21内の管理機能43は、処理機能41のデータを移行先のデータ処理装置22に送信する(S12)。ここでは処理機能41のプロセス自身も送信する。データ処理装置21内の管理機能43は、処理機能41のデータを全て移行し終わると、予め設定した方法に基づき1つのフローグループ(複数のフローグループであってもよい)を決定する。そして、決定グループに属するフロー処理で発生した更新データをデータ処理装置22へと送信する(S12)。ここではフロー51が選択されたものとする。その場合、送信するデータはメモリ領域71に記録されたデータのうち、更新されたデータである。
Next, a description will be given with reference to FIG. The
メモリ領域71内の更新データの送信が完了すると、データ処理装置21の管理機能43は、コントローラ11にフロー51の転送先をデータ処理装置22に切り替えるよう通知する(S13)。同時にメモリ領域71を開放する。そして、フロー52用の更新データである、メモリ領域72内の更新データをデータ処理装置22へと送信する(S14)。
When the transmission of the update data in the
コントローラ11は、S13の通知を受信すると、フロー識別装置31、32に、フロー51の出力先をトンネル81から移行前の送信インタフェースへと切り替えるよう通知する(S15)。この通知を受け、フロー識別装置31、32は、フロー51に属するデータを移行前の出力インタフェースへと出力する(S16)。図9において、データ処理装置21とフロー識別装置31、32間の点線で示されるフロー51が、データ処理装置22とフロー識別装置31、32間の実線で示されるフロー51になったことが示されている。
Upon receiving the notification of S13, the
メモリ領域72内の更新データの送信が完了すると、データ処理装置21の管理機能43は、コントローラ11にフロー52の転送先をデータ処理装置22に切り替えるよう通知する。同時にメモリ領域72を開放する。これにより、フロー51と同様に、フロー識別装置31、32は、フロー52に属するデータを移行前の出力インタフェースへと出力する。
When the transmission of the update data in the
次に、図10を参照して説明する。データ処理装置21の管理機能43は、処理機能41の移行が完了すると、コントローラ11に移行が完了したことを示す通知を送信する(S17)。同時に処理機能41のために割り当てていたメモリ領域70を開放する。
Next, a description will be given with reference to FIG. When the migration of the
コントローラ11は、S17の通知を受信すると、トンネル81を開放する(S18)。そして、コントローラ11は、フロー識別装置31、32に、フロー51、52に対して行っていた、移行に伴い生じたフロー識別を終了するよう指示を出す(S19)。この指示を受けて、フロー識別装置31、32は、フロー51、52に対するフロー識別を移行前の状態に戻す(S20)。
Upon receiving the notification of S17, the
また、移行時にメモリ領域71、72に記録していた、フロー51、52のデータに関しては、移行が完了したときに、データ処理装置22内の同一のメモリ領域へと統合する。統合の手法は予め設定されているとする。すなわち、処理機能41のデータ処理装置22への移行により、メモリ領域71、72もデータ処理装置22に移行されるが、データ処理装置22の管理機能が、これらのメモリ領域71、72を1つのメモリ領域に統合する。
The data of the
本実施の形態では、コントローラ11と、フロー識別装置、データ処理装置は別装置としている。しかし、コントローラ11と同等の機能をフロー識別装置、もしくはデータ処理装置が持つこととしてもよい。また、フロー毎のデータ統合方法に関しては、移行後に一括して実行することとしてもよいし、フローの移行毎に統合プロセスを実行することとしてもよい。
In the present embodiment, the
(実施の形態の効果)
以上、説明したように、本実施の形態では、処理機能の移行を行う際、フローの処理に伴い生じた更新データのうち、指定したフローのデータのみを移行先に送信し、送信が完了すると、別に指定したフローの更新データのみを移行先に送信することで、移行時に送信する時間当たりの更新データ量を削減できる。この方法を用いることで、時間当たりの更新データ量がネットワークで移行できる転送データ量を上回るときに、更新データを移行することが可能になり、処理機能を移行することが可能になる。
(Effect of embodiment)
As described above, in the present embodiment, when the processing function is transferred, only the data of the specified flow is transmitted to the transfer destination among the update data generated by the flow processing, and the transmission is completed. By transmitting only the update data of the flow specified separately to the migration destination, the amount of update data per time transmitted at the time of migration can be reduced. By using this method, when the amount of update data per time exceeds the amount of transfer data that can be migrated over the network, it becomes possible to migrate the update data and migrate the processing function.
また、本実施の形態では、フロー毎にデータを記録する領域を分割し、フローの処理に伴い生じるデータ処理はフロー用の領域を用いて行う。これにより、移行対象となるデータをメモリ領域単位で管理することが可能になり、移行データの指定が容易になる。 In this embodiment, an area for recording data is divided for each flow, and data processing that occurs in accordance with the flow processing is performed using the flow area. As a result, data to be migrated can be managed in units of memory areas, and designation of migration data is facilitated.
また、本実施の形態では、同一フローの処理に伴い生じるデータ更新の中でも、移行対象となるデータを記録するメモリ領域を別に割り当てる。これにより、移行対象となるデータをメモリ領域単位で管理することが可能になり、移行データの指定が容易になる。 In the present embodiment, a memory area for recording data to be migrated is allocated separately among data updates that occur during processing of the same flow. As a result, data to be migrated can be managed in units of memory areas, and designation of migration data is facilitated.
(実施の形態のまとめ)
以上、説明したように、本実施の形態において、移行元のデータ処理装置、移行先のデータ処理装置、及びコントローラを備え、前記移行元のデータ処理装置におけるデータ処理機能を、前記移行先のデータ処理装置に移行させるデータ処理機能移行システムであって、
前記移行元のデータ処理装置が、前記データ処理機能のデータを前記移行先のデータ処理装置に送信し、
前記移行元のデータ処理装置が、前記データ処理機能により処理されるフロー群に属する特定のフローを指定し、当該指定されたフローの処理に伴い生じる更新データを前記移行先のデータ処理装置に転送し、
前記コントローラが、前記指定されたフローのパケットが前記移行先のデータ処理装置に到達するようにネットワークの経路を変更する
ことを特徴とするデータ処理機能移行システムが提供される。
(Summary of embodiment)
As described above, in the present embodiment, the migration source data processing device, the migration destination data processing device, and the controller are provided, and the data processing function in the migration source data processing device is set to the migration destination data. A data processing function migration system for migrating to a processing device,
The migration source data processing device transmits the data processing function data to the migration destination data processing device,
The migration source data processing device designates a specific flow belonging to a flow group processed by the data processing function, and transfers update data generated by processing of the designated flow to the migration destination data processing device And
A data processing function migration system is provided in which the controller changes a network path so that the packet of the designated flow reaches the migration destination data processing device.
前記移行元のデータ処理装置は、同一のデータ記録領域を用いて管理していた前記フロー群の情報を、フロー毎のデータ記録領域にコピーし、以降、前記データ処理機能の移行が完了するまで、コピー後のデータ記録領域を用いてデータ処理を行い、前記移行先のデータ処理装置は、前記データ処理機能の移行が完了した後、フロー毎のデータ記録領域に記録されたデータを統合して指定されたデータ記録領域に記録し、以降、当該データ記録領域を用いて前記フロー群のデータ処理を行うこととしてもよい。 The migration source data processing apparatus copies the information of the flow group managed using the same data recording area to the data recording area for each flow, and thereafter the migration of the data processing function is completed. The data processing area after copying is processed, and the migration destination data processing apparatus integrates the data recorded in the data recording area for each flow after the migration of the data processing function is completed. The data may be recorded in a designated data recording area, and thereafter, the data processing of the flow group may be performed using the data recording area.
前記移行元のデータ処理装置は、データ処理に使用するデータ記録領域をフロー毎に備えるとともに、データ処理機能移行時に、前記移行先に移行するデータと移行しないデータとを当該データ記録領域中の別領域に記録し、前記移行先に移行するデータのうち、前記指定されたフローの処理に伴い生じる更新データを移行先に転送することとしてもよい。 The migration source data processing apparatus has a data recording area used for data processing for each flow, and at the time of data processing function migration, the data migrated to the migration destination and the data not migrated are separated from each other in the data recording area. Of the data to be recorded in the area and transferred to the migration destination, update data generated in accordance with the processing of the designated flow may be transferred to the migration destination.
また、本実施の形態において、移行元のデータ処理装置、移行先のデータ処理装置、及びコントローラを備え、前記移行元のデータ処理装置におけるデータ処理機能を、前記移行先のデータ処理装置に移行させるデータ処理機能移行システムにおいて、前記移行元のデータ処理装置として使用されるデータ処理装置であって、
前記データ処理機能のデータを前記移行先のデータ処理装置に送信する手段と、
前記データ処理機能により処理されるフロー群に属する特定のフローを指定し、当該指定されたフローの処理に伴い生じる更新データを前記移行先のデータ処理装置に転送する手段と
を備えることを特徴とするデータ処理装置が提供される。
Further, in the present embodiment, a migration source data processing device, a migration destination data processing device, and a controller are provided, and the data processing function in the migration source data processing device is migrated to the migration destination data processing device. In a data processing function migration system, a data processing device used as the migration source data processing device,
Means for transmitting data of the data processing function to the migration destination data processing device;
Means for designating a specific flow belonging to a flow group to be processed by the data processing function, and transferring update data generated by processing of the designated flow to the migration destination data processing device. A data processing apparatus is provided.
前記データ処理装置は、同一のデータ記録領域を用いて管理していた前記フロー群の情報を、フロー毎のデータ記録領域にコピーし、以降、前記データ処理機能の移行が完了するまで、コピー後のデータ記録領域を用いてデータ処理を行う手段を備えてもよい。 The data processing device copies the information of the flow group managed using the same data recording area to the data recording area for each flow, and thereafter after the copying until the transition of the data processing function is completed. There may be provided means for performing data processing using the data recording area.
前記データ処理装置は、データ処理に使用するデータ記録領域をフロー毎に備えるとともに、データ処理機能移行時に、前記移行先に移行するデータと移行しないデータとを当該データ記録領域中の別領域に記録し、前記移行先に移行するデータのうち、前記指定されたフローの処理に伴い生じる更新データを移行先に転送する手段を備えてもよい。 The data processing apparatus includes a data recording area used for data processing for each flow, and records data to be transferred to the transfer destination and data not to be transferred to different areas in the data recording area when the data processing function is transferred. In the data to be transferred to the transfer destination, there may be provided means for transferring update data generated by the processing of the designated flow to the transfer destination.
また、本実施の形態により、コンピュータを、上記データ処理装置における各手段として機能させるためのプログラムが提供される。 In addition, according to the present embodiment, a program for causing a computer to function as each unit in the data processing apparatus is provided.
以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 Although the present embodiment has been described above, the present invention is not limited to the specific embodiment, and various modifications and changes can be made within the scope of the gist of the present invention described in the claims. Is possible.
11 コントローラ
21、22 データ処理装置
31〜33 フロー識別装置
33 演算機能
34 パケット識別機能
35 パケット転送機能
36 記録媒体
37 入出力インタフェース
40 演算機能
44 記録媒体
45 入出力インタフェース
41、42 処理機能
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
106 表示装置
107 入力装置
11
105
Claims (8)
前記移行元のデータ処理装置が、前記データ処理機能のデータを前記移行先のデータ処理装置に送信し、
前記移行元のデータ処理装置が、前記データ処理機能により処理されるフロー群に属する特定のフローを指定し、当該指定されたフローの処理に伴い生じる更新データを前記移行先のデータ処理装置に転送し、
前記コントローラが、前記指定されたフローのパケットが前記移行先のデータ処理装置に到達するようにネットワークの経路を変更する
ことを特徴とするデータ処理機能移行システム。 A data processing function migration system comprising a migration source data processing device, a migration destination data processing device, and a controller, wherein a data processing function in the migration source data processing device is migrated to the migration destination data processing device. ,
The migration source data processing device transmits the data processing function data to the migration destination data processing device,
The migration source data processing device designates a specific flow belonging to a flow group processed by the data processing function, and transfers update data generated by processing of the designated flow to the migration destination data processing device And
The data processing function migration system, wherein the controller changes a network path so that the packet of the designated flow reaches the migration destination data processing device.
前記移行先のデータ処理装置は、前記データ処理機能の移行が完了した後、フロー毎のデータ記録領域に記録されたデータを統合して指定されたデータ記録領域に記録し、以降、当該データ記録領域を用いて前記フロー群のデータ処理を行う
ことを特徴とする請求項1に記載のデータ処理機能移行システム。 The migration source data processing apparatus copies the information of the flow group managed using the same data recording area to the data recording area for each flow, and thereafter the migration of the data processing function is completed. , Perform data processing using the data recording area after copying,
The migration destination data processing apparatus integrates the data recorded in the data recording area for each flow after the migration of the data processing function is completed, and records the data in the designated data recording area. The data processing function migration system according to claim 1, wherein data processing of the flow group is performed using a region.
データ処理に使用するデータ記録領域をフロー毎に備えるとともに、データ処理機能移行時に、前記移行先に移行するデータと移行しないデータとを当該データ記録領域中の別領域に記録し、前記移行先に移行するデータのうち、前記指定されたフローの処理に伴い生じる更新データを移行先に転送する
ことを特徴とする請求項1又は2に記載のデータ処理機能移行システム。 The migration source data processing device is:
A data recording area used for data processing is provided for each flow, and at the time of data processing function migration, data to be migrated to the migration destination and data to be migrated are recorded in separate areas in the data recording area, and the migration destination 3. The data processing function migration system according to claim 1, wherein, among the data to be migrated, update data generated by the processing of the designated flow is transferred to the migration destination.
前記データ処理機能のデータを前記移行先のデータ処理装置に送信する手段と、
前記データ処理機能により処理されるフロー群に属する特定のフローを指定し、当該指定されたフローの処理に伴い生じる更新データを前記移行先のデータ処理装置に転送する手段と
を備えることを特徴とするデータ処理装置。 A data processing function migration system comprising a migration source data processing device, a migration destination data processing device, and a controller, wherein the data processing function in the migration source data processing device is migrated to the migration destination data processing device, A data processing device used as a migration source data processing device,
Means for transmitting data of the data processing function to the migration destination data processing device;
Means for designating a specific flow belonging to a flow group to be processed by the data processing function, and transferring update data generated by processing of the designated flow to the migration destination data processing device. Data processing device.
を備えることを特徴とする請求項4に記載のデータ処理装置。 The information of the flow group managed using the same data recording area is copied to the data recording area for each flow, and thereafter, the copied data recording area is used until the transition of the data processing function is completed. The data processing apparatus according to claim 4, further comprising: means for performing data processing.
を備えることを特徴とする請求項4又は5に記載のデータ処理装置。 A data recording area used for data processing is provided for each flow, and at the time of data processing function migration, data to be migrated to the migration destination and data to be migrated are recorded in separate areas in the data recording area, and the migration destination The data processing apparatus according to claim 4, further comprising means for transferring update data generated in the process of the designated flow among the data to be transferred to the transfer destination.
前記移行元のデータ処理装置が、前記データ処理機能のデータを前記移行先のデータ処理装置に送信するステップと、
前記移行元のデータ処理装置が、前記データ処理機能により処理されるフロー群に属する特定のフローを指定し、当該指定されたフローの処理に伴い生じる更新データを前記移行先のデータ処理装置に転送するステップと、
前記コントローラが、前記指定されたフローのパケットが前記移行先のデータ処理装置に到達するようにネットワークの経路を変更するステップと
を備えることを特徴とするデータ処理機能移行方法。 A data processing function migration system that includes a migration source data processing device, a migration destination data processing device, and a controller, and that migrates the data processing function in the migration source data processing device to the migration destination data processing device. A data processing function migration method,
The migration source data processing device transmitting the data processing function data to the migration destination data processing device;
The migration source data processing device designates a specific flow belonging to a flow group processed by the data processing function, and transfers update data generated by processing of the designated flow to the migration destination data processing device And steps to
A data processing function transfer method, comprising: a step of changing a network path so that the packet of the designated flow reaches the transfer destination data processing apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017149849A JP2019028868A (en) | 2017-08-02 | 2017-08-02 | Data-processing function migration system, data processor, data-processing function migration method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017149849A JP2019028868A (en) | 2017-08-02 | 2017-08-02 | Data-processing function migration system, data processor, data-processing function migration method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019028868A true JP2019028868A (en) | 2019-02-21 |
Family
ID=65478586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017149849A Pending JP2019028868A (en) | 2017-08-02 | 2017-08-02 | Data-processing function migration system, data processor, data-processing function migration method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019028868A (en) |
-
2017
- 2017-08-02 JP JP2017149849A patent/JP2019028868A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8863138B2 (en) | Application service performance in cloud computing | |
US8327355B2 (en) | Method, computer program product, and hardware product for supporting virtual machine guest migration overcommit | |
US8769040B2 (en) | Service providing system, a virtual machine server, a service providing method, and a program thereof | |
JP4972670B2 (en) | Virtual computer system, access control method thereof, and communication apparatus | |
CN114946166A (en) | Dynamic resource movement in heterogeneous computing environments including cloud edge locations | |
US9256464B2 (en) | Method and apparatus to replicate stateful virtual machines between clouds | |
JP2017518568A (en) | System and method for live migration of virtualized network stack | |
JPWO2016121830A1 (en) | Virtual network function management apparatus, system, healing method and program | |
JP2010033404A (en) | Virtual machine system and method for controlling virtual machine system | |
CN113196237A (en) | Container migration in a computing system | |
JP2010102414A (en) | Virtual system control program, method, and device | |
US11868794B2 (en) | Network system, management method and apparatus thereof, and server | |
JP6345604B2 (en) | COMMUNICATION DEVICE, EXTENDED FUNCTION MOVE METHOD, AND COMMUNICATION SYSTEM | |
JP6319770B2 (en) | Container migration system and method | |
JP6489239B2 (en) | Communication apparatus, system, method, and program | |
JP2014195178A (en) | Information processing device, transmission control method, and transmission control program | |
JP2019028869A (en) | Packet processing function migration system, server, packet processing function migration method, and program | |
JP2019028868A (en) | Data-processing function migration system, data processor, data-processing function migration method, and program | |
JP7251671B2 (en) | NETWORK SYSTEM CONTROL METHOD AND CONTROL DEVICE | |
JP6013980B2 (en) | Address assignment device and address assignment program | |
JP6075882B2 (en) | Distributed processing system and distributed processing method | |
JP6950625B2 (en) | Information processing equipment, control equipment, migration methods and programs | |
JP6254963B2 (en) | Distributed processing system and distributed processing method | |
WO2019042005A1 (en) | Method, device, and system for live migration of virtual machine | |
JP5952229B2 (en) | Management device, route information generation method, and route information generation program |