WO2018002991A1 - 制御装置、vnf配置先選択方法及びプログラム - Google Patents

制御装置、vnf配置先選択方法及びプログラム Download PDF

Info

Publication number
WO2018002991A1
WO2018002991A1 PCT/JP2016/069014 JP2016069014W WO2018002991A1 WO 2018002991 A1 WO2018002991 A1 WO 2018002991A1 JP 2016069014 W JP2016069014 W JP 2016069014W WO 2018002991 A1 WO2018002991 A1 WO 2018002991A1
Authority
WO
WIPO (PCT)
Prior art keywords
hardware accelerator
vnf
hardware
hwa
control device
Prior art date
Application number
PCT/JP2016/069014
Other languages
English (en)
French (fr)
Inventor
麻代 大平
茂人 竹森
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to PCT/JP2016/069014 priority Critical patent/WO2018002991A1/ja
Priority to EP16907224.6A priority patent/EP3477471A4/en
Priority to US16/080,356 priority patent/US20190050248A1/en
Priority to JP2018524602A priority patent/JP6658882B2/ja
Publication of WO2018002991A1 publication Critical patent/WO2018002991A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Definitions

  • the present invention relates to a control device, a VNF placement destination selection method, and a program.
  • the present invention relates to a control device, a VNF placement destination selection method, and a program related to network function virtualization management orchestration.
  • NFV Network Functions Virtualization
  • VM Virtual Machine
  • Virtualization Layer Virtualization Layer
  • HV hypervisor
  • FIG. 20 is a figure quoted from FIG. 5.1 (The NFV-MANO architecture framework with reference points) on page 23 of Non-Patent Document 1.
  • a VNF (Virtualized Network Function) 22 corresponds to an application operating on a virtual machine (VM) on the server, and realizes a network function in software.
  • Each VNF 22 is provided with a management function called EM (Element Manager: Element Management) 23 (also referred to as EMS (Element Management System)).
  • EM Element Manager: Element Management
  • EMS Element Management System
  • NFVI Network Functions Virtualization Infrastructure 21 is a virtualized computing / virtualized storage / virtualized system that virtualizes hardware resources of physical machines (servers) such as computing, storage, and network functions in a virtualization layer such as a hypervisor. This is a platform that can be flexibly handled as a virtual hardware resource such as a virtual network.
  • NFV-MANO NFV Management & Orchestration
  • 10 NFV Orchestrator NFV Orchestrator: NFVO
  • 11 is the NFVI 21 resource orchestration and network service (Network Service: NS) instance life cycle management (NS) instance (Instantiation), scaling (Scaling), termination (Termination), update (Update), etc.). It also manages the NS catalog 14 (NSD / VLD / VNFFGD) and the VNF catalog 15 (VNFD (VNF / PNFD)), and has a repository 16 for NFV instances and a repository 17 for NFVI resources.
  • VNF Manager VNFM
  • VNF instance life cycle management for example, instantiation, update, query, scaling, termination, etc.
  • event notification for example, instantiation, update, query, scaling, termination, etc.
  • a virtualized infrastructure manager (VIM) 13 performs NFVI 21 computing, storage, network resource management, NFVI 21 failure monitoring, NFVI 21 resource monitoring, and the like.
  • OSS Operations Support Systems
  • BSS Business Support systems
  • information systems devices, software, mechanisms, etc.
  • the NS catalog 14 represents a network service (NS) repository.
  • NS Catalog includes Network Service (NS) Descriptor (Network Service Descriptor: NSD), Virtual Link Descriptor (Virtual Link Descriptor: VLD), VNF Forwarding Graph Descriptor (VNF ForwardDrG) Provide management support.
  • NS Network Service
  • NSD Network Service Descriptor
  • VLD Virtual Link Descriptor
  • VNF ForwardDrG VNF Forwarding Graph Descriptor
  • the VNF catalog (VNF catalog) 15 represents a repository of on-board VNF packages (on-boarded VNF packages), for example.
  • the VNF catalog (VNF catalog) 15 includes VNFD (VNF Descriptor), PNFD (PNF Descriptor), and the like.
  • NFV instance repository (NFV instance Repository) 16 holds instance information of all VNFs and all network services (NS).
  • the VNF instance and NS instance are described in the VNF and NS records, respectively. These records are updated to reflect the execution results of the VNF life cycle management operation and the NS life cycle management operation in the life cycle of each instance.
  • the NFVI resource repository (NFVI Resources Repository) 17 holds information on resources of the NFVI 21 extracted by the VIM 13 and is available / reserved / allocated. Provide useful information for monitoring, etc.
  • the NFVI resource repository 17 transfers the reserved / allocated resources of the NFVI 21 to NS and VNF instances associated with these resources (such as the number of virtual machines used by the VNF 22 at any point in the VNF 22 life cycle). Therefore, it is important for resource orchestration of the NFVO 11.
  • a reference point Os-Ma-nfvo is a reference point between the OSS / BSS 30 and the NFVO 11.
  • -Network service lifecycle management request Network Service Lifecycle management
  • -VNF lifecycle management request VNF Lifecycle management request
  • the reference point Vi-Vnfm is A resource allocation request from the VNFM 12 to the VIM 13; Used to exchange virtual resource configuration and status information.
  • Reference point Ve-Vnfm-em is between EMS23 and VNFM12. ⁇ VNF instantiation, VNF instance search, update, termination, scale out / in, scale up / down, Used for configuration from the EM (EMS) 23 to the VNFM 12, event transfer, VNF configuration from the VNFM 12 to the VNF 22, event notification, and the like.
  • Ve-Vnfm-vnf is between VNF22 and VNFM12, Used for VNF instantiation, VNF instance search, update, termination, scale out / in, scale up / down, configuration from VNF to VNFM, event transfer, VNF configuration from VNFM 12 to VNF 22, event notification, etc. It is done.
  • the reference point Nf-Vi is a resource allocation request such as allocation of a virtual machine (VM), update of VM resource allocation, VM migration, termination of VM, creation / deletion of connection between VMs, together with an instruction of computing / storage resources Are used for allocation of virtualization resources, transfer of status information of virtualization resources, exchange of configuration and status information of hardware resources, and the like.
  • VM virtual machine
  • update of VM resource allocation VM migration
  • termination of VM creation / deletion of connection between VMs
  • the reference point Vn-Nf represents an execution environment provided to the VNF 22 by the NFVI 21.
  • the reference point Or-Vnfm is Used for resource-related requests (authentication, reservation, allocation, etc.) by the VNFM 12, transfer of configuration information to the VNFM 12, and collection of VNF status information.
  • the reference point Or-Vi is Used for exchanging resource information (reservation resource request), resource allocation request (allocation resource request), and virtual resource configuration and status information from the NFVO 11 to the VIM 13 (see Non-Patent Document 1 for details).
  • NSD Network Service Descriptor
  • NS Catalog 14 is a network service deployment template (Network Service Deployment Template), and scripts / network functions for specific life cycle events (instantiation, termination, scaling, etc.) Has an entity that defines the workflow.
  • VNFFGD VNF Forwarding Graph Descriptor
  • VNFFGD VNF Forwarding Graph Descriptor
  • VLD Virtual Link Descriptor
  • the VNFD (VNF Descriptor) of the VNF catalog 15 is a deployment template that describes VNFs from the viewpoint of deployment and operational behavior requirements (development and operational behaviors).
  • the VNFD is mainly used by the VNFM 12 in VNF instantiation and instantiation lifecycle management.
  • the VNFD is used by the NFVO 11 for management and orchestration of network resources and virtual resources on the NFVI 21 (computer system / middleware / service deployment / setting / management automation). It includes connectivity interface KPI (Key Performance Indicators) requirements used in NFVO11 for building a virtual link between a VNFC instance of NFVI21 or a VNF instance and endpoints to other network functions.
  • KPI Key Performance Indicators
  • PNFD Physical Network Function Descriptor: PNFD
  • VNF catalog 15 describes the connectivity, connectivity, and KPI requirements of virtual links to the attached physical network function. Necessary when a physical device is incorporated in the NS, facilitating network expansion.
  • An NS or VNF instantiation operation is executed from the OSS / BSS 30 or the VNFM 12 to the NFVO 11.
  • a record representing a newly generated instance is generated.
  • each record generated based on information given in each descriptor and additional runtime information related to the component instance provides data for modeling the instance state of the network service (NS).
  • NS Network Service Record
  • VNFFG Record: VNFFFGR VNFFG Record: VNFFFGR
  • VLR Virtual Link Record
  • VNF record Virtualized Network Function Record: VNFR
  • PNF record Physical Network Function Record: PNFR
  • the NSR, VNFR, VNFFGR, and VLR information elements provide a set of data items necessary for modeling the state of NS, VNF, VNFFG, and VL instances.
  • a PNF record represents an instance related to PNF that already exists in NS and includes a runtime attribute (connectivity to NFVO) of PNF information.
  • NFV functions have been put into practical use by carriers (carriers) in each country.
  • the carrier network function can be virtualized and the dedicated server can be replaced with a general-purpose server.
  • Non-Patent Document 2 describes that a hardware accelerator can be handled as an NFVI resource.
  • Non-Patent Documents 1 and 2 there is no specific disclosure regarding how to grasp the specifications of HWA and how to manage HWA when using a hardware accelerator. Therefore, in the NFV environment, there is no method for recognizing a hardware accelerator as a resource, and there arises a problem that resources cannot be assigned (assigned) considering the hardware accelerator as a VNF requirement.
  • An object of the present invention is to provide a control device, a VNF placement destination selection method, and a program that contribute to providing a virtual environment network that uses a hardware accelerator.
  • a first means for holding hardware accelerator requirements indicating a hardware accelerator condition necessary for VNF (Virtualized Network Function), and a plurality of usable hardware accelerators respectively.
  • a second means for holding hardware accelerator configuration information indicating configuration information, and a hardware accelerator assigned to a VNF among the plurality of hardware accelerators by referring to the hardware accelerator requirements and the hardware accelerator configuration information And a third means for selecting a control device.
  • the first means for holding the hardware accelerator requirement indicating the condition of the hardware accelerator necessary for VNF (Virtualized Network Function), and each of the plurality of usable hardware accelerators A second means for holding hardware accelerator configuration information indicating configuration information, a step of referring to the hardware accelerator requirement and the hardware accelerator configuration information, and among the plurality of hardware accelerators Selecting a hardware accelerator to be assigned to the VNF, and providing a VNF placement destination selection method.
  • VNF Virtualized Network Function
  • This 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.
  • control device a VNF placement destination selection method, and a program that contribute to providing a virtual environment network that uses a hardware accelerator.
  • FIG. 14 is a diagram in which the present disclosure is applied to “ Figure B.8:“ VNF ”check” feasibility ”message” flow ”of“ B.3.1.1 VNF Check Feasibility ”of Non-Patent Document 1.
  • FIG. 14 is a diagram in which the present disclosure is applied to “ Figure B.12:“ VNF ”instance“ scaling ”message“ flow ”of“ B.4.3 Scaling flow with resource allocation done by NFVO ”of Non-Patent Document 1.
  • FIG. 14 is a diagram in which the present disclosure is applied to “ Figure B.12:“ VNF ”instance“ scaling ”message“ flow ”of“ B.4.3 Scaling flow with resource allocation done by NFVO ”of Non-Patent Document 1.
  • FIG. 14 is a diagram in which the present disclosure is applied to “Figure B.13:“ Automatic VNF expansion flow triggered by VNF performance measurement results '' of “B.4.4.1 Automatic VNF expansion triggered by VNF performance measurement results” of Non-Patent Document 1. It is the figure which applied this indication to " Figure B.14:” EM “initiated” VNF “expansion” flow “of” B.4.4.2 “EM” initiated “VNF” expansion "of nonpatent literature 1. It is the figure quoted from FIG.5.1 (The * NFV-MANO * architectural * framework * with * reference * points) of the 23rd page of a nonpatent literature 1.
  • FIG.5.1 The * NFV-MANO * architectural * framework * with * reference * points
  • FIG. 1 is a diagram illustrating an example of the configuration of the control device 100 according to the first embodiment.
  • the control device 100 includes first means 101, second means 102, and third means 103.
  • the first means 101 holds hardware accelerator requirements indicating hardware accelerator conditions necessary for VNF (Virtualized Network Function).
  • VNF Virtualized Network Function
  • the second means 102 holds hardware accelerator configuration information indicating configuration information of each of a plurality of usable hardware accelerators.
  • the third means 103 refers to the hardware accelerator requirement and the hardware accelerator configuration information, and selects a hardware accelerator to be assigned to the VNF from among a plurality of hardware accelerators.
  • the first means 101 corresponds to the VNFM 12 or its submodule.
  • the second means 102 corresponds to the VIM 13 or its submodule.
  • the third means 103 corresponds to the NFVO 11 or its submodule.
  • the hardware accelerator requirements include ID (Identifier) information for identifying the hardware accelerator and requirements required by the VNF to the hardware accelerator.
  • the ID information for identifying the hardware accelerator includes at least one of a vendor ID for identifying the vendor of the hardware accelerator, a device type indicating the type of device, and a device ID for identifying the device.
  • VNFs require for hardware accelerators include whether or not VNF requires the use of hardware accelerators, whether it is necessary to use, the program ID that identifies the program when using hardware accelerators, and the sharing of hardware accelerators It includes at least one of sharing settings indicating whether or not it is possible.
  • the hardware accelerator configuration information includes ID information for identifying the hardware accelerator and HWA resource information indicating the usage status of the hardware accelerator.
  • the ID information for identifying the hardware accelerator can be the same as the ID information of the hardware accelerator requirement.
  • the HWA resource information includes a usage status indicating whether or not a hardware accelerator is used, a loading ID indicating a program loaded on the hardware accelerator, a loadable ID indicating a program that can be loaded on the hardware accelerator, and a hardware accelerator. At least one of sharing settings indicating whether or not sharing is possible.
  • FIG. 2 is a flowchart showing an example of the operation of the control device 100 according to the first embodiment.
  • the third means 103 refers to the hardware accelerator requirement held by the first means 101 and the hardware accelerator configuration information held by the second means 102 (step S01). ).
  • the third means 103 selects a resource (hardware accelerator) to be allocated to the VNF based on the two pieces of information referred to above (step S02).
  • the control apparatus 100 is information necessary for the VNF to use the hardware accelerator, and information for identifying the hardware accelerator used by the VNF (hardware Accelerator requirements) and information for managing hardware accelerators (hardware accelerator configuration information) as NFVI resources.
  • the control device 100 selects a hardware accelerator to be assigned to the VNF using these pieces of information. As a result, the control device 100 can perform resource selection in consideration of the hardware accelerator in the NFV environment.
  • multi-vendor hardware accelerators can be placed as NFVI resources, and appropriate hardware accelerators can be assigned to VNFs according to the hardware accelerator requirements Hardware acceleration in the NFV environment can be realized.
  • FIG. 3 is a diagram illustrating an example of a network system configuration according to the second embodiment.
  • the network system includes a network function virtualization management orchestration device (NFV) including an NFV orchestrator (NFVO) 11, a VNF manager (VNFM) 12, and a virtualization infrastructure manager (VIM) 13.
  • NFV network function virtualization management orchestration device
  • NFVO NFV orchestrator
  • VNFM VNF manager
  • VIP virtualization infrastructure manager
  • -MANO also referred to as control device or virtualization control device 10.
  • NFVO11, VNFM12, and VIM13 are functional entities that manage the network system.
  • the VIM 13 generates a virtual machine (VM) and a VNF on the physical machine (PM) under the control of the NFVO 11 and the VNFM 12.
  • VM virtual machine
  • PM physical machine
  • the network system includes a physical machine (PM) 20 and an OSS / BSS 30.
  • the physical machine 20 includes an NFVI 21, and a VNF 22 and an EMS 23 are configured on the NFVI 21.
  • the network system shown in FIG. 3 provides a communication function by a virtual server (VNF 22) implemented in software in a virtual machine (VM) configured on the physical machine 20.
  • VNF 22 virtual server
  • VM virtual machine
  • the physical machine 20 includes a hardware accelerator as hardware resources in addition to computing, storage, and network.
  • the NFVI 21 is a base that handles virtual hardware resources obtained by virtualizing hardware resources including the hardware accelerator with a virtualization layer such as a hypervisor.
  • FIG. 3 shows one physical machine 20, but actually a plurality of physical machines 20 are included in the network system.
  • Each physical machine 20 can include at least one computing or the like.
  • the physical machine 20 can be equipped with a plurality of hardware accelerators.
  • VNFM 12 and VIM 13 can have a many-to-many relationship. That is, the VNFM 12 common to the plurality of VIMs 13 may be provided, or the VNFM 12 may be provided corresponding to each of the plurality of VIMs 13. Or the structure which connects several VNFM12 with respect to one VIM13 may be sufficient, and the structure which connects several VIM13 to one VNFM12 may be sufficient.
  • the NFVO 11 includes orchestration of NFVI 21 resources, life cycle management of network service (Network Service: NS) instances (instantiation of NS instances, scaling (Scaling), termination (Termination), update (Update), etc. )I do.
  • Network Service Network Service: NS
  • NS network Service
  • scaling Scaling
  • Termin Termin
  • Update update
  • I do I do.
  • the VNFM 12 performs life cycle management of VNF instances (for example, instantiation, update, query, scaling, termination, etc.) and event notification.
  • the VIM 13 performs NFVI 21 computing, storage, network, hardware accelerator resource management, NFVI 21 failure monitoring, NFVI 21 resource monitoring, and the like.
  • FIG. 4 is a diagram for explaining the NFV-MANO 10 according to the second embodiment in terms of functions.
  • the NFVO 11 includes an HWA selection unit 201.
  • the HWA selection unit 201 refers to hardware accelerator requirements (hereinafter referred to as “HWA requirements”) and hardware accelerator configuration information (hereinafter referred to as “HWA configuration information”), and includes a plurality of hardware accelerators included in the system. , Means for selecting a hardware accelerator to be assigned to the VNF 22. More specifically, the HWA selection unit 201 selects a hardware accelerator to be allocated to the VNF 22 at the time of a new allocation of resources in NS instance life cycle management (for example, instantiation of NS instance, scaling, etc.) or a change.
  • HWA requirements hardware accelerator requirements
  • HWA configuration information hardware accelerator configuration information
  • the VNFM 12 includes an HWA requirement management unit 211.
  • the HWA requirement management unit 211 is a means for holding and managing the HWA requirement.
  • the HWA requirement is information indicating a hardware accelerator condition necessary for the VNF 22. By referring to the HWA requirement, the hardware accelerator required by the VNF 22 can be specified.
  • FIG. 5 is a diagram showing an example of the HWA requirement.
  • the HWA requirement includes information specifying the VNF 22, HWA identification information for identifying the hardware accelerator (hereinafter referred to as HWAID), and requirements (utilization) required by the VNF 22 for the hardware accelerator. Requirement) and a set of information.
  • HWAID “vendor ID”, “device type”, “device ID”, and the like can be used.
  • the vendor ID is ID information for identifying the vendor of the hardware accelerator.
  • the device type is ID information that identifies the mounting position of the hardware accelerator, the presence or absence of a network interface, and the like. For example, information indicating that the hardware accelerator is a SoC (System On Interface Chip), a NIC (Network Interface Card), a PCI (Peripheral Component Interconnect) device, or the like is used as the device type.
  • SoC System On Interface Chip
  • NIC Network Interface Card
  • PCI Peripheral Component Interconnect
  • Device ID is ID information that can identify each device (hardware accelerator) individually. As the device ID, the model number, serial number, etc. of each hardware accelerator can be used.
  • the usage requirements include “use necessity”, “program ID”, and “share setting”.
  • “Use Necessity” is information indicating whether or not the VNF 22 needs to use a hardware accelerator.
  • “O” is indicated, and when it is not required, “X” is indicated.
  • the program ID is ID information of a program that uses a hardware accelerator in the VNF 22 program (application).
  • the sharing setting is information indicating whether or not the hardware accelerator can be shared with other VNFs 22.
  • the sharing setting it is possible to set that sharing with other VNFs 22 is possible, sharing with other VNFs 22 is conditional, and sharing with other VNFs 22 is impossible.
  • “ ⁇ ” is indicated when sharing is possible
  • “ ⁇ ” is indicated when sharing is possible
  • “X” is indicated when sharing is impossible.
  • sharing is possible under conditions, there is a case where the same program uses a hardware accelerator.
  • the first line in FIG. 5 indicates that VNF_1 needs to use a hardware accelerator whose vendor ID is “A”, device type is “aaa”, and device ID is “1”.
  • the bank also indicates that VNF_1 uses the hardware accelerator in the program whose program ID is “P1”, and can be shared with other VNFs 22 at that time.
  • the network administrator or the like sets the HWA requirement to NFV-MANO10 at the start of network operation or at an arbitrary timing.
  • the network administrator can set the HWA requirement in the NFV-MANO 10 (VNFM 12) by defining the template in which requirements and constraints necessary for deploying the VNF 22 such as VDUD (VDU Descriptor) are described.
  • the VIM 13 includes an HWA configuration management unit 221.
  • the HWA configuration management unit 221 is a means for holding and managing the HWA configuration information.
  • the HWA configuration information is information indicating configuration information of each of a plurality of hardware accelerators included in the system.
  • the VIM 13 holds HWA configuration information for managing a hardware accelerator mounted on the physical machine 20 under its control.
  • FIG. 6 is a diagram showing an example of HWA configuration information.
  • the HWA configuration information includes information specifying the physical machine 20, HWA identification information for identifying the hardware accelerator (the above-described HWAID), and HWA resource information indicating the usage status of the hardware accelerator. And a set of information.
  • HWA resource information is used to determine whether or not the hardware accelerator is available.
  • the HWA resource information includes “usage status”, “loading ID”, “loadable ID”, and “shared setting”.
  • the usage status is information indicating whether the hardware accelerator is currently used (attached) in units of VF (virtual function) or PF (physical function).
  • the usage rate of the hardware accelerator can be used for the usage status.
  • the number of programs (processes) currently being executed with respect to the total number of programs (processes) that can be executed by the hardware accelerator can be used as the usage status.
  • the usage status may be the usage status if the hardware accelerator is a NIC and the measurement of the communication bandwidth is possible.
  • the loading ID is ID information related to a program written in the hardware accelerator (a program executed by the hardware accelerator).
  • Loadable ID is ID information related to a program that can be written to the hardware accelerator.
  • the sharing settings are as described above.
  • the hardware accelerator can execute programs having program IDs “P1” and “P2”, but cannot execute two programs at the same time (cannot be shared).
  • the bank also indicates that the current status of the hardware accelerator is that the program with the program ID “P1” is executed and the usage rate is 1/12.
  • the second line in FIG. 6 indicates that the hardware accelerator is capable of executing a program with program IDs “P1” and “P2” and that the program with program ID “P1” is being executed. Show. In the bank, since the sharing setting is set to “conditionally shareable” and there is a sufficient resource (the usage rate is not 100%), the program loaded to the hardware accelerator is “P1”. Indicates that it can be assigned to another VNF 22.
  • the HWA configuration management unit 221 manages the HWA configuration information in the same manner as other NFVI resource information such as computing. More specifically, the HWA configuration information is managed by adding the HWA configuration information to the PM management information of the VIM 13.
  • the HWA configuration management unit 221 updates the HWA resource information of the HWA configuration information every time the usage status of the hardware accelerator changes.
  • VIM13 When setting HWA configuration information in NFV-MANO10 (VIM13), a flavor managed by VIM13 is used. Specifically, the HWA configuration information is set in the VIM 13 by including the HWA configuration information in the flavor used when registering the resource information of the physical machine 20 in the NFV-MANO 10.
  • the content of the HWA requirement and the HWA configuration information has been described using FIG. 5 and FIG. 6, it is not intended to limit the elements included in the information.
  • the HWA requirement and the HWA configuration information may include elements not shown in FIGS.
  • the “loadable ID” may be used as information (HWAID) for identifying a hardware accelerator.
  • FIG. 7 is a flowchart showing an example of the operation of NFV-MANO10.
  • the flowchart of FIG. 7 shows the operation accompanying when the NFVO 11 performs resource confirmation (Check Resource) with the VIM 13.
  • the HWA selection unit 201 acquires the HWA requirement from the VNFM 12.
  • the reference point Or-Vnfm is used to acquire the HWA requirement (information exchange).
  • the HWA selection unit 201 determines whether or not the hardware accelerator needs to be used for the VNF 22 that performs instantiation or the like (step S101). Specifically, the HWA selection unit 201 confirms “use necessity” included in the use requirement of the VNF 22 in the HWA requirement. As a result of the confirmation, if it is necessary to use a hardware accelerator (step S101, Yes branch), the processing from step S102 onward is executed. As a result of the confirmation, if the use of a hardware accelerator is not necessary (step S101, No branch), the processing shown in FIG. 7 is terminated, and a normal resource check by the NFVO 11 is performed.
  • step S102 the HWA selection unit 201 acquires the HWA configuration information from the VIM 13.
  • the HWA selection unit 201 designates one VIM 13 and acquires the HWA configuration information.
  • the reference point Or-Vi is used for acquisition (information exchange) of the HWA configuration information.
  • step S103 the HWA selection unit 201 compares the HWA requirement of the HWA requirement and the HWA ID of the HWA configuration information, and determines whether or not they match. If they match (step S103, Yes branch), the processing after step S104 is executed. If they do not match (step S103, No branch), the process proceeds to step S107.
  • step S104 the HWA selection unit 201 determines whether or not the program ID included in the usage requirement of the HWA requirement is included in the loadable ID of the HWA configuration information.
  • the processing after step S105 is executed. If the program ID is not included in the loadable ID (step S104, No branch), the process proceeds to step S107.
  • step S105 the HWA selection unit 201 determines whether the VNF 22 specified by the HWA requirement can use the hardware accelerator of the HWA configuration information. If available (step S105, Yes branch), the processing from step S106 onward is executed. When it cannot be used (step S105, No branch), the process proceeds to step S107. Details regarding whether or not the hardware accelerator can be used by the HWA selection unit 201 will be described later with reference to FIG.
  • step S106 the HWA selection unit 201 stores the available hardware accelerator and the physical machine 20 including the hardware accelerator as a deployment candidate destination of the VNF 22.
  • step S107 the HWA selection unit 201 determines whether or not the comparison of all the HWA configuration information and the HWA requirements has been completed. If there is HWA configuration information that has not been compared (step S107, No branch), the HWA selection unit 201 acquires the remaining HWA configuration information (step S108), and repeats the processing from step S103 onward. When the comparison has been completed (step S107, Yes branch), the HWA selection unit 201 ends the process illustrated in FIG.
  • the NFVO 11 performs a normal resource check for the physical machine 20 that is the deployment candidate destination stored in step S106.
  • step S201 the HWA selection unit 201 confirms “usage status” included in the HWA resource information of the HWA configuration information, and determines whether or not the hardware accelerator is in use. Specifically, the HWA selection unit 201 determines whether the hardware accelerator is in use depending on whether the usage rate of the hardware accelerator is “0” in the usage status of the HWA resource information. If the hardware accelerator is not in use (step S201, No branch), it is determined that the hardware accelerator is available. If the hardware accelerator is in use (step S201, Yes branch), the processing after step S202 is executed.
  • step S202 the sharing setting of the HWA configuration information and the HWA requirement is confirmed, and it is determined whether or not at least one of them is “unshareable”. If at least one of them is not sharable (step S202, Yes branch), it is determined that the hardware accelerator cannot be used. If at least one is not sharable (step S202, No branch), the processing after step S203 is executed. In this case, the sharing setting of the HWA configuration information and the HWA requirement is either “shareable” or “conditionally shareable”.
  • step S203 the sharing setting of the HWA configuration information and the HWA requirement is confirmed, and it is determined whether or not both are “sharable”. If both are “sharable” (step S203, Yes branch), the process of step S205 is executed. If the two are not “shareable” (step S203, No branch), the processing from step S204 is executed. In this case, the sharing setting of at least one of the HWA configuration information and the HWA requirement includes “conditionally shareable”.
  • step S204 the “loading ID” included in the HWA resource information of the HWA configuration information is compared with the “program ID” included in the usage requirement of the HWA requirement, and it is determined whether or not both are the same. If both are the same (step S204, Yes branch), the process of step S205 is executed. If the two are different (step S204, No branch), it is determined that the hardware accelerator cannot be used.
  • the HWA selection unit 201 determines whether or not the hardware accelerator resource is free (determines whether or not the hardware accelerator has an execution capacity).
  • the HWA selection unit 201 can determine the execution capacity of the hardware accelerator by performing threshold processing on the usage status (usage rate) of the HWA resource information. For example, if the usage rate of the hardware accelerator is 50% or less, the HWA selection unit 201 determines that there is a free resource in the hardware accelerator. If there is a vacancy in the hardware accelerator resource (step S205, Yes branch), it is determined that the hardware accelerator is available. If there is no free space in the hardware accelerator resource (step S205, No branch), it is determined that the hardware accelerator cannot be used.
  • FIGS. 7 and 8 will be described in detail with reference to FIG.
  • the HWAID of the hardware accelerator in the first row matches the HWA ID of the HWA requirement.
  • the loadable ID of the hardware accelerator on the first line of PM_1 includes the program ID “P1” of the HWA requirement. Therefore, it is determined whether or not the hardware accelerator can be used (step S105 in FIG. 7).
  • PM_1 is the VNF_1 shown in FIG. 9B. Not selected as a placement candidate.
  • the HWAID of the hardware accelerator on the third line in FIG. 9A matches the HWAID of the HWA requirement.
  • the loadable ID of the hardware accelerator and the program ID of the HWA requirement match with “P1”. Therefore, it is determined whether or not the hardware accelerator can be used.
  • the sharing setting on the third line of PM_2 is confirmed, the setting is “conditionally sharable”.
  • the hardware accelerator can be used if the programs using the hardware accelerator match. Since both the program ID and loading ID in FIG. 9B match with “P1” and there are vacant resources in the hardware accelerator, PM_2 is selected as a placement destination candidate for VNF_1 shown in FIG. 9B.
  • PM_3 is not selected as a placement destination candidate of VNF_1.
  • PM_1 and PM_3 are not selected as placement destination candidates for VNF_2.
  • PM_1 the sharing setting of the HWA configuration information is “unshareable” and the HWAID is different. This is because PM_3 does not match the HWAID.
  • the sharing setting in the hardware accelerator shown in the third line of FIG. 9A is “conditionally sharable”.
  • the hardware accelerator can be used if the programs using the hardware accelerator match.
  • PM_2 is shown in FIG. 9C. It is not selected as a placement destination candidate for the indicated VNF_2.
  • FIG. 10 is a block diagram illustrating an example of a hardware configuration of the NFV-MANO 10 according to the second embodiment.
  • the NFV-MANO 10 can be configured by an information processing device (computer), and has the configuration illustrated in FIG.
  • the NFV-MANO 10 includes a CPU (Central Processing Unit) 41, a memory 42, an input / output interface 43, a NIC (Network Interface Card) 44 serving as communication means, and the like that are connected to each other via an internal bus.
  • the configuration shown in FIG. 10 is not intended to limit the hardware configuration of the NFV-MANO 10.
  • the NFV-MANO 10 may include hardware (not shown).
  • the number of CPUs and the like included in the NFV-MANO 10 is not limited to the example illustrated in FIG. 10.
  • a plurality of CPUs may be included in the NFV-MANO 10.
  • the memory 42 is a RAM (Random Access Memory), a ROM (Read Only Memory), or an auxiliary storage device (such as a hard disk).
  • RAM Random Access Memory
  • ROM Read Only Memory
  • auxiliary storage device such as a hard disk
  • the input / output interface 43 is a means to be an interface of a display device and an input device (not shown).
  • the display device is, for example, a liquid crystal display.
  • the input device is a device that accepts user operations such as a keyboard and a mouse, for example.
  • the processing modules of the NFV-MANO 10 are realized by the CPU 41 executing a program stored in the memory 42, for example.
  • the program can be downloaded through a network or updated using a storage medium storing the program.
  • the processing module may be realized by a semiconductor chip. That is, it is sufficient if there is a means for executing the function performed by the processing module with some hardware and / or software.
  • the hardware configuration of the physical machine 20 shown in FIG. 3 is basically the same as the configuration of the NFV-MANO 10 and is obvious to those skilled in the art, and thus the description thereof is omitted.
  • the NFV-MANO 10 refers to the HWA requirement and the HWA configuration information, selects a hardware accelerator that satisfies the HWA requirement from a plurality of hardware accelerators, and selects the selected The physical machine 20 including the hardware accelerator is selected as an arrangement destination candidate for the VNF 22.
  • the hardware accelerator can be handled as a part of the NFVI resource, and hardware acceleration in the NFV environment can be realized.
  • the case has been described in which the physical machine 20 that is the placement destination candidate of the VNF 22 is selected using the HWAID included in the HWA requirement.
  • the placement destination candidate of the VNF 22 is selected without using the HWAID.
  • the network configuration, the functional configuration, and the like can be the same as those in the second embodiment, and thus the description corresponding to FIGS. 3 and 4 is omitted.
  • FIG. 11 is a diagram illustrating an example of the HWA requirement according to the third embodiment. Referring to FIG. 11, HWAID is not described in the HWA requirement according to the third embodiment.
  • FIG. 12 is a flowchart showing an example of the operation of the NFV-MANO 10 according to the third embodiment.
  • the same process names in the flowcharts shown in FIGS. 12 and 7 are given the same step names.
  • the difference between the flowcharts shown in FIGS. 12 and 7 is that there is no HWAID determination processing in step S103.
  • the HWA selection unit 201 can select the physical machine 20 that is the placement destination candidate of the VNF 22 by the function of the hardware accelerator. Specifically, the HWA selection unit 201 selects the HWA configuration information having the loadable ID that matches the program ID of the HWA requirement from among the plurality of HWA configuration information, and thereby becomes a physical machine that is a placement destination candidate of the VNF 22 20 can be selected.
  • the sharing setting of the HWA resource information is “unshareable” and the program with the program ID “P1” has already been executed.
  • PM_1 is not a placement candidate for VNF_3.
  • the sharing setting is “conditionally sharable” and the loading ID and program ID match. Further, it can be determined that there is a free resource in the hardware accelerator. Therefore, PM_1 is a placement destination candidate for VNF_3.
  • the sharing setting is “conditionally sharable” and the loading ID and program ID match. Further, it can be determined that there is a free resource in the hardware accelerator. Therefore, PM_2 is a placement candidate for VNF_3.
  • PM_2 is VNF_3. Is a placement candidate.
  • PM_3 can be a placement destination candidate for VNF_2.
  • a resource (hardware accelerator) to be allocated to the VNF 22 by using a part of the HWA requirement (HWAID is not used). That is, the hardware accelerator assigned to the VNF 22 can be selected using the hardware accelerator function (use requirement) without using the information (HWAID) for specifying the device among the HWA requirement and the HWA configuration information. .
  • the operation after selecting the placement destination candidate of the VNF 22 is not mentioned.
  • an operation of the NFV-MANO 10 after selecting a plurality of placement destination candidates will be described.
  • FIG. 14 is a diagram for explaining the NFV-MANO 10 according to the fourth embodiment in terms of functions.
  • the difference between NFV-MANO 10 shown in FIG. 4 and FIG. 14 is that the placement destination determination unit 202 is included in NFVO 11.
  • the placement destination determination unit 202 is a unit that refers to a selection policy (to be described later) from among a plurality of resources (hardware accelerators) selected by the HWA selection unit 201 and determines a resource for actually placing the VNF 22.
  • the selection policy can be set in the HWA requirement managed by the VNFM 12.
  • FIG. 15 is a diagram illustrating an example of the HWA requirement according to the fourth embodiment. Referring to FIG. 15, “No policy”, “Centralization”, “Decentralization”, and the like can be set as selection policies.
  • the placement destination determination unit 202 places the VNF 22 in any placement destination candidate. For example, the placement destination determination unit 202 places the VNF 22 in the physical machine 20 that includes the hardware accelerator (resource) selected first.
  • the placement destination determination unit 202 preferentially assigns a hardware accelerator that is already used or a hardware accelerator with a high usage rate (usage status) to the VNF 22. assign. However, when there are a plurality of hardware accelerators having the same usage rate, the placement destination determination unit 202 assigns them to the VNFs 22 in the order selected from the plurality of hardware accelerators.
  • the placement destination determination unit 202 preferentially assigns unused hardware accelerators (unused resources) to the VNFs 22. When there is no unused hardware accelerator, the placement destination determination unit 202 preferentially assigns a hardware accelerator with a low usage rate to the VNF 22. Alternatively, when there are a plurality of unused hardware accelerators, the placement destination determination unit 202 may assign the VNFs 22 in the order of selection.
  • a policy selection policy when there are a plurality of hardware accelerators selected in the second and third embodiments is set in advance, and the allocation destination determination of the VNF 22 is performed. Utilize policy.
  • the selection policy (VNF placement policy) is added as a parameter to the HWA requirement, and the physical machine (resource) on which the VNF is placed is determined using the policy, so that the optimum suitable for the nature of the VNF An appropriate location can be determined.
  • the HWA selection unit 201 of the NFVO 11 selects a hardware accelerator to be allocated to the VNF 22 when a resource is newly allocated or changed in the life cycle management of the NS instance, and extracts a placement destination candidate. For example, (1) Instantiation of VNF22, (2) Scaling led by NFVO11 (3) Scaling led by VNFM 12 and triggered by VNF, (4) Scaling led by VNFM 12 and triggered by EM, Such a case may be cited as a case where the HWA selection unit 201 operates. Note that scaling includes scale-up and scale-down in addition to scale-out. Further, the scene where the HWA selection unit 201 operates (application of the present disclosure) is not limited to the above (1) to (4), and may be at the time of redundant reconfiguration after healing.
  • FIG. 16 is a flowchart when the present disclosure is applied to “Figure B.8: VNF check feasibility message flow” of “B.3.1.1 VNF Check Feasibility” of Non-Patent Document 1.
  • FIG. 17 is a flowchart when the present disclosure is applied to “Figure B.12: VNF instance scaling message flow” of “B.4.3 Scaling flow with resource allocation done by NFVO” of Non-Patent Document 1.
  • FIG. 18 shows the application of the present disclosure to “Figure B.13: Automatic VNF expansion flow triggered by VNF performance measurement results” in “B.4.4.1 Automatic VNF expansion triggered by VNF performance measurement results” in Non-Patent Document 1. It is a flowchart in the case.
  • FIG. 19 is a flowchart in the case where the present disclosure is applied to “Figure B.14: EM initiated VNF expansion flow” of “B.4.4.2 EM initiated VNF expansion” of Non-Patent Document 1.
  • HWA is used as one of the check items at the time of resource check. An operation related to the selection may be added.
  • a virtual environment network using a hardware accelerator is realized by adding processing for selecting a resource (hardware accelerator) that can be allocated to the VNF 22 to various flowcharts disclosed in Non-Patent Document 1. it can.
  • the control device according to any one of appendices 1 to 3, wherein the hardware accelerator configuration information includes information for identifying a hardware accelerator and resource information indicating a usage status of the hardware accelerator.
  • the resource information includes a usage status indicating whether or not a hardware accelerator is used, information indicating a program loaded in the hardware accelerator, information indicating a program that can be loaded into the hardware accelerator, and sharing of the hardware accelerator.
  • the control device according to supplementary note 4, including at least one of shared settings indicating whether or not the communication is possible.
  • Appendix 6 The control device according to appendix 4 or 5, wherein the information for identifying the hardware accelerator includes at least one of information for identifying a hardware accelerator vendor, information indicating a device type, and information for identifying a device .
  • Appendix 7 The control device according to any one of appendices 1 to 6, wherein the third means selects a hardware accelerator to be allocated to the VNF using a part of information included in the hardware accelerator requirement.
  • Appendix 8 When the third means selects a plurality of hardware accelerators to be allocated to the VNF, a determination is made to determine a hardware accelerator to be allocated to the VNF from the selected plurality of hardware accelerators based on a selection policy.
  • the control device according to any one of appendices 1 to 7, further comprising means.
  • the hardware accelerator requirement includes a program ID for identifying a program when using the hardware accelerator and a first sharing setting indicating whether or not the hardware accelerator can be shared
  • the hardware accelerator configuration information includes a usage status indicating whether or not the hardware accelerator is used, a loading ID indicating a program loaded in the hardware accelerator, a loadable ID indicating a program that can be loaded into the hardware accelerator, and Including a second sharing setting that indicates whether the hardware accelerator can be shared,
  • the control device according to appendix 1, wherein the third means selects a hardware accelerator to be assigned to a VNF from among hardware accelerators in which the program ID is included in the loadable ID.
  • the third means is not selected as a hardware accelerator for allocating the non-sharable hardware accelerator to a VNF.
  • the third means is a hardware accelerator assigned to a VNF from among the hardware accelerators set to be sharable when sharable is set in both the first and second sharing settings.

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

ハードウェアアクセラレータを使用する仮想化環境ネットワークを提供する制御装置を提供する。制御装置は、VNFに必要なハードウェアアクセラレータの条件を示すハードウェアアクセラレータ要件を保持する第1の手段と、使用可能な複数のハードウェアアクセラレータそれぞれの構成情報を示すハードウェアアクセラレータ構成情報を保持する第2の手段と、上記ハードウェアアクセラレータ要件とハードウェアアクセラレータ構成情報を参照し、複数のハードウェアアクセラレータのうち、VNFに割り当てるハードウェアアクセラレータを選択する第3の手段と、を備える。

Description

制御装置、VNF配置先選択方法及びプログラム
 本発明は、制御装置、VNF配置先選択方法及びプログラムに関する。特に、ネットワーク機能仮想化管理オーケストレーションに係る制御装置、VNF配置先選択方法及びプログラムに関する。
 サーバ上のハイパーバイザ(HyperVisor:HV)等の仮想化レイヤ(Virtualization Layer)上に実装した仮想マシン(Virtual Machine:VM)によりネットワーク機器等の機能をソフトウェア的に実現するNFV(Network Functions Virtualization)が知られている(例えば、非特許文献1、2参照)。
 図20は、非特許文献1の第23頁のFigure 5.1(The NFV-MANO architectural framework with reference points)から引用した図である。
 VNF(Virtualized Network Function)22はサーバ上の仮想マシン(VM)で動作するアプリケーション等に対応し、ネットワーク機能をソフトウェア的に実現する。VNF22ごとにEM(Element Manager:要素管理)23(EMS(Element Manage System)ともいう)という管理機能が設けられる。
 NFVI(Network Functions Virtualization Infrastructure)21は、コンピューティング、ストレージ、ネットワーク機能等、物理マシン(サーバ)のハードウェア資源をハイパーバイザ等の仮想化レイヤで仮想化した仮想化コンピューティング、仮想化ストレージ、仮想化ネットワーク等の仮想化ハードウェア資源として柔軟に扱えるようにした基盤である。
 NFV-MANO(NFV Management & Orchestration)10のNFVオーケストレータ(NFV Orchestrator:NFVO)11は、NFVI21のリソースのオーケストレーション、及び、ネットワークサービス(Network Service:NS)インスタンスのライフサイクル管理(NSインスタンスのインスタンシエーション(Instantiation)、スケーリング(Scaling)、ターミネーション(Termination)、更新(Update)等)を行う。また、NSカタログ14(NSD/VLD/VNFFGD)、及びVNFカタログ15(VNFD(VNF/PNFD))の管理を行い、NFVインスタンスのリポジトリ16、NFVIリソースのリポジトリ17を持つ。
 VNFマネージャ(VNF Manager:VNFM)12は、VNFインスタンスのライフサイクル管理(例えばインスタンシエーション(instantiation)、更新(update)、クエリ(query)、スケーリング(scaling)、停止(termination)等)およびイベント通知を行う。
 仮想化インフラストラクチャマネージャ(Virtualized Infrastructure Manager:VIM)13は、NFVI21のコンピューティング、ストレージ、ネットワークのリソース管理、NFVI21の障害監視、NFVI21のリソース監視等を行う。
 OSS/BSS30のうちOSS(Operations Support Systems)は、例えば通信事業者(キャリア)がサービスを構築し、運営していくために必要なシステム(機器やソフトウェア、仕組みなど)を総称したものである。BSS(Business Support systems)は、例えば通信事業者(キャリア)が利用料などの課金、請求、顧客対応などのために使う情報システム(機器やソフトウェア、仕組みなど)の総称である。
 NSカタログ(NS catalog)14は、ネットワークサービス(NS)のリポジトリを表している。NSカタログ(NS catalog)は、ネットワークサービス(NS)ディスクリプタ(Network Service Descriptor:NSD)、仮想リンクディスクリプタ(Virtual Link Descriptor:VLD)、VNFフォアワーディンググラフディスクリプタ(VNF Forwarding Graph Descriptor:VNFFGD)の生成と管理の支援を行う。
 VNFカタログ(VNF catalog)15は例えばオンボードされたVNFパッケージ(on-boarded VNF package)のリポジトリを表している。VNFカタログ(VNF catalog)15はVNFD(VNF Descriptor)、PNFD(PNF Descriptor)等を有する。
 NFVインスタンスリポジトリ(NFV instance Repository)16は、全VNF、全ネットワークサービス(NS)のインスタンス情報を保持する。VNFインスタンス、NSインスタンスはそれぞれVNF、NSレコードに記述される。これらのレコードは、各インスタンスのライフサイクルで、VNFライフサイクル管理操作、NSライフサイクル管理操作の実行結果を反映するように更新される。
 NFVIリソースリポジトリ(NFVI Resources Repository)17はVIM13により抽出された、利用可能な(available)/予約された(reserved)/割り付けられた(allocated)NFVI21のリソースの情報を保持し、リソースの予約、割り当て、モニタ等に役立つ情報を提供する。NFVIリソースリポジトリ17は、NFVI21の予約/割り当て済みリソースを、これらのリソース(VNF22のライフサイクル中の任意の時点での該VNF22によって使用される仮想マシンの個数等)に関連したNS及びVNFインスタンスに対して追跡可能であるため、NFVO11のリソースオーケストレーション等に重要である。
 図20において、参照ポイントOs-Ma-nfvoは、OSS/BSS30とNFVO11間の参照ポイントであり、
