JP7215601B2 - Processing device, relocation method and relocation program - Google Patents

Processing device, relocation method and relocation program Download PDF

Info

Publication number
JP7215601B2
JP7215601B2 JP2021569677A JP2021569677A JP7215601B2 JP 7215601 B2 JP7215601 B2 JP 7215601B2 JP 2021569677 A JP2021569677 A JP 2021569677A JP 2021569677 A JP2021569677 A JP 2021569677A JP 7215601 B2 JP7215601 B2 JP 7215601B2
Authority
JP
Japan
Prior art keywords
data processing
rearrangement
processing functions
vnf
relocation
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
JP2021569677A
Other languages
Japanese (ja)
Other versions
JPWO2021140630A1 (en
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
Publication of JPWO2021140630A1 publication Critical patent/JPWO2021140630A1/ja
Application granted granted Critical
Publication of JP7215601B2 publication Critical patent/JP7215601B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/76Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions
    • H04L47/762Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions triggered by the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
    • 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/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/267Flow control; Congestion control using explicit feedback to the source, e.g. choke packets sent by the destination endpoint

Description

本発明は、処理装置、再配置方法及び再配置プログラムに関する。 The present invention relates to a processing device, a rearrangement method, and a rearrangement program.

NAPT(Network Address Port Translation)やファイヤウォールなど、パケット処理に過去の処理履歴であるステート情報を用いる、ステートフルネットワーク機能が広く使用されている。ここで、ハードウェアで実装していたこれらのパケット処理機能をソフトウェア実装し、汎用サーバで稼働させることによって、トラヒック需要に応じた機能配備ができるようになった。さらに、データの配送先であるユーザの端末が移動することに伴う転送経路の最適化を、ソフトウェア実装を別サーバに移動(再配置)させることにより実現することが可能になった。 Stateful network functions such as NAPT (Network Address Port Translation) and firewalls that use state information, which is past processing history, are widely used for packet processing. Now, by implementing these packet processing functions in software and running them on a general-purpose server, it is now possible to deploy functions according to traffic demand. Furthermore, it has become possible to optimize the transfer route associated with the movement of the user's terminal, which is the delivery destination of the data, by moving (relocating) the software implementation to another server.

このようなソフトウェアのうち、ステートフルなパケット処理機能を実行するソフトウェアを再配置する際、ソフトウェアを再配置先で再開するためのデータを再配置先に転送する必要がある。再配置先に転送されるデータは、フローステートなどである。 Among such software, when relocating software that executes a stateful packet processing function, it is necessary to transfer data to the relocation destination for resuming the software at the relocation destination. The data transferred to the relocation destination is the flow state and the like.

このフローステートは、パケット処理により更新される。この結果、パケット処理が継続する間に再配置先に転送されたフローステートは、再配置元では再配置元のソフトウェアにより更新が継続されるため、再配置元のフローステートと比してデータが古くなってしまう。ソフトウェアは、最新のステートに基づきパケット処理を行う必要があるが、このままでは、パケット処理機能の再配置後に再配置先において正しくソフトウェアを稼働させることができないという問題があった。 This flow state is updated by packet processing. As a result, the flow state transferred to the relocation destination while packet processing continues is continuously updated by the software of the relocation source at the relocation source. It's getting old. The software needs to process packets based on the latest state, but there was a problem that the software could not be operated correctly at the relocation destination after the relocation of the packet processing functions.

そこで、従来では、再配置元と再配置先とのフローステートを完全同期するために、ソフトウェアを一時停止する必要が生じる。しかしながら、ソフトウェアの一時停止中に到着したパケットは、ドロップ、或いは、キューでの待機となるため、転送品質が劣化するという問題があった。 Therefore, conventionally, it is necessary to suspend the software in order to completely synchronize the flow states of the relocation source and the relocation destination. However, packets arriving during software suspension are dropped or wait in a queue, resulting in a problem of degraded transfer quality.

特に、VR(Virtual Reality)やAR(Augmented Reality)などのサービスでは、ユーザの身の回りで生じたイベントをリアルタイムに仮想空間に反映させるため、イベントに関するデータや仮想空間の画像などの転送時間を短縮する必要がある。しかしながら、VRやARなどのサービス提供時にネットワーク機能を再配置すると、前述したデータのドロップやキューイング遅延などによって、転送時間の増加を招く現象が生じる。 In particular, in services such as VR (Virtual Reality) and AR (Augmented Reality), events that occur around the user are reflected in the virtual space in real time, so the transfer time for event-related data and virtual space images is shortened. There is a need. However, when network functions are rearranged when services such as VR and AR are provided, a phenomenon occurs that causes an increase in transfer time due to the aforementioned data drop, queuing delay, and the like.

図13及び図14は、従来のデータの転送処理を説明する図である。パケット処理機能をソフトウェア実装した際に有効なデータ転送遅延短縮方法として、同一データフローを処理する複数のパケット処理機能を同一サーバで稼働させ、メモリバスを使用して機能間で転送されるパケットを高速転送する方法が存在する(図13の(1)参照)。このようなパケット処理機能を別サーバへと移動する際、移動完了タイミングが先になったパケット処理機能に転送したデータは、メモリバスに比べて転送遅延の大きいネットワークを経由することになる(図13の(2)参照)。 13 and 14 are diagrams for explaining conventional data transfer processing. As an effective data transfer delay reduction method when the packet processing function is implemented in software, multiple packet processing functions that process the same data flow are operated on the same server, and the packets transferred between functions using the memory bus are reduced. There is a method for high-speed transfer (see (1) in FIG. 13). When such a packet processing function is moved to another server, the data transferred to the packet processing function whose movement completion timing is earlier will be routed through the network, which has a longer transfer delay than the memory bus (Fig. 13 (2)).

また、図14に示すように、トラヒックに対し所定の順序で処理を行う場合、転送中のパケットが再配置実行中のソフトウェアに到着する度に、キューイング遅延を被ることになる。具体的には、図14に示すように、上流のパケット処理機能でキューイングされたパケットは、上流のパケット処理機能のフローステート移行完了後、下流のパケット処理機能に転送される。しかしながら、下流のパケット処理機能においてもフローステートが移行していた場合、下流においてもキューイングされるため、二重にキューイング遅延を被ることとなる。このため、低遅延通信を必要とするサービス提供時に、これらの要因により生じる転送遅延の増加を抑止することが求められている。 Also, as shown in FIG. 14, if the traffic is processed in a predetermined order, each time a packet being transferred arrives at the software performing the relocation, it will suffer a queuing delay. Specifically, as shown in FIG. 14, the packets queued in the upstream packet processing function are transferred to the downstream packet processing function after the flow state transition of the upstream packet processing function is completed. However, if the flow state is changed also in the downstream packet processing function, queuing is also performed downstream, resulting in double queuing delay. Therefore, it is required to suppress an increase in transfer delay caused by these factors when providing services that require low-delay communication.

そこで、従来、複数のネットワーク機能が同一フローを処理する場合における、ネットワーク機能再配置時のフロー転送停止時間を短縮する方法が提案されている(例えば、非特許文献1参照)。 Therefore, conventionally, there has been proposed a method for shortening the flow transfer stop time when network functions are rearranged when a plurality of network functions process the same flow (see, for example, Non-Patent Document 1).

K. Sugisono, et al. ,“Migration for VNF instances Forming Service Chain”,IEEE CloudNet2018, 2018.K. Sugisono, et al., “Migration for VNF instances Forming Service Chain,” IEEE CloudNet2018, 2018.

非特許文献1記載の方法は、再配置時におけるパケット処理機能の一時停止時間が該パケット処理機能の処理するパケット量に大きく依存する場合であって、かつ、各パケット処理機能でパケットキューイングを行わない場合に、パケットロスが起こる時間を短縮するための方法である。非特許文献1記載の方法は、再配置を行うパケット処理機能と、その再配置実行タイミングとをスケジューラによって決定する。 The method described in Non-Patent Document 1 is a case in which the pause time of a packet processing function at the time of relocation greatly depends on the amount of packets processed by the packet processing function, and packet queuing is performed by each packet processing function. It is a method for shortening the time in which packet loss occurs if not performed. In the method described in Non-Patent Document 1, a scheduler determines the packet processing function to be rearranged and the timing of execution of the rearrangement.

したがって、非特許文献1記載の方法は、再配置中にパケットをドロップし、前述のような転送遅延の増加が生じない時に有効であった。しかしながら、トラヒックフローのパケット処理機能に対する通過順序が決まっている場合、パケット処理機能の再配置中にパケットをキューイングすることでパケットを宛先に転送することとなるため、非特許文献1記載の方法を適用できず、その間に生じる転送遅延を低減することができなかった。 Therefore, the method described in Non-Patent Document 1 was effective when packets were dropped during rearrangement and the increase in transfer delay as described above did not occur. However, when the order of traffic flow to the packet processing functions is determined, the packets are transferred to the destination by queuing the packets during the rearrangement of the packet processing functions. could not be applied and the transfer delay that occurred during that time could not be reduced.

このため、非特許文献1記載の方法では、パケットキューイング遅延やパケットがネットワークを経由することによる遅延増加を回避することができない、という問題があった。 Therefore, the method described in Non-Patent Document 1 has a problem that packet queuing delay and delay increase due to packets passing through the network cannot be avoided.

本発明は、上記に鑑みてなされたものであって、データ処理機能の再配置中に生じる転送遅延を低減することができる処理装置、再配置方法及び再配置プログラムを提供することを目的とする。 SUMMARY OF THE INVENTION It is an object of the present invention to provide a processing device, a relocation method, and a relocation program capable of reducing transfer delay that occurs during relocation of data processing functions. .

上述した課題を解決し、目的を達成するために、本発明の処理装置は、データ処理機能を他の装置に再配置してデータ処理を継続させる処理装置であって、装置間の通信関係を示す情報を記憶する記憶部と、通信関係を示す情報を基に、データ処理機能の再配置の順序が異なる複数のスケジューリングごとに、再配置の間に生じるデータの転送遅延の見積値を計算する計算部と、計算部によって計算された見積値が最小となるスケジューリングを選択し、選択したスケジューリングを基に、データ処理機能の再配置の順序とデータ処理機能の再配置の開始タイミングとを設定する設定部と、設定部が設定した順序及びタイミングにしたがってデータ処理機能を他の装置に再配置する再配置部と、を有することを特徴とする。 In order to solve the above-described problems and achieve the object, the processing apparatus of the present invention is a processing apparatus that relocates the data processing function to another apparatus to continue data processing, and establishes a communication relationship between the apparatuses. Estimated value of data transfer delay that occurs during rearrangement is calculated for each of a plurality of schedulings in which the order of rearrangement of data processing functions is different, based on a storage unit that stores information indicating communication relationships. Selecting a calculation unit and a scheduling that minimizes the estimated value calculated by the calculation unit, and based on the selected scheduling, setting the order of rearrangement of the data processing functions and the start timing of the rearrangement of the data processing functions. The apparatus is characterized by comprising a setting unit and a rearrangement unit that rearranges the data processing functions to another device according to the order and timing set by the setting unit.

また、本発明の再配置方法は、データ処理機能を他の装置に再配置してデータ処理を継続させる処理装置であって、装置間の通信関係を示す情報を基に、データ処理機能の再配置の順序が異なる複数のスケジューリングごとに、再配置の間に生じるデータの転送遅延の見積値を計算する工程と、計算された見積値が最小となるスケジューリングを選択し、選択したスケジューリングを基に、データ処理機能の再配置の順序とデータ処理機能の再配置の開始タイミングとを設定する工程と、設定された順序及びタイミングにしたがってデータ処理機能を他の装置に再配置する工程と、を含んだことを特徴とする。 Further, the relocation method of the present invention is a processing device that relocates a data processing function to another device to continue data processing, and relocates the data processing function based on information indicating the communication relationship between the devices. A step of calculating an estimated value of data transfer delay occurring during rearrangement for each of a plurality of schedulings with different placement orders, selecting the scheduling with the smallest estimated value calculated, and based on the selected scheduling , setting the order of relocation of the data processing functions and the start timing of the relocation of the data processing functions, and the step of relocating the data processing functions to another device according to the set order and timing. It is characterized by

また、本発明の再配置プログラムは、装置間の通信関係を示す情報を基に、データ処理機能の再配置の順序が異なる複数のスケジューリングごとに、再配置の間に生じるデータの転送遅延の見積値を計算するステップと、計算された見積値が最小となるスケジューリングを選択し、選択したスケジューリングを基に、データ処理機能の再配置の順序とデータ処理機能の再配置の開始タイミングとを設定するステップと、設定された順序及びタイミングにしたがってデータ処理機能を他の装置に再配置するステップと、をコンピュータに実行させる。 Further, the relocation program of the present invention estimates data transfer delays occurring during relocation for each of a plurality of schedulings in which the order of relocation of data processing functions is different, based on information indicating communication relationships between devices. A step of calculating a value, selecting the scheduling that minimizes the calculated estimated value, and setting the order of relocation of the data processing functions and the start timing of the relocation of the data processing functions based on the selected scheduling and causing the computer to perform the steps of relocating the data processing functions to other devices according to the established order and timing.

本発明によれば、データ処理機能の再配置中に生じる転送遅延を低減することができる。 ADVANTAGE OF THE INVENTION According to this invention, the transfer delay which arises during rearrangement of a data processing function can be reduced.

図1は、実施の形態に係る通信システムの構成の一例を示すブロック図である。FIG. 1 is a block diagram showing an example of the configuration of a communication system according to an embodiment. 図2は、図1に示すVNF稼働装置の構成の一例を示すブロック図である。FIG. 2 is a block diagram showing an example of the configuration of the VNF operating device shown in FIG. 1. As shown in FIG. 図3は、スケジューリングアルゴリズムの一例を説明する図である。FIG. 3 is a diagram illustrating an example of a scheduling algorithm. 図4は、スケジューリングアルゴリズムの一例を説明する図である。FIG. 4 is a diagram illustrating an example of a scheduling algorithm. 図5は、トラヒックフローのVNFに対する通過順序の一例を示す図である。FIG. 5 is a diagram illustrating an example of the transit order of traffic flows to VNFs. 図6は、並列方法における転送遅延の見積値の計算において使用されるパラメータを説明する図である。FIG. 6 is a diagram for explaining parameters used in calculating transfer delay estimates in the parallel method. 図7は、スケジューリングごとに計算されたVNFの再配置中の追加遅延の平均値を示す図である。FIG. 7 shows the average added delay during VNF relocation calculated for each scheduling. 図8は、実施の形態に係るVNFの再配置処理の処理手順を示すフローチャートである。FIG. 8 is a flowchart illustrating a processing procedure of VNF relocation processing according to the embodiment. 図9は、図8に示すスケジューリング選択処理の処理手順を示すフローチャートである。FIG. 9 is a flow chart showing a processing procedure of scheduling selection processing shown in FIG. 図10は、従来のVNFの再配置を説明する図である。FIG. 10 is a diagram for explaining conventional rearrangement of VNFs. 図11は、実施の形態におけるVNFの再配置を説明する図である。FIG. 11 is a diagram illustrating rearrangement of VNFs according to the embodiment. 図12は、プログラムが実行されることにより、VNF稼働装置が実現されるコンピュータの一例を示す図である。FIG. 12 is a diagram illustrating an example of a computer that implements a VNF operating device by executing a program. 図13は、従来のデータの転送処理を説明する図である。FIG. 13 is a diagram for explaining conventional data transfer processing. 図14は、従来のデータの転送処理を説明する図である。FIG. 14 is a diagram for explaining conventional data transfer processing.

以下に、本願に係る処理装置、再配置方法及び再配置プログラムの実施の形態を図面に基づいて詳細に説明する。また、本発明は、以下に説明する実施の形態により限定されるものではない。 Embodiments of a processing device, a rearrangement method, and a rearrangement program according to the present application will be described below in detail with reference to the drawings. Moreover, the present invention is not limited to the embodiments described below.

[実施の形態]
まず、実施の形態について説明する。本実施の形態は、それぞれ異なるサーバにおいて起動されたソフトウェアを実装する仮想ネットワーク機能(VNF(Virtual Network Function))を他の装置に再配置してVNFを継続させる再配置方法に関する。VNFは、NAPT(Network Address Port Translation)、ファイヤウォール、IDS(Intrusion Detection System)、ルータなど、パケット処理を行うソフトウェアであり、動作環境が存在する任意のサーバ上で稼働が可能である。VNFは、データ処理機能として機能する。
[Embodiment]
First, an embodiment will be described. The present embodiment relates to a relocation method for relocating virtual network functions (VNFs) implementing software activated in different servers to another device and continuing the VNFs. VNF is software that performs packet processing, such as NAPT (Network Address Port Translation), firewall, IDS (Intrusion Detection System), router, etc., and can operate on any server that has an operating environment. A VNF functions as a data processing function.

本実施の形態は、サーバのメンテナンスやロードバランシングのために、VNFを別のサーバ上で稼働したい場合における再配置方法に関する。さらに、本実施の形態は、トラヒックフローのVNFに対する通過順序が決まっている場合におけるVNFの他のサーバへの再配置方法について説明する。なお、本実施の形態は、トラヒックフローのVNFに対する通過順序が決まっているVNFの再配置に限らず、アプリケーションレイヤ等のデータを処理するデータ処理機能を有する仮想マシンが、他のサーバ装置へ移行する際の移行方法にも適用できる。 This embodiment relates to a relocation method when it is desired to operate VNFs on another server for server maintenance or load balancing. Furthermore, this embodiment describes a method of relocating VNFs to other servers when the order of traffic flow to VNFs is fixed. Note that this embodiment is not limited to rearrangement of VNFs in which the order of passage of traffic flows to VNFs is determined. It can also be applied to the migration method when

[通信システムの構成]
図1は、実施の形態に係る通信システムの構成の一例を示すブロック図である。図1に示すように、実施の形態に係る通信システム100では、VNF稼働装置10Aと、VNF稼働装置10Bとを有する。VNF稼働装置10A,10Bは、ネットワークNを介して通信を行う。なお、VNF稼働装置10A,10Bの上位には、上位コントローラ(不図示)が設けられており、VNFの再配置を行う場合、再配置先のVNF稼働装置を設定する。また、VNF稼働装置10A,10Bの台数は、一例であり、図1の台数に限らない。
[Configuration of communication system]
FIG. 1 is a block diagram showing an example of the configuration of a communication system according to an embodiment. As shown in FIG. 1, the communication system 100 according to the embodiment includes a VNF operating device 10A and a VNF operating device 10B. The VNF operating devices 10A and 10B communicate via the network N. FIG. A host controller (not shown) is provided above the VNF operating devices 10A and 10B, and when VNFs are relocated, the VNF operating device of the relocation destination is set. Also, the number of VNF operating devices 10A and 10B is an example, and is not limited to the number shown in FIG.

VNF稼働装置10A,10Bは、VNFを稼働させる物理装置であって、具体的には、サーバ装置である。本実施の形態では、VNF稼働装置10AをVNFの再配置元の装置として説明する。また、本実施の形態では、VNF稼働装置10BをVNFの再配置先の装置として説明する。VNF稼働装置10Aは、自装置で稼働させているVNFをVNF稼働装置10Bに再配置してパケット処理を継続させる処理装置である。 The VNF operating devices 10A and 10B are physical devices that operate VNFs, specifically server devices. In this embodiment, the VNF operating device 10A will be described as a VNF relocation source device. Also, in the present embodiment, the VNF operating device 10B will be described as a VNF relocation destination device. The VNF operation device 10A is a processing device that rearranges the VNF that is being operated in its own device to the VNF operation device 10B to continue packet processing.

VNF稼働装置10Aは、VNFを再配置先のVNF稼働装置10Bで再開するためのデータとして、ステートを再配置先のVNF稼働装置10Bに転送する。ステートは、例えば、NAPTのフロー割り当てアドレス、IDSのフローの振る舞い情報が該当する。VNF稼働装置10Aは、トラヒックフローのVNFに対する通過順序が決まっている場合におけるVNFのVNF稼働装置10Bへの再配置方法に関し、VNFの再配置中に生じる転送遅延を低減する。 The VNF operating device 10A transfers the state to the relocation destination VNF operating device 10B as data for resuming the VNF in the relocation destination VNF operating device 10B. The state corresponds to NAPT flow allocation address and IDS flow behavior information, for example. The VNF operating device 10A reduces the transfer delay that occurs during VNF relocation in relation to a method of rearranging the VNFs to the VNF operating device 10B when the order of traffic flow to the VNFs is determined.

[VNF稼働装置の構成]
次に、VNF稼働装置10Aの構成について説明する。図2は、図1に示すVNF稼働装置10Aの構成の一例を示すブロック図である。図2に示すように、VNF稼働装置10Aは、通信部11、記憶部12及び制御部13を有する。
[Configuration of VNF operating device]
Next, the configuration of the VNF operating device 10A will be described. FIG. 2 is a block diagram showing an example of the configuration of the VNF operating device 10A shown in FIG. As shown in FIG. 2, the VNF operating device 10A has a communication section 11, a storage section 12 and a control section 13. FIG.

通信部11は、ネットワーク等を介して接続された他の装置との間で、各種情報を送受信する通信インタフェースである。通信部11は、LAN(Local Area Network)やインターネットなどの電気通信回線を介した他の装置(例えば、VNF稼働装置10B)と制御部13(後述)との間の通信を行う。 The communication unit 11 is a communication interface that transmits and receives various information to and from other devices connected via a network or the like. The communication unit 11 performs communication between another device (for example, the VNF operating device 10B) and the control unit 13 (described later) via an electric communication line such as a LAN (Local Area Network) or the Internet.

記憶部12は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子によって実現され、VNF稼働装置10Aを動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが記憶される。記憶部12は、ネットワークパラメータデータベース(DB)121を有する。 The storage unit 12 is implemented by a semiconductor memory device such as a RAM (Random Access Memory) or a flash memory, and stores a processing program for operating the VNF operating device 10A, data used during execution of the processing program, and the like. remembered. The storage unit 12 has a network parameter database (DB) 121 .

ネットワークパラメータDB121は、プログラムとネットワーク内で生じるイベントの統計情報や測定情報を管理するDBである。ネットワークパラメータDB121は、サーバ間の通信関係を示す情報を記憶する。ネットワークパラメータDB121は、サーバ間の通信関係を示す情報として、トラヒックフローが通過するVNFの通過順序を示す順序情報を記憶する。 The network parameter DB 121 is a DB that manages statistical information and measurement information of events that occur within programs and networks. The network parameter DB 121 stores information indicating communication relationships between servers. The network parameter DB 121 stores, as information indicating communication relationships between servers, order information indicating the order of VNFs through which traffic flows pass.

制御部13は、VNF稼働装置10A全体を制御する。制御部13は、例えば、CPU(Central Processing Unit)等の電子回路や、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の集積回路である。また、制御部13は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部13は、各種のプログラムが動作することにより各種の処理部として機能する。制御部13は、稼働部131、見積部132(計算部)、スケジューリング部133(設定部)及び再配置部134を有する。 The control unit 13 controls the entire VNF operating device 10A. The control unit 13 is, for example, an electronic circuit such as a CPU (Central Processing Unit) or an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). The control unit 13 also has an internal memory for storing programs defining various processing procedures and control data, and executes each processing using the internal memory. Further, the control unit 13 functions as various processing units by running various programs. The control unit 13 has an operation unit 131 , an estimation unit 132 (calculation unit), a scheduling unit 133 (setting unit), and a rearrangement unit 134 .

