JP2018169978A - Control apparatus, control system, control method, and program - Google Patents
Control apparatus, control system, control method, and program Download PDFInfo
- Publication number
- JP2018169978A JP2018169978A JP2017069248A JP2017069248A JP2018169978A JP 2018169978 A JP2018169978 A JP 2018169978A JP 2017069248 A JP2017069248 A JP 2017069248A JP 2017069248 A JP2017069248 A JP 2017069248A JP 2018169978 A JP2018169978 A JP 2018169978A
- Authority
- JP
- Japan
- Prior art keywords
- storage area
- virtual
- address
- unit
- storage
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45583—Memory management, e.g. access or allocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、制御装置、制御システム、制御方法及びプログラムに関する。 The present invention relates to a control device, a control system, a control method, and a program.
ネットワーク機器(ルータ、ゲートウェイ、ファイアウォール、ロードバランサ等)の機能を仮想化する、ネットワーク機能仮想化(NFV;Network Function Virtualisation)の利用が広がっている。NFVにおいては、仮想マシン上で、ネットワーク機器の機能を実行することで、仮想マシンは、ネットワーク機器の機能を代替する。そして、近年、NFVにおいては、ネットワークのパフォーマンスの向上が求められている。 The use of network function virtualization (NFV), which virtualizes functions of network devices (routers, gateways, firewalls, load balancers, etc.), is spreading. In NFV, the virtual machine substitutes for the function of the network device by executing the function of the network device on the virtual machine. In recent years, NFV has been required to improve network performance.
特許文献1においては、物理インフラの計算機ノード毎の計算機資源量と、リンク毎のネットワーク資源量とに基づいて、仮想マシンと計算機ノードとの収容関係を探し、仮想マシン及び仮想接続を物理インフラ上に構築する技術が記載されている。
In
特許文献2においては、ホストOSにおいて動作可能な外部プロセスと、仮想マシンとを接続する仮想通信路を、仮想マシン内で動作するゲストOS(Operating System)に構築させる技術が記載されている。 Japanese Patent Application Laid-Open No. 2004-228688 describes a technique for constructing a virtual communication path that connects an external process operable in a host OS and a virtual machine in a guest OS (Operating System) operating in the virtual machine.
特許文献3においては、1つ以上の仮想コンテナ内に、ネットワーク機能を配置し、仮想化ネットワークノードに対応するグループ識別子を使用して、仮想コンテナをグループ化する技術が記載されている。特許文献3に記載される技術においては、複数の仮想コンテナに分散してネットワーク機能を配置した場合であっても、仮想コンテナをグループ化することで、各仮想コンテナに対するリソースの割り当てを容易にする。 Patent Document 3 describes a technique in which network functions are arranged in one or more virtual containers, and virtual containers are grouped using group identifiers corresponding to virtual network nodes. In the technique described in Patent Document 3, even when a network function is distributed in a plurality of virtual containers, grouping of virtual containers facilitates resource allocation to each virtual container. .
ここで、非特許文献1においては、ETSI(European Telecommunications Standards Institute) NFV標準として、NFVを実現するための構成が開示されている。
Here, Non-Patent
さらに、近年、ETSI NFVにおいて、ネットワークのパフォーマンスの向上、総保有コスト(TCO;Total Cost of Ownership)の削減等を目的として、NFVI(Network Function Virtualisation Infrastructure)、VNF(Virtual Network Function)の一部の処理を、アクセラレータを用いて、オフロードすることが検討されている。例えば、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、NPU(Network Processing Unit)等のアクセラレータを用いて、NFVI、VNFの一部の処理をオフロードすることが検討されている。 Furthermore, in recent years, some of NFVI (Network Function Virtualization Infrastructure) and VNF (Virtual Network Function) are part of ETSI NFV for the purpose of improving network performance and reducing total cost of ownership (TCO). It is considered to offload processing using an accelerator. For example, using an accelerator such as a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or a network processing unit (NPU) to offload a part of processing of NFVI and VNF is being studied.
非特許文献2においては、ETSI NFVにおいて、アクセラレータを適用することで、NFVを構成する各機能コンポーネントに対して与える影響、及び各機能コンポーネント間の参照点(reference point)に対して与える影響について記載されている。
Non-Patent
非特許文献3(特に「5 Use Cases」)においては、ETSI NFVにおいて、アクセラレータを用いて、NFVI、VNFの一部の処理をオフロードする、VNFのユースケースの一例が記載されている。 Non-Patent Document 3 (particularly “5 Use Cases”) describes an example of a VNF use case in which some processing of NFVI and VNF is offloaded using an accelerator in ETSI NFV.
なお、上記先行技術文献の開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明の観点からなされたものである。 The disclosure of the above prior art document is incorporated herein by reference. The following analysis has been made from the viewpoint of the present invention.
上記の通り、非特許文献2において、アクセラレータを適用することで、NFVを構成する機能コンポーネント等に対して与える影響が記載されている。また、非特許文献3においては、アクセラレータを用いて、NFVI、VNFの一部の処理をオフロードする、VNFのユースケースの一例が記載されている。しかし、非特許文献1〜3においては、アクセラレータを適用した構成において、ホストマシンとゲストマシン間における通信速度の向上については記載されていない。
As described above, Non-Patent
また、特許文献1〜3に記載された技術においては、NFVにおいて、アクセラレータを用いて、ホストマシンとゲストマシン間における通信速度の向上を実現する方法は記載されていない。
In addition, in the techniques described in
そこで、本発明は、ホストマシンとゲストマシン間における通信速度の向上に貢献する制御装置、制御システム、制御方法及びプログラムを提供することを目的とする。 SUMMARY An advantage of some aspects of the invention is that it provides a control device, a control system, a control method, and a program that contribute to an improvement in communication speed between a host machine and a guest machine.
本発明の第1の視点によれば、制御装置が提供される。該制御装置は、仮想ネットワーク機能を制御する1又は2以上の仮想マシンと、仮想マシンを制御するホストマシンとを含んで構成される。
該制御装置は、前記仮想マシンを制御する、仮想制御部を備える。
さらに、該制御装置は、前記ホストマシンを制御する、物理制御部を備える。
さらに、該制御装置は、前記仮想制御部及び前記物理制御部がアクセス可能である、第1の記憶部を備える。
前記第1の記憶部は、第1の記憶領域と、第2の記憶領域とを含んで構成される。
前記第1の記憶領域は、パケットデータが格納される。
前記第2の記憶領域は、前記第1の記憶領域を特定する仮想アドレスが格納される。
さらに、該制御装置は、前記第2の記憶領域に格納される前記仮想アドレスに基づいて、前記第1の記憶領域を特定し、特定した前記第1の記憶領域から、パケットデータを読み出す。
According to a first aspect of the present invention, a control device is provided. The control device includes one or more virtual machines that control the virtual network function and a host machine that controls the virtual machines.
The control device includes a virtual control unit that controls the virtual machine.
Further, the control device includes a physical control unit that controls the host machine.
Furthermore, the control device includes a first storage unit that is accessible to the virtual control unit and the physical control unit.
The first storage unit includes a first storage area and a second storage area.
In the first storage area, packet data is stored.
The second storage area stores a virtual address that identifies the first storage area.
Further, the control device specifies the first storage area based on the virtual address stored in the second storage area, and reads packet data from the specified first storage area.
本発明の第2の視点によれば、制御システムが提供される。該制御システムは、仮想ネットワーク機能を制御する1又は2以上の仮想マシンと、仮想マシンを制御するホストマシンとを含んで構成される制御装置と、前記仮想マシンを割り当てる管理ノードと、を含んで構成される。
該制御装置は、前記仮想マシンを制御する、仮想制御部を備える。
さらに、該制御装置は、前記ホストマシンを制御する、物理制御部を備える。
さらに、該制御装置は、前記仮想制御部及び前記物理制御部がアクセス可能である、第1の記憶部を備え、前記第1の記憶部は、第1の記憶領域と、第2の記憶領域とを含んで構成される。
前記第1の記憶領域は、パケットデータが格納される。
前記第2の記憶領域は、前記第1の記憶領域を特定する仮想アドレスが格納される。
さらに、該制御装置は、前記第2の記憶領域に格納される前記仮想アドレスに基づいて、前記第1の記憶領域を特定し、特定した前記第1の記憶領域から、パケットデータを読み出す。
According to a second aspect of the present invention, a control system is provided. The control system includes one or more virtual machines that control a virtual network function, a control device that includes a host machine that controls the virtual machines, and a management node that allocates the virtual machines. Composed.
The control device includes a virtual control unit that controls the virtual machine.
Further, the control device includes a physical control unit that controls the host machine.
The control device further includes a first storage unit that is accessible to the virtual control unit and the physical control unit, and the first storage unit includes a first storage area and a second storage area. It is comprised including.
In the first storage area, packet data is stored.
The second storage area stores a virtual address that identifies the first storage area.
Further, the control device specifies the first storage area based on the virtual address stored in the second storage area, and reads packet data from the specified first storage area.
本発明の第3の視点によれば、制御方法が提供される。該制御方法は、制御装置の制御方法である。該制御装置は、仮想ネットワーク機能を制御する1又は2以上の仮想マシンと、仮想マシンを制御するホストマシンとを含んで構成され、前記仮想マシンを制御する、仮想制御部と、前記ホストマシンを制御する、物理制御部と、前記仮想制御部及び前記物理制御部がアクセス可能である、第1の記憶部と、を備え、該第1の記憶部は、第1の記憶領域と、第2の記憶領域とを含んで構成される。
該制御方法は、前記第1の記憶領域に、パケットデータを格納する工程を含む。
該制御方法は、前記第2の記憶領域に、前記第1の記憶領域を特定する仮想アドレスを格納する工程を含む。
該制御方法は、前記第2の記憶領域に格納される前記仮想アドレスに基づいて、前記第1の記憶領域を特定する工程を含む。
該制御方法は、特定された前記第1の記憶領域から、パケットデータを読み出す工程を含む。
なお、本方法は、仮想ネットワーク機能を制御する1又は2以上の仮想マシンと、仮想マシンを制御するホストマシンとを含んで構成される制御装置という、特定の機械に結び付けられている。
According to a third aspect of the present invention, a control method is provided. The control method is a control method of the control device. The control device includes one or more virtual machines that control a virtual network function and a host machine that controls the virtual machines, and controls a virtual control unit that controls the virtual machines, and the host machine. A physical control unit that controls, a first storage unit that is accessible to the virtual control unit and the physical control unit, wherein the first storage unit includes a first storage area, a second storage unit, and a second storage unit. And a storage area.
The control method includes a step of storing packet data in the first storage area.
The control method includes a step of storing a virtual address that identifies the first storage area in the second storage area.
The control method includes a step of specifying the first storage area based on the virtual address stored in the second storage area.
The control method includes a step of reading packet data from the identified first storage area.
The present method is linked to a specific machine called a control device including one or more virtual machines that control the virtual network function and a host machine that controls the virtual machines.
本発明の第4の視点によれば、プログラムが提供される。該プログラムは、制御装置を制御するコンピュータに実行させるプログラムである。該制御装置は、仮想ネットワーク機能を制御する1又は2以上の仮想マシンと、仮想マシンを制御するホストマシンとを含んで構成され、前記仮想マシンを制御する、仮想制御部と、前記ホストマシンを制御する、物理制御部と、前記仮想制御部及び前記物理制御部がアクセス可能である、第1の記憶部と、を備え、該第1の記憶部は、第1の記憶領域と、第2の記憶領域とを含んで構成される。
該プログラムは、前記第1の記憶領域に、パケットデータを格納する処理を、前記コンピュータに実行させる。
該プログラムは、前記第2の記憶領域に、前記第1の記憶領域を特定する仮想アドレスを格納する処理を、前記コンピュータに実行させる。
該プログラムは、前記第2の記憶領域に格納される前記仮想アドレスに基づいて、前記第1の記憶領域を特定する処理を、前記プログラムに実行させる。
該プログラムは、特定された前記第1の記憶領域から、パケットデータを読み出す処理を、前記プログラムに実行させる。
なお、本プログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transient)なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
According to a fourth aspect of the present invention, a program is provided. The program is a program that is executed by a computer that controls the control device. The control device includes one or more virtual machines that control a virtual network function and a host machine that controls the virtual machines, and controls a virtual control unit that controls the virtual machines, and the host machine. A physical control unit that controls, a first storage unit that is accessible to the virtual control unit and the physical control unit, wherein the first storage unit includes a first storage area, a second storage unit, and a second storage unit. And a storage area.
The program causes the computer to execute a process of storing packet data in the first storage area.
The program causes the computer to execute a process of storing a virtual address specifying the first storage area in the second storage area.
The program causes the program to execute a process of specifying the first storage area based on the virtual address stored in the second storage area.
The program causes the program to execute a process of reading packet data from the identified first storage area.
The program can be recorded on a computer-readable storage medium. The storage medium may be non-transient such as a semiconductor memory, a hard disk, a magnetic recording medium, an optical recording medium, or the like. The present invention can also be embodied as a computer program product.
本発明の各視点によれば、ホストマシンとゲストマシン間における通信速度の向上に貢献する制御装置、制御システム、制御方法及びプログラムが提供される。 According to each aspect of the present invention, a control device, a control system, a control method, and a program that contribute to an improvement in communication speed between a host machine and a guest machine are provided.
初めに、図1を用いて一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。また、各ブロック図のブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号(データ)の流れを模式的に示すものであり、双方向性を排除するものではない。 First, an outline of an embodiment will be described with reference to FIG. Note that the reference numerals of the drawings attached to the outline are attached to the respective elements for convenience as an example for facilitating understanding, and the description of the outline is not intended to be any limitation. The connection lines between the blocks in each block diagram include both bidirectional and unidirectional. The unidirectional arrow schematically shows the main signal (data) flow and does not exclude bidirectionality.
上述の通り、ホストマシンとゲストマシン間における通信速度の向上に貢献する制御装置が望まれる。 As described above, a control device that contributes to improving the communication speed between the host machine and the guest machine is desired.
そこで、一例として、図1に示す制御装置1000を提供する。制御装置1000は、仮想ネットワーク機能を制御する1又は2以上の仮想マシンと、仮想マシンを制御するホストマシンとを含んで構成される。そして、制御装置1000は、仮想制御部1001と、物理制御部1002と、第1の記憶部1003とを備える。
Therefore, as an example, the
仮想制御部1001は、仮想マシンを制御する。物理制御部1002は、ホストマシンを制御する。
The
第1の記憶部1003は、第1の記憶領域1004と、第2の記憶領域1005とを含んで構成され、仮想制御部1001及び物理制御部1002がアクセス可能である。第1の記憶領域1004は、パケットデータを格納する。第2の記憶領域1005は、第1の記憶領域1004を特定する仮想アドレスを格納する。
The
制御装置1000は、第2の記憶領域1005に格納される仮想アドレスに基づいて、第1の記憶領域1004を特定し、特定した第1の記憶領域1004から、パケットデータを読み出す。
The
ここで、制御装置1000は、ホストマシンとゲストマシンとの双方からアクセス可能な記憶領域(第1の記憶領域1004)にパケットデータを格納する。そのため、制御装置1000は、ホストマシンとゲストマシン間において、パケットデータを送受信する場合に、該パケットデータを送信元から送信先に対して、コピーする必要がない。従って、制御装置1000は、ホストマシンとゲストマシン間における通信速度の向上に貢献する。
Here, the
[第1の実施形態]
第1の実施形態について、図面を用いてより詳細に説明する。
[First Embodiment]
The first embodiment will be described in more detail with reference to the drawings.
図2は、本実施形態に係る通信システム100の内部構成の一例を示すブロック図である。 FIG. 2 is a block diagram illustrating an example of an internal configuration of the communication system 100 according to the present embodiment.
図2を参照すると、本実施形態に係る通信システム100は、NFV MANO(Network Function Virtualisation Management and Orchestration)2と、VNFレイヤ3と、NFVI10を含んで構成される。NFV MANO2、VNFレイヤ3、NFVI10は、OSS/BSS4と通信する。なお、図2は、本実施形態に係る通信システム100の一例であり、本実施形態に係る通信システム100を、図2に示す構成に限定する趣旨ではない。
Referring to FIG. 2, the communication system 100 according to the present embodiment includes an NFV MANO (Network Function Virtualization Management and Orchestration) 2, a VNF layer 3, and an
まず、NFV MANO2について、詳細に説明する。 First, NFV MANO2 will be described in detail.
NFV MANO2は、VNFオーケストレータ21と、1又は2以上のVNFマネージャ22と、VIM(Virtualised Infrastructure Manager)23とを含んで構成される。
The
VNFオーケストレータ21は、クライアント200から、VNFの生成等の指示を受け付ける。
The
VNFマネージャ22は、VNFのライフサイクルを管理する。VNFマネージャ22は、VNF毎に、NFV MANO2に配置されても良い。または、一つのVNFマネージャ22が、2以上のVNFのライフサイクルを管理しても良い。
The
VIM23は、VNFのリソースを管理する処理を実行する。
The
(VNFレイヤ3)
次に、VNFレイヤ3について、詳細に説明する。
(VNF layer 3)
Next, the VNF layer 3 will be described in detail.
VNFレイヤ3は、仮想ノード(VNF)(31−a〜31−c)と、管理仮想ノード(EMS(Element Management System))(32−a〜32−c)とを含んで構成される。なお、以下の説明では、仮想ノード(VNF)(31−a〜31−c)、管理仮想ノード(EMS)(32−a〜32−c)は、夫々、区別する必要が無い場合には、仮想ノード(VNF)31、管理仮想ノード(EMS)32と表記する。また、図2は、3つの仮想ノード(VNF)(31−a〜31−c)、3つの管理仮想ノード(EMS)(32−a〜32−c)を示すが、これは、仮想ノード(VNF)31、管理仮想ノード(EMS)32を3つに限定する趣旨ではない。 The VNF layer 3 includes virtual nodes (VNF) (31-a to 31-c) and management virtual nodes (EMS (Element Management System)) (32-a to 32-c). In the following description, the virtual nodes (VNF) (31-a to 31-c) and the management virtual nodes (EMS) (32-a to 32-c) need not be distinguished from each other. They are represented as a virtual node (VNF) 31 and a management virtual node (EMS) 32. FIG. 2 also shows three virtual nodes (VNF) (31-a to 31-c) and three management virtual nodes (EMS) (32-a to 32-c). VNF) 31 and management virtual node (EMS) 32 are not limited to three.
仮想ノード(VNF)31に、ネットワーク機能を設定(実装)することで、仮想ノード(VNF)31は、VNFを実現する。仮想マシンは、ネットワーク機能が設定された仮想ノード(VNF)31を利用して、仮想ノード(VNF)31に設定されたネットワーク機能を実行する。なお、一つの仮想ノード(VNF)31は、2以上の仮想マシンに対応しても良いことは勿論である。また、一つの仮想マシンは、2以上の仮想ノード(VNF)31を利用しても良いことは勿論である。 By setting (implementing) a network function in the virtual node (VNF) 31, the virtual node (VNF) 31 realizes VNF. The virtual machine executes the network function set in the virtual node (VNF) 31 using the virtual node (VNF) 31 in which the network function is set. Of course, one virtual node (VNF) 31 may correspond to two or more virtual machines. Of course, one virtual machine may use two or more virtual nodes (VNFs) 31.
例えば、仮想ノード(VNF)31は、Intel(登録商標) DPDK(Data Plane Development Kit)をベースとしたアプリケーションプログラム(以下、単にアプリケーションと呼ぶ)が対象になる。例えば、VNFの対象となるアプリケーションは、非特許文献3の5章の“Use Case”に記載のIP Sec tunnles Ttermination、Virual Base Station(VBS)L1、Trranscodin、NFVI Virtual Networking Offload、NFVI Secure Overlay Offload等を含む。さらに、VNFの対象となるアプリケーションは、キャリアネットワーク機能であるvCPE(virtualized Customer Promised Equipment)、vS−GW(virtualised Serving Gateway)、vP−GW(virtualized PDN(Packet Data Network) Gateway)等を含む。 For example, the virtual node (VNF) 31 is an application program based on Intel (registered trademark) DPDK (Data Plane Development Kit) (hereinafter simply referred to as an application). For example, applications targeted for VNF include IP Sec tunnels Termination, Virtual Base Station (VBS) L1, Transcoding, NFVI Virtual Network, etc., described in “Use Case” of Chapter 5 of Non-Patent Document 3. including. Further, applications targeted for VNF include vCPE (virtualized customer promised equipment), vS-GW (virtualized Serving Gateway), vP-GW (virtualized PDN (Packet Data Network) Gateway), etc., which are carrier network functions.
管理仮想ノード(EMS)32は、仮想ノード(VNF)31を管理する。具体的には、管理仮想ノード(EMS)32は、当該仮想ノード(VNF)31に設定されたネットワーク機能を管理する。管理仮想ノード(EMS)32は、夫々、一つの仮想ノード(VNF)31を管理しても良い。または、一つの管理仮想ノード(EMS)32が、2以上の仮想ノード(VNF)31を管理しても良い。 The management virtual node (EMS) 32 manages the virtual node (VNF) 31. Specifically, the management virtual node (EMS) 32 manages the network function set in the virtual node (VNF) 31. Each management virtual node (EMS) 32 may manage one virtual node (VNF) 31. Alternatively, one management virtual node (EMS) 32 may manage two or more virtual nodes (VNF) 31.
(NFVI10)
次に、NFVI10について、詳細に説明する。
(NFVI10)
Next, the
NFVI10は、物理制御部111と、物理記憶部112と、物理通信部113と、仮想化レイヤ12と、仮想制御部13と、仮想記憶部14と、仮想通信部15とを含んで構成される。
The
仮想マシンは、仮想制御部13と、仮想記憶部14と、仮想通信部15とを含んで構成される。ここで、NFVI10は、2以上の仮想マシンを含んで構成されても良い。なお、以下の説明では、仮想制御部13と、仮想記憶部14と、仮想通信部15を、夫々区別する必要が無い場合、単に、「仮想マシン」とも呼ぶ。また、以下の説明においては、仮想マシンを、ゲストマシンとも呼ぶ。
The virtual machine includes a virtual control unit 13, a
物理制御部111は、NFVI10を構成する情報処理装置(コンピュータ)を制御する。例えば、本実施形態に係る物理制御部111は、FPGAを含んで構成される。
The
物理記憶部112は、NFVI10を構成する情報処理装置を動作させるために必要な情報を記憶する。例えば、物理記憶部112は、磁気ディスク装置や光ディスク装置、半導体メモリを用いて実現される。
The
特に、本実施形態に係る物理記憶部112は、物理制御部111及び仮想制御部13の双方からアクセス可能な共有メモリ領域を含んで構成される。共有メモリ領域の詳細については後述する。
In particular, the
物理通信部113は、物理制御部111が、仮想マシン、NFV MANO2、OSS/BSS4、クライアント200等と通信する処理を制御する。また、物理通信部113は、本実施形態に係る通信システム100とは異なるネットワークとの通信処理を制御する。例えば、物理通信部113は、NIC(Network Interface Card)等を用いて実現される。
The
仮想化レイヤ12は、ハードウェアを抽象化する処理を実行する。さらに、仮想化レイヤ12は、ハードウェアと、仮想マシン及びVNFとの接続を中継する。換言すると、ハードウェアは、仮想化レイヤ12を介して、仮想マシン及びVNFにアクセスし、仮想マシンに設定された処理、及びVNFを実行する。
The
仮想制御部13は、仮想ノード31に設定されるVNFを実行する。仮想記憶部14は、VNFを実行するために必要な情報を記憶する。仮想通信部15は、仮想マシンと、NFV MANO2間の通信処理を制御する。また、仮想通信部15は、仮想マシンと、OSS/BSS4間の通信処理を制御する。
The virtual control unit 13 executes VNF set in the
(OSS/BSS4)
OSS/BSS4は、通信サービスを提供する。例えば、通信事業者が、OSS/BSS4を管理する。
(OSS / BSS4)
The OSS / BSS 4 provides a communication service. For example, the communication carrier manages the OSS / BSS 4.
以下、NFVI10について、更に詳細に説明する。
Hereinafter, the
図3は、本実施形態に係るNFVI10の内部構成のうち、本実施形態に関係するモジュールの一例を示すブロック図である。図3に示すNFVI10は、CPU120と、メインメモリ(図2に示す物理記憶部112に相当)130と、FPGA140と、メモリ管理部150を含んで構成される。また、以下の説明においては、FPGA140の回路を、オフロード部(図2に示す物理制御部111)141と呼ぶ。さらに、以下の説明においては、CPU120が実行する処理(プロセス)を、非オフロード部(図2に示す仮想制御部13に相当)121と呼ぶ。また、メインメモリ130を、第1の記憶部とも呼ぶ。また、メモリ管理部150を、記憶領域管理部とも呼ぶ。なお、図3は、1つのFPGA140と、1つのCPU120とを示すが、これは、本実施形態に係るFPGA140及びCPU120を、夫々、1つに限定する趣旨ではない。同様に、図3は、1つのオフロード部141と、1つの非オフロード部121とを示すが、これは、本実施形態に係るオフロード部141及び非オフロード部121を、夫々、1つに限定する趣旨ではない。NFVI10は、2以上のFPGA140、2以上のCPU120、2以上のオフロード部141、2以上の非オフロード部121を含んで構成されても良い。
FIG. 3 is a block diagram illustrating an example of modules related to the present embodiment in the internal configuration of the
FPGA140のレジスタ(第2の記憶部とも呼ぶ)142は、アドレスマッピングテーブル143を格納する。アドレスマッピングテーブル143は、仮想アドレスと、物理アドレス間の対応関係を記憶する。
A register (also referred to as a second storage unit) 142 of the
メインメモリ130は、オフロード部141及び非オフロード部121の双方からアクセス可能な共有メモリ領域を含む。共有メモリ領域は、第2の記憶領域と、第1の記憶領域とを含んで構成される。
The
第1の記憶領域は、メッセージバッファ(message buffer;mbufとも呼ぶ)132を含んで構成される。メッセージバッファは、パケットデータを格納する。 The first storage area includes a message buffer (also referred to as a message buffer; mbuf) 132. The message buffer stores packet data.
第2の記憶領域は、メッセージバッファ132のアドレス(仮想アドレス)を格納する。例えば、第2の記憶領域は、リングキュー型の配列を利用して、メッセージバッファのアドレス(仮想アドレス)を格納しても良い。なお、以下の説明では、第2の記憶領域に、リングキュー型の配列を利用して、メッセージバッファ132のアドレスを格納する場合を例示して説明する。そして、以下の説明では、第2の記憶領域に格納されるリングキュー型の配列を、リングキュー131と表記する。
The second storage area stores the address (virtual address) of the
第2の記憶領域は、メッセージバッファ132のアドレス(仮想アドレス)を、リングキュー型の配列を利用して格納する。図3に示すように、第2の記憶領域は、複数のリングキュー(133_1〜133_n(nは2以上の自然数))を格納しても良いことは勿論である。
The second storage area stores the address (virtual address) of the
アドレスマッピングテーブル143は、物理アドレスと、仮想アドレス間の対応関係を記憶する。 The address mapping table 143 stores the correspondence between physical addresses and virtual addresses.
NFVI10は、リングキュー131と、メッセージバッファ132を利用して、オフロード部141と非オフロード部121間のパケット通信を行う。
The
パケットデータの送信元(オフロード部141又は非オフロード部121)は、パケットデータをメッセージバッファ132に書き込む。そして、パケットデータの送信元(オフロード部141又は非オフロード部121)は、パケットデータを書き込んだメッセージバッファ132のアドレス(仮想アドレス)を、リングキュー131に格納(エンキュー(enqueue))する。
The packet data transmission source (offload
そして、パケットデータの送信先(オフロード部141又は非オフロード部121)は、リングキュー131から、メッセージバッファ132のアドレス(仮想アドレス)の取り出し(デキュー(dequeue))を行う。そして、パケットデータの送信先は、アドレスマッピングテーブル143を参照し、メッセージバッファ132の仮想アドレスを、メッセージバッファ132の物理アドレスに変換する。そして、パケットデータの送信先は、変換した物理アドレスに基づいて、メッセージバッファ132に格納されるパケットデータにアクセスする。
The packet data transmission destination (offload
例えば、オフロード部141から、非オフロード部121にパケットデータを送信するとする。その場合、オフロード部141(パケットデータの送信元)は、パケットデータをメッセージバッファ132に書き込む。そして、オフロード部141(パケットデータの送信元)にパケットデータを書き込んだメッセージバッファ132のアドレスを、リングキュー131に格納する。
For example, it is assumed that packet data is transmitted from the
そして、非オフロード部121(パケットデータの送信先)は、パケットデータを書き込んだメッセージバッファ132のアドレス(仮想アドレス)を、リングキュー131から取り出す。そして、非オフロード部121(パケットデータの送信先)は、アドレスマッピングテーブル143を参照し、仮想アドレスを、物理アドレスに変換する。そして、非オフロード部121(パケットデータの送信先)は、取り出したメッセージバッファ132のアドレスに基づいて、メッセージバッファ132を読み出す。そして、非オフロード部121(パケットデータの送信先)は、変換した物理アドレスを用いて、メッセージバッファ132に格納されるパケットデータにアクセスする。
Then, the non-offload unit 121 (packet data transmission destination) takes out the address (virtual address) of the
メモリ管理部150は、ホストマシンのOS(Operating System)上で動作し、メインメモリ130を制御する。特に、メモリ管理部150は、リングキュー131及びメッセージバッファ132を管理する。
The
次に、本実施形態に係る通信システム100の動作について詳細に説明する。 Next, the operation of the communication system 100 according to the present embodiment will be described in detail.
図4、図5、図6は、本実施形態に係る通信システム100の動作の一例を示すシークエンス図である。 4, 5, and 6 are sequence diagrams illustrating an example of the operation of the communication system 100 according to the present embodiment.
まず、図4を参照しながら、本実施形態に係る通信システム100の動作を説明する。 First, the operation of the communication system 100 according to the present embodiment will be described with reference to FIG.
まず、クライアント200が、NFVオーケストレータ21にVNFの生成を要求する(ステップS001)。そして、NFVオーケストレータ21は、VNFの生成の要求を受け付ける(ステップS002)。ここで、クライアント200は、例えば、NFV MANO2の保守担当者等が使用する端末装置、NFV MANO2の上位の装置等である。
First, the
ステップS003において、NFVオーケストレータ21は、VNFを構成可能であるか否かを確認する。そして、NFVオーケストレータ21は、VNFを構成可能である場合には、VNFマネージャ22にVNFの生成を要求する(ステップS004)。そして、VNFマネージャ22は、VNFの生成の要求を受け付ける(ステップS005)。
In step S003, the
ステップS006において、VNFマネージャ22は、リソース割り当てを、NFVオーケストレータ21に要求する。
In step S006, the
ステップ007において、NFVオーケストレータ21は、リソース割り当ての事前処理を実行する。例えば、NFVオーケストレータ21は、リソースを確保し、割り当てを予約する処理等を、リソース割り当ての事前処理として実行する。
In step 007, the
ステップS008において、NFVオーケストレータ21は、リソース(制御、記憶、ネットワーク)の割り当てと、モジュール間の接続設定を、VIM23に要求する。
In step S008, the NFV orchestrator 21 requests the
ステップS009において、VIM23は、システム内部のモジュールを接続するネットワークの割り当てを実行する。
In step S <b> 009, the
次に、図5を参照しながら、引き続き、本実施形態に係る通信システム100の動作を説明する。 Next, the operation of the communication system 100 according to the present embodiment will be described with reference to FIG.
ステップS010において、VIM23は、仮想マシンを割り当てて、システム内部のモジュールを接続するネットワークに、仮想マシンを設定する。そしてVIM23は、リソースの割り当て完了を、NFVオーケストレータ21に応答(ACK(Acknowledgement))する(ステップS011)。そして、NFVオーケストレータ21は、リソースの割り当て完了を、VNFマネージャ22に応答(ACK)する(ステップS012)。
In step S010, the
VNFマネージャ22は、VNFの生成が成功したことを、管理仮想ノード(EMS)に通知する(ステップS013)。
The
ステップS014において、管理仮想ノード(EMS)は、VNFを構成する。具体的には、管理仮想ノード(EMS)は、仮想ノード(VNF)を構成するアプリケーションに、特定のパラメータを設定する。 In step S014, the management virtual node (EMS) configures the VNF. Specifically, the management virtual node (EMS) sets a specific parameter in an application that configures the virtual node (VNF).
次に、図6を参照しながら、引き続き、本実施形態に係る通信システム100の動作を説明する。 Next, the operation of the communication system 100 according to the present embodiment will be described with reference to FIG.
ステップS015において、VNFマネージャ22は、リングキュー131及びメッセージバッファ132を格納するメモリ領域名の情報を、VIMに通知する。つまり、VNFマネージャ22は、第2の記憶領域、及び第1の記憶領域を特定するための情報を、VIMに通知する。例えば、Intel DPDKの場合、NFVIを構成するホストマシン及びゲストマシンは、メモリ領域名を検索キーとして利用することで、該メモリ領域名に対応するメモリ領域に格納されるデータにアクセスできる。
In step S015, the
なお、ステップS015の処理を実行する場合には、メモリ管理部150は、リングキュー131及びメッセージバッファ132を格納するメモリ領域(第2の記憶領域、及び第1の記憶領域)を、確保済みであるものとする。例えば、メモリ管理部150は、VNFの生成処理が実行される前に、IVSHMEM(Inter VM(Virtual Machine) Shared Memory)等の技術を用いて、ホストマシンと仮想マシン間、及び仮想マシン間において、共通の仮想アドレスを用いて、アクセス可能な共有メモリ領域を確保しても良い。
Note that when executing the process of step S015, the
ステップS016において、VIM23は、リングキュー131及びメッセージバッファ132を格納するメモリ領域名の情報を、メモリ管理部150に通知する。つまり、VIM23は、第2の記憶領域、及び第1の記憶領域を特定するための情報を、メモリ管理部150に通知する。
In step S016, the
ステップS017において、メモリ管理部150は、物理アドレスと仮想アドレス間のアドレスマッピングテーブル143を作成する。具体的には、メモリ管理部150は、仮想アドレスから物理アドレスに変換するためのアドレスマッピングテーブル143を作成する。
In step S017, the
ステップS018において、メモリ管理部150は、物理アドレスと仮想メモリ間のアドレスマッピングテーブル143を、FPGA140に設定する。具体的には、メモリ管理部150は、仮想アドレスから物理アドレスに変換するためのアドレスマッピングテーブル143を、FPGA140のレジスタ142に設定する。さらに、メモリ管理部は、リングキュー131の仮想アドレスを、FPGA140のレジスタ142に設定する。
In step S018, the
ステップS019において、VNFマネージャ22は、VNFの生成終了を、NFVオーケストレータ21に応答(ACK)する。そして、NFVオーケストレータ21は、VNFの生成終了を、クライアント200に応答(ACK)する。
In step S 019, the
以上のように、本実施形態に係るNFVI10は、ホストマシン及び仮想マシンの双方から、アクセス可能な共有メモリ領域を備える。そして、本実施形態に係るNFVI10は、ホストマシン及び仮想マシン間で通信を行う場合、共有メモリ領域にパケットデータを格納する。さらに、本実施形態に係るNFVI10は、アドレスマッピングテーブル143を利用して、ゲストマシン上のアドレス(仮想アドレス)とホストマシン上のアドレス(物理アドレス)間においてアドレスを変換する。そのため、本実施形態に係るNFVI10は、ホストマシンとゲストマシン間において、パケットデータをコピーする処理を実行せずに、パケットデータへのアクセスを実現できる。従って、本実施形態に係るNFVI10は、ホストマシンとゲストマシン間における通信速度の向上に貢献する。
As described above, the
[第2の実施形態]
次に、第2の実施形態について、図面を用いて詳細に説明する。
[Second Embodiment]
Next, a second embodiment will be described in detail with reference to the drawings.
本実施形態は、メモリ管理部が、仮想アドレスを物理アドレスに変換するためのアドレスマッピングテーブルを作成する形態である。なお、本実施形態における説明では、上記の実施形態と重複する部分の説明は省略する。さらに、本実施形態における説明では、上記の実施形態と同一の構成要素には、同一の符号を付し、その説明を省略する。また、本実施形態における説明では、上記の実施形態と同一の作用効果についても、その説明を省略する。 In this embodiment, the memory management unit creates an address mapping table for converting a virtual address into a physical address. In the description of the present embodiment, the description of the same part as the above embodiment is omitted. Further, in the description of the present embodiment, the same components as those of the above-described embodiment are denoted by the same reference numerals, and the description thereof is omitted. In the description of the present embodiment, the description of the same operational effects as those of the above-described embodiment is also omitted.
本実施形態に係る通信システム100の内部構成は、図2に示す通りである。また、本実施形態に係るNFVI10の内部構成のうち、本実施形態に関係するモジュールは、図3に示す通りである。
The internal configuration of the communication system 100 according to the present embodiment is as shown in FIG. Further, of the internal configuration of the
図7、図8、図9は、本実施形態に係る通信システム100の動作の一例を示すシークエンス図である。図7に示すステップS101〜S109の処理は、図4に示すステップS001〜S009の処理と同様であるため、詳細な説明を省略する。 7, 8, and 9 are sequence diagrams illustrating an example of the operation of the communication system 100 according to the present embodiment. Since the processing of steps S101 to S109 illustrated in FIG. 7 is the same as the processing of steps S001 to S009 illustrated in FIG. 4, detailed description thereof is omitted.
以下、図8を参照しながら、本実施形態に係る通信システム100の動作について説明する。 Hereinafter, the operation of the communication system 100 according to the present embodiment will be described with reference to FIG.
VIM23は、システム内部のモジュールを接続するネットワークの割り当てを実行する(図7に示すステップS109)と、仮想マシンを割り当てて、システム内部のモジュールを接続するネットワークに、仮想マシンを設定する(ステップS110)。
When the
ステップS111において、VIM23は、リングキュー131及びメッセージバッファ132を格納するメモリ領域の割り当てを、メモリ管理部150に要求する。
In step S111, the
ステップS112において、メモリ管理部150は、リングキュー131及びメッセージバッファ132を格納するメモリ領域を、メインメモリ130に作成又は割り当てる。
In step S <b> 112, the
ステップS113において、メモリ管理部150は、物理アドレスと仮想アドレス間のアドレスマッピングテーブル143を作成する。具体的には、図6に示すステップS017の処理と同様に、メモリ管理部150は、仮想アドレスから物理アドレスに変換するためのアドレスマッピングテーブル143を作成する。
In step S113, the
ステップS114において、メモリ管理部150は、物理アドレスと仮想アドレス間のアドレスマッピングテーブル143を、FPGA140に設定する。具体的には、図6に示すステップS018の処理と同様に、メモリ管理部150は、仮想アドレスから物理アドレスに変換するためのアドレスマッピングテーブル143を、FPGA140のレジスタ142に設定する。さらに、メモリ管理部は、リングキュー131の仮想アドレスを、FPGA140のレジスタ142に設定する。
In step S <b> 114, the
そして、VIM23は、リソースの割り当て完了を、NFVオーケストレータ21に応答(ACK)する(図10に示すステップS115)。そして、本実施形態に係る通信システム100は、図10に示すステップS116〜S120の処理を実行する。図10に示すステップS116〜S120の処理は、図5に示すステップS011〜S014、及び図6に示すステップS019〜S020の処理と同様であるため、詳細な説明は省略する。
Then, the
以上のように、本実施形態に係るNFVI10は、メモリ管理部150が、アドレスを変換するためのアドレスマッピングテーブル143、及びメッセージバッファ132を作成又は割り当てる。そして、本実施形態に係るNFVI10は、ホストマシン及び仮想マシン間で通信を行う場合、共有メモリ領域にパケットデータを格納する。さらに、本実施形態に係るNFVI10は、アドレスマッピングテーブル143を利用して、ゲストマシン上のアドレス(仮想アドレス)とホストマシン上のアドレス(物理アドレス)間においてアドレスを変換する。そのため、本実施形態に係るNFVI10は、ホストマシンとゲストマシン間において、パケットデータをコピーする処理を実行せずに、パケットデータへのアクセスを実現できる。従って、本実施形態に係るNFVI10は、第1の実施形態と同様に、ホストマシンとゲストマシン間における通信速度の向上に貢献する。
As described above, in the
上述の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。 A part or all of the above-described embodiment can be described as in the following supplementary notes, but is not limited thereto.
(付記1)上記第1の視点に係る制御装置の通りである。 (Additional remark 1) It is as the control apparatus which concerns on a said 1st viewpoint.
(付記2)物理アドレスと、仮想アドレスとを対応付ける、アドレスマッピングテーブルを格納する、第2の記憶部をさらに備え、前記物理制御部は、前記アドレスマッピングテーブルを管理する、付記1に記載の制御装置。
(Supplementary note 2) The control according to
(付記3)前記仮想制御部は、パケットデータを前記第1の記憶領域に格納し、前記パケットデータを格納した前記第1の記憶領域を特定する仮想アドレスを、前記第2の記憶領域に格納し、前記物理制御部は、前記第2の記憶領域から前記仮想アドレスを読み出し、前記アドレスマッピングテーブルを参照し、読み出した前記仮想アドレスを、前記第1の記憶領域を特定する物理アドレスに変換し、変換した前記物理アドレスに基づいて、前記第1の記憶領域から、パケットデータを読み出す、付記2に記載の制御装置。
(Supplementary Note 3) The virtual control unit stores packet data in the first storage area, and stores a virtual address specifying the first storage area in which the packet data is stored in the second storage area. Then, the physical control unit reads the virtual address from the second storage area, refers to the address mapping table, and converts the read virtual address into a physical address that identifies the first storage area. The control device according to
(付記4)前記物理制御部は、パケットデータを前記第1の記憶領域に格納し、前記パケットデータを格納した前記第1の記憶領域を特定する仮想アドレスを、前記第2の記憶領域に格納し、前記仮想制御部は、前記第2の記憶領域から前記仮想アドレスを読み出し、前記アドレスマッピングテーブルを参照し、読み出した前記仮想アドレスを、前記第1の記憶領域を特定する物理アドレスに変換し、変換した前記物理アドレスに基づいて、前記第1の記憶領域から、パケットデータを読み出す、付記2又は3に記載の制御装置。
(Supplementary Note 4) The physical control unit stores packet data in the first storage area, and stores a virtual address that identifies the first storage area in which the packet data is stored in the second storage area. Then, the virtual control unit reads the virtual address from the second storage area, refers to the address mapping table, and converts the read virtual address into a physical address that identifies the first storage area. The control device according to
(付記5)前記アドレスマッピングテーブルを、前記第2の記憶部に格納する、記憶領域管理部をさらに備え、前記記憶領域管理部は、前記第1の記憶部に、前記第1の記憶領域と、前記第2の記憶領域とを生成する、付記4に記載の制御装置。 (Supplementary Note 5) A storage area management unit that stores the address mapping table in the second storage unit is further included, and the storage area management unit includes the first storage area and the first storage area. The control device according to appendix 4, which generates the second storage area.
(付記6)上記第2の視点に係る制御システムの通りである。 (Additional remark 6) It is as the control system which concerns on the said 2nd viewpoint.
(付記7)前記管理ノードは、前記第1の記憶領域と前記第2の記憶領域とを、前記第1の記憶部に生成する、付記6に記載の制御システム。 (Supplementary note 7) The control system according to supplementary note 6, wherein the management node generates the first storage area and the second storage area in the first storage unit.
(付記8)前記制御装置は、物理アドレスと、仮想アドレスとを対応付ける、アドレスマッピングテーブルを格納する、第2の記憶部と、前記第2の記憶部に、前記アドレスマッピングテーブルを格納する、記憶領域管理部と、をさらに備え、前記記憶領域管理部は、前記第1の記憶部に、前記第1の記憶領域と、前記第2の記憶領域とを生成する、付記6又は7に記載の制御システム。 (Supplementary note 8) The control device stores an address mapping table that associates a physical address with a virtual address, stores a second storage unit, and stores the address mapping table in the second storage unit The storage area management unit further includes an area management unit, and the storage area management unit generates the first storage area and the second storage area in the first storage unit. Control system.
(付記9)上記第3の視点に係る制御方法の通りである。 (Additional remark 9) It is as the control method which concerns on the said 3rd viewpoint.
(付記10)上記第4の視点に係るプログラムの通りである。 (Additional remark 10) It is as the program concerning the said 4th viewpoint.
なお、上記の特許文献、非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。 It should be noted that the disclosures of the above-mentioned patent documents and non-patent documents are incorporated herein by reference. Within the scope of the entire disclosure (including claims) of the present invention, the embodiment can be changed and adjusted based on the basic technical concept. Further, various combinations or selections of various disclosed elements (including each element of each claim, each element of each embodiment, each element of each drawing, etc.) are possible within the framework of the entire disclosure of the present invention. is there. That is, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the entire disclosure including the claims and the technical idea. In particular, with respect to the numerical ranges described in this document, any numerical value or small range included in the range should be construed as being specifically described even if there is no specific description.
2 NFV MANO
3 VNFレイヤ
4 OSS/BSS
10 NFVI
11 ハードウェアリソース
12 仮想化レイヤ
13、1001 仮想制御部
14 仮想記憶部
15 仮想通信部
21 VNFオーケストレータ
22 VNFマネージャ
23 VIM
31、31−a〜31−c 仮想ノード(VNF)
32、32−a〜32−c 管理仮想ノード(EMS)
100 通信システム
111、1002 物理制御部
112 物理記憶部
113 物理通信部
120 CPU
121 非オフロード部
130 メインメモリ
131、133_1〜133_n リングキュー
132 メッセージバッファ
140 FPGA
141 オフロード部
142 レジスタ
143 アドレスマッピングテーブル
150 メモリ管理部
200 クライアント
1000 制御装置
1003 第1の記憶部
1004 第1の記憶領域
1005 第2の記憶領域
2 NFV MANO
3 VNF layer 4 OSS / BSS
10 NFVI
11
31, 31-a to 31-c Virtual node (VNF)
32, 32-a to 32-c Management virtual node (EMS)
100
121
141
Claims (10)
前記仮想マシンを制御する、仮想制御部と、
前記ホストマシンを制御する、物理制御部と、
前記仮想制御部及び前記物理制御部がアクセス可能である、第1の記憶部と、
を備え、
前記第1の記憶部は、第1の記憶領域と、第2の記憶領域とを含み、
前記第1の記憶領域は、パケットデータが格納され、
前記第2の記憶領域は、前記第1の記憶領域を特定する仮想アドレスが格納され、
前記制御装置は、前記第2の記憶領域に格納される前記仮想アドレスに基づいて、前記第1の記憶領域を特定し、特定した前記第1の記憶領域から、パケットデータを読み出す、制御装置。 A control device including one or more virtual machines that control a virtual network function and a host machine that controls the virtual machines,
A virtual control unit for controlling the virtual machine;
A physical control unit for controlling the host machine;
A first storage unit accessible by the virtual control unit and the physical control unit;
With
The first storage unit includes a first storage area and a second storage area,
The first storage area stores packet data,
The second storage area stores a virtual address that identifies the first storage area,
The control device specifies the first storage region based on the virtual address stored in the second storage region, and reads packet data from the specified first storage region.
前記物理制御部は、前記アドレスマッピングテーブルを管理する、請求項1に記載の制御装置。 A second storage unit for storing an address mapping table that associates a physical address with a virtual address;
The control device according to claim 1, wherein the physical control unit manages the address mapping table.
前記物理制御部は、前記第2の記憶領域から前記仮想アドレスを読み出し、前記アドレスマッピングテーブルを参照し、読み出した前記仮想アドレスを、前記第1の記憶領域を特定する物理アドレスに変換し、変換した前記物理アドレスに基づいて、前記第1の記憶領域から、パケットデータを読み出す、請求項2に記載の制御装置。 The virtual control unit stores packet data in the first storage area, stores a virtual address specifying the first storage area in which the packet data is stored in the second storage area,
The physical control unit reads the virtual address from the second storage area, refers to the address mapping table, converts the read virtual address to a physical address that identifies the first storage area, and converts The control device according to claim 2, wherein packet data is read from the first storage area based on the physical address.
前記仮想制御部は、前記第2の記憶領域から前記仮想アドレスを読み出し、前記アドレスマッピングテーブルを参照し、読み出した前記仮想アドレスを、前記第1の記憶領域を特定する物理アドレスに変換し、変換した前記物理アドレスに基づいて、前記第1の記憶領域から、パケットデータを読み出す、請求項2又は3に記載の制御装置。 The physical control unit stores packet data in the first storage area, stores a virtual address that identifies the first storage area in which the packet data is stored in the second storage area,
The virtual control unit reads the virtual address from the second storage area, refers to the address mapping table, converts the read virtual address to a physical address that identifies the first storage area, and converts the virtual address The control device according to claim 2 or 3, wherein packet data is read from the first storage area based on the physical address.
前記記憶領域管理部は、前記第1の記憶部に、前記第1の記憶領域と、前記第2の記憶領域とを生成する、請求項4に記載の制御装置。 A storage area management unit for storing the address mapping table in the second storage unit;
The control device according to claim 4, wherein the storage area management unit generates the first storage area and the second storage area in the first storage unit.
前記仮想マシンを割り当てる管理ノードと、
を含んで構成される制御システムであって、
前記制御装置は、
仮想ネットワーク機能を制御する1又は2以上の仮想マシンと、仮想マシンを制御するホストマシンとを含んで構成され、
前記仮想マシンを制御する、仮想制御部と、
前記ホストマシンを制御する、物理制御部と、
前記仮想制御部及び前記物理制御部がアクセス可能である、第1の記憶部と、
を備え、
前記第1の記憶部は、第1の記憶領域と、第2の記憶領域とを含み、
前記第1の記憶領域は、パケットデータが格納され、
前記第2の記憶領域は、前記第1の記憶領域を特定する仮想アドレスが格納され、
前記制御装置は、前記第2の記憶領域に格納される前記仮想アドレスに基づいて、前記第1の記憶領域を特定し、特定した前記第1の記憶領域から、パケットデータを読み出す、制御システム。 A control apparatus including one or more virtual machines that control the virtual network function and a host machine that controls the virtual machines;
A management node to which the virtual machine is assigned;
A control system comprising:
The control device includes:
Including one or more virtual machines that control the virtual network function and a host machine that controls the virtual machines;
A virtual control unit for controlling the virtual machine;
A physical control unit for controlling the host machine;
A first storage unit accessible by the virtual control unit and the physical control unit;
With
The first storage unit includes a first storage area and a second storage area,
The first storage area stores packet data,
The second storage area stores a virtual address that identifies the first storage area,
The control system, wherein the control device specifies the first storage area based on the virtual address stored in the second storage area, and reads packet data from the specified first storage area.
物理アドレスと、仮想アドレスとを対応付ける、アドレスマッピングテーブルを格納する、第2の記憶部と、
前記第2の記憶部に、前記アドレスマッピングテーブルを格納する、記憶領域管理部と、
をさらに備え、
前記記憶領域管理部は、前記第1の記憶部に、前記第1の記憶領域と、前記第2の記憶領域とを生成する、請求項6又は7に記載の制御システム。 The control device includes:
A second storage unit that stores an address mapping table that associates a physical address with a virtual address;
A storage area management unit for storing the address mapping table in the second storage unit;
Further comprising
The control system according to claim 6 or 7, wherein the storage area management unit generates the first storage area and the second storage area in the first storage unit.
前記第1の記憶領域に、パケットデータを格納する工程と、
前記第2の記憶領域に、前記第1の記憶領域を特定する仮想アドレスを格納する工程と、
前記第2の記憶領域に格納される前記仮想アドレスに基づいて、前記第1の記憶領域を特定する工程と、
特定された前記第1の記憶領域から、パケットデータを読み出す工程と、
を含む制御方法。 One or two or more virtual machines that control the virtual network function and a host machine that controls the virtual machine, a virtual control unit that controls the virtual machine, and a physical control that controls the host machine And a first storage unit accessible by the virtual control unit and the physical control unit, the first storage unit comprising a first storage area and a second storage area A control method for a control device comprising:
Storing packet data in the first storage area;
Storing a virtual address for identifying the first storage area in the second storage area;
Identifying the first storage area based on the virtual address stored in the second storage area;
Reading packet data from the identified first storage area;
Control method.
前記第1の記憶領域に、パケットデータを格納する処理と、
前記第2の記憶領域に、前記第1の記憶領域を特定する仮想アドレスを格納する処理と、
前記第2の記憶領域に格納される前記仮想アドレスに基づいて、前記第1の記憶領域を特定する処理と、
特定された前記第1の記憶領域から、パケットデータを読み出す処理と、
を前記コンピュータに実行させるプログラム。 One or two or more virtual machines that control the virtual network function and a host machine that controls the virtual machine, a virtual control unit that controls the virtual machine, and a physical control that controls the host machine And a first storage unit accessible by the virtual control unit and the physical control unit, the first storage unit comprising a first storage area and a second storage area A program that causes a computer that controls a control device including the program to be executed,
A process of storing packet data in the first storage area;
A process of storing a virtual address for identifying the first storage area in the second storage area;
A process of identifying the first storage area based on the virtual address stored in the second storage area;
A process of reading packet data from the identified first storage area;
A program for causing the computer to execute.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017069248A JP6737471B2 (en) | 2017-03-30 | 2017-03-30 | Control device, control system, control method, and program |
EP18775870.1A EP3605346A4 (en) | 2017-03-30 | 2018-03-29 | Control device, control system, control method and program |
PCT/JP2018/013504 WO2018181840A1 (en) | 2017-03-30 | 2018-03-29 | Control device, control system, control method and program |
US16/498,043 US20210103457A1 (en) | 2017-03-30 | 2018-05-29 | Control apparatus, control system, control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017069248A JP6737471B2 (en) | 2017-03-30 | 2017-03-30 | Control device, control system, control method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018169978A true JP2018169978A (en) | 2018-11-01 |
JP6737471B2 JP6737471B2 (en) | 2020-08-12 |
Family
ID=63676228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017069248A Active JP6737471B2 (en) | 2017-03-30 | 2017-03-30 | Control device, control system, control method, and program |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210103457A1 (en) |
EP (1) | EP3605346A4 (en) |
JP (1) | JP6737471B2 (en) |
WO (1) | WO2018181840A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023047436A1 (en) * | 2021-09-21 | 2023-03-30 | 日本電信電話株式会社 | Information processing device and information processing method |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11563677B1 (en) | 2018-06-28 | 2023-01-24 | Cable Television Laboratories, Inc. | Systems and methods for secure network management of virtual network function |
US11822946B2 (en) * | 2018-06-28 | 2023-11-21 | Cable Television Laboratories, Inc. | Systems and methods for secure network management of virtual network functions |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6085238A (en) * | 1996-04-23 | 2000-07-04 | Matsushita Electric Works, Ltd. | Virtual LAN system |
JP5986692B2 (en) | 2013-01-11 | 2016-09-06 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Network function virtualization for network devices |
JP2015162147A (en) | 2014-02-28 | 2015-09-07 | 日本電信電話株式会社 | Network function virtualization base management system and network function virtualization base management method |
JP5960186B2 (en) | 2014-04-03 | 2016-08-02 | 日本電信電話株式会社 | Virtual channel construction system, virtual channel construction method, and virtual channel construction program |
JP6458146B2 (en) * | 2015-07-08 | 2019-01-23 | 株式会社日立製作所 | Computer and memory area management method |
WO2017022833A1 (en) * | 2015-08-06 | 2017-02-09 | 日本電気株式会社 | Vnf provision system, vnf id management device, method for managing vnf id, and program |
-
2017
- 2017-03-30 JP JP2017069248A patent/JP6737471B2/en active Active
-
2018
- 2018-03-29 EP EP18775870.1A patent/EP3605346A4/en not_active Withdrawn
- 2018-03-29 WO PCT/JP2018/013504 patent/WO2018181840A1/en unknown
- 2018-05-29 US US16/498,043 patent/US20210103457A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023047436A1 (en) * | 2021-09-21 | 2023-03-30 | 日本電信電話株式会社 | Information processing device and information processing method |
Also Published As
Publication number | Publication date |
---|---|
EP3605346A1 (en) | 2020-02-05 |
WO2018181840A1 (en) | 2018-10-04 |
EP3605346A4 (en) | 2020-06-10 |
US20210103457A1 (en) | 2021-04-08 |
JP6737471B2 (en) | 2020-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11934341B2 (en) | Virtual RDMA switching for containerized | |
US10700979B2 (en) | Load balancing for a virtual networking system | |
CN111542064B (en) | Container arrangement management system and arrangement method for wireless access network | |
US20210397494A1 (en) | Functional tuning for cloud based applications and connected clients | |
US8448171B2 (en) | Communications between virtual machines that have been migrated | |
JP6200497B2 (en) | Offload virtual machine flows to physical queues | |
KR101912073B1 (en) | Virtualization gateway between virtualized and non-virtualized networks | |
US11095716B2 (en) | Data replication for a virtual networking system | |
US10541925B2 (en) | Non-DSR distributed load balancer with virtualized VIPS and source proxy on load balanced connection | |
US11188345B2 (en) | High performance networking across docker containers | |
JP2018530214A (en) | Method and apparatus for deploying network services | |
WO2018181840A1 (en) | Control device, control system, control method and program | |
CN109743205A (en) | A kind of cloud platform OS network management, device and server | |
US10931581B2 (en) | MAC learning in a multiple virtual switch environment | |
US9577841B2 (en) | System and method for packet encapsulation wherein translation control entries (TCEs) may redirect DMA for software defined networks | |
CN114595027A (en) | Method and apparatus for application deployment across multiple computing domains | |
US11321112B2 (en) | Discovery and recreation of communication endpoints in virtual machine migration | |
CN114816725A (en) | System and method for managing a combined system using operational data | |
JP2019193297A (en) | Method and apparatus for deploying network service | |
Khongbri | How cloud infrastructure can be built with low resource across multiple Cloud Platforms? |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200324 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200525 |
|
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: 20200616 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200709 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6737471 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |