JP7198102B2 - 処理装置及び移動方法 - Google Patents

処理装置及び移動方法 Download PDF

Info

Publication number
JP7198102B2
JP7198102B2 JP2019017483A JP2019017483A JP7198102B2 JP 7198102 B2 JP7198102 B2 JP 7198102B2 JP 2019017483 A JP2019017483 A JP 2019017483A JP 2019017483 A JP2019017483 A JP 2019017483A JP 7198102 B2 JP7198102 B2 JP 7198102B2
Authority
JP
Japan
Prior art keywords
input
processing
data
unit
flow
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
JP2019017483A
Other languages
English (en)
Other versions
JP2020127097A (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 JP2019017483A priority Critical patent/JP7198102B2/ja
Priority to PCT/JP2020/001452 priority patent/WO2020158444A1/ja
Priority to US17/424,676 priority patent/US11632319B2/en
Publication of JP2020127097A publication Critical patent/JP2020127097A/ja
Application granted granted Critical
Publication of JP7198102B2 publication Critical patent/JP7198102B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • H04L41/0897Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities by horizontal or vertical scaling of resources, or by migrating entities, e.g. virtual resources or entities
    • 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/22Traffic shaping
    • 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/28Flow control; Congestion control in relation to timing considerations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、処理装置及び移動方法に関する。
近年、ネットワーク機能仮想化技術が普及しつつある。ネットワーク機能仮想化技術では、仮想マシン内に実装されたネットワーク機能を用いてパケット処理が行われる。また、このような機能が仮想化されたシステムにおいては、稼働中の機能を別サーバに移動させ、引き続きパケット処理を行わせることができる。
機能を別のサーバに移動させ処理を引き継がせる場合、移動後に仮想マシンをクラッシュさせないために、移動前後のサーバで仮想マシンのバイナリレベルでの同期が必要になる。一方で、仮想マシンはパケット処理中に絶えずデータを更新する。このため、完全同期を達成するためにはこのような更新され続けるデータも同期する必要がある。
ここで、仮想マシンによるデータの更新スピードは速く、同期するデータをネットワーク帯域を使用して転送し終わった時点で、データの更新によりすでに送信したデータとは異なるデータが記録されている。よって、完全同期を達成するためには仮想マシンを停止させ、データ更新を起こさないようにする必要がある。この間、停止中の仮想マシンが処理していたパケットは、仮想マシンの同期が終了しパケット処理を再開するまでドロップされパケットロスが生じる。
これに対し、パケットロスを抑えるために、発生する同期データのうち大半のデータの発生レートが同期に使用するネットワーク帯域より小さい場合、停止中に転送するデータ量を減らす技術が提案されている(例えば、非特許文献1を参照)。
C. Clark, "Live Migration of Virtual Machines," Proceedings of the 2nd Conference on Symposium on Networked Systems Design & Implementation ,2005
しかしながら、従来の技術には、パケットロスによるサービスへの悪影響が大きい場合があるという問題がある。ここで、パケット処理にともなうデータ更新頻度はパケット量に比例して多くなる傾向がある。また、現状のネットワーク技術では、同期用のネットワーク帯域が不足し、完全同期を行うことができない状況が多く発生する。この場合、従来の技術では、移動開始時点から仮想マシンを停止せざるを得ない。その間、パケットロスが生じる。
例えば、ゲームやビデオ会議等のリアルタイム性を要するアプリケーションが使用するフローでは、長いパケットロス時間は操作コマンドのミスや画像音声の劣化という形で利用者に認知される。このため、サービス移動開始時点から仮想マシンを停止させた場合、このようなリアルタイム性を要するアプリケーションを用いたサービスに悪影響が生じる。
上述した課題を解決し、目的を達成するために、処理装置は、入力された入力データを処理し、同期対象の装置へ所定の帯域で転送される出力データを出力する処理部と、前記処理部によって出力される前記出力データの出力レートを計測する計測部と、前記計測部による計測結果に基づき、前記入力データの種別ごとにあらかじめ設定された条件が満たされ、かつ前記出力データの出力レートが前記帯域を下回るように、前記処理部への前記入力データの入力を制御する入力制御部と、を有することを特徴とする。
本発明によれば、パケットロスによるサービスへの悪影響を低減することができる。
図1は、第1の実施形態に係るソフトウェア移動システムの構成の一例を示す図である。 図2は、第1の実施形態に係る処理装置の構成の一例を示す図である。 図3は、第1の実施形態に係る計算装置の構成の一例を示す図である。 図4は、フロー管理テーブルの一例を示す図である。 図5は、ソフトウェア移動システムによる処理全体の流れを説明するための図である。 図6は、入力レートと発生レートの相関について説明するための図である。 図7は、ポリシングについて説明するための図である。 図8は、シェーピングについて説明するための図である。 図9は、第1の実施形態に係るソフトウェア移動システムの処理の流れを示すフローチャートである。 図10は、第1の実施形態に係る計算処理装置の計算処理の流れを示すフローチャートである。 図11は、第2の実施形態に係る疑似処理装置の構成の一例を示す図である。 図12は、移動プログラムを実行するコンピュータの一例を示す図である。
以下に、本願に係る処理装置及び移動方法の実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
[第1の実施形態の構成]
まず、図1を用いて、ソフトウェア移動システムの構成について説明する。図1に示すように、ソフトウェア移動システム1は、処理装置10及び計算装置20を有する。また、処理装置10は、入力制御部121、処理部122及びレート計測部124を有する。また、計算装置20は、管理部221及び計算部222を有する。なお、各部の詳細については、後に各装置の構成とともに説明する。
ここで、処理装置10は、サービスを提供するためのアプリケーションを実行する。ここでのサービスには、ゲーム、ビデオ会議、Webサイト、テキストメッセージ配信等が含まれる。処理装置10は、種々のデータの入力を受け付け、入力されたデータを処理し、出力データを出力する。
また、ソフトウェア移動システム1は、処理装置10の機能を他の装置に引き継がせるためのシステムである。引き継ぎのために処理装置10から同期対象の装置にデータを転送している間も、処理部122は出力データを出力し続ける。このため、データの転送中は処理部122のデータの出力を制御する必要がある。
そこで、入力制御部121は、入力データの処理部122への入力を制御することで、処理部122による出力データの出力を制御する。一方で、出力データの種別によっては、処理部122の出力データに制限をかけることが望ましくない場合がある。例えば、ゲームやビデオ会議等のリアルタイム性が求められるサービスに関する出力データには、なるべく制限をかけないほうが望ましい。一方で、ファイル転送やメール配信等のリアルタイム性が求められないサービスに関する出力データには、多少の制限は許容されることが考えられる。そこで、入力制御部121は、データの種別によって制御の方法を変化させることができる。
図1の例では、例えば、入力制御部121は、優先度が高いデータをそのまま処理部122へ入力し、優先度が中くらいのデータには一部破棄及びタイミングの遅延等により制限をかけて処理部122へ入力し、優先度が低いデータを破棄する。
次に、図2を用いて、第1の実施形態に係る処理装置の構成について説明する。図2は、第1の実施形態に係る処理装置の構成の一例を示す図である。図2に示すように、処理装置10は、入出力インタフェース11、制御部12及び記憶部13を有する。
入出力インタフェース11は、データの入力及び出力のためのインタフェースである。例えば、入出力インタフェース11はNIC(Network Interface Card)である。また、入出力インタフェース11は、例えばマウスやキーボード等の入力装置であってもよい。
制御部12は、処理装置10全体を制御する。制御部12は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等の電子回路や、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の集積回路である。また、制御部12は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部12は、各種のプログラムを実行する。例えば、制御部12は、入力制御部121、処理部122、フロー計測部123、レート計測部124及び解析部125を有する。
入力制御部121は、入力制御ポリシーに従い、処理部122への入力データの入力を制御する。また、入力制御ポリシーは、計算装置20によって計算される。計算装置20は、後述するレート計測部124による計測結果に基づき、入力データの種別ごとにあらかじめ設定された条件が満たされ、かつ出力データの発生レートが帯域を下回るように、入力制御ポリシーを計算する。これは、発生レートが同期用の帯域を上回った場合、未同期の出力が増加し続け、同期が完了しないためである。
処理部122は、入力された入力データを処理し、同期対象の装置へ所定の帯域で転送される出力データを出力する。入力データは、データパケットであってもよいし、データパケットが送受信されるレイヤよりも低いレイヤや、HTTP(Hypertext Transfer Protocol)やMQTT(Message Queuing Telemetry Transport)等の高位レイヤを介して装置間でやり取りされる所定の信号やメッセージであってもよい。本実施形態では、入力データがデータパケットであるものとする。また、以降の説明では、データパケットを単にパケットと呼ぶ場合がある。
また、同期対象の装置では、処理部122と等価の構成が再現されることになる。このため、処理部122は、移動対象のアプリケーション、移動対象のソフトウェア等ということができる。
フロー計測部123は、処理部122に入力される入力データのレートを計測する。例えば、フロー計測部123は、入力データのレートとして、ビットレート及び単位時間当たりのパケット数等を計測する。
レート計測部124は、処理部122によって出力される出力データの発生レートを計測する。例えば、レート計測部124は、発生レートとして、処理部122の出力に対するメモリページの単位時間当たりの増加量を計測する。
解析部125は、フロー計測部123による計測結果及びレート計測部124による計測結果を基に、入力データの種別ごとの発生レートを計算する。例えば、入力データがパケットである場合、種別はフローである。つまり、解析部125は、フローごとの、処理部122から出力される出力データの発生レートを計算する。また、各計測結果に基づく解析部125による解析結果は、計算装置20に受け渡される。
記憶部13は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置である。なお、記憶部13は、RAM(Random Access Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)等のデータを書き換え可能な半導体メモリであってもよい。
記憶部13は、処理装置10で実行されるOS(Operating System)や各種プログラム、及びプログラムの実行で用いられる各種情報をプログラム情報131として記憶する。また、記憶部13は作業用メモリ132を有する。
作業用メモリ132には、処理部122から出力される出力データが書き込まれる。また、同期の際には、プログラム情報131に含まれるデータのうちの処理部122を構成するためのデータ、及び作業用メモリ132に書き込まれた出力データが同期対象の装置に転送される。
ここで、図3を用いて、第1の実施形態に係る計算装置の構成について説明する。図3は、第1の実施形態に係る計算装置の構成の一例を示す図である。図3に示すように、計算装置20は、入出力インタフェース21、制御部22及び記憶部23を有する。
入出力インタフェース21は、データの入力及び出力のためのインタフェースである。例えば、入出力インタフェース21はNICである。また、入出力インタフェース21は、例えばマウスやキーボード等の入力装置であってもよい。例えば、入出力インタフェース21によれば、計算装置20は、処理装置10との間でデータのやり取りを行うことができる。
制御部22は、計算装置20全体を制御する。制御部22は、例えば、CPU、MPU等の電子回路や、ASIC、FPGA等の集積回路である。また、制御部22は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部22は、各種のプログラムを実行する。例えば、制御部22は、管理部221及び計算部222を有する。
管理部221は、後述するフロー管理テーブル232の管理を行う。具体的には、管理部221は、自動的に又はユーザの操作に応じて、フロー管理テーブル232の各レコードの登録、削除、更新等を行う。
計算部222は、処理装置10から受け取った発生レート及びフロー管理テーブル232の情報を基に、入力制御ポリシーを計算する。また、計算部222は、計算した入力制御ポリシーを処理装置10に通知する。
記憶部23は、HDD、SSD、光ディスク等の記憶装置である。なお、記憶部23は、RAM、フラッシュメモリ、NVSRAM等のデータを書き換え可能な半導体メモリであってもよい。
記憶部23は、計算装置20で実行されるOSや各種プログラム、及びプログラムの実行で用いられる各種情報をプログラム情報231として記憶する。また、記憶部23はフロー管理テーブル232を有する。
図4を用いて、フロー管理テーブルについて説明する。図4は、フロー管理テーブルの一例を示す図である。図4に示すように、フロー管理テーブル232には、入力制御ポリシーに関する情報がフロー単位で規定されている。ここで、フローは、入力データの種別の一例である。フローは、例えば、送信元IPアドレス、送信元ポート、宛先IPアドレス、宛先ポート等が一致するパケットの集合である。
また、図4に示すように、入力制御ポリシーに関する情報には、優先度、ドロップ率、送信帯域等が含まれる。例えば、優先度は、「高」、「中」、「低」のいずれかであり、関連するサービスのリアルタイム性等によりあらかじめ決定される。また、ドロップ率及び送信帯域は、後述入力制御のための各手法を実行する際に必要な情報である。
図4の例では、例えば、送信元IPアドレスが「192.0.2.11」、送信元ポートが「8080」、送信元IPアドレスが「192.0.2.21」であるフローの優先度は「高」である。また、例えば、送信元IPアドレスが「192.0.2.13」であるフローの優先度は「低」であり、ドロップ率は「0.4」、送信帯域は「1」である。なお、ドロップ率及び送信帯域は、入力データの種別ごとにあらかじめ設定された条件の一例である。
図5を用いて、ソフトウェア移動システム1による処理全体の流れを説明する。図5は、ソフトウェア移動システムによる処理全体の流れを説明するための図である。図5に示すように、処理装置10には、フロー51、フロー52及びフロー53が入力される。ここで、フロー51の優先度は「低」であるものとする。また、フロー52の優先度は「中」であるものとする。また、フロー53の優先度は「高」であるものとする。
図5の(1)に示すように、フロー計測部123は、入力されたフローのトラヒックのレートを計測し、計測結果を解析部125に通知する。また、図5の(2)に示すように、処理部122は、入力されたフローを用いて処理を行い、その結果出力した出力データを作業用メモリ132に書き込む。
そして、図5の(3)に示すように、レート計測部124は、作業用メモリ132を参照し、出力データの発生レートを計測し、計測結果を解析部125に通知する。ここで、図5の(4)に示すように、解析部125は、入力されたフローごとの発生レートを計算し、計算した結果を計算装置20に通知する。
図5の(5)に示すように、計算装置20は、通知された発生レートを基に入力制御ポリシーを計算する。そして、計算装置20は、入力制御ポリシーを処理装置10に通知する。
ここで、解析部125は、例えば入力データのトラヒックのレートである入力レートと出力データの発生レートとの相関を計算する。図6は、入力レートと発生レートの相関について説明するための図である。図6に示すように、フロー計測部123は、「64Bytes flow」について、入力レートが100,000pps(Packets per second)から200,000ppsまでの範囲であることを計測したものとする。また、レート計測部124は、入力レートが100,000ppsから200,000ppsまでの範囲であるときの発生レートを計測したものとする。
このとき、解析部125は、入力レートと発生レートの相関を計算する。そして、計算装置20は、解析部125によって計算された相関に基づき、入力レートが100,000pps(Packets per second)から200,000ppsまでの範囲にない場合の発生レートを推定することができる。計算装置20は、このように推定された発生レートを基に入力制御ポリシーを計算してもよい。
ここで、入力制御部121は、入力制御ポリシーにしたがい、様々な手法で入力制御を行うことができる。例えば、入力制御部121は、処理部122への入力を制御するだけでなく、さらに、処理部122の処理速度を低下させる制御を行うことにより出力データの発生レートを低減させることができる。例えば、入力制御部121は、処理部122へのプロセッサ時間の割り当てを制限すること等により処理速度を低下させることができる。
また、入力制御部121は、出力データの同期対象の装置への転送が、あらかじめ設定された処理部122の処理を停止可能な許容時間内に完了するように、処理部122への入力データの入力を制御する。ここで、許容時間は、優先度が高いフローに対して許容されているフロー断時間である。
また、入力制御部121は、さらに、出力データの発生レートがあらかじめ設定された上限値以下になるように処理部122への入力データの入力を制御する。入力制御部121は、発生レートが少なくとも同期用の帯域を上回らないように制限する。この場合、同期用の帯域が閾値である。
さらに、入力制御部121は、許容時間による制御及び発生レートの上限値による制御を組み合わせることができる。すなわち、入力制御部121は、出力データの転送に必要な処理部122の停止時間が、許容時間を下回るように設定された上限値を用いて制御を行う。
また、このとき、入力制御部121は、帯域と、未同期の出力データの量と、入力データのフローごとの、対応する出力データの発生レートとに基づき、フローのうちの制御対象のフローに対する制御内容にしたがって制御を行う。例えば、入力制御部121は、優先度が低いフローであっても、帯域に余裕がある場合や、未同期の出力データ量がない場合には、当該フローの入力制御を行わないようにしてもよい。また、入力制御部121は、優先度が中くらいのフローについては、未同期の出力データの量に応じて制御を行うか否かを決定するようにしてもよい。
入力制御部121は、優先制御及び帯域制御等により入力制御を実現する。優先制御は、フローに優先度を与え、優先度が高いフローのパケットを優先的に送信するよう、キューを用いて制御を行う方法である。優先制御は、スケジューリングの一例である。例えば、優先制御には、重み付フェアキューイング、重み付ラウンドロビン等がある。また、帯域制御は、フローごとに送信許容帯域を設け、許容帯域を越えないよう、フローのパケットのドロップ(ポリシング)又は出力タイミングの変更(シェーピング)等を行う方法である。例えば、帯域制御には、ランダムドロップ、リーキバケット、トークンバケット等がある。
本実施形態では、入力制御部121は、入力されたパケットを含むトラヒックのレートと出力データの発生レートとの相関に基づき、スケジューリング、ドロップ(ポリシング)、シェーピングのうちの少なくともいずれかを用いて、処理部122への入力データの入力を制御する。
具体的には、入力制御部121は、優先制御とビットレート又は単位時間当たりのパケット数に対する帯域制御のいずれかを組み合わせて入力制御を行う。例えば、入力制御部121は、優先制御と、ポリシング及びシェーピングのいずれかと、を組み合わせる。
図7を用いてポリシングについて説明する。図7の(1)に示すように、計算装置20は、フローごとの優先度及びドロップ率を処理装置10に指示する。計算装置20は、フロー管理テーブル232を参照しフローごとの優先度及びドロップ率を決定することができる。
図5の場合と同様に、フロー51の優先度は「低」であるものとする。また、フロー52の優先度は「中」であるものとする。また、フロー53の優先度は「高」であるものとする。このとき、例えば、計算装置20は、フロー51、フロー52及びフロー53の入力レートの比率が1:2:3であり、発生レートの上限値が300,000ppsであり、フロー53のパケットがドロップしないようなドロップ率を計算し、処理装置10に通知する。
そして、図7の(2)に示すように、処理装置10は、各フローに対しドロップ率を登録し、フロー53を最優先で送出し、フロー51及びフロー52については優先度に基づく重みにしたがう送出スケジュールにより送出する。
これにより、例えば、図7のブランク521及び522に示す位置に入力されるはずであったパケットが、入力制御部121によりドロップされる。この結果、処理部122によるフロー53を入力とする処理の出力データが削減され、発生レートが低下する。一方で、優先度が「低」であるフローは、リアルタイム性が要求されないサービスに関するものであるため、サービスへの悪影響は抑えられる。
図8を用いてシェーピングについて説明する。図8の(1)に示すように、計算装置20は、フローごとの優先度及び送信帯域を処理装置10に指示する。計算装置20は、フロー管理テーブル232を参照しフローごとの優先度及び送信帯域を決定することができる。
図5の場合と同様に、フロー51の優先度は「低」であるものとする。また、フロー52の優先度は「中」であるものとする。また、フロー53の優先度は「高」であるものとする。このとき、例えば、計算装置20は、フロー51及びフロー52の入力レートの比率が1:2であり、発生レートの上限値が300,000ppsであり、フロー53のパケットが遅延しないような送信帯域を計算し、処理装置10に通知する。
そして、図8の(2)に示すように、処理装置10は、各フローに対し送信帯域を登録し、フロー53を最優先で送出し、フロー51及びフロー52については優先度に基づく重みにしたがう送出スケジュールにより送出する。
このとき、例えば、入力制御部121は、トークンバケット515及びトークンバケット525にトークンを保持し、フロー51及びフロー52の送出を遅延させる。この結果、図7の場合と同様に、処理部122によるフロー53を入力とする処理の出力データが削減される。
[第1の実施形態の処理]
図9を用いて、ソフトウェア移動システム1の処理の流れを説明する。図9は、第1の実施形態に係るソフトウェア移動システムの処理の流れを示すフローチャートである。図9に示すように、まず、処理装置10は、入力フローを計測する(ステップS11)。次に、処理装置10は、入力フローを基に処理を実行する(ステップS12)。ここで、処理装置10は、処理の結果として出力データを出力する。そして、処理装置10は、出力データの発生レートを計測する(ステップS13)。
計算装置20は、フロー及び計測結果を基に制御ポリシーを計算する(ステップS14)。処理装置10は、計算装置20によって計算された制御ポリシーに基づき入力制御を実行する(ステップS15)。
また、図10を用いて、計算装置20による計算処理の流れを説明する。図10は、第1の実施形態に係る計算処理装置の計算処理の流れを示すフローチャートである。図10に示すように、計算装置20は、未同期データ量、ソフトウェアの同期帯域、及び低優先の許容可能断時間を取得する(ステップS101)。
未同期データ量は時間の経過とともに変化する情報なので、計算装置20は、一定時間ごとに処理装置10から未同期データ量を取得するようにしてもよい。また、ソフトウェアの同期帯域及び低優先の許容可能断時間は時間の経過とともに変化しないため、計算装置20は、ソフトウェアの同期帯域及び低優先の許容可能断時間をあらかじめ取得しておいてもよい。
次に、計算装置20は、最適な発生レートを計算する(ステップS102)。また、計算装置20は、最適な発生レートを基にメモリページの上書き上限を計算する(ステップS103)。そして、計算装置20は、上書き上限を基に制御ポリシーを計算する(ステップS104)。最適な発生レートとは、出力データの転送に必要な処理部122の停止時間が、許容時間を超えないような発生レートである。
[第1の実施形態の効果]
これまで説明したように、実施形態の処理装置10は、入力された入力データを処理し、同期対象の装置へ所定の帯域で転送される出力データを出力する。また、処理装置10は、処理部122によって出力される出力データの発生レートを計測する。また、処理装置10は、計測結果に基づき、入力データの種別ごとにあらかじめ設定された条件が満たされ、かつ出力データの発生レートが帯域を下回るように、入力データの入力を制御する。このように、処理装置10は、入力データの種別(例えばパケットのフロー)に応じた条件(例えば優先度)に基づき入力制御を行うことが可能になる。例えば、対応するサービスのリアルタイム性に応じて優先度を設定することができるため、実施形態によれば、パケットロスによるサービスへの悪影響を低減することが可能になる。特に、入力データがパケットである場合、フローに応じたフロー断時間の差別化の実現と、フロー断時間の最低値を指定どおりの時間にすることが可能になる。
入力制御部121は、さらに、処理部122の処理速度を低下させる制御を行うことにより出力データの発生レートを低減させる。このため、実施形態によれば、入力の制御及び処理速度の制御の両方により発生レートを低減させることができる。
処理装置10は、入力データとして入力されたパケットを処理する。また、処理装置10は、入力されたパケットを含むトラヒックのレートと出力データの発生レートとの相関に基づき、スケジューリング、ドロップ、シェーピングのうちの少なくともいずれかを用いて、入力データの入力を制御する。このため、実施形態によれば、パケットの送信を制御する手法を利用して入力制御を行うことが可能になる。
処理装置10は、出力データの同期対象の装置への転送が、あらかじめ設定された処理部122の処理を停止可能な許容時間内に完了するように、入力データの入力を制御する。このため、実施形態によれば、出力データの同期が間に合わず許容時間を超えることを防止することができる。
処理装置10は、さらに、出力データの発生レートがあらかじめ設定された上限値以下になるように処理部122への入力データの入力を制御する。このため、実施形態によれば、上限値を設定することで入力制御を容易に実現することができる。
処理装置10は、出力データの転送に必要な処理部122の停止時間が、許容時間を下回るように設定された上限値を用いて制御を行う。また、処理装置10は、帯域と、未同期の出力データの量と、入力データのフローごとの、対応する出力データの発生レートとに基づき、フローのうちの制御対象のフローに対する制御内容にしたがって制御を行う。このため、実施形態によれば、フロー断時間が許容時間を超えない上限値を設定することで、入力制御を最低限に抑えることができる。
[第2の実施形態]
第2の実施形態について説明する。なお、第2の実施形態に係る処理装置10の基本的な構成は、第1の実施形態に係る処理装置10の構成と同様である。以下では、第2の実施形態に係る処理装置10の構成のうち、第1の実施形態に係る処理装置10の構成と同様であるものについては適宜説明を省略する。
第2の実施形態では、疑似処理装置30が、処理装置10の処理部122の処理を疑似的に実行する。そして、発生レートの計測は、疑似処理装置30の実行結果を対象に行われる。
図11を用いて、疑似処理装置30について説明する。図11は、第2の実施形態に係る疑似処理装置の構成の一例を示す図である。図11に示すように、疑似処理装置30は、疑似フロー生成部31、制御部32及び記憶部33を有する。
疑似フロー生成部31は、疑似的な入力データを生成する。例えば、疑似フロー生成部31は、実際に処理装置10に入力されるフローをコピーすることで疑似的な入力データを生成してもよい。また、疑似フロー生成部31は、処理装置10に入力されるフローと同様の傾向を持つフローを生成してもよい。
制御部32は、疑似処理部321、フロー計測部322及びレート計測部323を有する。疑似処理部321、フロー計測部322、レート計測部323は、それぞれ第1の実施形態の処理装置10の処理部122、フロー計測部123及びレート計測部124と同じ振る舞いをする。ただし、疑似処理部321には、疑似フロー生成部31によって生成された入力データが入力される。
疑似処理部321は、疑似フロー生成部31によって生成された入力データを処理し、出力データを出力する。また、フロー計測部322は、疑似処理部321に入力される入力データのレートを計測する。また、レート計測部323は、疑似処理部321が、入力データを処理することによって出力される出力データの発生レートを計測する。
また、疑似処理装置30は、各計測結果を処理装置10の解析部125に受け渡す。また、疑似処理装置30は、処理装置10の解析部125と同じ振る舞いをする解析部を有していてもよい。その場合、疑似処理装置30は、解析結果を計算装置20に受け渡す。
また、記憶部33のプログラム情報331及び作業用メモリ332についても、処理装置10のプログラム情報131及び作業用メモリ132と同様の機能を有する。
第1の実施形態の方法で入力データ及び出力データの計測を行う場合、処理装置10のトラヒックフローに負荷等が発生することが考えられる。処理装置10は、実際にサービスの提供に使用されるため、なるべく計測処理の影響を与えないことが望ましい。そこで、第2の実施形態によれば、サービス提供中の処理装置のトラヒックフローに影響を与えずに、入力に対する同期対象データの発生レートの情報を得ることが可能になる。
[その他の実施形態]
第1の実施形態における処理装置10に入力されるデータは、実際のサービス提供において発生するデータであってもよいし、量や種類を変更しながら人為的に発生させたデータであってもよい。人為的に発生させることで、多様なケースの計測情報を得ることができるため、各状況により適した入力制御ポリシーの計算が可能になる。
また、図7及び図8の例では、帯域制御を単位時間当たりのパケット数(単位:pps)に対して行うものとして説明した。一方で、入力制御ポリシーは、優先制御と、ビットレートに対する帯域制御及び単位時間当たりのパケット数に対する帯域制御のいずれかと、を組み合わせたものであってもよい。
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
一実施形態として、処理装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の移動処理を実行する移動プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の移動プログラムを情報処理装置に実行させることにより、情報処理装置を処理装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
図12は、移動プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、処理装置10の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、処理装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSDにより代替されてもよい。
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
1 ソフトウェア移動システム
10 処理装置
20 計算装置
30 疑似処理装置
11、21 入出力インタフェース
12、22、32 制御部
13、23、33 記憶部
31 疑似フロー生成部
51、52、53 フロー
121 入力制御部
122 処理部
123、322 フロー計測部
124、323 レート計測部
125 解析部
131、231、331 プログラム情報
132、332 作業用メモリ
221 管理部
222 計算部
232 フロー管理テーブル
321 疑似処理部
515、525 トークンバケット
521、522 ブランク

Claims (6)

  1. 入力された入力データを処理し、同期対象の装置へ所定の帯域で転送される出力データを出力する処理部と、
    前記処理部によって出力される前記出力データの発生レートを計測する計測部と、
    前記計測部による計測結果に基づき、前記入力データの種別ごとにあらかじめ設定された条件が満たされ、かつ前記出力データの発生レートが前記帯域を下回るように、前記処理部への前記入力データの入力を制御する入力制御部と、
    を有し、
    前記処理部は、前記入力データとして入力されたパケットを処理し、
    前記入力制御部は、入力されたパケットを含むトラヒックのレートと前記出力データの発生レートとの相関に基づき、前記パケットのフローに対して決定された優先度及びドロップ率に応じて、前記パケットの一部をドロップさせることにより、前記処理部への前記入力データの入力を制御することを特徴とする処理装置。
  2. 前記入力制御部は、前記出力データの前記同期対象の装置への転送が、あらかじめ設定された前記処理部の処理を停止可能な許容時間内に完了するように、前記処理部への前記入力データの入力を制御することを特徴とする請求項1記載の処理装置。
  3. 前記入力制御部は、さらに、前記出力データの発生レートがあらかじめ設定された上限値以下になるように前記処理部への前記入力データの入力を制御することを特徴とする請求項に記載の処理装置。
  4. 前記入力制御部は、前記出力データの転送に必要な前記処理部の停止時間が、前記許容時間を下回るように設定された前記上限値を用いて制御を行い、
    また、前記帯域と、未同期の前記出力データの量と、前記入力データのフローごとの、対応する前記出力データの発生レートとに基づき、前記フローのうちの制御対象のフローに対する制御内容にしたがって制御を行うことを特徴とする請求項に記載の処理装置。
  5. 前記計測部は、前記処理部と同じ振る舞いをする疑似処理部が、疑似的に生成された入力データを処理することによって出力される出力データの発生レートを計測することを特徴とする請求項1に記載の処理装置。
  6. コンピュータによって実行されるソフトウェアの移動方法であって、
    入力された入力データを処理し、同期対象の装置へ所定の帯域で転送される出力データを出力する処理ステップと、
    前記処理ステップによって出力される前記出力データの発生レートを計測する計測ステップと、
    前記計測ステップによる計測結果に基づき、前記入力データの種別ごとにあらかじめ設定された条件が満たされ、かつ前記出力データの発生レートが前記帯域を下回るように、前記処理ステップへの前記入力データの入力を制御する入力制御ステップと、
    を含み、
    前記処理ステップは、前記入力データとして入力されたパケットを処理し、
    前記入力制御ステップは、入力されたパケットを含むトラヒックのレートと前記出力データの発生レートとの相関に基づき、前記パケットのフローに対して決定された優先度及びドロップ率に応じて、前記パケットの一部をドロップさせることにより、前記処理ステップへの前記入力データの入力を制御することを特徴とする移動方法。
JP2019017483A 2019-02-01 2019-02-01 処理装置及び移動方法 Active JP7198102B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019017483A JP7198102B2 (ja) 2019-02-01 2019-02-01 処理装置及び移動方法
PCT/JP2020/001452 WO2020158444A1 (ja) 2019-02-01 2020-01-17 処理装置及び移動方法
US17/424,676 US11632319B2 (en) 2019-02-01 2020-01-17 Processing device and moving method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019017483A JP7198102B2 (ja) 2019-02-01 2019-02-01 処理装置及び移動方法

Publications (2)

Publication Number Publication Date
JP2020127097A JP2020127097A (ja) 2020-08-20
JP7198102B2 true JP7198102B2 (ja) 2022-12-28

Family

ID=71841765

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019017483A Active JP7198102B2 (ja) 2019-02-01 2019-02-01 処理装置及び移動方法

Country Status (3)

Country Link
US (1) US11632319B2 (ja)
JP (1) JP7198102B2 (ja)
WO (1) WO2020158444A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112583737B (zh) * 2020-12-15 2023-05-19 百度在线网络技术(北京)有限公司 流量调整方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130305242A1 (en) 2012-05-11 2013-11-14 Vmware, Inc. Performance of Load Balancing Modules with Migration Awareness
US20170017512A1 (en) 2014-03-10 2017-01-19 Nokia Solutions And Networks Oy Notification about virtual machine live migration to vnf manager
US20180024854A1 (en) 2015-03-27 2018-01-25 Intel Corporation Technologies for virtual machine migration

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6810031B1 (en) * 2000-02-29 2004-10-26 Celox Networks, Inc. Method and device for distributing bandwidth
US7142552B2 (en) * 2002-04-08 2006-11-28 International Business Machines Corporation Method and system for priority enforcement with flow control
US10270700B2 (en) * 2015-03-03 2019-04-23 Opanga Networks, Inc. Systems and methods for pacing data flows
EP1962192A1 (en) * 2007-02-21 2008-08-27 Deutsche Telekom AG Method and system for the transparent migration of virtual machine storage
US8151019B1 (en) * 2008-04-22 2012-04-03 Lockheed Martin Corporation Adaptive network traffic shaper
TWI362860B (en) * 2008-06-27 2012-04-21 Realtek Semiconductor Corp Network system with quality of service management and associated management method
WO2011065227A1 (ja) * 2009-11-27 2011-06-03 日本電気株式会社 フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム
CN102656866B (zh) * 2009-12-14 2015-03-11 日本电气株式会社 通信设备和通信控制方法
US9288137B2 (en) * 2010-05-09 2016-03-15 Citrix Systems, Inc. Systems and methods for allocation of classes of service to network connections corresponding to virtual channels
US9130864B2 (en) * 2011-06-27 2015-09-08 Citrix Systems, Inc. Prioritizing classes of network traffic to provide a predetermined quality of service
US8699333B2 (en) * 2011-09-29 2014-04-15 Cisco Technology, Inc. Congestion-based traffic shaping for distributed queuing in shared-media communication networks
US9928107B1 (en) * 2012-03-30 2018-03-27 Amazon Technologies, Inc. Fast IP migration in a hybrid network environment
US20130286825A1 (en) * 2012-04-30 2013-10-31 Derek Alan Sherlock Feed-forward arbitration
US9705804B2 (en) * 2012-08-30 2017-07-11 Sonus Networks, Inc. Opportunistic wireless resource utilization using dynamic traffic shaping
US9081599B2 (en) * 2013-05-28 2015-07-14 Red Hat Israel, Ltd. Adjusting transfer rate of virtual machine state in virtual machine migration
US9391903B2 (en) * 2013-07-15 2016-07-12 Calix, Inc. Methods and apparatuses for distributed packet flow control
US9720728B2 (en) * 2013-12-06 2017-08-01 Huawei Technologies Co., Ltd. Migrating a VM when the available migration duration times of a source and destination node are greater than the VM's migration duration time
JP6277853B2 (ja) * 2014-05-12 2018-02-14 富士通株式会社 制御装置、通信装置、および、通信方法
TW201624277A (zh) * 2014-12-31 2016-07-01 萬國商業機器公司 協助虛擬機器即時遷移的方法
US20180159780A1 (en) * 2015-07-30 2018-06-07 Telefonaktiebolaget Lm Ericsson (Publ) Technique for Message Flow Shaping
WO2017049617A1 (en) * 2015-09-25 2017-03-30 Intel Corporation Techniques to select virtual machines for migration
JP6386485B2 (ja) * 2016-01-20 2018-09-05 日本電信電話株式会社 管理システム、管理方法及び管理プログラム
US9936019B2 (en) * 2016-03-16 2018-04-03 Google Llc Efficient live-migration of remotely accessed data
WO2018176359A1 (en) * 2017-03-31 2018-10-04 Intel Corporation Techniques to decrease live migration time for virtual machine
US10445129B2 (en) * 2017-10-31 2019-10-15 Vmware, Inc. Virtual computing instance transfer path selection
US10644978B2 (en) * 2017-11-22 2020-05-05 Hughes Network Systems, Llc Latency increase estimated rate limiter adjustment
US10817497B2 (en) * 2018-01-29 2020-10-27 Salesforce.Com, Inc. Migration flow control
US10693801B2 (en) * 2018-02-20 2020-06-23 Red Hat, Inc. Packet drop reduction in virtual machine migration
US10552199B2 (en) * 2018-02-26 2020-02-04 Nutanix, Inc. System and method for binary throttling for live migration of virtual machines
US10552209B2 (en) * 2018-03-15 2020-02-04 Nutanix, Inc. System and method for throttling for live migration of virtual machines
US10552200B2 (en) * 2018-03-22 2020-02-04 Nutanix, Inc. System and method for dynamic throttling for live migration of virtual machines
US20200159556A1 (en) * 2018-11-21 2020-05-21 Microsoft Technology Licensing, Llc Traffic forwarding during migration
US20220156106A1 (en) * 2019-08-05 2022-05-19 Alibaba Group Holding Limited Virtual Machine Hot Migration Method, Apparatus, Electronic Device, and Computer Storage Medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130305242A1 (en) 2012-05-11 2013-11-14 Vmware, Inc. Performance of Load Balancing Modules with Migration Awareness
US20170017512A1 (en) 2014-03-10 2017-01-19 Nokia Solutions And Networks Oy Notification about virtual machine live migration to vnf manager
US20180024854A1 (en) 2015-03-27 2018-01-25 Intel Corporation Technologies for virtual machine migration

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Christopher Clark, et al.,Live Migration of Virtual Machines,NSDI ’05: 2nd Symposium on Networked Systems Design & Implementation,2005年05月02日
Fei Zhang, et al.,A Survey on Virtual Machine Migration: Challenges, Techniques, and Open Issues,IEEE Communications Surveys & Tutorials (VOL. 20, NO.2, SECOND QUARTER 2018),2018年01月17日

Also Published As

Publication number Publication date
JP2020127097A (ja) 2020-08-20
US11632319B2 (en) 2023-04-18
WO2020158444A1 (ja) 2020-08-06
US20220109619A1 (en) 2022-04-07

Similar Documents

Publication Publication Date Title
WO2021213004A1 (zh) 一种微服务管理系统、部署方法及相关设备
US8745204B2 (en) Minimizing latency in live virtual server migration
EP2422495B1 (en) Dynamic adjustment of connection setup request parameters
US10091124B2 (en) System for early system resource constraint detection and recovery
JP2015115059A (ja) クラウド・コンピューティング環境を動的に変更する方法、情報処理システム、およびコンピュータ・プログラム
EP2466824A1 (en) Service scheduling method and device
CN110214436B (zh) 一种多核无锁速率限制装置和方法
JP6783850B2 (ja) データトラフィックを制限するための方法及びシステム
US11570108B2 (en) Distribution of network traffic to software defined network based probes
Zhang et al. Guaranteeing delay of live virtual machine migration by determining and provisioning appropriate bandwidth
US11757802B2 (en) Technologies for dynamic batch size management
US20230259415A1 (en) Dynamic management of network policies between microservices within a service mesh
JP7198102B2 (ja) 処理装置及び移動方法
Lamps et al. Temporal integration of emulation and network simulators on linux multiprocessors
US9178838B2 (en) Hash perturbation with queue management in data communication
JPWO2014155617A1 (ja) 通信装置、通信方法、及び通信プログラム
Stylianopoulos et al. On the performance of commodity hardware for low latency and low jitter packet processing
McGuinness et al. Evaluating the performance of software NICs for 100-gb/s datacenter traffic control
Buh et al. Adaptive network-traffic balancing on multi-core software networking devices
JP2019028673A (ja) 管理装置および管理方法
Morla et al. High-performance network traffic analysis for continuous batch intrusion detection
Lu et al. A3DCT: A cubic acceleration TCP for data center networks
Nguyen et al. An improvement of resource allocation for migration process in cloud environment
WO2023162044A1 (ja) 切り替え方法、切り替えシステム及び切り替えプログラム
WO2024027160A1 (zh) 一种应用部署方法、系统及设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220413

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221031

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20221031

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20221109

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20221118

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221216

R150 Certificate of patent or registration of utility model

Ref document number: 7198102

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150