稼働部131は、VNFをソフトウェア実装し、VNFを稼働させることで、パケット処理機能を実現する。 The operating unit 131 implements a packet processing function by implementing the VNF in software and operating the VNF.

見積部132は、VNFの再配置の間に生じる転送遅延の見積値を計算する。ここで、VNFのスケジューリングとして、VNFの再配置の順序が異なる複数のスケジューリングが設定されている。スケジューリングは、スケジューリングアルゴリズムに用いて設定される。 The estimator 132 calculates an estimate of the transfer delay that occurs during VNF relocation. Here, as VNF scheduling, a plurality of schedulings with different VNF rearrangement orders are set. Scheduling is set using a scheduling algorithm.

見積部132は、VNFの通過順序を示す順序情報を基に、VNFの再配置の順序が異なる複数のスケジューリングごとに、再配置の間に生じるパケットの転送遅延の見積値を計算する。見積部132は、VNF間のパケット転送遅延とVNFの再配置時間とを基に、再配置の間に生じるパケットの転送遅延の見積値を計算する。なお、VNFの再配置時間は、キューイング遅延を計算する際に使用される。 The estimating unit 132 calculates an estimated value of packet transfer delay that occurs during rearrangement for each of a plurality of schedulings in which the VNF rearrangement order is different, based on the order information indicating the VNF passing order. The estimator 132 calculates an estimated value of packet transfer delay occurring during rearrangement based on the packet transfer delay between VNFs and the VNF rearrangement time. Note that the VNF relocation time is used in calculating the queuing delay.

スケジューリング部133は、見積部132が計算した再配置の間に生じるパケットの転送遅延の見積値のうち、見積値が最小となるスケジューリングを選択する。スケジューリング部133は、選択したスケジューリングを基に、VNFの再配置の順序と、VNFの再配置の開始タイミングとを設定する。 The scheduling unit 133 selects the scheduling with the smallest estimated value among the estimated values of the packet transfer delay occurring during rearrangement calculated by the estimating unit 132 . The scheduling unit 133 sets the VNF rearrangement order and VNF rearrangement start timing based on the selected scheduling.

再配置部134は、スケジューリング部133が設定した順序及びタイミングにしたがってVNFをVNF稼働装置10Bに再配置する。 The rearrangement unit 134 rearranges the VNFs to the VNF operating device 10B according to the order and timing set by the scheduling unit 133 .

なお、VNF稼働装置10Bは、VNF稼働装置10Aと同じ構成であってもよい。VNF稼働装置10Bは、VNFの再配置先として、少なくともVNFを稼働できる機能があればよい。 The VNF operating device 10B may have the same configuration as the VNF operating device 10A. The VNF operating device 10B only needs to have at least a function of operating a VNF as a VNF relocation destination.

[スケジューリングアルゴリズムの一例]
次に、スケジューリングアルゴリズムの一例について説明する。図3及び図4は、スケジューリングアルゴリズムの一例を説明する図である。
[Example of scheduling algorithm]
An example of a scheduling algorithm will now be described. 3 and 4 are diagrams illustrating an example of a scheduling algorithm.