・ネットワークサービスのライフサイクル管理要求(Network Service Lifecycle management)、
・VNFライフサイクル管理要求(VNF Lifecycle management request)、
・NFV関連の状態情報の転送、ポリシ管理情報の交換等に用いられる。
 参照ポイントVi-Vnfmは、
・VNFM12からVIM13へのリソース割り当て要求、
・仮想化リソースの構成と状態情報の交換に用いられる。
 参照ポイントVe-Vnfm-emは、EMS23とVNFM12間で、
・VNFのインスタンシエーション、VNFインスタンス検索、更新、終了、スケールアウト/イン、スケールアップ/ダウン、
・EM(EMS)23からVNFM12への構成、イベントの転送、VNFM12からVNF22へのVNF構成、イベントの通知等に用いられる。
 参照ポイントVe-Vnfm-vnfは、VNF22とVNFM12間で、
・VNFのインスタンシエーション、VNFインスタンス検索、更新、終了、スケールアウト/イン、スケールアップ/ダウン、VNFからVNFMへの構成、イベントの転送、VNFM12からVNF22へのVNFの構成、イベントの通知等に用いられる。
 参照ポイントNf-Viは、コンピューティング/ストレージ資源の指示とともに、仮想マシン(VM)の割り付け、VMリソース割り当ての更新、VMマイグレーション、VMの終了、VM間の接続の生成・削除等、リソース割り当て要求に対する仮想化リソースの割り付け、仮想化リソースの状態情報の転送、ハードウェア資源の構成と状態の情報の交換等に用いられる。
 参照ポイントVn-Nfは、NFVI21によってVNF22に提供される実行環境を表している。
 参照ポイントOr-Vnfmは、
