Disclosure of Invention
Compared with the prior art, the method, the device and the system for instantiating the VNF service are used for clearly describing a flow and an interface, and the technical scheme of the method is as follows:
a virtual network function Manager (VNF Manager, VNFM) receiving a virtual network function VNF instantiation request message;
the method comprises the steps that a VNFM acquires a virtual network function information model Descriptor (VNF Descriptor, VNFD), and generates a virtual machine VM according to the VNFD, wherein the VNFD comprises a service group identifier;
the VNFM sends a Service group instantiation request to a Platform as a Service (PaaS) Platform, wherein the request comprises a VM identifier and a Service group identifier, so that the PaaS Platform instantiates a Service contained in a Service group corresponding to the Service group identifier in the VM.
Specifically, the VNF instantiation request message includes a flag ID, and the VNFM searches for a corresponding Virtual Deployment Unit (VDU) Identifier (Identifier, ID) in the VNFD according to the flag ID, and then generates a corresponding Virtual machine VM, where the VNFD includes a service group Identifier corresponding to the VDU ID.
Wherein the Flavour ID in the VNFD corresponds to a first VDU ID and a second VDU ID, and the first VDU ID corresponds to a first service group identifier and the second VDU ID corresponds to a second service group identifier, and the method specifically includes:
the VNFM searches corresponding first VDU ID and second VDU ID in the VNFD according to the Flavour ID,
the VNFM generates a first VM according to the first VDU ID;
the VNFM generates a second VM according to the second VDU ID;
the VNFM sends a first service group instantiation request to the PaaS platform, wherein the request comprises a first VM identifier and a first service group identifier, so that the PaaS platform instantiates a service contained in a service group corresponding to the first service group identifier in the first VM;
and the VNFM sends a second service group instantiation request to the PaaS platform, wherein the request comprises a second VM identifier and a second service group identifier, so that the PaaS platform instantiates the service contained in the service group corresponding to the second service group identifier in the second VM.
Further, the method further comprises: the VNFM receives a VNF capacity expansion request message, determines that a third VDU needs to be added according to the capacity expansion request message and the VNFD, and generates a corresponding third VM; and determining a corresponding third service group identity in the VNFD according to the third VDU ID;
and the VNFM sends a third service group instantiation request to the PaaS platform, wherein the request comprises a third VM identifier and a third service group identifier, so that the PaaS platform instantiates the service contained in the service group corresponding to the third service group identifier in the third VM.
Further, the method further comprises: the VNFM receives a VNF capacity reduction request message, and determines a VM needing to be terminated according to the capacity reduction request message and the VNFD;
and the VNFM sends a request for terminating the service group to the PaaS platform, wherein the request comprises a VM identifier to be terminated, so that the PaaS platform terminates the service included in the service group in the VM to be terminated.
An embodiment of the present invention further provides a VNF service instantiation apparatus, including:
a receiving unit, configured to receive a virtual network function VNF instantiation request message;
the processing unit is used for acquiring a virtual network function information model descriptor VNFD and generating a virtual machine VM according to the VNFD, wherein the VNFD comprises a service group identifier;
the service group instantiation method includes the steps that a sending unit is used for sending a service group instantiation request to a platform, namely a PaaS platform, wherein the request comprises a VM (virtual machine) identifier and a service group identifier, so that the PaaS platform can instantiate a service contained in a service group corresponding to the service group identifier in the VM.
Further, the VNF instantiation request message includes a Flavour ID, and the processing unit is configured to search, in the VNFD, a corresponding VDU ID according to the Flavour ID, and then generate a corresponding virtual machine VM, where the VNFD includes a service group identifier corresponding to the VDU ID.
The embodiment of the invention also provides a VNF service instantiation system, which comprises a Virtual Network Function Manager (VNFM) and a platform as a service (PaaS) platform, wherein,
the Virtual Network Function (VNFD) module is used for receiving a VNF instantiation request message, acquiring a VNFD (virtual network function information model descriptor), and generating a VM (virtual machine) according to the VNFD, wherein the VNFD comprises a service group identifier, and sending a service group instantiation request to a platform, namely a service platform as a PaaS (platform as a service), wherein the request comprises a VM identifier and a service group identifier;
and the PaaS platform is used for receiving a service group instantiation request and instantiating the service contained in the service group corresponding to the service group identifier in the VM.
The embodiment of the invention also provides a virtual network function VNF service instantiation device, which comprises a processor and a memory; the memory is used for storing a program for executing the method of any one of claims 1 to 7 and storing data involved in implementing the method of any one of claims 1 to 7;
the processor is configured to execute programs stored in the memory.
Embodiments of the present invention also provide a computer-readable storage medium, which stores executable program instructions, and when the executable program instructions are executed, the computer-readable storage medium is configured to perform the above-mentioned method steps.
Embodiments of the present invention also provide a computer program product for performing the above-described method steps when the computer program product is executed.
In the embodiment of the invention, as the VDU presents the requirements on virtual resources, an Operating System (OS), a service group identifier and the like, the service in the service group is not presented to the VNFM, and the VNFM can only send the service group identifier to the PaaS platform without analyzing and knowing the specific service in the service group, thereby meeting the requirements of different operators.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
Before further detailed description of the embodiments of the present application, an application scenario of the embodiments of the present application is introduced.
Since the PaaS in the embodiment of the present application is deployed in the NFV architecture, the NFV architecture is introduced first. Fig. 1 is a schematic diagram of an NFV architecture according to an embodiment of the present application, where the NFV system architecture can be applied to various types of networks, such as an operator communication network or a local area network.
As shown in fig. 1, the NFV architecture mainly includes a MANO entity 110, an NFVI 120, a plurality of VNFs 130, a plurality of Element Management (EM) 140, and an Operation Support Management System (OSS/BSS) 150. The MANO entity 110 further includes a Network Function Virtualization Orchestrator (NFVO) 110a, one or more VNFMs 110b, and a Virtualized Infrastructure Manager (VIM) 110 c.
For convenience of description, the functions of the respective modules in the NFV architecture of fig. 1 are described next.
The NFVO 110a is configured to implement Network Service Descriptors (NSDs) and management and processing of virtual Network function Forwarding graphs (VNF Forwarding graphs, VNFFGs), management of a Network Service lifecycle, and implement the lifecycle management of the VNF and a global view function of virtual resources in cooperation with the VNFM.
The VNFM110b is used to implement lifecycle management of the VNF, including management of virtualized network function Descriptor (VNF Descriptor, VNFD) files, instantiation of the VNF, elastic Scaling of VNF instances (including Scaling out/up and Scaling in/down), healing (healing) of VNF instances, and termination of VNF instances. The VNFM also supports receiving a flexible scaling (scaling) strategy issued by the NFVO, and realizes automatic VNF flexible scaling.
The VIM 110b is responsible for managing (including reserving and allocating) hardware resources of an infrastructure layer, managing virtualized resources, monitoring and reporting a fault of a virtual resource state, and providing a virtualized resource pool to an upper-layer application.
OSS/BSS 150 refers to the operator's existing operation and maintenance system OSS/BSS.
The EM 140 is used to perform traditional Fault, Configuration, user, Performance and Security Management (FCAPS) functions for the VNF 130.
The VNF 130 corresponds to a Physical Network Function (PNF) in a conventional non-virtualized Network, such as a virtualized 4G Core Network (EPC) EPC node, such as a Mobility Management Entity (MME), a Serving Gateway (SGW), a Packet Data Network Gateway (PGW), and the like. The functional behavior and state of the network function are independent of virtualization, and the NFV technology is required to expect that VNF and PNF have the same functional behavior and external interface.
In addition, the VNF 130 may be composed of multiple VNF components (VNFCs), and thus, in practical applications, one VNF 130 may be deployed on multiple Virtual Machines (VMs), each VM carrying a function of one VNF Component. Of course, one VNF 130 may also be deployed on one VM.
The NFVI 120 is composed of hardware resources and virtual resources and a virtualization layer, which from the perspective of the VNF 130 appears to be a complete entity that can provide the required virtual resources.
Fig. 2 is a schematic diagram of an NFV architecture with PaaS deployed according to an embodiment of the present application, and as shown in fig. 2, relative to the NFV architecture shown in fig. 1, the NVF architecture shown in fig. 2 further includes a PaaS platform 160, where the PaaS platform 160 includes a plurality of services and PaaS management for managing the plurality of services.
In addition, a PaaS platform deployed in the NFV architecture and a VNFM entity in the NFV architecture are used to execute the method of the embodiment of the present application. The method mainly comprises the following steps:
the VNFM receives a VNF instantiation request message;
the method comprises the steps that a VNFM acquires a virtual network function information model descriptor VNFD, and generates a virtual machine VM according to the VNFD, wherein the VNFD comprises a service group identifier;
the VNFM sends a service group instantiation request to a platform, namely a service PaaS platform, wherein the request comprises a VM identifier and a service group identifier, so that the PaaS platform instantiates a service contained in a service group corresponding to the service group identifier in the VM.
Next, the above flow is explained in detail, fig. 3 is a flowchart of an NFV service instantiation provided in an embodiment of the present application, and is applied to the NFV architecture with a PaaS platform deployed shown in fig. 2, where the method includes the following steps:
301, the VNFM receives an instantiation VNF request message, and the request message carries a Flavour ID.
The instantiation VNF request message may be sent by NFVO, or may be sent by other NFV entities
And 302, the VNFM searches a corresponding VDU ID in the VNFD according to the Flavour ID, allocates virtual resources and loads an OS (operating system), and completes the starting of the VM (virtual machine).
Before step 301, the VNFM receives corresponding VNFD ID information sent by the NFVO, for example, by receiving a Create VNF Identifier request sent by the NFVO to obtain a VNFD ID included in the request. Since the above steps belong to the existing flow, reference is made to IFA007V2.3.1 specifically, and they are not described in detail here. In step 302, the VNFM acquires the virtual network function information model descriptor VNFD via the VNFD ID, searches for a corresponding VDU ID in the VNFD according to the Flavour ID, determines a VDU to be deployed, allocates a virtual resource and loads an OS, and then generates a virtual machine VM.
The above steps are specifically described below with reference to table 1, where table 1 is a schematic diagram of a VNFD, and includes various fields, such as a Flavour ID, a VDU ID, a service group identifier, and the like, where:
the weaveid mainly describes a network topology, which VDUs are needed, the maximum and minimum number of instances deployed for each VDU, the internal network connection relationship, and the like.
The VDU describes a virtual deployment unit of one specification of the VNF, and VDUs of different specifications may differ in their virtual machine specification and software. One VDU instance maps to one VM.
The service group identification corresponds to a service group comprising one or more different services, which may be Container-based (Container) services or non-Container-based services, and the services within the service group are not presented to the VNFM, i.e. the VNFM does not know which specific services the service group comprises.
TABLE 1
If the Flavour ID received by the VNFM is Flavour _1, in table 1, Flavour _1 corresponds to VDU-1 and VDU-2, respectively, the VNFM determines that the VDU types to be deployed are VDU-1 and VDU-2, and if VDU-1 and VDU-2 correspond to one instance, the VNFM allocates corresponding virtual resources and loads the operating system OS to generate VM1 and VM2, respectively; if VDU-1 and VDU-2 correspond to multiple instances, respectively, the VNFM allocates corresponding virtual resources and loads the operating system OS, generating corresponding multiple VMs 1 and 2, respectively.
Fig. 4 is a schematic diagram of a logical structure of a VDU Instance, in which a VDU Instance (Instance) only contains or corresponds to a service group, and the service group contains one or more services. In VNFD, one VDU ID identifies a VDU type, and one type of VDU can deploy one or more VDU instances, depending on the relevant information carried in VNFD; one VDU instance generates one VM correspondingly, and only services in one service group are instantiated in one VM.
Sending a service group instantiation request to a platform as a service (PaaS) platform by the VNFM, wherein the request comprises a VM identifier and a service group identifier.
Continuing with table 1 in step 302 as an example, the VNFM sends a first service group instantiation request to the PaaS platform, where the request includes VM identification VM1, service group identification SG-1; the VNFM will then send a second service group instantiation request to the PaaS platform, the request including the VM identification VM2, the service group identification SG-2. Here, as a common general knowledge, the "identification" includes a series of common identifications such as an IP address, a name, and an ID, and only the "target object" can be uniquely identified.
And 304, receiving the service group instantiation request by the PaaS platform, and instantiating the service contained in the service group corresponding to the service group identification in the VM.
The PaaS platform receives a first service group instantiation request sent by a VNFM, determines each service in SG-1, and instantiates each service contained in SG-1 in a VM 1; then, the PaaS platform receives a second service group instantiation request sent by the VNFM, determines each service in SG-2, and instantiates each service included in SG-2 in the VM 2.
The PaaS returns a service group instantiation completion response message to the VNFM.
After the PaaS completes the instantiation of the service group, the subsequent VNFMs operate according to the prior art flow after returning a response message of the service group instantiation completion to the VNFM, for example, after all VDUs are instantiated, operations such as establishing virtual network connection are performed, and details are not described here. See in particular standard IFA 029.
Because the VDU presents the requirements for virtual resources, the OS, the service group identification and the like, the service in the service group is not presented to the VNFM, the VNFM can only send the service group identification to the PaaS platform without analyzing and knowing which specific service is in the service group, and therefore the requirements of different operators are met.
Fig. 5 is a flowchart of NFV service capacity expansion according to an embodiment of the present invention, where the capacity expansion flow is similar to the NFV service instantiation flow, and the specific steps are as follows:
and 501, receiving a VNF capacity expansion request message by the VNFM.
502, the VNFM determines, according to the capacity expansion request message and the VNFD, a requirement of the VDU to be added and a requirement of the corresponding virtual resource, allocates the corresponding virtual resource and loads the OS, and completes the starting of the virtual machine.
The expansion refers to increasing the expansion of the VM, and the expansion operation is caused by triggering the VNFM, at this time, the VNFM determines, in combination with the VNFD, the existing instance information, the expansion information in the request, and the like, the VDU instance to be increased and the corresponding virtual resource requirement, and completes the corresponding resource allocation and OS loading, thereby completing the starting of the virtual machine.
And 503, the VNFM determines the service group identification in each VDU, and initiates an instantiation request of the service group in each VM to the PaaS platform, wherein the request carries the VM identification and the corresponding service group identification.
If multiple VDUs need to be added in step 502, the VNFM initiates an instantiation request of the service group in the VM to the PaaS platform, similar to step 303.
And 504, determining the services to be instantiated by the PaaS platform according to the service group identification, and completing instantiation operation of each service in the corresponding VM.
And 505, returning a service group instantiation completion response message to the VNFM by the PaaS platform.
Fig. 6 is a flowchart of NFV service capacity reduction according to an embodiment of the present invention, where the capacity reduction process is similar to the NFV service instantiation process, and includes the following specific steps:
the VNFM receives a VNF capacity reduction request message.
And the VNFM determines the VDUs needing reduction and determines the corresponding VM according to the capacity reduction request message and the VNFD.
And 603, the VNFM determines the service group identification in each VDU, and initiates an instantiation request of the service group in each terminal VM to the PaaS platform, wherein the request carries the VM identification and the service group identification.
And 604, terminating the service contained in the corresponding VM service group by the PaaS platform according to the VM identifier and the service group identifier.
In step 603, the instantiation request may only carry a VM identifier and not a service group identifier; in step 604, the PaaS platform may find a corresponding VM according to the VM identifier, then determine which service instances exist in the service group in the VM, and then terminate the service instances.
In addition, as a specific example of the reduction, the flow of terminating the VNF service is similar to that of the reduction, except that the PaaS platform terminates the service instances in all VMs according to the terminating service group request message of the VNFM, and details are not described here.
Fig. 7 is a schematic diagram of an architecture of a VNF service instantiation system in an embodiment of the present invention, where the system includes a virtual network function manager VNFM and a platform as a service PaaS platform, where,
the Virtual Network Function (VNFD) module is used for receiving a VNF instantiation request message, acquiring a VNFD (virtual network function information model descriptor), and generating a VM (virtual machine) according to the VNFD, wherein the VNFD comprises a service group identifier, and sending a service group instantiation request to a platform, namely a service platform as a PaaS (platform as a service), wherein the request comprises a VM identifier and a service group identifier;
and the PaaS platform is used for receiving a service group instantiation request and instantiating the service contained in the service group corresponding to the service group identifier in the VM.
Specifically, the VNF instantiation request message includes a Flavour ID, and the VNFM is configured to search for a corresponding VDU ID in the VNFD according to the Flavour ID, and then generate a corresponding virtual machine VM, where the VNFD includes a service group identifier corresponding to the VDU ID.
The VNFM may be configured to perform the respective method steps performed by the VNFM of the above-mentioned method steps.
Fig. 8 is a schematic diagram of a virtual network function VNF service instantiation apparatus, the apparatus including:
a receiving unit, configured to receive a virtual network function VNF instantiation request message;
the processing unit is used for acquiring a virtual network function information model descriptor VNFD and generating a virtual machine VM according to the VNFD, wherein the VNFD comprises a service group identifier;
the service group instantiation method includes the steps that a sending unit is used for sending a service group instantiation request to a platform, namely a PaaS platform, wherein the request comprises a VM (virtual machine) identifier and a service group identifier, so that the PaaS platform can instantiate a service contained in a service group corresponding to the service group identifier in the VM.
Specifically, the VNF instantiation request message includes a Flavour ID, and the processing unit is configured to search, in the VNFD, a corresponding VDU ID according to the Flavour ID, and then generate a corresponding virtual machine VM, where the VNFD includes a service group identifier corresponding to the VDU ID.
Further, the Flavour ID in the VNFD corresponds to a first VDU ID and a second VDU ID, the first VDU ID corresponds to a first service group identification, the second VDU ID corresponds to a second service group identification,
the processing unit is used for generating a first VM according to the first VDU ID and generating a second VM according to the second VDU ID;
a sending unit, configured to send a first service group instantiation request to a PaaS platform, where the request includes a first VM identifier and a first service group identifier, so that the PaaS platform instantiates a service included in a service group corresponding to the first service group identifier in the first VM; and sending a second service group instantiation request to the PaaS platform, wherein the request comprises a second VM identifier and a second service group identifier, so that the PaaS platform instantiates the service contained in the service group corresponding to the second service group identifier in the second VM.
If the receiving unit receives the VNF capacity expansion request message;
then, the processing unit is configured to determine that a third VDU needs to be added according to the capacity expansion request message and the VNFD, generate a corresponding third VM, and determine a corresponding third service group identifier in the VNFD according to the third VDU ID;
the sending unit is configured to send a third service group instantiation request to the PaaS platform, where the request includes a third VM identifier and a third service group identifier, so that the PaaS platform instantiates a service included in a service group corresponding to the third service group identifier in the third VM.
If the receiving unit further receives the VNF capacity reduction request message;
then, the processing unit is configured to determine, according to the capacity reduction request message and the VNFD, a VM that needs to be terminated;
the sending unit is configured to send a request for terminating a service group to the PaaS platform, where the request includes a VM identifier to be terminated, so that the PaaS platform terminates a service included in the service group in the VM to be terminated.
Fig. 9 is a hardware diagram of a VNF service instantiation apparatus provided in another embodiment of the present invention, where the apparatus may include: a processor, a communication interface, and a memory.
The processor 91 may include one or more processing units, which may be a Central Processing Unit (CPU) or a Network Processor (NP), etc.
The communication interface 94 is used for interfacing and information interaction with other communication devices, including receiving and transmitting corresponding messages; the network device 90 may further comprise a memory 93, and the processor 91 may be connected to the memory 93 and the communication interface 94 by a bus. The memory 93 may be used to store software programs that may be executed by the processor 91 to implement the method steps in the embodiments shown in fig. 3, 5 and 6. In addition, the memory 93 may also store various service data or user data, including status data of various application instances and services in the above method steps.
Optionally, the network device 90 may also include an output device 95 and an input device 97. An output device 95 and an input device 97 are connected to the processor 91. The output device 95 may be a display for displaying information, a power amplifier device for playing sound, or a printer, and the like, and the output device 95 may further include an output controller for providing output to the display, the power amplifier device, or the printer. The input device 97 may be a device such as a mouse, keyboard, electronic stylus, or touch panel for user input of information, and the input device 97 may further include an output controller for receiving and processing input from the mouse, keyboard, electronic stylus, or touch panel, among other devices
In the above embodiments, the implementation may be wholly or partly realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored on a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website, computer, server, or data center to another website, computer, server, or data center via wire (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., Digital Versatile Disk (DVD)), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above-mentioned embodiments are provided not to limit the present application, and any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the protection scope of the present application.