まず、図3を参照して、スケジューリングアルゴリズムの一例である下流側優先方法について説明する。下流側優先方法は、受信者側に近いVNFから再配置を開始する方法である。下流側優先方法は、受信者側に近い側、すなわち、下流側を優先して、各VNFを逐次的に再配置する方法である。言い換えると、下流側優先方法は、図3に示すように、最下流のVNFの再配置が完了したら、この再配置が完了したVNFに最も近い上流側のVNFの再配置を開始する。このように、下流側優先方法は、下流側を優先した順序でVNFの再配置を行う方法である。 First, with reference to FIG. 3, a downstream priority method, which is an example of a scheduling algorithm, will be described. The downstream priority method is a method in which relocation is initiated from the VNF closer to the recipient side. The downstream side priority method is a method of sequentially rearranging each VNF with priority given to the side closer to the receiver side, that is, the downstream side. In other words, the downstream priority method, as shown in FIG. 3, when the relocation of the most downstream VNF is completed, it starts relocating the upstream VNF closest to the VNF that has completed this relocation. In this way, the downstream side priority method is a method of relocating VNFs in an order that prioritizes the downstream side.

そして、図4を参照して、スケジューリングアルゴリズムの一例である並列方法について説明する。図4に示すように、並列方法は、全VNFを同時並列に再配置する方法である。 Then, a parallel method, which is an example of a scheduling algorithm, will be described with reference to FIG. As shown in FIG. 4, the parallel method is a method of rearranging all VNFs in parallel simultaneously.

[転送遅延の見積値の計算方法]
次に、スケジューリングアルゴリズムごとに、見積部132が実行する転送遅延の見積値の計算方法について説明する。まず、下流側優先方法における転送遅延の見積値の計算方法について説明する。図5は、トラヒックフローのVNFに対する通過順序の一例を示す図である。下流側優先方法は、下流側のVNF3が上流側のVNF1,VNF2よりも優先して再配置を開始する方法である。
[How to calculate transfer delay estimate]
Next, a method of calculating an estimated transfer delay value performed by the estimator 132 for each scheduling algorithm will be described. First, the calculation method of the transfer delay estimate value in the downstream priority method will be described. FIG. 5 is a diagram illustrating an example of the transit order of traffic flows to VNFs. The downstream priority method is a method in which VNF3 on the downstream side has priority over VNF1 and VNF2 on the upstream side to start relocation.

下流側優先方法における転送遅延の見積値を計算するために、サービルチェインを流れるパケットの到着間隔の平均に基づいて見積式fが設定される。見積式fは、VNFの再配置中の追加遅延の平均値の計算用の関数であり、パケットキューイング遅延の平均値と、ネットワーク経由による転送遅延とを加算した関数である。パケットキューイング遅延の平均値は、(1)式で表される。ネットワーク経由による転送遅延は(2)式で表される。 In order to calculate the estimated transfer delay in the downstream priority method, an estimation formula f is set based on the average arrival interval of packets flowing through the service chain. The estimation formula f is a function for calculating the average additional delay during VNF relocation, which is the sum of the average packet queuing delay and the transfer delay through the network. The average value of packet queuing delay is represented by equation (1). A transfer delay through the network is represented by the formula (2).

Figure 0007215601000001
Figure 0007215601000001

Figure 0007215601000002
Figure 0007215601000002

ここで、Tは、VNFiのステート転送時間である。iは、VNFのインデックス番号である。E[I]は、パケットの到着間隔の平均である。Dは、パケットがサーバ間をまたがりネットワーク経由で転送されるときの転送遅延である。そして、(1)式及び(2)式におけるTallは、VNFの全ステート転送時間であり、(3)式で表される。where T i is the state transfer time of VNFi. i is the VNF index number. E[I] is the average packet arrival interval. D is the transfer delay when the packet is transferred across the network between servers. In addition, T all in equations (1) and (2) is the total state transfer time of the VNF and is expressed by equation (3).

Figure 0007215601000003
Figure 0007215601000003

(1)式及び(2)式に示すように、下流側優先方法における見積式fは、TとE[I]と、を引数とする。下流側優先方法について、見積部132は、この見積式fを用いて、実行する転送遅延の再配置中の追加遅延の平均値を計算する。As shown in equations (1) and (2), the estimation equation f in the downstream priority method takes T i and E[I] as arguments. For the downstream priority method, the estimating unit 132 uses this estimation formula f to calculate the average value of the additional delay during rearrangement of transfer delays to be executed.

続いて、並列方法における転送遅延の見積値の計算方法について説明する。並列方法における転送遅延の見積値を計算する場合には、VNFの再配置中の追加遅延の平均値の計算用の関数である見積式gが設定される。 Next, a method of calculating an estimated transfer delay value in the parallel method will be described. When calculating the transfer delay estimate in the parallel method, an estimate equation g is set up which is a function for the calculation of the average additional delay during VNF relocation.

見積式gは、TとE[I]と、を引数とする。見積式gは、パケットキューイング遅延の平均値を示す関数である。並列方法では、パケットキューイング遅延の平均値は、(4)式で表される。The estimation formula g takes T i and E[I] as arguments. The estimation formula g is a function that indicates the average packet queuing delay. In the parallel method, the average value of packet queuing delay is given by equation (4).

Figure 0007215601000004
Figure 0007215601000004

(4)式におけるTparは、(5)式で表される。T par in the formula (4) is represented by the formula (5).

Figure 0007215601000005
Figure 0007215601000005

BWは、ステート転送用帯域である。Sは、j番目に短いステートサイズである。S´j-1,jは、j番目に短いステートサイズと、j-1番目に短いステートサイズの差であり、(6)式で表される。なお、S´0,1=Sとする。BW is a band for state transfer. S j is the jth shortest state size. S'j -1,j is the difference between the j-th shortest state size and the j-1th shortest state size, and is expressed by equation (6). Note that S'0,1 = S1 .

Figure 0007215601000006
Figure 0007215601000006

α(x)は、x個のVNFのステート転送を並列で行った時のスループット補正値であり、(7)式で表される。 α(x) is a throughput correction value when state transfers of x VNFs are performed in parallel, and is expressed by the formula (7).

Figure 0007215601000007
Figure 0007215601000007

ここで、図6を参照して、(5)式及び(6)式の各パラメータの説明をする。図6は、並列方法における転送遅延の見積値の計算において使用されるパラメータを説明する図である。 Here, with reference to FIG. 6, each parameter of the expressions (5) and (6) will be explained. FIG. 6 is a diagram for explaining parameters used in calculating transfer delay estimates in the parallel method.

図6において、各区間におけるステート転送のスループットは、ステート転送用帯域BWに、それぞれ対応するα(1),α(2),α(3)を乗じて補正される。そして、ステートサイズS,S,Sが、VNF1、VNF2、VNF3の順に大きく、各区間(VNF1に至るまでの区間、VNF1とVNF2との区間、VNF2とVNF3との区間)のステートサイズの差が、図6のように、S´0,1、S´1,2、S´2,3である場合、各区間にかかる時間は、各区間のステートサイズを、補正後のBWで除した値となる。そして、VNF1に至るまでの区間にかかる時間はS´0,1/(BW・α(1))となり、VNF1とVNF2との区間にかかる時間はS´1,2/(BW・α(2))となり、VNF2とVNF3との区間にかかる時間はS´2,3/(BW・α(3))となり、VNF2に対するステートサイズSのステートに対するステート転送時間が2番目に短いことが求められる(図6の(1)参照)。In FIG. 6, the state transfer throughput in each section is corrected by multiplying the state transfer bandwidth BW by the corresponding α(1), α(2), and α(3). The state sizes S 1 , S 2 , and S 3 are larger in the order of VNF1, VNF2, and VNF3, and the state size of each section (the section up to VNF1, the section between VNF1 and VNF2, and the section between VNF2 and VNF3) are S′ 0,1 , S′ 1,2 , and S′ 2,3 as shown in FIG. The value obtained by dividing The time required for the section up to VNF1 is S'0,1 /(BW·α(1)), and the time required for the section between VNF1 and VNF2 is S'1,2 /(BW·α(2 )), and the time required for the interval between VNF2 and VNF3 is S′ 2,3 /(BW·α(3)), and the state transfer time for the state with the state size S 2 for VNF2 is the second shortest. (See (1) in FIG. 6).

[スケジューリングの選択]
次に、スケジューリングの選択方法について説明する。見積部132は、各スケジューリングアルゴリズムに対応する、VNFの再配置中の追加遅延の平均値を計算する。例えば、見積部132は、下流側優先方法における見積式fを用いて、下流側優先方法におけるVNFの再配置中の追加遅延の平均値を計算する。そして、見積部132は、並列方法における見積式gを用いて、並列方法におけるVNFの再配置中の追加遅延の平均値を計算する。
Select Scheduling
Next, a method of selecting scheduling will be described. The estimator 132 calculates the average additional delay during VNF relocation corresponding to each scheduling algorithm. For example, the estimating unit 132 uses the estimation formula f in the downstream priority method to calculate the average additional delay during VNF relocation in the downstream priority method. Then, the estimating unit 132 calculates the average value of the additional delay during rearrangement of the VNFs in the parallel method using the estimation formula g in the parallel method.

そして、スケジューリング部133は、見積部132が計算した各方法の計算結果を基に、VNFの再配置中の追加遅延の平均値が最小となるスケジューリングを選択する。 Then, the scheduling unit 133 selects scheduling that minimizes the average value of additional delays during VNF rearrangement based on the calculation results of each method calculated by the estimating unit 132 .

図7は、スケジューリングごとに計算されたVNFの再配置中の追加遅延の平均値を示す図である。図7では、縦軸は、VNFの再配置中の追加遅延の平均値を示す。図7では、横軸は、上流側VNFのステートサイズが下流側VNFと上流側VNFとのステートサイズの総和に占める割合を示す。曲線L1,L2は、下流側優先方法によって計算されたVNFの再配置中の追加遅延の平均値を示す。曲線L3は、並列方法によって計算されたVNFの再配置中の追加遅延の平均値を示す。曲線L4は、上流側を優先した順序でVNFの再配置を行う上流優先方法によって計算されたVNFの再配置中の追加遅延の平均値を示す。 FIG. 7 shows the average added delay during VNF relocation calculated for each scheduling. In FIG. 7, the vertical axis represents the average additional delay during VNF relocation. In FIG. 7, the horizontal axis indicates the ratio of the state size of the upstream VNF to the sum of the state sizes of the downstream VNF and the upstream VNF. Curves L1 and L2 show the average additional delay during VNF relocation calculated by the downstream priority method. Curve L3 shows the average additional delay during VNF relocation calculated by the parallel method. Curve L4 shows the average additional delay during VNF relocation calculated by the upstream-first method of relocating VNFs in upstream-first order.

上流側VNFと下流側VNFとのステートサイズの比が、4:1である場合を例に説明する。この場合、上流側VNFのステートサイズが下流側VNFと上流側VNFとのステートサイズの総和に占める割合が、0.8となる。図7に示すように、横軸の0.8の値に対応するVNFの再配置中の追加遅延の平均値は、曲線L1に示す下流側優先方法において、最小値d1をとる。 A case where the state size ratio between the upstream VNF and the downstream VNF is 4:1 will be described as an example. In this case, the ratio of the state size of the upstream VNF to the sum of the state sizes of the downstream VNF and the upstream VNF is 0.8. As shown in FIG. 7, the average added delay during VNF relocation corresponding to a value of 0.8 on the horizontal axis takes the minimum value d1 in the downstream-first method shown by curve L1.

このため、上流側VNFと下流側VNFとのステートサイズの比が、4:1である場合、スケジューリング部133は、下流側優先方法を選択する。なお、スケジューリング部133は、再配置中に条件が変わった場合には、条件の変更に合わせて、VNFの再配置中の追加遅延の平均値を見積部132にスケジューリングごとに計算させ、追加遅延の平均値が最小となるスケジューリングに変更してもよい。 Therefore, when the state size ratio between the upstream VNFs and the downstream VNFs is 4:1, the scheduling unit 133 selects the downstream priority method. Note that, if the conditions change during relocation, the scheduling unit 133 causes the estimating unit 132 to calculate the average value of the additional delay during VNF relocation for each scheduling in accordance with the change in the conditions, and calculates the additional delay. may be changed to a scheduling that minimizes the average value of .

[VNFの再配置処理]
次に、VNF稼働装置10AによるVNFの再配置処理の処理手順について説明する。図8は、実施の形態に係るVNFの再配置処理の処理手順を示すフローチャートである。
[VNF Relocation Processing]
Next, a processing procedure of VNF rearrangement processing by the VNF operating device 10A will be described. FIG. 8 is a flowchart illustrating a processing procedure of VNF relocation processing according to the embodiment.

VNF稼働装置10Aは、VNFの再配置を行う際、再配置先のVNF稼働装置10BにVNFの処理を行うために必要なデータを転送する。まず、図8に示すように、VNF稼働装置10Aでは、再配置部134が、再配置先のVNF稼働装置10BにおいてVNFの再配置に伴うデータ転送量(ステートサイズ)ならびに転送時間を測定する(ステップS1)。例えば、転送データ量とデータ転送用回線のスループットの計測値とをもとに、転送データ量の計測値でデータ転送用回線のスループットの計測値の計測値を除算することで転送遅延を見積もる方法がある。 When performing VNF relocation, the VNF operating device 10A transfers data necessary for VNF processing to the relocation destination VNF operating device 10B. First, as shown in FIG. 8, in the VNF operating device 10A, the rearrangement unit 134 measures the data transfer amount (state size) and transfer time associated with VNF rearrangement in the relocation destination VNF operating device 10B ( step S1). For example, based on the amount of data transferred and the measured throughput of the data transfer line, a method of estimating the transfer delay by dividing the measured value of the throughput of the data transfer line by the measured value of the transfer data amount. There is

そして、見積部132が、再配置を行うVNFが稼働していた再配置元サーバである自装置と再配置先のサーバであるVNF稼働装置10Bとの間のデータパケット転送遅延を測定する(ステップS2)。 Then, the estimating unit 132 measures the data packet transfer delay between the own device, which is the relocation source server on which the VNF to be relocated was operating, and the VNF operating device 10B, which is the relocation destination server (step S2).

続いて、VNF稼働装置10Aでは、データ転送時間とパケット転送遅延とを取得した後、スケジューリング選択処理を行う(ステップS3)。ステップS3において、見積部132は、複数のスケジューリングごとに、VNFの再配置の間に生じるパケットの転送遅延の見積値を計算する。そして、ステップS3において、スケジューリング部133は、見積部132が計算した転送遅延の見積値のうち、見積値が最小となるスケジューリングを選択する。 Subsequently, in the VNF operating device 10A, after acquiring the data transfer time and the packet transfer delay, scheduling selection processing is performed (step S3). In step S3, the estimating unit 132 calculates an estimated value of packet transfer delay occurring during VNF relocation for each of a plurality of schedulings. Then, in step S<b>3 , the scheduling unit 133 selects the scheduling with the smallest estimated value among the transfer delay estimated values calculated by the estimating unit 132 .

VNF稼働装置10Aでは、スケジューリング部133が、選択したスケジューリングを基に、VNFの再配置の順序と、VNFの再配置の開始タイミングとを設定するスケジューリング処理を行う(ステップS4)。再配置部134は、スケジューリング部133が設定した順序及びタイミングにしたがってVNFをVNF稼働装置10Bに再配置する(ステップS5)。 In the VNF operating device 10A, the scheduling unit 133 performs scheduling processing for setting the VNF relocation order and VNF relocation start timing based on the selected scheduling (step S4). The rearrangement unit 134 rearranges the VNFs to the VNF operating device 10B according to the order and timing set by the scheduling unit 133 (step S5).

[スケジューリング選択処理]
次に、図8に示すスケジューリング選択処理(ステップS3)の処理手順について説明する。図9は、図8に示すスケジューリング選択処理の処理手順を示すフローチャートである。
[Scheduling selection process]
Next, the processing procedure of the scheduling selection processing (step S3) shown in FIG. 8 will be described. FIG. 9 is a flow chart showing a processing procedure of scheduling selection processing shown in FIG.

図9に示すように、見積部132は、再配置元のVNF稼働装置10Aと再配置先のVNF稼働装置10Bとの間の転送遅延と、VNFのステートサイズとの入力を受け付ける(ステップS11)。そして、見積部132は、スケジューリングごとに、再配置の間に生じるパケットの転送遅延の見積値を計算する(ステップS12)。この際、見積部132は、下流側優先方法の場合、(1)式~(3)式を用いて、見積式fを求め、再配置の間に生じるパケットの転送遅延の見積値を計算する。また、見積部132は、並列方法の場合、(4)式~(7)式を用いて、見積式gを求め、再配置の間に生じるパケットの転送遅延の見積値を計算する。 As shown in FIG. 9, the estimating unit 132 receives input of the transfer delay between the relocation source VNF operating device 10A and the relocation destination VNF operating device 10B and the state size of the VNF (step S11). . Then, the estimating unit 132 calculates an estimated value of packet transfer delay that occurs during rearrangement for each scheduling (step S12). At this time, in the case of the downstream priority method, the estimating unit 132 obtains the estimation formula f using the formulas (1) to (3), and calculates the estimated value of the packet transfer delay that occurs during rearrangement. . In the case of the parallel method, the estimating unit 132 obtains an estimating formula g using formulas (4) to (7), and calculates an estimated value of the packet transfer delay that occurs during rearrangement.

そして、スケジューリング部133は、計算した転送遅延の見積値が最小となる再配置のスケジューリングを選択して(ステップS13)、スケジューリング選択処理を終了する。 Then, the scheduling unit 133 selects the rearrangement scheduling that minimizes the calculated transfer delay estimate value (step S13), and ends the scheduling selection process.

[実施の形態の効果]
図10は、従来のVNFの再配置を説明する図である。図11は、実施の形態におけるVNFの再配置を説明する図である。
[Effects of Embodiment]
FIG. 10 is a diagram for explaining conventional rearrangement of VNFs. FIG. 11 is a diagram illustrating rearrangement of VNFs according to the embodiment.

従来の方法では、トラヒックフローのパケット処理機能に対する通過順序が決まっている場合、VNFの再配置中において、パケットキューイング遅延やパケットがネットワークを経由することによる遅延増加を回避することができず、図10に示すように、VNFの再配置中にパケット転送の遅延が発生する。このため、従来の方法では、長距離を移動したVRやARのユーザに、ユーザのアクションを滑らかに仮想空間に反映できない。 In the conventional method, when the order of passage of the traffic flow to the packet processing function is fixed, it is not possible to avoid packet queuing delay and delay increase due to packets passing through the network during VNF relocation, As shown in FIG. 10, packet transfer delays occur during VNF relocation. For this reason, the conventional method cannot smoothly reflect the user's actions in the virtual space for a VR or AR user who has moved a long distance.

これに対し、本実施の形態に係るVNF稼働装置10Aは、トラヒックフローが通過するVNFの通過順序を示す順序情報を基に、VNFの再配置の順序が異なる複数のスケジューリングごとに、再配置の間に生じるパケットの転送遅延の見積値を計算する。そして、VNF稼働装置10Aは、計算した転送遅延の見積値が最小となるスケジューリングを基に、VNFの再配置の順序とVNFの再配置の開始タイミングとを設定し、設定した順序及びタイミングにしたがってVNFをVNF稼働装置10Bに再配置する。 On the other hand, the VNF operating device 10A according to the present embodiment performs rearrangement for each of a plurality of schedulings with different VNF rearrangement orders based on order information indicating the passage order of the VNFs through which the traffic flow passes. Compute an estimate of the intervening packet transfer delay. Then, the VNF operating device 10A sets the VNF rearrangement order and VNF rearrangement start timing based on the scheduling that minimizes the calculated transfer delay estimate value, and according to the set order and timing, Relocate the VNF to the VNF operating device 10B.

このように、VNF稼働装置10Aは、パケットがサーバ間で転送されるときの転送遅延や再配置中のVNFに到着したときに生じるキューイング遅延を、VNFの再配置に対するスケジューリングを変更することにより改善することができる。このため、VNF稼働装置10Aは、図11に示すように、VNFの再配置中にパケットが被る遅延を従来の方法よりも抑制でき、低遅延通信が必要なサービスの体感品質を維持することができる。 In this way, the VNF operating device 10A reduces the transfer delay when a packet is transferred between servers and the queuing delay that occurs when a packet arrives at a VNF being relocated by changing the scheduling for VNF relocation. can be improved. Therefore, as shown in FIG. 11, the VNF operating device 10A can suppress the delay incurred by packets during relocation of VNFs more than the conventional method, and can maintain the quality of experience of services that require low-delay communication. can.