・VNFM12によるリソース関連要求(認証、予約(reservation)、割り当て等)、VNFM12への構成情報の転送、VNFの状態情報の収集に用いられる。
 参照ポイントOr-Viは、
・NFVO11からのVIM13ヘのリソース予約要求(reserve resource request)、リソース割り当て要求(allocate resource request)と仮想化リソースの構成と状態情報の交換に用いられる(詳細は非特許文献1参照)。
 なお、NSカタログ14のNSD(Network Service Descriptor)は、ネットワークサービス・ディプロイメント・テンプレート(Network Service Deployment Template)であり、特定のライフサイクルイベント(インスタンシエーション、ターミネーション、スケーリング等)のネットワークファンクションのスクリプト/ワークフローを定義するエンティティを有する。
 VNFFGD(VNF Forwarding Graph Descriptor)は、ネットワークサービスのトポロジ、あるいは一部を、VNF、PNF、それらを接続する仮想リンク(Virtual Link)を参照することで記述したディプロイメントテンプレートである。
 VLD(Virtual Link Descriptor)は、NFVI21で利用可能なVNF間、PNF間、NSのエンドポイント(端点)(endpoints)間のリンクに必要なリソース要求を記述したディプロイメントテンプレートである。
 VNFカタログ15のVNFD(VNF Descriptor)は、ディプロイメントとオペレーション上の挙動の要求(deployment and operational behavior requirements)の観点からVNFを記述するディプロイメントテンプレートである。VNFDは、VNFのインスタンシエーション(インスタンス化)とVNFインスタンスのライフサイクル管理においてVNFM12により主に用いられる。VNFDは、NFVO11によって、ネットワークサービス、NFVI21上の仮想化リソースの管理とオーケストレーション(コンピュータシステム/ミドルウェア/サービスの配備/設定/管理の自動化)に用いられる。NFVI21のVNFCインスタンス、又は、VNFインスタンスと、他のネットワーク機能への端点間の仮想リンク構築のために、NFVO11で利用されるコネクティビティ・インターフェイス・KPI(Key Performance Indicators)要件を含む。
 VNFカタログ15のPNFD(Physical Network Function Descriptor:PNFD)は、アタッチした物理ネットワーク機能への、仮想リンクのコネクティビティ(接続性)、インターフェイス、KPI要件を記述する。NSに物理デバイスが組み入れられるときに必要とされ、ネットワーク増設を容易にする。
 OSS/BSS30やVNFM12から、NFVO11に対して、NSまたはVNFのインスタンシエーション操作を実行する。インスタンシエーション操作の結果、新たに生成されたインスタンスを表すレコードが生成される。例えば、各ディスクリプタで与えられる情報、コンポーネントインスタンスに関連した追加のランタイム情報をもとに生成される各レコードは、ネットワークサービス(NS)のインスタンス状態をモデル化するためのデータを提供する。生成されるインスタンスレコードの種類として、例えば、
・ネットワークサービスレコード(Network Service Record:NSR)、
・VNFFGレコード(VNFFG Record :VNFFGR)、
・仮想リンクレコード(Virtual Link Record :VLR)、
・VNFレコード(Virtualized Network Function Record:VNFR)、
・PNFレコード(Physical Network Function Record:PNFR)
がある。NSR、VNFR、VNFFGR、VLR情報要素はNS、VNF、VNFFG、VLのインスタンスの状態のモデル化に必要なデータアイテム集合を提供する。PNFレコードはNSの部分をなし前から存在するPNFに関連したインスタンスを表し、PNF情報のランタイム属性(NFVOへのコネクティビティ)を含む。
ETSI GS NFV-MAN 001 V1.1.1 (2014-12) Network Functions Virtualisation (NFV); Management and Orchestration (2016年6月9日検索)<http://www.etsi.org/deliver/etsi_gs/NFV-MAN/001_099/001/01.01.01_60/gs_NFV-MAN001v010101p.pdf> ETSI GS NFV-INF 003 V1.1.1 (2014-12) Network Functions Virtualisation (NFV); Infrastructure; Compute Domain (2016年6月9日検索)<http://www.etsi.org/deliver/etsi_gs/NFV-INF/001_099/003/01.01.01_60/gs_nfv-inf003v010101p.pdf>
 なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。
 NFVの一部機能について、各国の通信事業者(キャリア)での実用化が始まっている。NFVを導入することで、キャリアネットワーク機能を仮想化し、専用サーバを汎用サーバに置き替えることで各通信キャリアでのコストダウンが期待できる。
 このような状況の下、欧州電気通信標準化機構(ETSI:European Telecommunications Standards Institute)を中心に、NFVの本格導入に向けた詳細仕様の検討、即ち、NFVの標準化が進められている。しかし、ETSIによるNFVの標準化では議論が進んでいない領域が存在する。例えば、仮想化環境のネットワークにおいて使用されるサーバ辺りの性能向上(Performance/Powerの向上)を目的として、サーバが担う高負荷処理をハードウェアアクセラレータ(以下、HWA(Hardware Accelerator)とも称する)にオフロード(代替処理)する技術の研究開発が進められている。具体的には、非特許文献2の「7.2 Network Interface & Accelerators」においてハードウェアアクセラレータをNFVIリソースとして扱いうることが記載されている。
 しかし、非特許文献1及び2では、ハードウェアアクセラレータを利用する際、どのようにしてHWAの仕様を把握するか、どのようしてHWAを管理するかに関する具体的開示がない。そのため、NFV環境において、リソースとしてのハードウェアアクセラレータを認識する方法がなく、ハードウェアアクセラレータをVNFの要件として考慮したリソースの割り当て(アサイン)ができないという問題が生じる。
 本発明は、ハードウェアアクセラレータを使用する仮想化環境ネットワークを提供することに寄与する、制御装置、VNF配置先選択方法及びプログラムを提供することを目的とする。
 本発明の第1の視点によれば、VNF(Virtualized Network Function)に必要なハードウェアアクセラレータの条件を示すハードウェアアクセラレータ要件を保持する第1の手段と、使用可能な複数のハードウェアアクセラレータそれぞれの構成情報を示すハードウェアアクセラレータ構成情報を保持する第2の手段と、前記ハードウェアアクセラレータ要件と前記ハードウェアアクセラレータ構成情報を参照して、前記複数のハードウェアアクセラレータのうち、VNFに割り当てるハードウェアアクセラレータを選択する第3の手段と、を備える、制御装置が提供される。
 本発明の第2の視点によれば、VNF(Virtualized Network Function)に必要なハードウェアアクセラレータの条件を示すハードウェアアクセラレータ要件を保持する第1の手段と、使用可能な複数のハードウェアアクセラレータそれぞれの構成情報を示すハードウェアアクセラレータ構成情報を保持する第2の手段と、を備える制御装置において、前記ハードウェアアクセラレータ要件と前記ハードウェアアクセラレータ構成情報を参照するステップと、前記複数のハードウェアアクセラレータのうち、VNFに割り当てるハードウェアアクセラレータを選択するステップと、を含む、VNF配置先選択方法が提供される。
 本発明の第3の視点によれば、VNF(Virtualized Network Function)に必要なハードウェアアクセラレータの条件を示すハードウェアアクセラレータ要件を保持する第1の手段と、使用可能な複数のハードウェアアクセラレータそれぞれの構成情報を示すハードウェアアクセラレータ構成情報を保持する第2の手段と、を備える制御装置を制御するコンピュータに実行させるプログラムであって、前記ハードウェアアクセラレータ要件と前記ハードウェアアクセラレータ構成情報を参照する処理と、前記複数のハードウェアアクセラレータのうち、VNFに割り当てるハードウェアアクセラレータを選択する処理と、を実行させるプログラムが提供される。
 なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transient)なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
 本発明の各視点によれば、ハードウェアアクセラレータを使用する仮想化環境ネットワークを提供することに寄与する、制御装置、VNF配置先選択方法及びプログラムが、提供される。
第1の実施形態に係る制御装置の構成の一例を示す図である。 第1の実施形態に係る制御装置の動作の一例を示すフローチャートである。 第2の実施形態に係るネットワークシステム構成の一例を示す図である。 第2の実施形態に係るNFV-MANOを機能の点で説明するための図である。 HWA要件の一例を示す図である。 HWA構成情報の一例を示す図である。 NFV-MANOの動作の一例を示すフローチャートである。 HWA選択部によるハードウェアアクセラレータの利用可否の判断についての動作の一例を示すフローチャートである。 第2の実施形態の動作を説明するための図である。 第2の実施形態に係るNFV-MANOのハードウェア構成の一例を示すブロック図である。 第3の実施形態に係るHWA要件の一例を示す図である。 第3の実施形態に係るNFV-MANOの動作の一例を示すフローチャートである。 第3の実施形態の動作を説明するための図である。 第4の実施形態に係るNFV-MANOを機能の点で説明するための図である。 第4の実施形態に係るHWA要件の一例を示す図である。 非特許文献1の「B.3.1.1 VNF Check Feasibility」の「Figure B.8: VNF check feasibility message flow」に本願開示を適用した図である。 非特許文献1の「B.4.3 Scaling flow with resource allocation done by NFVO」の「Figure B.12: VNF instance scaling message flow」に本願開示を適用した図である。 非特許文献1の「B.4.4.1 Automatic VNF expansion triggered by VNF performance measurement results」の「Figure B.13: Automatic VNF expansion flow triggered by VNF performance measurement results」に、本願開示を適用した図である。 非特許文献1の「B.4.4.2 EM initiated VNF expansion」の「Figure B.14: EM initiated VNF expansion flow」に、本願開示を適用した図である。 非特許文献1の第23頁のFigure 5.1(The NFV-MANO architectural framework with reference points)から引用した図である。
[第1の実施形態]
 第1の実施形態について、図面を用いてより詳細に説明する。なお、各実施形態において同一構成要素には同一の符号を付し、その説明を省略する。
 図1は、第1の実施形態に係る制御装置100の構成の一例を示す図である。図1を参照すると、制御装置100は、第1の手段101と、第2の手段102と、第3の手段103と、を備える。
 第1の手段101は、VNF(Virtualized Network Function)に必要なハードウェアアクセラレータの条件を示すハードウェアアクセラレータ要件を保持する。
 第2の手段102は、使用可能な複数のハードウェアアクセラレータそれぞれの構成情報を示すハードウェアアクセラレータ構成情報を保持する。
 第3の手段103は、上記ハードウェアアクセラレータ要件とハードウェアアクセラレータ構成情報を参照し、複数のハードウェアアクセラレータのうち、VNFに割り当てるハードウェアアクセラレータを選択する。
 例えば、第1の手段101は、VNFM12又はそのサブモジュールに該当する。第2の手段102は、VIM13又はそのサブモジュールに該当する。第3の手段103は、NFVO11又はそのサブモジュールに該当する。
 ハードウェアアクセラレータ要件には、ハードウェアアクセラレータを識別するためのID(Identifier)情報と、VNFがハードウェアアクセラレータに要求する要件と、が含まれる。
 ハードウェアアクセラレータを識別するためのID情報は、ハードウェアアクセラレータのベンダを識別するベンダID、デバイスの種別を示すデバイス種別及びデバイスを識別するためのデバイスIDのうち少なくとも1つを含む。
 VNFがハードウェアアクセラレータに要求する要件は、VNFがハードウェアアクセラレータの使用を必要とするのかを示す利用要否、ハードウェアアクセラレータを使用する際のプログラムを識別するプログラムID及びハードウェアアクセラレータの共有が可能か否かを示す共有設定のうち少なくとも1つを含む。
 ハードウェアアクセラレータ構成情報には、ハードウェアアクセラレータを識別するためのID情報と、ハードウェアアクセラレータの利用状況を示すHWAリソース情報と、が含まれる。
 ハードウェアアクセラレータを識別するためのID情報は、ハードウェアアクセラレータ要件のID情報と同じとすることができる。
 HWAリソース情報は、ハードウェアアクセラレータが利用されているか否かを示す利用状況、ハードウェアアクセラレータにロードされているプログラムを示すローディングID、ハードウェアアクセラレータにロード可能なプログラムを示すローダブルID及びハードウェアアクセラレータの共有が可能か否かを示す共有設定のうち少なくとも1つを含む。
 図2は、第1の実施形態に係る制御装置100の動作の一例を示すフローチャートである。
 VNFの配置が必要となると、第3の手段103は、第1の手段101が保持するハードウェアアクセラレータ要件と、第2の手段102が保持するハードウェアアクセラレータ構成情報と、を参照する(ステップS01)。
 その後、第3の手段103は、上記参照した2つの情報に基づいて、VNFに割り当てるリソース(ハードウェアアクセラレータ)を選択する(ステップS02)。
 以上のように、第1の実施形態に係る制御装置100は、VNFがハードウェアアクセラレータを利用するために必要な情報であって、VNFが使用するハードウェアアクセラレータを把握するための情報(ハードウェアアクセラレータ要件)と、NFVIリソースとしてハードウェアアクセラレータを管理するための情報(ハードウェアアクセラレータ構成情報)と、を保持する。制御装置100は、これらの情報を用いて、VNFに割り当てるハードウェアアクセラレータを選択する。その結果、制御装置100は、NFV環境において、ハードウェアアクセラレータを考慮したリソース選定を行うことができる。
 上記ハードウェアアクセラレータ要件とハードウェアアクセラレータ構成情報を定義することで、マルチベンダのハードウェアアクセラレータをNFVIリソースとして配置し、ハードウェアアクセラレータ要件に応じて適切なハードウェアアクセラレータをVNFに割り当てることが可能となり、NFV環境におけるハードウェアアクセラレーションが実現できる。