これにより、VNF稼働装置10Aは、サーバのロードバランシングやメンテナンスのためにサーバや経路上のVNFの再配置を行う間の転送遅延を従来よりも抑制できるため、仮想空間でのイベントを自然な形で体験するために処理サーバからのデータを端末に短い遅延で送信する必要があるARやVR提供時においても、体感品質を損ねることがなくなる。 As a result, the VNF operating device 10A can reduce the transfer delay during relocation of servers and VNFs on paths for server load balancing and maintenance. Even when providing AR or VR, which requires data from the processing server to be transmitted to the terminal with a short delay in order to be experienced in real life, the quality of experience is not impaired.

したがって、VNF稼働装置10Aによれば、トラヒックフローのパケット処理機能に対する通過順序が決まっている場合におけるパケット処理機能の再配置中に生じる転送遅延を低減することができる。 Therefore, according to the VNF operating device 10A, it is possible to reduce the transfer delay that occurs during rearrangement of the packet processing functions when the traffic flow passing order to the packet processing functions is determined.

本実施の形態は、トラヒックフローのVNFに対する通過順序が決まっているVNFの再配置に限らず、アプリケーションレイヤ等のデータを処理するデータ処理機能を有する仮想マシンが、他のサーバ装置へ移行する際の移行方法にも適用でき、データ処理機能の再配置中に生じる転送遅延を低減することが可能である。 The present embodiment is not limited to the relocation of VNFs in which the order of passage of traffic flows to VNFs is determined, but is also applicable when a virtual machine having a data processing function for processing data such as an application layer migrates to another server device. It is possible to reduce the transfer delay that occurs during rearrangement of data processing functions.

[実施形態のシステム構成について]
図1に示したVNF稼働装置10A,10Bの各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、VNF稼働装置10A,10Bの機能の分散および統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。
[About the system configuration of the embodiment]
Each component of the VNF operating devices 10A and 10B shown in FIG. 1 is functionally conceptual, and does not necessarily need to be physically configured as shown. That is, the specific forms of distribution and integration of the functions of the VNF operating devices 10A and 10B are not limited to those shown in the drawings, and all or part of them can be functionally distributed in arbitrary units according to various loads and usage conditions. Alternatively, it can be physically distributed or integrated.

また、VNF稼働装置10A,10Bにおいておこなわれる各処理は、全部または任意の一部が、CPUおよびCPUにより解析実行されるプログラムにて実現されてもよい。また、VNF稼働装置10A,10Bにおいておこなわれる各処理は、ワイヤードロジックによるハードウェアとして実現されてもよい。 Further, each process performed in the VNF operating devices 10A and 10B may be implemented entirely or in part by a CPU and a program analyzed and executed by the CPU. Further, each process performed in the VNF operating devices 10A and 10B may be implemented as hardware based on wired logic.

また、実施の形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともできる。もしくは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述および図示の処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて適宜変更することができる。 Moreover, among the processes described in the embodiments, all or part of the processes described as being automatically performed can also be performed manually. Alternatively, all or part of the processes described as being performed manually can be performed automatically by known methods. In addition, the above-described and illustrated processing procedures, control procedures, specific names, and information including various data and parameters can be changed as appropriate unless otherwise specified.

[プログラム]
図12は、プログラムが実行されることにより、VNF稼働装置10A,10Bが実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
[program]
FIG. 12 is a diagram showing an example of a computer that implements the VNF operating devices 10A and 10B by executing a program. The computer 1000 has a memory 1010 and a CPU 1020, for example. Computer 1000 also has hard disk drive interface 1030 , disk drive interface 1040 , serial port interface 1050 , video adapter 1060 and network interface 1070 . These units are connected by a bus 1080 .

メモリ1010は、ROM1011およびRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。 Memory 1010 includes ROM 1011 and RAM 1012 . The ROM 1011 stores a boot program such as BIOS (Basic Input Output System). Hard disk drive interface 1030 is connected to hard disk drive 1090 . A disk drive interface 1040 is connected to the disk drive 1100 . A removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1100 . Serial port interface 1050 is connected to mouse 1110 and keyboard 1120, for example. Video adapter 1060 is connected to display 1130, for example.

ハードディスクドライブ1090は、例えば、OS(Operating System)1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、VNF稼働装置10A,10Bの各処理を規定するプログラムは、コンピュータ1000により実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、VNF稼働装置10A,10Bにおける機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。 The hard disk drive 1090 stores an OS (Operating System) 1091, application programs 1092, program modules 1093, and program data 1094, for example. That is, a program that defines each process of the VNF operating devices 10A and 10B is implemented as a program module 1093 in which code executable by the computer 1000 is described. Program modules 1093 are stored, for example, on hard disk drive 1090 . For example, the hard disk drive 1090 stores a program module 1093 for executing processing similar to the functional configuration in the VNF operating devices 10A and 10B. The hard disk drive 1090 may be replaced by an SSD (Solid State Drive).

また、上述した実施の形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。 Also, the setting data used in the processing of the above-described embodiment is stored as program data 1094 in the memory 1010 or the hard disk drive 1090, for example. Then, the CPU 1020 reads out the program module 1093 and the program data 1094 stored in the memory 1010 and the hard disk drive 1090 to the RAM 1012 as necessary and executes them.

なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093およびプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093およびプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。 The program modules 1093 and program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in a removable storage medium, for example, and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, program modules 1093 and program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). Program modules 1093 and program data 1094 may then be read by CPU 1020 through network interface 1070 from other computers.

以上、本発明者によってなされた発明を適用した実施の形態について説明したが、本実施の形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例および運用技術等はすべて本発明の範疇に含まれる。 Although the embodiments to which the invention made by the present inventor is applied have been described above, the present invention is not limited by the descriptions and drawings forming part of the disclosure of the present invention according to the embodiments. That is, other embodiments, examples, operation techniques, etc. made by those skilled in the art based on the present embodiment are all included in the scope of the present invention.

100 通信システム
10A,10B VNF(Virtual Network Function)稼働装置
11 通信部
12 記憶部
13 制御部
121 ネットワークパラメータデータベース(DB)
131 稼働部
132 見積部
133 スケジューリング部
134 再配置部
100 communication system 10A, 10B VNF (Virtual Network Function) operating device 11 communication unit 12 storage unit 13 control unit 121 network parameter database (DB)
131 Operation Unit 132 Estimation Unit 133 Scheduling Unit 134 Rearrangement Unit

Claims (6)