[第2の実施形態]
 続いて、第2の実施形態について図面を参照して詳細に説明する。
 図3は、第2の実施形態に係るネットワークシステム構成の一例を示す図である。図3を参照すると、ネットワークシステムは、NFVオーケストレータ(NFVO)11と、VNFマネージャ(VNFM)12と、仮想化インフラストラクチャマネージャ(VIM)13と、からなるネットワーク機能仮想化管理オーケストレーション装置(NFV-MANO;制御装置又は仮想化制御装置とも称する)10を含む。
 NFVO11、VNFM12及びVIM13は、ネットワークシステムの管理を行う機能エンティティである。VIM13はNFVO11、VNFM12からの制御により物理マシン(PM)上に仮想マシン(VM)及びVNFを生成する。
 また、ネットワークシステムは、物理マシン(PM)20とOSS/BSS30を含み、物理マシン20には、NFVI21が含まれ、NFVI21上にはVNF22、EMS23が構成される。
 図3に示すネットワークシステムは、物理マシン20上に構成される仮想マシン(VM)においてソフトウェア的に実現される仮想サーバ(VNF22)により通信機能を提供するものである。
 物理マシン20は、コンピューティング、ストーレッジ及びネットワークに加え、ハードウェアアクセラレータをハードウェア資源として含む。NFVI21は、上記ハードウェアアクセラレータを含むハードウェア資源をハイパーバイザ等の仮想化レイヤで仮想化した仮想化ハードウェア資源を扱う基盤である。
 なお、図3には1台の物理マシン20を図示しているが、実際には複数の物理マシン20がネットワークシステムに含まれる。また、各物理マシン20は、コンピューティング等を少なくとも1以上備えることができる。例えば、物理マシン20は、複数のハードウェアアクセラレータを搭載することができる。
 図3に示す構成は例示であって、NFV-MANO10の構成を限定する趣旨ではない。例えば、VNFM12とVIM13は、多対多の関係を有することができる。つまり、複数のVIM13に共通するVNFM12を設けてもよいし、複数のVIM13それぞれに対応させてVNFM12を設けてもよい。あるいは、1つのVIM13に対して複数のVNFM12を接続する構成であってもよいし、1つのVNFM12に複数のVIM13を接続する構成であってもよい。
 NFVO11は、NFVI21のリソースのオーケストレーション、及び、ネットワークサービス(Network Service:NS)インスタンスのライフサイクル管理(NSインスタンスのインスタンシエーション(Instantiation)、スケーリング(Scaling)、ターミネーション(Termination)、更新(Update)等)を行う。
 VNFM12は、VNFインスタンスのライフサイクル管理(例えばインスタンシエーション(instantiation)、更新(update)、クエリ(query)、スケーリング(scaling)、停止(termination)等)およびイベント通知を行う。
 VIM13は、NFVI21のコンピューティング、ストーレッジ、ネットワーク、ハードウェアアクセラレータのリソース管理、NFVI21の障害監視、NFVI21のリソース監視等を行う。
 図4は、第2の実施形態に係るNFV-MANO10を機能の点で説明するための図である。図4を参照すると、NFVO11は、HWA選択部201を含んで構成される。
 HWA選択部201は、ハードウェアアクセラレータ要件(以下、HWA要件と表記する)とハードウェアアクセラレータ構成情報(以下、HWA構成情報と表記する)を参照し、システムに含まれる複数のハードウェアアクセラレータのうち、VNF22に割り当てるハードウェアアクセラレータを選択する手段である。より具体的には、HWA選択部201は、NSインスタンスのライフサイクル管理(例えば、NSインスタンスのインスタンシエーション、スケーリング等)におけるリソースの新規割り当てや、変更時にVNF22に割り当てるハードウェアアクセラレータを選択する。
 VNFM12は、HWA要件管理部211を含んで構成される。
 HWA要件管理部211は、HWA要件を保持、管理するための手段である。HWA要件とは、VNF22に必要なハードウェアアクセラレータの条件を示す情報である。HWA要件を参照することで、VNF22が必要とするハードウェアアクセラレータを特定することができる。
 図5は、HWA要件の一例を示す図である。図5を参照すると、HWA要件には、VNF22を特定する情報と、ハードウェアアクセラレータを識別するためのHWA識別情報(以下、HWAIDと表記する)と、VNF22がハードウェアアクセラレータに要求する要件(利用要件)と、を1組とする情報が含まれる。
 HWAIDには、「ベンダID」、「デバイスタイプ」及び「デバイスID」等を用いることができる。
 ベンダIDは、ハードウェアアクセラレータのベンダを識別するID情報である。
 デバイスタイプは、ハードウェアアクセラレータの実装位置やネットワークインターフェイスの有無等を識別するID情報である。例えば、デバイスタイプには、ハードウェアアクセラレータがSoC(System On a Chip)、NIC(Network Interface Card)、PCI(Peripheral Component Interconnect)デバイス等であることが分かる情報が用いられる。
 デバイスIDは、各デバイス(ハードウェアアクセラレータ)を個別に識別可能なID情報である。デバイスIDには、各ハードウェアアクセラレータの型番、シリアルナンバー等を用いることができる。
 利用要件には、「利用要否」、「プログラムID」及び「共有設定」が含まれる。
 利用要否は、VNF22がハードウェアアクセラレータの利用を必要とするか否かを示す情報である。なお、図5以降の図面において、VNF22がハードウェアアクセラレータの利用を必要とする場合には「○」と表記し、必要としない場合には「×」と表記する。
 プログラムIDは、VNF22のプログラム(アプリケーション)のなかでハードウェアアクセラレータを使用するプログラムのID情報である。
 共有設定は、他のVNF22との間でハードウェアアクセラレータを共有することが可能か否かを示す情報である。共有設定には、他のVNF22との共有が可能であること、他のVNF22との共有が条件付で可能であること、他のVNF22との共有が不可能であること、が設定されうる。なお、図5以降の説明において、共有が可能である場合には「○」、条件付で共有可能である場合には「△」、共有が不可である場合には「×」と表記する。条件付で共有が可能である場合の一例として、同じプログラムがハードウェアアクセラレータを使用する場合が挙げられる。
 図5の1行目は、VNF_1は、ベンダIDが「A」、デバイスタイプが「aaa」、デバイスIDが「1」のハードウェアアクセラレータの利用を必要とすることを示す。また、同行は、VNF_1は、プログラムIDが「P1」であるプログラムにて上記ハードウェアアクセラレータを使用し、その際、他のVNF22との共有が可能であることを示す。
 なお、ネットワーク管理者等は、ネットワークの運用開始時、あるいは、任意のタイミングにて、HWA要件をNFV-MANO10に設定する。例えば、ネットワーク管理者は、VDUD(VDU Descriptor)等のVNF22のデプロイに必要な要件や制約条件を記述したテンプレートに定義することで、HWA要件をNFV-MANO10(VNFM12)に設定できる。
 VIM13は、HWA構成管理部221を含んで構成される。
 HWA構成管理部221は、HWA構成情報を保持、管理するための手段である。HWA構成情報とは、システムに含まれる複数のハードウェアアクセラレータそれぞれの構成情報を示す情報である。VIM13は、配下の物理マシン20に搭載されたハードウェアアクセラレータを管理するためのHWA構成情報を保有する。
 図6は、HWA構成情報の一例を示す図である。図6を参照すると、HWA構成情報には、物理マシン20を特定する情報と、ハードウェアアクセラレータを識別するためのHWA識別情報(上述のHWAID)と、ハードウェアアクセラレータの利用状況を示すHWAリソース情報と、を1組とする情報が含まれる。
 HWAリソース情報は、ハードウェアアクセラレータが利用できる状況か否かを判断するために使用される。
 HWAリソース情報には、「利用状況」、「ローディングID」、「ローダブルID」及び「共有設定」が含まれる。
 利用状況は、VF(仮想機能)やPF(物理機能)単位にて、ハードウェアアクセラレータが現状使用されているか(Attachされているか)否かを示す情報である。例えば、利用状況には、ハードウェアアクセラレータの使用率を用いることができる。具体的には、ハードウェアアクセラレータにて実行可能なプログラム(プロセス)の総数に対する現在実行されているプログラム(プロセス)の数を利用状況として用いることができる。あるいは、利用状況には、ハードウェアアクセラレータがNICであって、通信帯域の測定等が可能であれば、帯域を利用状況とすることもできる。
 ローディングIDは、ハードウェアアクセラレータに書き込まれているプログラム(ハードウェアアクセラレータにて実行されているプログラム)に関するID情報である。
 ローダブルIDは、ハードウェアアクセラレータに書き込む事ができるプログラムに関するID情報である。
 共有設定については、上述のとおりである。
 例えば、図6の1行目は、当該ハードウェアアクセラレータは、プログラムIDが「P1」及び「P2」であるプログラムの実行が可能であるが、2つのプログラムを同時に実行することはできない(共有不可)ことを示す。また、同行は、当該ハードウェアアクセラレータの現状は、プログラムIDが「P1」のプログラムが実行され、その使用率が1/12であることを示す。
 図6の2行目は、当該ハードウェアアクセラレータは、プログラムIDが「P1」及び「P2」であるプログラムの実行が可能であり、且つ、プログラムID「P1」のプログラムが実行中であることを示す。また、同行では、共有設定が「条件付で共有可能」に設定され、且つ、リソースに余裕がある(使用率が100%ではない)ので、ハードウェアアクセラレータにロードするプログラムが「P1」であれば他のVNF22に割り当て可能であることを示す。
 HWA構成管理部221は、コンピューティング等の他のNFVIリソース情報の管理と同様に、HWA構成情報を管理する。より具体的には、VIM13が有するPM管理情報に上記HWA構成情報を追加することで、HWA構成情報は管理される。
 HWA構成管理部221は、ハードウェアアクセラレータの利用状況が変化するたびに、HWA構成情報のHWAリソース情報を更新する。
 NFV-MANO10(VIM13)にHWA構成情報を設定する際には、VIM13で管理するフレーバを使用する。具体的には、物理マシン20のリソース情報をNFV-MANO10に登録する際に使用するフレーバにHWA構成情報も含ませることで、HWA構成情報をVIM13に設定する。
 なお、図5及び図6を用いてHWA要件やHWA構成情報の内容を説明したが、これらの情報に含まれる要素を限定する趣旨ではない。HWA要件やHWA構成情報には、図5や図6に図示していない要素が含まれてもよい。例えば、ハードウェアアクセラレータを識別するための情報(HWAID)として、上記「ローダブルID」を使用してもよい。
 次に、NFV-MANO10の動作について説明する。
 図7は、NFV-MANO10の動作の一例を示すフローチャートである。図7のフローチャートは、NFVO11がVIM13にリソース確認(Check Resource)する際に付随する動作を示す。
 VNF22のインスタンシエーション等においてVIM13にリソース確認する際、HWA選択部201(NFVO11)は、VNFM12からHWA要件を取得する。HWA要件の取得(情報の交換)には、参照ポイントOr-Vnfmが使用される。
 HWA選択部201は、インスタンシエーション等を行うVNF22に関する、ハードウェアアクセラレータの利用要否を判定する(ステップS101)。具体的には、HWA選択部201は、HWA要件におけるVNF22の利用要件に含まれる「利用要否」を確認する。確認の結果、ハードウェアアクセラレータの利用が必要である場合(ステップS101、Yes分岐)、ステップS102以降の処理が実行される。確認の結果、ハードウェアアクセラレータの利用が不要である場合(ステップS101、No分岐)、図7に示す処理は終了し、NFVO11による通常のリソースチェックが実施される。
 ステップS102において、HWA選択部201は、VIM13からHWA構成情報を取得する。複数のVIM13が存在する場合には、HWA選択部201は、1つのVIM13を指定してHWA構成情報を取得する。HWA構成情報の取得(情報の交換)には、参照ポイントOr-Viが使用される。
 ステップS103において、HWA選択部201は、HWA要件のHWAIDとHWA構成情報のHWAIDを比較し、両者が一致するか否かを判定する。一致する場合(ステップS103、Yes分岐)、ステップS104以降の処理が実行される。一致しない場合(ステップS103、No分岐)、ステップS107に遷移する。
 ステップS104において、HWA選択部201は、HWA要件の利用要件に含まれるプログラムIDが、HWA構成情報のローダブルIDに含まれているか否かを判定する。プログラムIDがローダブルIDに含まれる場合(ステップS104、Yes分岐)、ステップS105以降の処理が実行される。プログラムIDがローダブルIDに含まれない場合(ステップS104、No分岐)、ステップS107に遷移する。
 ステップS105において、HWA選択部201は、HWA要件により指定されるVNF22が、HWA構成情報のハードウェアアクセラレータを利用できるか否かを判定する。利用可能の場合(ステップS105、Yes分岐)、ステップS106以降の処理が実行される。利用不可能な場合(ステップS105、No分岐)、ステップS107に遷移する。HWA選択部201によるハードウェアアクセラレータの利用可否に関する詳細は、図8を用いて後述する。
 ステップS106において、HWA選択部201は、利用可能なハードウェアアクセラレータ及び当該ハードウェアアクセラレータを含む物理マシン20をVNF22のデプロイ候補先として保管する。
 ステップS107において、HWA選択部201は、全てのHWA構成情報とHWA要件の比較が終了したか否かを判定する。比較が終了していないHWA構成情報がある場合には(ステップS107、No分岐)、HWA選択部201は、残りのHWA構成情報を取得(ステップS108)し、ステップS103以降の処理を繰り返す。比較が終了している場合(ステップS107、Yes分岐)、HWA選択部201は、図7に示す処理を終了する。
 図7に示す処理が終了すると、NFVO11は、ステップS106にて保管したデプロイ候補先の物理マシン20を対象として通常のリソースチェックを実施する。
 次に、図8を参照しつつ、HWA選択部201によるハードウェアアクセラレータの利用可否の判断についての動作を説明する。
 ステップS201において、HWA選択部201は、HWA構成情報のHWAリソース情報に含まれる「利用状況」を確認し、ハードウェアアクセラレータが使用中か否かを判定する。具体的には、HWA選択部201は、HWAリソース情報の利用状況において、当該ハードウェアアクセラレータの使用率が「0」であるか否かによりハードウェアアクセラレータが使用中か否かを判定する。ハードウェアアクセラレータが使用中でなければ(ステップS201、No分岐)、ハードウェアアクセラレータは利用可能と判定される。ハードウェアアクセラレータが使用中であれば(ステップS201、Yes分岐)、ステップS202以降の処理が実行される。
 ステップS202において、HWA構成情報とHWA要件の共有設定が確認され、少なくとも一方が「共有不可」であるか否かが判定される。少なくとも一方が共有不可である場合(ステップS202、Yes分岐)には、ハードウェアアクセラレータは利用不可と判定される。少なくとも一方が共有不可ではない場合(ステップS202、No分岐)には、ステップS203以降の処理が実行される。この場合、HWA構成情報とHWA要件の共有設定は、「共有可能」及び「条件付で共有可能」のいずれかである。
 ステップS203において、HWA構成情報とHWA要件の共有設定が確認され、両者が「共有可」であるか否かが判定される。両者が「共有可」である場合(ステップS203、Yes分岐)には、ステップS205の処理が実行される。両者が「共有可」ではない場合(ステップS203、No分岐)には、ステップS204以降の処理が実行される。この場合、HWA構成情報及びHWA要件の少なくとも一方の共有設定には、「条件付で共有可能」が含まれる。
 ステップS204において、HWA構成情報のHWAリソース情報に含まれる「ローディングID」とHWA要件の利用要件に含まれる「プログラムID」が比較され、両者が同じか否か判定される。両者が同じであれば(ステップS204、Yes分岐)、ステップS205の処理が実行される。両者が異なれば(ステップS204、No分岐)、ハードウェアアクセラレータは利用不可と判定される。
 ステップS205においてHWA選択部201は、ハードウェアアクセラレータのリソースに空きがあるか否かを判定する(ハードウェアアクセラレータに実行余力があるか否かを判定する)。HWA選択部201は、HWAリソース情報の利用状況(使用率)に対して閾値処理を施すことで、ハードウェアアクセラレータの実行余力を判定することができる。例えば、HWA選択部201は、ハードウェアアクセラレータの使用率が50%以下であれば、当該ハードウェアアクセラレータのリソースに空きがあると判定する。ハードウェアアクセラレータのリソースに空きがあれば(ステップS205、Yes分岐)、ハードウェアアクセラレータは利用可能と判定される。ハードウェアアクセラレータのリソースに空きがなければ(ステップS205、No分岐)、ハードウェアアクセラレータは利用不可と判定される。
 以上が、図7に示すステップS105に係る処理の詳細である。
 次に、図7及び図8の動作を、図9を用いて具体的に説明する。
 VIM13に保持されているHWA構成情報は、図9(a)のとおりであるとする。この状態において、図9(b)に示すHWA要件のVNF_1のインスタンシエーション等が要求された場合を考える。
 HWA要件の利用要件に含まれる「利用要否」はハードウェアアクセラレータの使用を要求するものであるので、HWA要件とHWA構成情報のマッチングが行われる。
 図9(a)に示すPM_1に含まれる2つのハードウェアアクセラレータのうち、1行目のハードウェアアクセラレータ(デバイス種別が1)のHWAIDとHWA要件のHWAIDが一致する。また、PM_1の1行目のハードウェアアクセラレータのローダブルIDには、HWA要件のプログラムID「P1」が含まれる。そのため、当該ハードウェアアクセラレータの利用可否(図7のステップS105)が判定されるが、PM_1のHWA構成情報における共有設定が「共有不可」であるので、PM_1は図9(b)に示すVNF_1の配置先候補に選択されない。
 PM_2に含まれる3つのハードウェアアクセラレータのうち、図9(a)の3行目のハードウェアアクセラレータのHWAIDとHWA要件のHWAIDが一致する。また、当該ハードウェアアクセラレータのローダブルIDとHWA要件のプログラムIDは、「P1」で一致する。そのため、当該ハードウェアアクセラレータの利用可否が判定される。PM_2の3行目の共有設定を確認すると当該設定は、「条件付で共有可能」となっている。「条件付で共有可能」の場合には、ハードウェアアクセラレータを使用するプログラムが一致すれば、当該ハードウェアアクセラレータは利用可能である。図9(b)のプログラムIDとローディングIDは共に「P1」で一致し、ハードウェアアクセラレータのリソースに空きもあるので、PM_2は図9(b)に示すVNF_1の配置先候補に選択される。
 PM_3に含まれるハードウェアアクセラレータのHWAIDとHWA要件のHWAIDは一致しないので、PM_3はVNF_1の配置先候補に選択されない。
 次に、HWA要件が図9(c)の場合を考える。
 図9(b)と図9(c)に示すHWA要件の相違点は、利用要件に含まれる「プログラムID」が異なる点である。
 図9(c)に示すHWA要件の場合は、PM_1及びPM_3はVNF_2の配置先候補として選択されない。PM_1に関しては、HWA構成情報の共有設定が「共有不可」であることや、HWAIDが異なるためである。PM_3に関しては、HWAIDが一致しないためである。
 PM_2に関し、図9(a)の3行目に示すハードウェアアクセラレータにおける共有設定は「条件付で共有可能」となっている。「条件付で共有可能」の場合には、ハードウェアアクセラレータを使用するプログラムが一致すれば、当該ハードウェアアクセラレータは利用可能である。しかし、図9(a)に示すPM_2の3行目のハードウェアアクセラレータのHWAリソース情報に含まれるローディングIDと図9(c)に示すプログラムIDは一致しないので、PM_2は図9(c)に示すVNF_2の配置先候補に選択されない。
 次に、図3のネットワークシステムをなす各装置のハードウェアついて説明する。
 図10は、第2の実施形態に係るNFV-MANO10のハードウェア構成の一例を示すブロック図である。NFV-MANO10は、情報処理装置(コンピュータ)により構成可能であり、図10に例示する構成を備える。例えば、NFV-MANO10は、内部バスにより相互に接続される、CPU(Central Processing Unit)41、メモリ42、入出力インターフェイス43及び通信手段であるNIC(Network Interface Card)44等を備える。
 なお、図10に示す構成は、NFV-MANO10のハードウェア構成を限定する趣旨ではない。NFV-MANO10は、図示しないハードウェアを含んでもよい。あるいは、NFV-MANO10に含まれるCPU等の数も図10の例示に限定する趣旨ではなく、例えば、複数のCPUがNFV-MANO10に含まれていてもよい。
 メモリ42は、RAM(Random Access Memory)、ROM(Read Only Memory)、補助記憶装置(ハードディスク等)である。
 入出力インターフェイス43は、図示しない表示装置や入力装置のインターフェイスとなる手段である。表示装置は、例えば、液晶ディスプレイ等である。入力装置は、例えば、キーボードやマウス等のユーザ操作を受け付ける装置である。
 なお、上記NFV-MANO10の各処理モジュールは、例えば、メモリ42に格納されたプログラムをCPU41が実行することで実現される。また、そのプログラムは、ネットワークを介してダウンロードするか、あるいは、プログラムを記憶した記憶媒体を用いて、更新することができる。さらに、上記処理モジュールは、半導体チップにより実現されてもよい。即ち、上記処理モジュールが行う機能を何らかのハードウェア、及び/又は、ソフトウェアで実行する手段があればよい。
 図3に図示する物理マシン20のハードウェア構成も上記NFV-MANO10の構成と基本的に同じであり、当業者にとって明らかなものであるため、その説明を省略する。
 以上のように、第2の実施形態に係るNFV-MANO10は、HWA要件及びHWA構成情報を参照し、複数のハードウェアアクセラレータのなかからHWA要件を満たすハードウェアアクセラレータを選択し、当該選択されたハードウェアアクセラレータを含む物理マシン20をVNF22の配置先候補として選択する。その結果、ハードウェアアクセラレータをNFVIリソースの一部として扱うことが可能となり、NFV環境におけるハードウェアアクセラレーションが実現できる。
[第3の実施形態]
 続いて、第3の実施形態について図面を参照して詳細に説明する。
 第2の実施形態では、HWA要件に含まれるHWAIDを用いて、VNF22の配置先候補となる物理マシン20を選択する場合について説明した。第3の実施形態では、HWAIDを使用せず、VNF22の配置先候補を選択する場合について説明する。なお、ネットワーク構成や機能構成等は、第2の実施形態と同様とすることができるので、図3や図4に相当する説明を省略する。
 図11は、第3の実施形態に係るHWA要件の一例を示す図である。図11を参照すると、第3の実施形態に係るHWA要件にはHWAIDが記載されていない。
 図12は、第3の実施形態に係るNFV-MANO10の動作の一例を示すフローチャートである。図12と図7に示すフローチャートの同一の処理には同じステップ名を付している。図12と図7に示すフローチャートの相違点は、ステップS103に係るHWAIDの判定処理が存在しない点である。
 当該判定処理が存在しなくとも、第3の実施形態に係るHWA選択部201は、ハードウェアアクセラレータの機能によりVNF22の配置先候補となる物理マシン20を選択できる。具体的には、HWA選択部201は、複数のHWA構成情報のなかから、HWA要件のプログラムIDに一致するローダブルIDを有するHWA構成情報を選択することで、VNF22の配置先候補となる物理マシン20を選択できる。
 次に、図面を参照しつつ、第3の実施形態の動作を説明する。
 VIM13に保持されているHWA構成情報は、図13(a)のとおりであるとする。この状態において、図13(b)に示すHWA要件のVNF_3のインスタンシエーション等が要求された場合を考える。
 この場合、図13(a)に示す6個のハードウェアアクセラレータのうち、5行目のハードウェアアクセラレータを除くハードウェアアクセラレータは、プログラムIDが「P1」であるプログラムを搭載可能であるので、VNF_3に割り当てことができる可能性がある。
 図13(a)に示す1行目のハードウェアアクセラレータは、HWAリソース情報の共有設定が「共有不可」であって、既にプログラムID「P1」のプログラムが実行されているので、この点では、PM_1はVNF_3の配置先候補とならない。
 2行目のハードウェアアクセラレータは、共有設定が「条件付で共有可能」、且つ、ローディングIDとプログラムIDが一致する。また、当該ハードウェアアクセラレータのリソースには空きがあると判定され得る。従って、PM_1はVNF_3の配置先候補となる。
 3行目のハードウェアアクセラレータは、共有設定が「条件付で共有可能」、且つ、ローディングIDとプログラムIDが一致する。また、当該ハードウェアアクセラレータのリソースには空きがあると判定され得る。従って、PM_2はVNF_3の配置先候補となる。
 なお、4行目のハードウェアアクセラレータは、プログラムIDが「P1」のプログラムがロード可能(ローダブルIDに「P1」が含まれる)、且つ、当該ハードウェアアクセラレータは使用されていないので、PM_2はVNF_3の配置先候補となる。
 6行目のハードウェアアクセラレータは、プログラムIDが「P1」のプログラムのロードが可能であり、且つ、共有設定が「共有可能」でるあるため、PM_3はVNF_2の配置先候補となり得る。
 このように、HWA要件のうちの一部情報を用いて(HWAIDを非使用として)、VNF22に割り当てるリソース(ハードウェアアクセラレータ)を選定することができる。つまり、HWA要件やHWA構成情報のうち、デバイスを指定する情報(HWAID)を使用しなくとも、ハードウェアアクセラレータの機能(利用要件)を用いて、VNF22に割り当てるハードウェアアクセラレータを選定することができる。
 以上のように、HWAIDを使用しなくとも(デバイスを指定しなくとも)、適切なハードウェアアクセラレータを有する物理マシン20をVNF22の配置先候補として選択することができる。
[第4の実施形態]
 続いて、第4の実施形態について図面を参照して詳細に説明する。
 第1~第3の実施形態では、VNF22の配置先候補を選択した後の動作については言及していない。第4の実施形態では、複数の配置先候補を選択した後のNFV-MANO10の動作について説明する。
 図14は、第4の実施形態に係るNFV-MANO10を機能の点で説明するための図である。図4と図14に示すNFV-MANO10の相違点は、NFVO11に配置先決定部202が含まれる点である。
 配置先決定部202は、HWA選択部201が選択した複数のリソース(ハードウェアアクセラレータ)のなかから、後述する選択ポリシを参照し、実際にVNF22を配置するリソースを決定する手段である。上記選択ポリシは、VNFM12が管理するHWA要件に設定することができる。
 図15は、第4の実施形態に係るHWA要件の一例を示す図である。図15を参照すると、選択ポリシとして、「ポリシなし(None)」、「集中(Centralization)」、「分散(Decentralization)」等が設定可能である。
 選択ポリシとして「ポリシなし」が設定されている場合には、配置先決定部202は、VNF22を任意の配置先候補に配置する。例えば、配置先決定部202は、最初に選択されたハードウェアアクセラレータ(リソース)を含む物理マシン20にVNF22を配置する。
 選択ポリシとして「集中」が設定されている場合には、配置先決定部202は、既に使用されているハードウェアアクセラレータ、又は、使用率(利用状況)の高いハードウェアアクセラレータを優先的にVNF22に割り当てる。但し、同程度の使用率のハードウェアアクセラレータが複数存在する場合には、配置先決定部202は、複数のハードウェアアクセラレータのなかで選択された順にVNF22に割り当てる。
 選択ポリシとして「分散」が設定されている場合には、配置先決定部202は、未使用のハードウェアアクセラレータ(未使用のリソース)を優先的にVNF22に割り当てる。未使用のハードウェアアクセラレータが存在しない場合には、配置先決定部202は、使用率の低いハードウェアアクセラレータを優先的にVNF22に割り当てる。あるいは、未使用なハードウェアアクセラレータが複数存在する場合には、配置先決定部202は、選択された順にVNF22に割り当ててもよい。
 このように、第4の実施形態では、第2、第3の実施形態にて選択されたハードウェアアクセラレータが複数存在する場合のポリシ(選択ポリシ)を予め設定し、VNF22の割り当て先決定に当該ポリシを活用する。
 以上のように、HWA要件に選択ポリシ(VNFの配置ポリシ)をパラメータとして付加し、当該ポリシを利用してVNFを配置する物理マシン(リソース)を決定することで、VNFの性質に適した最適な配置先を決定することができる。
[第5の実施形態]
 続いて、第5の実施形態について図面を参照して詳細に説明する。
 第5の実施形態では、非特許文献1が開示する仕様の中で本願開示が適用できる場合を説明する。
 上述のように、NFVO11のHWA選択部201は、NSインスタンスのライフサイクル管理における、リソースの新規割り当て、変更時にVNF22に割り当てるハードウェアアクセラレータを選択し、配置先候補を抽出する。
例えば、
(1)VNF22のインスタンシエーション、
(2)NFVO11が主導するスケーリング、
(3)VNFM12が主導し、VNFが契機となるスケーリング、
(4)VNFM12が主導し、EMが契機となるスケーリング、
等の場合が、HWA選択部201が動作するケースとして挙げられる。なお、スケーリングには、スケールアウトに加え、スケールアップやスケールダウンも含まれる。また、HWA選択部201が動作する場面(本願開示の適用)は、上記(1)~(4)に限定されず、ヒーリング後の冗長再構成時であってもよい。
 以下、上記(1)~(4)の各場合に対する本願開示の適用を説明する。
[ケース(1)]
 図16は、非特許文献1の「B.3.1.1 VNF Check Feasibility」の「Figure B.8: VNF check feasibility message flow」に、本願開示を適用した場合のフローチャートである。
 図16を参照すると、上記非特許文献1に開示されたフローチャートの「6.Check Resource availability & reservation」の前に、「6a.Select candidate for VNF allocation」が追加されている。即ち、上記実施形態にて説明したVNF配置先候補の選択を、リソースのチェック前に実施することができる。
[ケース(2)]
 図17は、非特許文献1の「B.4.3 Scaling flow with resource allocation done by NFVO」の「Figure B.12: VNF instance scaling message flow」に、本願開示を適用した場合のフローチャートである。
 図17を参照すると、上記非特許文献1に開示されたフローチャートの「8. changed resource (compute, storage and network) allocation and interconnection setup」の前に、「8a.Select candidate for VNF allocation」が追加されている。このように、スケーリングの際にも、上記実施形態にて説明したVNF配置先候補の選択を、リソースのチェック前に実施することができる。
[ケース(3)]
 図18は、非特許文献1の「B.4.4.1 Automatic VNF expansion triggered by VNF performance measurement results」の「Figure B.13: Automatic VNF expansion flow triggered by VNF performance measurement results」に、本願開示を適用した場合のフローチャートである。
 図18を参照すると、上記非特許文献1に開示されたフローチャートの「4. Check free resource are available (e.g. Pool, Resource type, CPU, Memory, etc), optionally reserve towards VIM.」の前に、「4a.Select candidate for VNF allocation」が追加されている。このように、VNFM12が主導するスケーリングであって、VNFが契機となる場合であっても、上記実施形態にて説明したVNF配置先候補の選択を、リソースのチェック前に実施することができる。
[ケース(4)]
 図19は、非特許文献1の「B.4.4.2 EM initiated VNF expansion」の「Figure B.14: EM initiated VNF expansion flow」に、本願開示を適用した場合のフローチャートである。
 図19を参照すると、上記非特許文献1に開示されたフローチャートの「4. Check free resource are available (e.g. Pool, Resource type, CPU, Memory, etc), optionally reserve towards VIM.」の前に、「4a.Select candidate for VNF allocation」が追加されている。このように、VNFM12が主導するスケーリングであって、EMが契機となる場合であっても、上記実施形態にて説明したVNF配置先候補の選択を、リソースのチェック前に実施することができる。
 なお、図16~図19では、リソースのチェック前にVNFの配置先候補を選択する場合について説明したが、上記選択処理を追加することに替えて、リソースチェック時のチェック項目の一つとしてHWAの選択に係る動作が追加されてもよい。
 以上のように、非特許文献1に開示された各種フローチャートに、VNF22に割り当て可能なリソース(ハードウェアアクセラレータ)を選択する処理を追加することで、ハードウェアアクセラレータを使用する仮想化環境ネットワークが実現できる。
 上述の説明で用いた複数のフローチャートでは、複数の工程(処理)が順番に記載されているが、各実施形態で実行される工程の実行順序は、その記載の順番に制限されない。各実施形態では、例えば各処理を並行して実行する等、図示される工程の順番を内容的に支障のない範囲で変更することができる。また、上述の各実施形態は、内容が相反しない範囲で組み合わせることができる。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
 上述の第1の視点に係る制御装置のとおりである。
[付記2]
 前記ハードウェアアクセラレータ要件は、VNFがハードウェアアクセラレータに要求する要件を少なくとも含む、付記1の制御装置。
[付記3]
 前記VNFがハードウェアアクセラレータに要求する要件は、VNFがハードウェアアクセラレータの使用を必要とするか否かを示す利用要否、ハードウェアアクセラレータを使用する際のプログラムを識別する情報及びハードウェアアクセラレータの共有が可能か否かを示す共有設定のうち少なくとも1つを含む、付記2の制御装置。
[付記4]
 前記ハードウェアアクセラレータ構成情報は、ハードウェアアクセラレータを識別するための情報と、ハードウェアアクセラレータの利用状況を示すリソース情報と、を含む、付記1乃至3のいずれか一に記載の制御装置。
[付記5]
 前記リソース情報は、ハードウェアアクセラレータが利用されているか否かを示す利用状況、ハードウェアアクセラレータにロードされているプログラムを示す情報、ハードウェアアクセラレータにロード可能なプログラムを示す情報及びハードウェアアクセラレータの共有が可能か否かを示す共有設定のうち少なくとも1つを含む、付記4の制御装置。
[付記6]
 前記ハードウェアアクセラレータを識別するための情報は、ハードウェアアクセラレータのベンダを識別する情報、デバイスの種別を示す情報及びデバイスを識別するため情報のうち少なくとも1つを含む、付記4又は5の制御装置。
[付記7]
 前記第3の手段は、前記ハードウェアアクセラレータ要件に含まれる情報の一部を用いて、前記VNFに割り当てるハードウェアアクセラレータを選択する、付記1乃至6のいずれか一に記載の制御装置。
[付記8]
 前記第3の手段が、VNFに割り当てるハードウェアアクセラレータを複数選択した場合に、前記選択された複数のハードウェアアクセラレータのなかから、選択ポリシに基づいて、VNFに割り当てるハードウェアアクセラレータを決定する、決定手段をさらに備える、付記1乃至7のいずれか一に記載の制御装置。
[付記9]
 前記ハードウェアアクセラレータ要件は、ハードウェアアクセラレータを使用する際のプログラムを識別するプログラムID及びハードウェアアクセラレータの共有が可能か否かを示す第1共有設定を含み、
 前記ハードウェアアクセラレータ構成情報は、ハードウェアアクセラレータが利用されているか否かを示す利用状況、ハードウェアアクセラレータにロードされているプログラムを示すローディングID、ハードウェアアクセラレータにロード可能なプログラムを示すローダブルID及びハードウェアアクセラレータの共有が可能か否かを示す第2共有設定を含み、
 前記第3の手段は、前記プログラムIDが前記ローダブルIDに含まれるハードウェアアクセラレータのなかから、VNFに割り当てるハードウェアアクセラレータを選択する、付記1の制御装置。
[付記10]
 前記第3の手段は、前記第1及び第2共有設定の少なくとも一方が共有不可に設定されている場合には、前記共有不可に設定されたハードウェアアクセラレータをVNFに割り当てるハードウェアアクセラレータとして非選択とする、付記9の制御装置。
[付記11]
 前記第3の手段は、前記第1及び第2共有設定の両方に共有可が設定されている場合には、前記共有可に設定されているハードウェアアクセラレータのなかから、VNFに割り当てるハードウェアアクセラレータを選択する、付記9又は10の制御装置。
[付記12]
 前記第3の手段は、前記第1及び第2共有設定の両方に共有不可が設定されておらず、且つ、少なくともいずれか一方に条件付で共有可能が設定されている場合に、
 前記ローディングIDが、前記プログラムIDに一致するハードウェアアクセラレータのなかから、VNFに割り当てるハードウェアアクセラレータを選択する、付記9乃至11のいずれか一に記載の制御装置。
[付記13]
 前記第3の手段は、VNFをインスタンシエーションする際、又は、VNFのスケーリングを行う際に、VNFに割り当てるハードウェアアクセラレータの選択動作を開始する、付記1乃至12のいずれか一に記載の制御装置。
[付記14]
 上述の第2の視点に係るVNF配置先選択方法のとおりである。
[付記15]
 上述の第3の視点に係るプログラムのとおりである。
 なお、付記14の形態及び付記15の形態は、付記1の形態と同様に、付記2の形態~付記13の形態に展開することが可能である。
 なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
10 NFV-MANO
11 NFVO
12 VNFM
13 VIM
14 NSカタログ
15 VNFカタログ
16 NFVインスタンスリポジトリ
17 NFVIリソースリポジトリ
20 物理マシン
21 NFVI
22 VNF
23 EMS
30 OSS/BSS
41 CPU
42 メモリ
43 入出力インターフェイス
44 NIC
100 制御装置
101 第1の手段
102 第2の手段
103 第3の手段
201 HWA選択部
202 配置先決定部
211 HWA要件管理部
221 HWA構成管理部