データ処理機能を他の装置に再配置してデータ処理を継続させる処理装置であって、
装置間の通信関係を示す情報を記憶する記憶部と、
前記通信関係を示す情報を基に、前記データ処理機能の再配置の順序が異なる複数のスケジューリングごとに、再配置の間に生じるデータの転送遅延の見積値を計算する計算部と、
前記計算部によって計算された見積値が最小となる前記スケジューリングを選択し、選択した前記スケジューリングを基に、前記データ処理機能の再配置の順序と前記データ処理機能の再配置の開始タイミングとを設定する設定部と、
前記設定部が設定した順序及びタイミングにしたがって前記データ処理機能を前記他の装置に再配置する再配置部と、
を有することを特徴とする処理装置。
A processing device that relocates data processing functions to another device to continue data processing,
a storage unit that stores information indicating communication relationships between devices;
a calculation unit that calculates, based on the information indicating the communication relationship, an estimated value of a data transfer delay occurring during rearrangement for each of a plurality of schedulings in which the order of rearrangement of the data processing functions is different;
Selecting the scheduling that minimizes the estimated value calculated by the calculating unit, and setting the order of rearrangement of the data processing functions and the start timing of the rearrangement of the data processing functions based on the selected scheduling. a setting unit for
a relocation unit that relocates the data processing functions to the other device according to the order and timing set by the setting unit;
A processing apparatus comprising:
前記記憶部は、前記装置間の通信関係を示す情報として、トラヒックフローが通過する前記データ処理機能の通過順序を示す順序情報を記憶することを特徴とする請求項1に記載の処理装置。 2. The processing apparatus according to claim 1, wherein said storage unit stores, as information indicating a communication relationship between said apparatuses, order information indicating a passage order of said data processing functions through which a traffic flow passes. 前記計算部は、前記データ処理機能間のデータ転送遅延と前記データ処理機能の再配置時間とをもとに、前記再配置の間に生じるデータの転送遅延の見積値を計算することを特徴とする請求項1または2に記載の処理装置。 The calculation unit calculates an estimated value of the data transfer delay occurring during the relocation based on the data transfer delay between the data processing functions and the relocation time of the data processing functions. 3. The processing apparatus according to claim 1 or 2. 前記複数のスケジューリングは、受信者側に近い前記データ処理機能から再配置を開始する方法と、全データ処理機能に対し同時に再配置を開始する方法と、を含むことを特徴とする請求項1~3のいずれか一つに記載の処理装置。 1-, wherein the plurality of scheduling includes a method of starting rearrangement from the data processing function closer to the receiver side, and a method of starting rearrangement simultaneously for all data processing functions. 4. The processing apparatus according to any one of 3. データ処理機能を他の装置に再配置してデータ処理を継続させる処理装置であって、
装置間の通信関係を示す情報を基に、前記データ処理機能の再配置の順序が異なる複数のスケジューリングごとに、再配置の間に生じるデータの転送遅延の見積値を計算する工程と、
計算された前記見積値が最小となる前記スケジューリングを選択し、選択した前記スケジューリングを基に、前記データ処理機能の再配置の順序と前記データ処理機能の再配置の開始タイミングとを設定する工程と、
設定された順序及びタイミングにしたがって前記データ処理機能を前記他の装置に再配置する工程と、
を含んだことを特徴とする再配置方法。
A processing device that relocates data processing functions to another device to continue data processing,
calculating an estimated value of data transfer delay occurring during rearrangement for each of a plurality of schedulings in which the order of rearrangement of the data processing functions is different, based on information indicating communication relationships between devices;
selecting the scheduling that minimizes the calculated estimated value, and setting the order of rearrangement of the data processing functions and the start timing of the rearrangement of the data processing functions based on the selected scheduling; ,
relocating the data processing functions to the other device according to a set order and timing;
A relocation method characterized by including
装置間の通信関係を示す情報を基に、データ処理機能の再配置の順序が異なる複数のスケジューリングごとに、再配置の間に生じるデータの転送遅延の見積値を計算するステップと、
計算された前記見積値が最小となる前記スケジューリングを選択し、選択した前記スケジューリングを基に、前記データ処理機能の再配置の順序と前記データ処理機能の再配置の開始タイミングとを設定するステップと、
設定された順序及びタイミングにしたがって前記データ処理機能を他の装置に再配置するステップと、
をコンピュータに実行させるための再配置プログラム。
calculating an estimated value of data transfer delay occurring during rearrangement for each of a plurality of schedulings in which the order of rearrangement of data processing functions is different, based on information indicating communication relationships between devices;
selecting the scheduling that minimizes the calculated estimated value, and setting the order of rearrangement of the data processing functions and the start timing of the rearrangement of the data processing functions based on the selected scheduling; ,
relocating the data processing functions to other devices according to a set order and timing;
A relocation program that causes a computer to run
JP2021569677A 2020-01-09 2020-01-09 Processing device, relocation method and relocation program Active JP7215601B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/000513 WO2021140630A1 (en) 2020-01-09 2020-01-09 Processing device, relocation method, and relocation program

Publications (2)

Publication Number Publication Date
JPWO2021140630A1 JPWO2021140630A1 (en) 2021-07-15
JP7215601B2 true JP7215601B2 (en) 2023-01-31

Family

ID=76787816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021569677A Active JP7215601B2 (en) 2020-01-09 2020-01-09 Processing device, relocation method and relocation program

Country Status (3)

Country Link
US (1) US11895037B2 (en)
JP (1) JP7215601B2 (en)
WO (1) WO2021140630A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018056873A1 (en) 2016-09-20 2018-03-29 Telefonaktiebolaget Lm Ericsson (Publ) Virtualised network function manager and method performed thereby for managing a virtual network function
JP2019128912A (en) 2018-01-26 2019-08-01 日本電信電話株式会社 Process processing apparatus, process processing system, process migration order determination method, and program
WO2019225420A1 (en) 2018-05-24 2019-11-28 日本電信電話株式会社 Conversion device and conversion program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9870244B2 (en) * 2014-12-29 2018-01-16 International Business Machines Corporation Optimized migration of virtual objects across environments in a cloud computing environment
CN106657173B (en) * 2015-10-29 2020-01-17 华为技术有限公司 Service migration method, device and server in software upgrading under NFV architecture
US10673716B1 (en) * 2017-10-31 2020-06-02 Amazon Technologies, Inc. Graph-based generation of dependency-adherent execution plans for data center migrations
WO2021103016A1 (en) * 2019-11-29 2021-06-03 华为技术有限公司 Packet transmission method, communication device, and communication system
US10721315B1 (en) * 2019-12-12 2020-07-21 Eci Telecom Ltd. Developing and implementing migration sequences in data communication networks
CN113098917A (en) * 2019-12-23 2021-07-09 华为技术有限公司 Method for migrating functional nodes and related equipment
US11627034B1 (en) * 2022-01-01 2023-04-11 Vmware, Inc. Automated processes and systems for troubleshooting a network of an application

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018056873A1 (en) 2016-09-20 2018-03-29 Telefonaktiebolaget Lm Ericsson (Publ) Virtualised network function manager and method performed thereby for managing a virtual network function
JP2019128912A (en) 2018-01-26 2019-08-01 日本電信電話株式会社 Process processing apparatus, process processing system, process migration order determination method, and program
WO2019225420A1 (en) 2018-05-24 2019-11-28 日本電信電話株式会社 Conversion device and conversion program

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
平山孝弘 他,エンコーダ・デコーダRNNを用いたサービスファンクション移行スケジューリング手法の検討,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2019年02月25日,Vol. 118, No. 466,pp. 349-354
望月このみ 他,サービス断時間短縮を可能とする仮想エッジVNF再配置手法,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2015年11月19日,Vol. 115, No. 326,pp. 1-6

Also Published As

Publication number Publication date
JPWO2021140630A1 (en) 2021-07-15
WO2021140630A1 (en) 2021-07-15
US20230024732A1 (en) 2023-01-26
US11895037B2 (en) 2024-02-06

Similar Documents

Publication Publication Date Title
US9378032B2 (en) Information processing method, information processing apparatus, recording medium, and system
JP2018198068A (en) Profile-based sla guarantees under workload migration in distributed cloud
US8385358B2 (en) Simple low-jitter scheduler
EP3198842B1 (en) Managing classified network streams
US8745215B2 (en) Network delay analysis including parallel delay effects
WO2015194182A1 (en) Service chain management apparatus, service chain management system, service chain management method, and program recording medium
WO2017096842A1 (en) Content delivery task submission method and system
KR20150071621A (en) A method for round trip time in content centric networks
CN110048966B (en) Coflow scheduling method for minimizing system overhead based on deadline
US7130915B1 (en) Fast transaction response time prediction across multiple delay sources
WO2017096837A1 (en) Inter-node distance measurement method and system
JP7215601B2 (en) Processing device, relocation method and relocation program
JP6279436B2 (en) Virtual network allocation method and apparatus
EP3885910A1 (en) Dynamic quality of service management for deep learning training communication
CN111817985A (en) Service processing method and device
CN110971451B (en) NFV resource allocation method
WO2021000694A1 (en) Method for deploying services and scheduling apparatus
WO2019167859A1 (en) Estimating device and estimating method
WO2020158444A1 (en) Processing device and moving method
Reeser et al. An analytic model of web servers in distributed computing environments
JP6232698B2 (en) Network switching device, task moving method, and task moving program
WO2020100652A1 (en) Processing request management device, processing request management method, and program
JP2007179359A (en) Task control method and task input controller
Meyer et al. Low latency packet processing in software routers
US8804521B1 (en) Quality of service for inbound network traffic flows during slow-start phases

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220415

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230102

R150 Certificate of patent or registration of utility model

Ref document number: 7215601

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150