Claims (15)

  1.  VNF(Virtualized Network Function)に必要なハードウェアアクセラレータの条件を示すハードウェアアクセラレータ要件を保持する第1の手段と、
     使用可能な複数のハードウェアアクセラレータそれぞれの構成情報を示すハードウェアアクセラレータ構成情報を保持する第2の手段と、
     前記ハードウェアアクセラレータ要件と前記ハードウェアアクセラレータ構成情報を参照して、前記複数のハードウェアアクセラレータのうち、VNFに割り当てるハードウェアアクセラレータを選択する第3の手段と、
     を備える、制御装置。
  2.  前記ハードウェアアクセラレータ要件は、VNFがハードウェアアクセラレータに要求する要件を少なくとも含む、請求項1の制御装置。
  3.  前記VNFがハードウェアアクセラレータに要求する要件は、VNFがハードウェアアクセラレータの使用を必要とするか否かを示す利用要否、ハードウェアアクセラレータを使用する際のプログラムを識別する情報及びハードウェアアクセラレータの共有が可能か否かを示す共有設定のうち少なくとも1つを含む、請求項2の制御装置。
  4.  前記ハードウェアアクセラレータ構成情報は、ハードウェアアクセラレータを識別するための情報と、ハードウェアアクセラレータの利用状況を示すリソース情報と、を含む、請求項1乃至3のいずれか一項に記載の制御装置。
  5.  前記リソース情報は、ハードウェアアクセラレータが利用されているか否かを示す利用状況、ハードウェアアクセラレータにロードされているプログラムを示す情報、ハードウェアアクセラレータにロード可能なプログラムを示す情報及びハードウェアアクセラレータの共有が可能か否かを示す共有設定のうち少なくとも1つを含む、請求項4の制御装置。
  6.  前記ハードウェアアクセラレータを識別するための情報は、ハードウェアアクセラレータのベンダを識別する情報、デバイスの種別を示す情報及びデバイスを識別するため情報のうち少なくとも1つを含む、請求項4又は5の制御装置。
  7.  前記第3の手段は、前記ハードウェアアクセラレータ要件に含まれる情報の一部を用いて、前記VNFに割り当てるハードウェアアクセラレータを選択する、請求項1乃至6のいずれか一項に記載の制御装置。
  8.  前記第3の手段が、VNFに割り当てるハードウェアアクセラレータを複数選択した場合に、前記選択された複数のハードウェアアクセラレータのなかから、選択ポリシに基づいて、VNFに割り当てるハードウェアアクセラレータを決定する、決定手段をさらに備える、請求項1乃至7のいずれか一項に記載の制御装置。
  9.  前記ハードウェアアクセラレータ要件は、ハードウェアアクセラレータを使用する際のプログラムを識別するプログラムID及びハードウェアアクセラレータの共有が可能か否かを示す第1共有設定を含み、
     前記ハードウェアアクセラレータ構成情報は、ハードウェアアクセラレータが利用されているか否かを示す利用状況、ハードウェアアクセラレータにロードされているプログラムを示すローディングID、ハードウェアアクセラレータにロード可能なプログラムを示すローダブルID及びハードウェアアクセラレータの共有が可能か否かを示す第2共有設定を含み、
     前記第3の手段は、前記プログラムIDが前記ローダブルIDに含まれるハードウェアアクセラレータのなかから、VNFに割り当てるハードウェアアクセラレータを選択する、請求項1の制御装置。
  10.  前記第3の手段は、前記第1及び第2共有設定の少なくとも一方が共有不可に設定されている場合には、前記共有不可に設定されたハードウェアアクセラレータをVNFに割り当てるハードウェアアクセラレータとして非選択とする、請求項9の制御装置。
  11.  前記第3の手段は、前記第1及び第2共有設定の両方に共有可が設定されている場合には、前記共有可に設定されているハードウェアアクセラレータのなかから、VNFに割り当てるハードウェアアクセラレータを選択する、請求項9又は10の制御装置。
  12.  前記第3の手段は、前記第1及び第2共有設定の両方に共有不可が設定されておらず、且つ、少なくともいずれか一方に条件付で共有可能が設定されている場合に、
     前記ローディングIDが、前記プログラムIDに一致するハードウェアアクセラレータのなかから、VNFに割り当てるハードウェアアクセラレータを選択する、請求項9乃至11のいずれか一項に記載の制御装置。
  13.  前記第3の手段は、VNFをインスタンシエーションする際、又は、VNFのスケーリングを行う際に、VNFに割り当てるハードウェアアクセラレータの選択動作を開始する、請求項1乃至12のいずれか一項に記載の制御装置。
  14.  VNF(Virtualized Network Function)に必要なハードウェアアクセラレータの条件を示すハードウェアアクセラレータ要件を保持する第1の手段と、
     使用可能な複数のハードウェアアクセラレータそれぞれの構成情報を示すハードウェアアクセラレータ構成情報を保持する第2の手段と、
     を備える制御装置において、
     前記ハードウェアアクセラレータ要件と前記ハードウェアアクセラレータ構成情報を参照するステップと、
     前記複数のハードウェアアクセラレータのうち、VNFに割り当てるハードウェアアクセラレータを選択するステップと、
     を含む、VNF配置先選択方法。
  15.  VNF(Virtualized Network Function)に必要なハードウェアアクセラレータの条件を示すハードウェアアクセラレータ要件を保持する第1の手段と、
     使用可能な複数のハードウェアアクセラレータそれぞれの構成情報を示すハードウェアアクセラレータ構成情報を保持する第2の手段と、
     を備える制御装置を制御するコンピュータに実行させるプログラムであって、
     前記ハードウェアアクセラレータ要件と前記ハードウェアアクセラレータ構成情報を参照する処理と、
     前記複数のハードウェアアクセラレータのうち、VNFに割り当てるハードウェアアクセラレータを選択する処理と、
     を実行させるプログラム。
PCT/JP2016/069014 2016-06-27 2016-06-27 制御装置、vnf配置先選択方法及びプログラム WO2018002991A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2016/069014 WO2018002991A1 (ja) 2016-06-27 2016-06-27 制御装置、vnf配置先選択方法及びプログラム
EP16907224.6A EP3477471A4 (en) 2016-06-27 2016-06-27 CONTROL DEVICE, VNF DEPLOYMENT DESTINATION SELECTION METHOD, AND PROGRAM
US16/080,356 US20190050248A1 (en) 2016-06-27 2016-06-27 Control apparatus, vnf deployment destination selection method and program
JP2018524602A JP6658882B2 (ja) 2016-06-27 2016-06-27 制御装置、vnf配置先選択方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/069014 WO2018002991A1 (ja) 2016-06-27 2016-06-27 制御装置、vnf配置先選択方法及びプログラム

Publications (1)

Publication Number Publication Date
WO2018002991A1 true WO2018002991A1 (ja) 2018-01-04

Family

ID=60786761

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/069014 WO2018002991A1 (ja) 2016-06-27 2016-06-27 制御装置、vnf配置先選択方法及びプログラム

Country Status (4)

Country Link
US (1) US20190050248A1 (ja)
EP (1) EP3477471A4 (ja)
JP (1) JP6658882B2 (ja)
WO (1) WO2018002991A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019235467A1 (ja) * 2018-06-05 2019-12-12 日本電気株式会社 システム、サーバ、検証方法及びプログラム
WO2019245416A1 (en) * 2018-06-20 2019-12-26 Telefonaktiebolaget Lm Ericsson (Publ) Method and supporting node for supporting process scheduling in a cloud system
JP7450072B2 (ja) 2020-06-03 2024-03-14 華為技術有限公司 仮想化ネットワーク・サービス配備方法及び装置

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10700946B2 (en) * 2017-08-08 2020-06-30 Amdocs Development Limited System, method, and computer program for automatically certifying a virtual network function (VNF) for use in a network function virtualization (NFV) based communication network
WO2018014351A1 (zh) * 2016-07-22 2018-01-25 华为技术有限公司 一种资源配置方法及装置
CN110050291B (zh) * 2017-01-13 2021-08-27 华为技术有限公司 聚合平台、需求所有者及其方法
JP6992343B2 (ja) * 2017-09-13 2022-01-13 富士通株式会社 情報処理装置、情報処理方法、および情報処理プログラム
US11382150B2 (en) * 2018-03-26 2022-07-05 Apple Inc. System and method of managing PNF connectivity in a network slice instance
US11144357B2 (en) * 2018-05-25 2021-10-12 International Business Machines Corporation Selecting hardware accelerators based on score
JP6947134B2 (ja) * 2018-07-31 2021-10-13 日本電信電話株式会社 サービスチェイン収容装置、および、サービスチェイン収容方法
US10977098B2 (en) 2018-08-14 2021-04-13 International Business Machines Corporation Automatically deploying hardware accelerators based on requests from users
US10892944B2 (en) 2018-11-29 2021-01-12 International Business Machines Corporation Selecting and using a cloud-based hardware accelerator
US10637753B1 (en) * 2019-04-09 2020-04-28 Verizon Patent And Licensing Inc. Managing a 5G network using extension information
US11687355B1 (en) * 2020-03-26 2023-06-27 Cisco Technology, Inc. Methods to extract cloud infrastructure requirements from virtualized applications and autodeploy
US11863450B1 (en) 2022-12-08 2024-01-02 Cisco Technology, Inc. Method using network controller to deploy virtual environment in production network

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007328461A (ja) * 2006-06-06 2007-12-20 Matsushita Electric Ind Co Ltd 非対称マルチプロセッサ
JP2011018198A (ja) * 2009-07-09 2011-01-27 Hitachi Ltd 管理装置及び管理方法
JP2013041361A (ja) * 2011-08-12 2013-02-28 Panasonic Corp リソース調停システム及び調停方法
JP2013196206A (ja) * 2012-03-16 2013-09-30 Fujitsu Ltd アクセラレータ管理装置、アクセラレータ管理方法および入出力装置
JP2016509412A (ja) * 2013-01-11 2016-03-24 華為技術有限公司Huawei Technologies Co.,Ltd. ネットワークデバイスのためのネットワーク機能仮想化

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104951353B (zh) * 2014-03-28 2018-09-21 华为技术有限公司 一种对vnf实现加速处理的方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007328461A (ja) * 2006-06-06 2007-12-20 Matsushita Electric Ind Co Ltd 非対称マルチプロセッサ
JP2011018198A (ja) * 2009-07-09 2011-01-27 Hitachi Ltd 管理装置及び管理方法
JP2013041361A (ja) * 2011-08-12 2013-02-28 Panasonic Corp リソース調停システム及び調停方法
JP2013196206A (ja) * 2012-03-16 2013-09-30 Fujitsu Ltd アクセラレータ管理装置、アクセラレータ管理方法および入出力装置
JP2016509412A (ja) * 2013-01-11 2016-03-24 華為技術有限公司Huawei Technologies Co.,Ltd. ネットワークデバイスのためのネットワーク機能仮想化

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Network Functions Virtualisation (NFV); Infrastructure; Compute Domain", ETSI GS NFV-INF 003, 9 June 2016 (2016-06-09), Retrieved from the Internet <URL:http://www.etsi.org/deliver/etsi_gs/NFV-INF/001_099/003/01.01.01_60/gs_nfv-inf003v010101p.pdf>
"Network Functions Virtualisation (NFV); Management and Orchestration", ETSI GS NFV-MAN 001, 9 June 2016 (2016-06-09), Retrieved from the Internet <URL:http://www.etsi.org/deliver/etsi_gs/NFV-MAN/001 _099/001/01.01.01_60/gs_NFV-MAN001v010101p.pdf>
See also references of EP3477471A4

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019235467A1 (ja) * 2018-06-05 2019-12-12 日本電気株式会社 システム、サーバ、検証方法及びプログラム
JPWO2019235467A1 (ja) * 2018-06-05 2021-06-24 日本電気株式会社 システム、サーバ、検証方法及びプログラム
JP7314935B2 (ja) 2018-06-05 2023-07-26 日本電気株式会社 システム、サーバ、検証方法及びプログラム
WO2019245416A1 (en) * 2018-06-20 2019-12-26 Telefonaktiebolaget Lm Ericsson (Publ) Method and supporting node for supporting process scheduling in a cloud system
US11797342B2 (en) 2018-06-20 2023-10-24 Telefonaktiebolaget Lm Ericsson (Publ) Method and supporting node for supporting process scheduling in a cloud system
JP7450072B2 (ja) 2020-06-03 2024-03-14 華為技術有限公司 仮想化ネットワーク・サービス配備方法及び装置

Also Published As

Publication number Publication date
US20190050248A1 (en) 2019-02-14
JP6658882B2 (ja) 2020-03-04
EP3477471A4 (en) 2019-06-12
JPWO2018002991A1 (ja) 2019-01-31
EP3477471A1 (en) 2019-05-01

Similar Documents

Publication Publication Date Title
WO2018002991A1 (ja) 制御装置、vnf配置先選択方法及びプログラム
JP6954267B2 (ja) ネットワーク機能仮想化管理オーケストレーション装置と方法とプログラム
JP6614340B2 (ja) ネットワーク機能仮想化管理オーケストレーション装置と方法とプログラム
EP3761170B1 (en) Virtual machine creation method and apparatus
US10003500B2 (en) Systems and methods for resource sharing between two resource allocation systems
JP6819296B2 (ja) 仮想化管理・オーケストレーション装置、仮想化管理・オーケストレーション方法、および、プログラム
US11625274B1 (en) Hyper-convergence with scheduler extensions for software-defined container storage solutions
EP3313023A1 (en) Life cycle management method and apparatus
EP3249860A1 (en) Method, device, and program for management and orchestration of network functions virtualization
US20140181817A1 (en) Methods and apparatus to manage execution of virtual machine workflows
WO2012039053A1 (ja) 計算機システムの運用管理方法、計算機システム及びプログラムを記憶する計算機読み取り可能な媒体
WO2017183565A1 (ja) ネットワークシステム、パッチファイル適用方法、及び記録媒体
Gogouvitis et al. Seamless computing in industrial systems using container orchestration
WO2020103925A1 (zh) 一种容器化虚拟网络功能的部署方法和装置
US20200364063A1 (en) Distributed job manager for stateful microservices
KR102524540B1 (ko) 멀티 클라우드 서비스 플랫폼 장치 및 방법
US9959157B1 (en) Computing instance migration
US10203976B2 (en) Virtual appliance management in a virtualized computing environment based on operational modes associated with virtual appliance
CN101159596A (zh) 用于布置服务器的方法和设备
CN113010265A (zh) Pod的调度方法、调度器、存储插件及系统
CN115129423A (zh) 资源管理方法、装置、设备及存储介质
JP2017068480A (ja) ジョブ管理方法、ジョブ管理装置及びプログラム
CN109905258B (zh) PaaS的管理方法、装置及存储介质
CN113127134A (zh) 容器集群、基于容器集群的多租户部署方法及电子设备
CN112015515A (zh) 一种虚拟网络功能的实例化方法及装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2018524602

Country of ref document: JP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16907224

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2016907224

Country of ref document: EP

Effective date: 20190128