WO2017092568A1 - 虚拟网络功能的配置方法和装置 - Google Patents

虚拟网络功能的配置方法和装置 Download PDF

Info

Publication number
WO2017092568A1
WO2017092568A1 PCT/CN2016/106137 CN2016106137W WO2017092568A1 WO 2017092568 A1 WO2017092568 A1 WO 2017092568A1 CN 2016106137 W CN2016106137 W CN 2016106137W WO 2017092568 A1 WO2017092568 A1 WO 2017092568A1
Authority
WO
WIPO (PCT)
Prior art keywords
instance
network function
service node
service
configuration
Prior art date
Application number
PCT/CN2016/106137
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 EP16869878.5A priority Critical patent/EP3373517B1/en
Priority to EP19207155.3A priority patent/EP3668013B1/en
Publication of WO2017092568A1 publication Critical patent/WO2017092568A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • 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/4555Para-virtualisation, i.e. guest operating system has to be modified
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/084Configuration by using pre-existing information, e.g. using templates or copying from other elements
    • H04L41/0843Configuration by using pre-existing information, e.g. using templates or copying from other elements based on generic templates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5051Service on demand, e.g. definition and deployment of services in real time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/822Collecting or measuring resource availability data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5077Network service management, e.g. ensuring proper service fulfilment according to agreements wherein the managed service relates to simple transport services, i.e. providing only network infrastructure

Definitions

  • the present invention relates to computer technology, and in particular, to a method and an apparatus for configuring a virtual network function.
  • Modern networks increasingly rely on a variety of network processing functions, such as security (firewalls, intrusion detection systems, etc.), traffic shaping (load balancing), network address translation, and improved network application performance (traffic accelerators, caching, proxies, etc.) Wait.
  • network processing functions such as security (firewalls, intrusion detection systems, etc.), traffic shaping (load balancing), network address translation, and improved network application performance (traffic accelerators, caching, proxies, etc.) Wait.
  • network processing functions such as security (firewalls, intrusion detection systems, etc.), traffic shaping (load balancing), network address translation, and improved network application performance (traffic accelerators, caching, proxies, etc.) Wait.
  • Network function virtualization (English: Network Function Virtualization, NFV for short) leads the network into a new era of virtualization, because it is difficult for professional devices to change functions to adapt to changing traffic demands.
  • Network function virtualization realizes network functions through software, can run on various standard server hardware, can be moved and instantiated in different network locations as needed, without installing new devices, that is, using a common platform (general server, storage, Switch) to replace the dedicated network equipment, through software to provide different network processing functions, and through the hardware accelerator, graphics processor (English: Graphics Processing Unit, referred to as: GPU) and field programmable gate array (English: Field- Programmable Gate Array (referred to as: FPGA)) to improve the performance of network functions.
  • graphics processor English: Graphics Processing Unit, referred to as: GPU
  • FPGA Field- Programmable Gate Array
  • the universal platform can only select one of the accelerators for acceleration, and once an accelerator is selected, other accelerators cannot be used during use.
  • the embodiment of the invention provides a method and a device for configuring a virtual network function, which are used to solve the problem that the accelerator used by the universal platform in the prior art cannot be changed during use.
  • a first aspect of the present invention provides a method for configuring a virtual network function, including:
  • the service chain in the solution is not limited to the network function of a single service node.
  • the configuration method is also applicable to the configuration of multiple service nodes in the service chain, that is, the network function of one service node can be configured only.
  • the network functions of two or more service nodes are dynamically configured as described above.
  • the solution can find the network function of using different acceleration devices in the instance library through the change of the demand information of the network function, and reconfigure the service chain to effectively improve the performance of the network function and realize the accelerated resource of the network function. Dynamic configuration.
  • the NF instance library further includes an NF description table; each entry of the NF description table includes an instance descriptor, and the instance descriptor is used to describe a service function based on an acceleration device. Instance file;
  • the instance descriptor includes at least one of a function type and the following parameters: acceleration device type, throughput, maximum capability, average processing batch value, and device utilization.
  • an example library of the new virtual network function that is, the above NF instance library
  • the instance library includes an instance of each acceleration device corresponding to each network function, and includes an instance descriptor of each such instance, and a specific implementation manner Yes: The instance descriptors and corresponding instances are mapped in the NF description table for querying during the configuration process.
  • the instance descriptors of the various acceleration devices corresponding to the same NF may also be stored in a sub-table, that is, different sub-tables represent different NFs; and the method of using the instance descriptors is only one of the implementation manners.
  • instance descriptor should at least be able to indicate what type of network function, and the type or performance of the corresponding acceleration device.
  • This solution provides a specific implementation of the NF instance library.
  • the NF description table to store all the instance descriptors of the NF instance, mapping each instance, you can receive the network function configuration request during the service chain use. After that, the NF description table is queried according to the network function requirement, and the instance of the network function that meets the requirements is quickly found in the instance library according to the found instance descriptor, and the service chain reconfiguration effectively improves the performance of the network function and accelerates the network function. Dynamic configuration of resources.
  • the network function requirement includes at least one of target throughput, request capability, and peak data volume.
  • the network function requirement needs to specify what needs to be met after the configured network function meets, so at least one performance parameter is needed to make a judgment.
  • the obtaining, by the network function NF instance library, an NF instance file that meets a network function requirement of the service node includes:
  • the meaning of the above solution is to query the NF description table in one implementation manner according to the performance requirement in the network function requirement, obtain an instance descriptor that can satisfy the requirement, and then find out the selected instance description from the instance library.
  • the corresponding NF instance is relatively simple, and the processing efficiency can be improved in a specific configuration process.
  • the network function configuration request includes a network function requirement of each service node on the service chain, and a target throughput and a peak data amount of the service chain
  • the network function requirement of each service node includes the request capability of the service node; the method further includes:
  • performing network function configuration on the service node according to the obtained NF instance file includes:
  • the failure protection data plane continues to be processed
  • the above two solutions provide a specific configuration process of the network function. After receiving the network function configuration request, the NF instance needs to be obtained according to the requirement information.
  • the common situation is that the target information includes the target throughput. Performance requirements such as request capability and peak data volume.
  • the above solution only provides a way to select according to the NF type, throughput, capability, processing batch size, accelerator type and utilization order. In fact, in the specific implementation, According to any order, as long as the finally selected NF instance satisfies all the requirements, it is not limited to one of the above implementation sequences.
  • performing network function configuration on the service node according to the obtained NF instance file for a single service node including:
  • the service on the fail-safe data plane is redirected to the service node.
  • the failed data protection plane may be the configured spare hardware, or may be a data plane generated according to the network function of each node in the service chain, and requires a one-to-one correspondence with the service function of each node in the service chain.
  • the current service is directed to the pre-failed data protection plane to continue execution, and then a new high-performance data plane is constructed according to the obtained NF instance that satisfies the requirement, that is, for each service.
  • the node is reconfigured to generate a new service chain, and then the service is directed back to the new service chain for execution and configuration.
  • the configuration scheme can support a service chain composed of multiple NFs, that is, a service chain, and can utilize the hardware acceleration device to enhance the NF performance function, and the NF instance library is elastically extensible, and obtaining a suitable NF instance can be based on multiple layers.
  • the matching method can quickly and effectively select an appropriate NF instance online, automatically complete the selection and configuration of the acceleration resource, saving time and effort.
  • the method further includes:
  • the configuration response message is used to notify the network management system whether network function configuration is completed.
  • the corresponding feedback information may be sent to the network management system, that is, the above configuration response message, the feedback configuration is completed or not completed, and the performance parameter or instance descriptor of the closest NF instance may be fed back to For the user to choose.
  • the method further includes: before receiving the network function configuration request, the method further includes:
  • the NF instance library is configured according to each business function and an image file of each acceleration device acquired in advance.
  • the NF instance library In order to implement the dynamic configuration of the network functions of the nodes in the service chain, the NF instance library needs to be established in advance.
  • the NF instance library can be built in a general-purpose server.
  • various types of hardware accelerators that is, acceleration devices, are required.
  • the obtained image file is configured.
  • This instance can be a pre-compiled binary file or a binary file after layout.
  • each NF instance should be clear. Define the same application programming interface (English: Application Programming Interface, API for short).
  • a second aspect of the present invention provides a device for configuring a virtual network function, including:
  • a receiving module configured to receive a network function configuration request sent by the network management system, where the network function configuration request includes a network function requirement of the service node;
  • a processing module configured to obtain, from the network function NF instance library, an NF instance file that meets a network function requirement of the service node, where the NF instance library includes an instance file of each acceleration function based on each acceleration device;
  • a configuration module configured to perform network function configuration on the service node according to the obtained NF instance file.
  • processing module is further configured to configure the NF instance library according to each service function and an image file of each acceleration device acquired in advance;
  • the NF instance library further includes an NF description table;
  • Each entry includes an instance descriptor for describing an instance of a business function based on an accelerated device;
  • the instance descriptor includes at least one of a function type and the following parameters: acceleration device type, throughput, maximum capability, average processing batch value, and device utilization.
  • the network function requirement includes at least one of target throughput, request capability, and peak data volume.
  • processing module is specifically configured to:
  • the network function configuration request includes a network function requirement of each service node on the service chain, and a target throughput and a peak data amount of the service chain
  • the network function requirement of each service node includes the request capability of the service node; the processing module is further configured to:
  • the configuration module is further configured to:
  • the configuration module is specifically configured to:
  • the service on the fail-safe data plane is redirected to the service node.
  • the device further includes:
  • a sending module configured to send a configuration response message to the network management system; the configuration response message is used to notify the Whether the network management system completes the network function configuration.
  • a third aspect of the present invention provides a configuration manager for implementing the configuration method of the virtual network function, which specifically includes: a receiver, a processor, and a memory for storing cached content such as a program;
  • a receiver configured to receive a network function configuration request sent by the network management system, where the network function configuration request includes a network function requirement of the service node;
  • a processor configured to obtain, from the network function NF instance library, an NF instance file that meets a network function requirement of the service node, where the NF instance library includes an instance file for each service function based on each acceleration device;
  • the processor is further configured to perform function configuration on the service node according to the obtained NF instance file.
  • the processor is further configured to configure the NF instance library according to each service function and an image file of each acceleration device acquired in advance; wherein the NF instance library further includes an NF description table; Each entry of the table includes an instance descriptor for describing an instance file of a service function based on an acceleration device;
  • the instance descriptor includes at least one of a function type and the following parameters: acceleration device type, throughput, maximum capability, average processing batch value, and device utilization.
  • the receiver receives the network function requirement including at least one of a target throughput, a request capability, and a peak data amount.
  • processor is specifically configured to:
  • the network function configuration request includes a network function requirement of each service node on the service chain, and a target throughput and a peak data amount of the service chain
  • the network function requirement of each service node includes the request capability of the service node; the processor is further configured to:
  • processor is further specifically configured to:
  • the service on the fail-safe data plane is redirected to the service node.
  • the processor is further configured to:
  • the transmitter is configured to send a configuration response message to the network management system, where the configuration response message is used to notify the network management system whether network function configuration is completed.
  • the present invention further provides an accelerating device configurable system architecture of an elastically expandable network function, which is composed of a general-purpose server and a plurality of acceleration devices, wherein the universal server is provided with a user executing the above-mentioned technical solution configuration manager, NF instance library, etc.
  • the method and device for configuring a virtual network function obtains, by using a network function configuration request sent by the network management system, an NF instance file that satisfies the network function requirement of each service node from the network function NF instance library, where
  • the NF instance library includes an instance file of each acceleration function based on each acceleration function, and performs function configuration on each service node according to the obtained NF instance file.
  • the service node may be a service node newly joined to the network or a service node that has been deployed in the network and processes a certain service.
  • the invention can configure the network function of the service node according to the network function requirement in the network function configuration request, can effectively improve the performance of the network function, and realize the dynamic configuration of the accelerated resource of the network function.
  • FIG. 1 is a schematic structural diagram of a system that can implement NF configuration according to an embodiment of the present disclosure
  • FIG. 2 is a flowchart of a method for configuring a virtual network function according to an embodiment of the present invention
  • FIG. 3 is a schematic structural diagram of an NF description table in a method for configuring a virtual network function according to an embodiment of the present disclosure
  • FIG. 4 is a flowchart of selecting an NF instance that meets a network function requirement in a method for configuring a virtual network function according to an embodiment of the present disclosure
  • FIG. 5 is a schematic structural diagram of a device for configuring a virtual network function according to an embodiment of the present disclosure
  • FIG. 6 is a schematic structural diagram of another apparatus for configuring a virtual network function according to an embodiment of the present disclosure.
  • FIG. 7 is a schematic structural diagram of a configuration manager according to an embodiment of the present disclosure.
  • FIG. 8 is a schematic structural diagram of still another configuration manager according to an embodiment of the present invention.
  • FIG. 1 is a schematic structural diagram of a system for implementing NF configuration according to an embodiment of the present invention.
  • the system architecture is a hardware-expandable NFV structure that is elastically expandable, and is a general-purpose server and a hardware device for acceleration (ie, a hardware accelerator, for example: The CPUs, MICs, GPUs, FPGAs shown in the figure are composed.
  • This architecture shows the three most common network functions in a wide area network: routing, firewall, and deep packet inspection (English: Deep Packet Inspection, DPI for short).
  • the architecture supports the expansion of NFs and acceleration devices and supports on-demand online reconfiguration.
  • the system architecture includes: a) an NF instance library; b) a configuration manager; c) a high-performance data plane established by the NF instance selected according to the configuration request and selected from the NF instance library. d) The failure data protection plane for reconfiguration.
  • the NF Instance Library includes all NF instances, including software instances and hardware-accelerated instances. These examples can be pre-compiled binaries (supporting CPU, MICs and GPU), or binary files after placement and routing (supporting FPGAs, which can be downloaded directly to the FPGA), and the NF instance library and the present invention.
  • the NF description entry may be stored in the same storage space as the NF instance, or may be separately stored, as shown in FIG. Make restrictions.
  • each NF instance should clearly define the same application programming interface (English: Application Programming Interface, API for short).
  • each NF instance corresponds to an NF description entry that can be accessed by the configuration manager.
  • the configuration manager receives a network function configuration request sent by the network management system (a system capable of being operated by a user and inputting related requirements, which may be a separate device or a system installed in the general server), and the network function configuration request includes The network function requirements of at least one business node.
  • the network function requirements are E F1 , E R , E D , E F2 , P and T shown in FIG.
  • the configuration manager obtains an instance description in the NF description table that meets the network function requirements according to the network function requirement. And the NF description entry, and the corresponding instance file is obtained from the NF instance library according to the NF description entry, where the instance file can meet the network function requirement. The configuration manager then creates a new high performance data plane and switches from the currently used high performance data plane to the new high performance data plane.
  • the random access memory (English: random access memory, RAM for short) is used to implement communication between different acceleration devices, and a network adapter (English: Network Interface Card, NIC for short) is used to The system is connected to the network.
  • the service data enters each service node from the network through the NIC to implement different network functions, and then enters the network through the NIC.
  • FIG. 2 is a flowchart of a method for configuring a virtual network function according to an embodiment of the present invention.
  • the implementation body of the solution is the configuration manager.
  • the specific implementation steps of the virtual network function configuration method are as follows.
  • S101 Receive a network function configuration request sent by the network management system, where the network function configuration request includes a network function requirement of the service node.
  • the service node may be a service node newly added to the network, or may be a service node that is already deployed in the network, and is also applicable to a certain service node in a certain service chain or the entire service chain. node.
  • the NF instance library Before the step, the NF instance library needs to be configured according to each service function and an image file of each acceleration device acquired in advance.
  • the NF instance library includes an instance file for each service function based on each acceleration device; optionally,
  • the NF instance library may further include an NF description table; each entry in the NF description table includes an instance descriptor for describing an instance file of each acceleration function based on each acceleration device;
  • the NF description table can also be stored in other locations and accessed when a query is needed.
  • Each instance descriptor includes at least one of a function type and an acceleration device type, throughput, maximum capability, average processing batch value, and device utilization.
  • the network function configuration request may include the service At least one of a function type of the node and the following parameters: at least one of an acceleration device type, a throughput, a maximum capability, an average processing batch value, and a device utilization.
  • the network function configuration request may include a network function requirement of a service node, and may also include network function requirements of multiple service nodes.
  • S102 Obtain an NF instance file that satisfies a network function requirement of the service node from a network function NF instance library.
  • a specific implementation manner is: the configuration manager obtains, according to the NF description table and the network function requirement of the service node, the network function requirement that meets the service node from the NF description table. An NF description entry of the instance descriptor; and then obtaining, according to the obtained NF description entry, an NF instance file that satisfies the network function requirement from the instance file in the NF instance library.
  • the example file of the network function in this solution refers to a program and a configuration file that implements the network function, or a program and a configuration file that implement different acceleration device functions and the network function.
  • the NF instances satisfying the network function requirements of each service node may be acquired one by one according to the order of the multiple service nodes, and each of the NF instances may be acquired at the same time.
  • the service chain may also be created according to the multiple NF instances.
  • the service node is a service node that has been deployed in the network
  • the service being processed by the service node is directed to a pre-configured fail-safe data plane, and the fail-safe data is continued.
  • the plane continues to process; the network function is re-configured according to the obtained NF instance file, and after the network function configuration of the service node is completed, the service on the fail-safe data plane is redirected to the service. node.
  • the service node When the service node is located on the service chain, the service node is configured to be suspended, and the service chain of the service node is directly suspended, and a new service chain is created according to the obtained NF instance file, and then The suspended business continues to be processed by the new business chain.
  • the service of each service node on the service chain may be directed to a pre-configured fail-safe data plane, and the failure protection data plane continues to be processed; according to the obtained network function that satisfies each service node.
  • the required NF instance file is reconfigured for each service node to generate a new service chain; then, the service on the fail-safe data plane is redirected to the new service chain to ensure that the service chain is throughout the process Business will not be interrupted.
  • the method further includes: sending a configuration response message to the network management system; the configuration response message is used to notify the network management system whether network function configuration of the service node is completed.
  • the function of the configuration response message is to inform the network management system, that is, to notify the user of the processing result of the network function configuration process. If the NF instance that fully satisfies the network function requirement in the network function configuration request is selected and the configuration is completed, the feedback configuration is successful. If the NF instance that completely satisfies the requirement information in the network function configuration request is not selected, the network management system may feed back the configuration failure result, and may also feed back at least one implementation that is closest to the network function requirement, so that the user selects The right configuration.
  • the method for configuring the virtual network function when receiving the network function configuration request, searches for the network function of using different acceleration devices in the NF instance library according to the network function requirement of the service node in the network function configuration request.
  • the instance file is configured to perform network function on the service node according to the instance file.
  • the service node may be a service node newly joined to the network or a service node that has been deployed in the network and processes a certain service.
  • the network function can be configured according to the network function, and the dynamic configuration of the network function and the acceleration function of the network function can be realized, the time for configuring the network acceleration resource can be saved, the configuration efficiency can be improved, and the service interruption can be avoided.
  • FIG. 3 is a schematic structural diagram of an NF description table in a method for configuring a virtual network function according to an embodiment of the present invention.
  • the NF description table includes multiple NF description entries, and each entry includes an instance description. Characters (ie, a string of numbers in each entry in Figure 3)
  • Each instance descriptor is obtained by encoding the parameters of each NF instance, including NF instance type NF, device type D, and NF instance support.
  • the maximum capacity E the average processing batch value B, the device utilization U, the throughput T, and the like.
  • the maximum capability E may be a forwarding forwarding information table (English: forwarding information base, FIB for short), a firewall rule number, or a DPI rule number.
  • the instance descriptor may be an integer or a binary number as shown in FIG.
  • the code representing the NF instance type is located at the most significant bit of each instance descriptor (which can be one or more bits).
  • the NF description table may be composed of a plurality of sub-tables, and the code descriptors used to represent the instance types in the instance descriptors in each sub-table are the same, that is, the instance descriptors of the same type of NF are stored in the same sub-table.
  • NF instances there are four types of NF instances, namely firewall (represented by F), routing (represented by R), DPI (represented by D), and network address translation (English: Network Address Translation, referred to as: NAT, denoted by N).
  • the configuration manager is responsible for the generation of high-performance data planes and the configuration of fail-safe data planes, and controls the flow of traffic between software instances and hardware-accelerated instances. For each NF configuration request, the configuration manager accesses the NF description table and selects the appropriate NF instance to form a high performance data plane that meets the requirements. For example, when the NF configuration request includes network function requirements of multiple service nodes on a service chain, the configuration manager first selects all NFs in the service chain, for example, E F1 , E in FIG. 1 . R , E D , E F2 , indicating that traffic needs to pass through Firewall1, Routing, DPI, and Firewall2 on the service chain in turn, then the configuration manager needs to find the above four network functions.
  • the configuration management ensures that the selected NFs can have a target throughput (recorded as T) to support the maximum peak traffic, that is, the peak data amount (peak, denoted as P). Finally, in order to select the appropriate NFs, the configuration manager needs to comprehensively evaluate all input parameters.
  • FIG. 4 is a flowchart of selecting an NF instance that meets network function requirements in a method for configuring a virtual network function according to an embodiment of the present invention.
  • the network function configuration request includes network function requirements of each service node on the service chain, and target throughput and peak value of the service chain of the service chain.
  • the amount of data that is, the configuration request includes (E F1 , E R , E D , E F2 , P, T)
  • the network function requirement of each service node includes the request capability of the service node.
  • the specific process of sequentially obtaining an instance descriptor that satisfies the network function requirement of each service node in the service chain from the NF description table is as follows:
  • S201 Acquire, according to the service chain and the NF description table, a first instance descriptor set of network functions corresponding to each service node.
  • each NF sub-table is sequentially read to obtain an instance descriptor that is consistent with the network function of each service node (ie, meets the NF type in the network function requirement).
  • the first instance descriptor set described above is composed.
  • S202 Acquire, from a first instance descriptor set corresponding to each service node, a second instance descriptor set corresponding to the target throughput corresponding to each service node.
  • the first instance descriptor set corresponding to the service node is retrieved according to the semi-division method, and a second instance descriptor set that satisfies the target throughput is obtained.
  • the requirement for throughput is generally consistent, so the first instance descriptor set corresponding to each service node can be Search with the same target throughput.
  • the throughput T field is retrieved according to the semi-division method, and an instance descriptor that satisfies the target throughput is found (the satisfaction here is not limited to being completely equal, and may be Target swallow Within the range of 20% of the throughput, the 20% is the set value, which can be adjusted according to the actual situation) to form a second instance descriptor set.
  • S203 Acquire, in a second instance descriptor set corresponding to each service node, a third instance descriptor set with a maximum capability greater than a request capability of the service node.
  • a third instance descriptor set with a maximum capability greater than the request capability is obtained from the second instance descriptor set.
  • the meaning is that, for each service node, based on the selected second instance descriptor set, according to the request capability of the service node, the instance descriptor component with the retrieval capability E field higher than the request capability value corresponds to the service node.
  • the third instance descriptor set is obtained.
  • S204 Acquire, in a third instance descriptor set corresponding to each service node, a fourth instance descriptor set whose average processing batch value is greater than the peak data amount.
  • a fourth instance descriptor set whose average processing batch value is greater than the peak data amount is obtained from the third instance descriptor set corresponding to each service node.
  • the third instance descriptor set corresponding to each service node can be the same. The amount of peak data is retrieved.
  • the fourth instance descriptor set composed of the instance descriptors whose batch value B is larger than the peak data amount is selected according to the peak data amount P in the network function configuration request.
  • descriptor set corresponding to each service node acquire a network that satisfies the service node according to the utilization and/or priority of the acceleration resource of the network function corresponding to each instance descriptor.
  • An instance descriptor for a functional requirement is
  • the accelerator type D such as CPU, GPU, FPGA, etc.
  • the utilization U are selected, and if an appropriate NF description entry can be selected, the feedback selection is completed; There is no suitable NF description entry, the feedback is not completed, and the closest NF description entry is fed back.
  • Suitable here refers to: preferentially select the acceleration device with low utilization rate, or select according to the priority order of the acceleration device for each network function, and select the acceleration device with the best acceleration effect for each network function. .
  • the configuration manager accesses the NF instance library, obtains the NF instance file according to the selected instance descriptor, and constructs a high-performance data plane according to the NF instance file.
  • the configuration process also needs to configure routing so that the acceleration device (also called the accelerator) uses RAM communication (such as the message needs to traverse multiple different accelerators), and the same acceleration device can directly communicate without going through the RAM. (For example: Routing and DPI are implemented in the same accelerator GPU in Figure 1, without accessing RAM).
  • configuration The manager needs to generate a fail-safe data plane (one-to-one correspondence with the high-performance data plane).
  • the service of each service node on the service chain is directed to the pre-configured fail-safe data plane to continue execution; according to the obtained NF instance file that meets the network function requirements of each service node.
  • Reconfiguring each service node to generate a new service chain redirecting the service on the fail-safe data plane to the new service chain for execution, and completing network function configuration.
  • a specific configuration method provided in this embodiment can support the configuration of a single NF service node, and can also support the configuration of one or more service nodes on a service chain formed by multiple NFs.
  • the specified acceleration device is used for each node to enhance NF performance.
  • the system can support elastic extensions and can add NF instances and accelerators as needed.
  • adding a new NF instance you only need to add the NF instance to the NF instance library and add the corresponding entry in the NF descriptor table.
  • the configuration manager selects the NF instance and configures the NF. Example.
  • the configuration manager of the NFs redirects the traffic to the fail-safe data plane. After the reconfiguration is complete, the configuration manager redirects the traffic back to the high-performance data plane to implement the online network function on demand.
  • the service is not interrupted when the network function and the acceleration device are configured in accordance with the above method.
  • a complex optimization algorithm is not needed. Based on the multi-layer matching method, an appropriate NF instance can be selected online quickly and efficiently, and the entire process can automatically complete the acceleration device selection and configuration, saving time and effort.
  • FIG. 5 is a schematic structural diagram of a device for configuring a virtual network function according to an embodiment of the present invention. As shown in FIG. 5, the device 10 for configuring a virtual network function specifically includes:
  • the receiving module 11 is configured to receive a network function configuration request sent by the network management system, where the network function configuration request includes a network function requirement of the service node;
  • the processing module 12 is configured to obtain, from the network function NF instance library, an NF instance file that meets a network function requirement of the service node, where the NF instance library includes an instance file of each acceleration function based on each acceleration device;
  • the configuration module 13 is configured to perform network function configuration on the service node according to the obtained NF instance file.
  • the configuration device of the virtual network function provided in this embodiment is used to execute the technical solution of the foregoing method embodiment.
  • the implementation principle and the technical effect are similar.
  • the processing module searches the NF instance library. An example file that satisfies the requirements in the request, and then performs network function configuration on one or more service nodes or individual service nodes in the service chain, implements dynamic configuration of network functions and acceleration resources of network functions, and effectively saves network acceleration resource configuration. Time to improve configuration efficiency.
  • the processing module 12 is further configured to configure the NF instance library according to each service function and an image file of each acceleration device acquired in advance;
  • the NF instance library further includes an NF description table;
  • Said Each entry of the NF description table includes an instance descriptor for describing an instance file of a service function based on an acceleration device;
  • the instance descriptor includes at least one of a function type and the following parameters: acceleration device type, throughput, maximum capability, average processing batch value, and device utilization.
  • the receiving module 11 receives the network function requirement including at least one of a target throughput, a request capability, and a peak data amount.
  • processing module 12 is specifically configured to:
  • the network function configuration request includes a network function requirement of each service node in the service chain, and a target throughput and a peak data volume of the service chain.
  • the network function requirement of each service node includes the request capability of the service node; the processing module 12 is further configured to:
  • the configuration module 13 is specifically configured to:
  • the configuration module 13 is further configured to:
  • the configuration module can switch the execution of the ongoing service node or the service chain to the fail-safe data plane. After the configuration is complete, the switch can be switched back to avoid service interruption during the configuration process.
  • FIG. 6 is a schematic structural diagram of another apparatus for configuring a virtual network function according to an embodiment of the present invention.
  • the virtual network function configuration apparatus 10 further includes:
  • the sending module 14 is configured to send a configuration response message to the network management system, where the configuration response message is used to notify the network management system whether network function configuration is completed.
  • FIG. 7 is a schematic structural diagram of a configuration manager according to an embodiment of the present invention. As shown in FIG. 7, the configuration manager is specifically implemented as: a receiver, a processor, and a memory for storing cached content such as a program;
  • a receiver configured to receive a network function configuration request sent by the network management system, where the network function configuration request includes a network function requirement of the service node;
  • a processor configured to obtain, from the network function NF instance library, an NF instance file that meets a network function requirement of the service node, where the NF instance library includes an instance file for each service function based on each acceleration device;
  • the processor is further configured to perform function configuration on the service node according to the obtained NF instance file.
  • the processor is further configured to configure the NF instance library according to each service function and an image file of each acceleration device acquired in advance; wherein the NF instance library further includes an NF description table; Each entry of the table includes an instance descriptor for describing an instance file of a service function based on an acceleration device;
  • the instance descriptor includes at least one of a function type and the following parameters: acceleration device type, throughput, maximum capability, average processing batch value, and device utilization.
  • the receiver receives the network function requirement including at least one of a target throughput, a request capability, and a peak data amount.
  • processor is specifically configured to:
  • the network function configuration request includes a network function requirement of each service node on the service chain, and a target throughput and a peak data amount of the service chain
  • the network function requirement of each service node includes the request capability of the service node; the processor is further configured to:
  • processor is further specifically configured to:
  • the service on the fail-safe data plane is redirected to the service node.
  • the processor is further configured to:
  • the configuration manager provided in this embodiment is used to perform the technical solution of the foregoing method embodiment, and the implementation principle and technical effects are similar, and details are not described herein again.
  • FIG. 8 is a schematic structural diagram of still another configuration manager according to an embodiment of the present invention. As shown in FIG. 8, the configuration manager further includes:
  • a transmitter configured to send a configuration response message to the network management system, where the configuration response message is used to notify the network management system whether network function configuration is completed.
  • the configuration manager provided in this embodiment is used to perform the technical solution of the foregoing method embodiment, and the implementation principle and technical effects are similar, and details are not described herein again.
  • the processor may be a central processing unit (English: central processing unit, CPU for short), or other general-purpose processor, digital signal processor (English: digital signal Processor, referred to as: DSP), application-specific integrated circuit (English: application-specific integrated circuit, referred to as: ASIC).
  • the general purpose processor may be a microprocessor or any conventional processor, etc.
  • the foregoing memory may be a read-only memory (English: read-only memory, abbreviation: ROM), RAM, flash memory, hard disk or solid state hard disk. .
  • the steps of the method disclosed in the embodiments of the present invention may be directly implemented as a hardware processor, or may be performed by a combination of hardware and software modules in the processor.

Landscapes

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

Abstract

本发明提供一种虚拟网络功能的配置方法和装置,该方法包括:接收网管系统发送的网络功能配置请求,所述网络功能配置请求中包括业务节点的网络功能需求;从网络功能NF实例库中获取满足所述业务节点的网络功能需求的NF实例文件,其中,所述NF实例库中包含每个业务功能基于每种加速设备的实例文件;根据获取的NF实例文件对所述业务节点进行网络功能配置。本发明可以根据网络功能配置请求中的网络功能需求来对业务节点进行网络功能配置,能够有效提高网络功能的性能,实现网络功能的加速资源的动态配置。

Description

虚拟网络功能的配置方法和装置
本申请要求于2015年11月30日提交中国专利局、申请号为201510860808.1、发明名称为“虚拟网络功能的配置方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及计算机技术,尤其涉及一种虚拟网络功能的配置方法和装置。
背景技术
现代网络越来越依赖于各种网络处理功能,例如安全(防火墙、入侵检测系统等),流量整形(负载均衡),网络地址转换,提高网络应用程序的性能(流量加速器、缓存、代理)等等。具有这些功能的网络设备已成为关键的网络基础设施,对于网络适应性能,安全性,和政策法规遵循需求至关重要。
由于专业设备很难改变功能以适应不断变化的流量需求,网络功能虚拟化(英文:Network Function Virtualization,简称:NFV)引领网络进入虚拟化的新时代。网络功能虚拟化通过软件来实现网络功能,可以运行在各种标准服务器硬件上,可以根据需要在不同网络位置移动、实例化,而不需要安装新设备,即使用通用平台(通用服务器、存储、交换机)来代替专用的网络设备,通过软件来提供不同的网络处理功能,并通过与硬件加速器,图形处理器(英文:Graphics Processing Unit,简称:GPU)和现场可编程门阵列(英文:Field-Programmable Gate Array,简称:FPGA))等的配合来提高网络功能的性能。
然而,上述方式中,所述通用平台只能选择其中一种加速器进行加速,并且一旦选择了某种加速器,在使用过程中不能再改用其他的加速器。
发明内容
本发明实施例提供一种虚拟网络功能的配置方法和装置,用于解决现有技术中通用平台使用的加速器在使用过程中不能变更的问题。
本发明第一方面提供一种虚拟网络功能的配置方法,包括:
接收网管系统发送的网络功能配置请求,所述网络功能配置请求中包括业务节点的网络功能需求;
从网络功能NF实例库中获取满足所述业务节点的网络功能需求的NF实例文件,其中,所述NF实例库中包含每个业务功能基于每种加速设备的实例文件;
根据获取的所述NF实例文件对所述业务节点进行网络功能配置。
本方案中的业务链,并不限于单个业务节点的网络功能,该配置方法也适用于业务链上的多个业务节点的配置,即可以只对一个业务节点的网络功能进行配置,也可以针对两个或两个以上的业务节点的网络功能按照上述方式进行动态的配置。
本方案可以在业务链使用过程中,通过网络功能的需求信息的改变,在实例库中查找使用不同加速设备的网络功能,对业务链重新配置有效提高网络功能的性能,实现网络功能的加速资源的动态配置。
在一种具体实现方式中,所述NF实例库还包括NF描述表;所述NF描述表的每个表项包括一个实例描述符,所述实例描述符用于描述一个业务功能基于一个加速设备的实例文件;
所述实例描述符包括功能类型以及以下参数中的至少一个:加速设备类型、吞吐量、最大能力、平均处理批量值和设备利用率。
为实现对各业务功能的加速资源的动态配置,需要在整个系统中设置多种硬件加速器,也称为加速设备,例如:MIPS、GPU、FPGA、CPU等,并且需要配置与现有技术不同的新的虚拟网络功能的实例库,即上述NF实例库,该实例库中包括了每个网络功能对应每种加速设备的实例,并包括每个该种实例的实例描述符,一种具体实现方式是:将该些实例描述符以及对应的实例映射在NF描述表中,用于在配置的过程中进行查询。
可选的,也可以将同一种NF对应的各种加速设备的实例描述符存储在一个子表中,即不同的子表代表不同的NF;另外使用实例描述符的方式只是其中一种实现方式,也可以根据其他方式将该NF实例库中的每个实例进行区别,例如:对每个实例进行编号、命名等方式进行区别即可。对此本申请不做限制,可以根据实际实现环境进行配置。
另外,该实例描述符至少应该能够表示出是什么类型的网络功能,以及对应的加速设备的类型或者性能等。
本方案提供了一种NF实例库的具体实现方式,通过使用NF描述表存储所有的NF实例的实例描述符,对每个实例进行映射,可以在业务链使用过程中,接收到网络功能配置请求后,根据网络功能需求查询该NF描述表,根据查找的实例描述符在实例库中快速查找到符合要求的网络功能的实例,对业务链重新配置有效提高网络功能的性能,实现网络功能的加速资源的动态配置。
在另一种具体实现方式中,所述网络功能需求包括目标吞吐量、请求能力、峰值数据量中的至少一个。
结合上述的实现方式,该网络功能需求需要明确需要配置后的网络功能满足什么样的需要,因此至少需要一种性能参数来做判断。
进一步地,在又一种具体实现方式中,所述从网络功能NF实例库中获取满足所述业务节点的网络功能需求的NF实例文件,包括:
从所述NF描述表中获取包括满足所述网络功能需求的实例描述符的NF描述表项;
根据所述获取到的NF描述表项,从所述NF实例库中的实例文件中获取满足所述网络功能需求的NF实例文件。
上述方案的含义是,根据网络功能需求中的性能要求,查询上述的一种实现方式中的NF描述表,获得能够满足该需要的实例描述符,然后从实例库中找出选择出的实例描述符对应的NF实例。该具体实现方式的实现比较简单,能够在具体配置过程中提高处理效率。
进一步地,当所述业务节点位于一条业务链,所述网络功能配置请求包括所述业务链上每个业务节点的网络功能需求,以及所述业务链的目标吞吐量和峰值数据量,所述每个业务节点的网络功能需求包括所述业务节点的请求能力;所述方法还包括:
按照所述业务链和所述NF描述表,依次获取每个业务节点对应的网络功能的第一实例描述符集合;
从每个业务节点对应的第一实例描述符集合中,获取每个业务节点对应的满足所述目标吞吐量的第二实例描述符集合;
在每个业务节点对应的第二实例描述符集合中,获取最大能力大于所述业务节点的请求能力的第三实例描述符集合;
在每个业务节点对应的第三实例描述符集合中,获取平均处理批量值大于所述峰值数据量的第四实例描述符集合;
在每个业务节点对应的所述第四实施例描述符集合中,根据每个实例描述符对应的网络功能的加速资源的利用率和/或优先级,获取满足所述业务节点的网络功能需求的实例描述符。
进一步地,当所述业务节点位于业务链上时,所述根据获取的NF实例文件对所述业务节点进行网络功能配置包括:
将所述业务链上的每个业务节点的业务定向到预先配置的失效保护数据平面上,由所 述失效保护数据平面继续处理;
根据获取到的满足每个所述业务节点的网络功能需求的NF实例文件对所述业务链上的每个业务节点重新配置,生成新的业务链;
将所述失效保护数据平面上的业务重新定向到所述新的业务链上。
上述两个方案综合提供了一种网络功能的具体配置过程,在接收到网络功能配置请求之后,需要根据其中的需求信息去获取合适的NF实例,常用的情况是该需求信息中包括目标吞吐量、请求能力和峰值数据量等性能要求,上述方案只是提供一种方式,按照NF类型、吞吐量、能力、处理批量大小、加速器类型和利用率的顺序进行选择,实际上,在具体实现中可以根据任何顺序去处理,只要最终选择的NF实例满足所有的需求即可,并不限于上述一种实现顺序。
可选的,对于单个业务节点根据获取的NF实例文件对所述业务节点进行网络功能配置,包括:
将所述业务节点正在处理的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续执行;
根据获取到的满足所述业务节点的网络功能需求的NF实例文件对所述业务节点重新进行网络功能配置;
当所述业务节点的网络功能配置完成后,将所述失效保护数据平面上的业务重新定向到所述业务节点上。
在选择完NF实例库之后,具体配置过程中,为了保证业务不中断,不能直接结束当前正在执行的业务,可以将该业务链上的每个业务定向到失效保护数据平面上继续执行,这里提到的失效数据保护平面可以是已经配置的备用的硬件,也可以是根据该业务链上的每个节点的网络功能生成的数据平面,要求与业务链上的每个节点的业务功能一一对应,这样在具体配置过程中,将当前的业务定向到预先获取到的失效数据保护平面上继续执行,然后根据获取到的满足要求的NF实例构建新的高性能的数据平面,即对每个业务节点重新进行配置,生成新的业务链,再将业务定向回该新的业务链上进行执行,完成配置。
该种配置方案可以支持多个NF组成的服务链、即业务链,能够利用硬件的加速设备增强NF性能的功能,并且该NF实例库是弹性可扩展的,获取合适的NF实例可根据多层匹配的方法,可以快速有效的在线选择合适的NF实例,自动完成加速资源的选择及配置,省时省力。
在上述任一种实现方式的基础上,所述方法还包括:
向所述网管系统发送配置响应消息;所述配置响应消息用于通知所述网管系统是否完成网络功能配置。
无论是否选择到合适的NF实例,都可以向网管系统发送对应的反馈信息,即上述配置响应消息,反馈配置完成或者未完成,也可以反馈最接近的NF实例的性能参数或者实例描述符,以供用户选择。
在之前任一实施例的基础上,进一步的,所述接收网络功能配置请求之前,所述方法还包括:
根据各业务功能以及预先获取的每种加速设备的镜像文件配置所述NF实例库。
为了实现对业务链的上各节点网络功能的动态配置,需要预先建立NF实例库,该NF实例库可以建立在通用服务器中,另外还需要各种类型的硬件加速器,即加速设备,需要根据预先获取的镜像文件进行配置,这个实例可以是预编译的二进制文件,也可以是布局布线后的二进制文件,为了能够根据选择出的NF实例配置新的高性能的业务链,每个NF实例应该明确定义相同的应用程序编程接口(英文:Application Programming Interface,简称:API)。
本发明第二方面提供一种虚拟网络功能的配置装置,包括:
接收模块,用于接收网管系统发送的网络功能配置请求,所述网络功能配置请求中包括业务节点的网络功能需求;
处理模块,用于从网络功能NF实例库中获取满足所述业务节点的网络功能需求的NF实例文件,其中,所述NF实例库中包含每个业务功能基于每种加速设备的实例文件;
配置模块,用于根据获取的所述NF实例文件对所述业务节点进行网络功能配置。
进一步地,所述处理模块还用于根据每个业务功能以及预先获取的每种加速设备的镜像文件配置所述NF实例库;所述NF实例库还包括NF描述表;所述NF描述表的每个表项包括一个实例描述符,所述实例描述符用于描述一个业务功能基于一个加速设备的实例文件;
所述实例描述符包括功能类型以及以下参数中的至少一个:加速设备类型、吞吐量、最大能力、平均处理批量值和设备利用率。
进一步地,所述网络功能需求包括目标吞吐量、请求能力、峰值数据量中的至少一个。
进一步地,所述处理模块具体用于:
从所述NF描述表中获取包括满足所述网络功能需求的实例描述符的NF描述表项;
根据所述获取到的NF描述表项,从所述NF实例库中的实例文件中获取满足所述网 络功能需求的NF实例文件。
进一步地,当所述业务节点位于一条业务链,所述网络功能配置请求包括所述业务链上每个业务节点的网络功能需求,以及所述业务链的目标吞吐量和峰值数据量,所述每个业务节点的网络功能需求包括所述业务节点的请求能力;所述处理模块还用于:
按照所述业务链和所述NF描述表,依次获取每个业务节点对应的网络功能的第一实例描述符集合;
从每个业务节点对应的第一实例描述符集合中,获取每个业务节点对应的满足所述目标吞吐量的第二实例描述符集合;
在每个业务节点对应的第二实例描述符集合中,获取最大能力大于所述业务节点的请求能力的第三实例描述符集合;
在每个业务节点对应的第三实例描述符集合中,获取平均处理批量值大于所述峰值数据量的第四实例描述符集合;
在每个业务节点对应的所述第四实施例描述符集合中,根据每个实例描述符对应的网络功能的加速资源的利用率和/或优先级,获取满足所述业务节点的网络功能需求的实例描述符。
进一步地,当所述业务节点位于业务链上时,所述配置模块还用于:
将所述业务链上的每个业务节点的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续处理;
根据获取到的满足每个所述业务节点的网络功能需求的NF实例文件对所述业务链上的每个业务节点重新配置,生成新的业务链;
将所述失效保护数据平面上的业务重新定向到所述新的业务链上。
可选的,所述配置模块具体用于:
将所述业务节点正在处理的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续执行;
根据获取到的满足所述业务节点的网络功能需求的NF实例文件对所述业务节点重新进行网络功能配置;
当所述业务节点的网络功能配置完成后,将所述失效保护数据平面上的业务重新定向到所述业务节点上。
进一步地,所述装置还包括:
发送模块,用于向所述网管系统发送配置响应消息;所述配置响应消息用于通知所述 网管系统是否完成网络功能配置。
本发明第三方面提供一种用于实现上述虚拟网络功能的配置方法的配置管理器,具体包括:接收器、处理器和用于存储程序等缓存内容的存储器;
接收器,用于接收网管系统发送的网络功能配置请求,所述网络功能配置请求中包括业务节点的网络功能需求;
处理器,用于从网络功能NF实例库中获取满足业务节点的网络功能需求的NF实例文件,其中,所述NF实例库中包含每个业务功能基于每种加速设备的实例文件;
所述处理器还用于根据获取的NF实例文件对业务节点进行功能配置。
进一步地,所述处理器还用于根据每个业务功能以及预先获取的每种加速设备的镜像文件配置所述NF实例库;其中,所述NF实例库还包括NF描述表;所述NF描述表的每个表项包括一个实例描述符,所述实例描述符用于描述一个业务功能基于一个加速设备的实例文件;
所述实例描述符包括功能类型以及以下参数中的至少一个:加速设备类型、吞吐量、最大能力、平均处理批量值和设备利用率。
接收器接收到所述网络功能需求包括目标吞吐量、请求能力、峰值数据量中的至少一个。
进一步地,所述处理器具体用于:
从所述NF描述表中获取包括满足所述网络功能需求的实例描述符的NF描述表项;
根据所述获取到的NF描述表项,从所述NF实例库中的实例文件中获取满足所述网络功能需求的NF实例文件。
进一步地,当所述业务节点位于一条业务链,所述网络功能配置请求包括所述业务链上每个业务节点的网络功能需求,以及所述业务链的目标吞吐量和峰值数据量,所述每个业务节点的网络功能需求包括所述业务节点的请求能力;所述处理器还用于:
按照所述业务链和所述NF描述表,依次获取每个业务节点对应的网络功能的第一实例描述符集合;
从每个业务节点对应的第一实例描述符集合中,获取每个业务节点对应的满足所述目标吞吐量的第二实例描述符集合;
在每个业务节点对应的第二实例描述符集合中,获取最大能力大于所述业务节点的请求能力的第三实例描述符集合;
在每个业务节点对应的第三实例描述符集合中,获取平均处理批量值大于所述峰值数 据量的第四实例描述符集合;
在每个业务节点对应的所述第四实施例描述符集合中,根据每个实例描述符对应的网络功能的加速资源的利用率和/或优先级,获取满足所述业务节点的网络功能需求的实例描述符。
进一步地,所述处理器还具体用于:
将所述业务节点正在处理的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续执行;
根据获取到的满足所述业务节点的网络功能需求的NF实例文件对所述业务节点重新进行网络功能配置;
当所述业务节点的网络功能配置完成后,将所述失效保护数据平面上的业务重新定向到所述业务节点上。
可选的,当所述业务节点位于业务链上时,所述处理器还用于:
将所述业务链上的每个业务节点的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续处理;
根据获取到的满足每个所述业务节点的网络功能需求的NF实例文件对所述业务链上的每个业务节点重新配置,生成新的业务链;
将所述失效保护数据平面上的业务重新定向到所述新的业务链上。
进一步地,发送器,用于向所述网管系统发送配置响应消息;所述配置响应消息用于通知所述网管系统是否完成网络功能配置。
另外,本发明还提供一种可弹性扩展的网络功能的加速设备可配置的系统架构,由通用的服务器和多个加速设备组成,该通用的服务器中设置有用户执行上述技术方案配置管理器、NF实例库等。
本发明提供的虚拟网络功能的配置方法和装置,通过接收到的网管系统发送的网络功能配置请求,从网络功能NF实例库中获取满足各业务节点的网络功能需求的NF实例文件,其中,所述NF实例库中包含各业务功能基于每种加速设备的实例文件,并根据获取的NF实例文件对各业务节点进行功能配置。所述业务节点可以是新加入网络的业务节点或已经部署在网络中且处理某种业务的业务节点。本发明可以根据网络功能配置请求中的网络功能需求来对业务节点进行网络功能配置,能够有效提高网络功能的性能,实现网络功能的加速资源的动态配置。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图做一简单地介绍。
图1为本发明实施例提供的可实现NF配置的系统架构示意图;
图2为本发明实施例提供的虚拟网络功能的配置方法的流程图;
图3为本发明实施例提供的虚拟网络功能的配置方法中NF描述表的结构示意图;
图4为本发明实施例提供的虚拟网络功能的配置方法中选择符合网络功能需求的NF实例的流程图;
图5为本发明实施例提供的虚拟网络功能的配置装置的结构示意图;
图6为本发明实施例提供的又一虚拟网络功能的配置装置的结构示意图;
图7为本发明实施例提供的配置管理器的结构示意图;
图8为本发明实施例提供的又一配置管理器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
图1为本发明实施例提供的可实现NF配置的系统架构示意图,该系统架构是一种可弹性扩展的硬件加速NFV结构,由通用服务器和用于加速的硬件设备(即硬件加速器,例如:图中示出的CPUs,MICs,GPUs,FPGAs)组成。本架构中示出了广域网络中最常见的三种网络功能:路由、防火墙和深层报文解析(英文:Deep Packet Inspection,简称:DPI)。该架构支持NFs及加速设备的扩展,并且支持按需在线重配置。
如图1所示,该系统架构包含:a)、NF实例库;b)、配置管理器;c)、根据配置请求从NF实例库选择出的符合要求的NF实例建立的高性能数据平面和d)、用于重配置的失效数据保护平面。NF实例库包括所有NF实例,包含软件实例及基于硬件加速的实例。这些实例可以是预编译的二进制文件(支持CPU,MICs及GPU),或布局布线(英文:placement and routing)后的二进制文件(支持FPGA,可以直接下载到FPGA),另外NF实例库和本发明中的一种具体实现方案中用NF描述表项映射NF实例时,可以如图1所示将该NF描述表项跟NF实例存储在相同的存储空间,也可以分别存储,对此本发明不做限制。为了使配置管理器能够调用NF实例生成高性能数据平面,每个NF实例应该明确定义相同的应用程序编程接口(英文:Application Programming Interface,简称:API), 此外,每一个NF实例都对应一个可以被配置管理器访问的NF描述表项。
配置管理器接收来自于网管系统(能够被用户操作,输入相关需求的系统,可以是单独的设备、也可以是该通用服务器中安装的系统)发送的网络功能配置请求,该网络功能配置请求包括至少一个业务节点的网络功能需求。示例性地,该网络功能需求为图1中示出的EF1,ER,ED,EF2,P以及T,其中,EF1表示Firewall1的最大能力,ER表示Routing的最大能力,ED表示DPI的最大能力,EF2表示Firewall2的最大能力P表示峰值数据量,T表示目标吞吐量;配置管理器根据该网络功能需求在NF描述表中获取包括满足所述网络功能需求的实例描述符的NF描述表项,再根据所述NF描述表项从所述NF实例库中获取对应的实例文件,所述实例文件能够满足所述网络功能需求。然后所述配置管理器创建新的高性能数据平面,并从当前使用的高性能数据平面切换到所述新的高性能数据平面。
另外,图1中的随机存取存储器(英文:random access memory,简称:RAM)用于实现不同的加速设备之间的通信,网络适配器(英文:Network Interface Card,简称:NIC)用于将该系统与网络进行连接,在具体的实现中业务数据从网络中通过NIC进入各业务节点实现不同的网络功能,再通过NIC进入网络。
下面基于图1所示的架构对该虚拟网络功能的配置方法进行详细说明。
图2为本发明实施例提供的虚拟网络功能的配置方法的流程图,该方案的执行主体为上述的配置管理器,如图2所示,该虚拟网络功能的配置方法的具体实现步骤如下。
S101:接收网管系统发送的网络功能配置请求,所述网络功能配置请求中包括业务节点的网络功能需求。
其中,所述业务节点可以是新加入网络的业务节点,也可以是已经部署在网络中的正在处理业务的业务节点,也适用于某个业务链上的某一个业务节点或者整个业务链的所有节点。
在本步骤之前,需要根据各业务功能以及预先获取的每种加速设备的镜像文件配置NF实例库,所述NF实例库中包含每个业务功能基于每种加速设备的实例文件;可选的,NF实例库还可以包括NF描述表;所述NF描述表中的每个表项包括一个实例描述符,所述实例描述符用于描述每种业务功能基于每种加速设备的实例文件;另外,该NF描述表也可以存储在其他位置,在需要查询的时候进行访问。每个实例描述符包括功能类型以及加速设备类型、吞吐量、最大能力、平均处理批量值和设备利用率中的至少一个。
对应于上述的每个NF实例的实例描述符,该网络功能配置请求中可以包括所述业务 节点的功能类型以及以下参数中的至少一个:加速设备类型、吞吐量、最大能力、平均处理批量值、设备利用率中的至少一个参数。
所述网络功能配置请求中可以包括一个业务节点的网络功能需求,也可以包括多个业务节点的网络功能需求。
S102:从网络功能NF实例库中获取满足所述业务节点的网络功能需求的NF实例文件。
在本步骤中,一种具体的实现方式是:配置管理器根据所述NF描述表和所述业务节点的网络功能需求,从所述NF描述表中获取包括满足所述业务节点的网络功能需求的实例描述符的NF描述表项;然后根据所述获取到的NF描述表项,从所述NF实例库中的实例文件中获取满足所述网络功能需求的NF实例文件。本方案中的网络功能的实例文件指的是实现该网络功能的程序以及配置文件,或实现不同加速设备功能以及该网络功能的程序以及配置文件。
当所述网络功能配置请求中包括多个业务节点的网络功能需求时,可以按照所述多个业务节点的顺序逐一获取满足每个业务节点的网络功能需求的NF实例,也可以同时获取每个业务节点的网络功能需求对应的NF实例。当获取到满足每个业务节点的网络功能需求的NF实例后,还可以根据所述多个NF实例创建业务链。
S103:根据获取的NF实例文件对所述业务节点进行功能配置。
在本步骤中,优选的,如果所述业务节点是已经部署在网络中的业务节点,将所述业务节点正在处理的业务定向到预先配置的失效保护数据平面上继续,由所述失效保护数据平面继续处理;根据获取到的NF实例文件对所述业务节点重新进行网络功能配置,当所述业务节点的网络功能配置完成后,将所述失效保护数据平面上的业务重新定向到所述业务节点。
当所述业务节点位于业务链上时,对所述业务节点进行功能配置,可以是直接将所述业务节点所在的业务链的业务暂停,根据获取到的NF实例文件创建新的业务链,然后由新的业务链继续处理所述暂停的业务。
类似的,可以将所述业务链上的每个业务节点的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续处理;根据获取到的满足每个业务节点的网络功能需求的NF实例文件对每个业务节点重新配置,生成新的业务链;然后,将所述失效保护数据平面上的业务重新定向到所述新的业务链上保证在整个过程中,业务链的业务不会中断。
可选的,所述方法还包括:向所述网管系统发送配置响应消息;所述配置响应消息用于通知所述网管系统是否完成所述业务节点的网络功能配置。
该配置响应消息的作用是向网管系统,也即向用户通知该网络功能配置过程的处理结果,如果选择到了完全满足网络功能配置请求中网络功能需求的NF实例,并完成了配置,反馈配置成功的结果;如果没有选择到完全满足网络功能配置请求中需求信息的NF实例,可以向网管系统反馈配置失败的结果,还可以反馈最接近所述网络功能需求的至少一种实现,以便用户选择较为合适的配置方案。
本实施例提供的虚拟网络功能的配置方法,当收到网络功能配置请求时,根据所述网络功能配置请求中的业务节点的网络功能需求,在NF实例库中查找使用不同加速设备的网络功能的实例文件,根据所述实例文件对所述业务节点进行网络功能配置。所述业务节点可以是新加入网络的业务节点或已经部署在网络中且处理某种业务的业务节点。通过上述方式,可以根据网络功能配置请求中的网络功能需求,实现网络功能以及网络功能的加速资源的动态配置,有效节省网络加速资源配置的时间,提高配置效率,并且可以避免业务中断。
在上述实施例的基础上,下面提供一种具体的实现方式,对本发明提供的虚拟网络功能的配置方法进行具体说明:
图3为本发明实施例提供的虚拟网络功能的配置方法中NF描述表的结构示意图,如图3所示,所述NF描述表包括多个NF描述表项,每个表项包括一个实例描述符(即图3中的每个表项里的一串数字)每个实例描述符由对每个NF实例的参数进行编码得到,所述参数包括NF实例类型NF,设备类型D,NF实例支持的最大能力E,平均处理批量值B,设备利用率U,吞吐量T等。其中,最大能力E可以是路由转发信息表(英文:forwarding information base,简称:FIB)项数,防火墙规则数或DPI规则数。所述实例描述符可以是一个整数,也可以是图3所示的二进制数。表示NF实例类型的编码位于每个实例描述符的最高有效位(可以是一位或者多位)。所述NF描述表可以由多个子表组成,每个子表中的实例描述符中用于表示实例类型的编码相同,即同一类型的NF的实例描述符存储在同一子表中。
在图3中,总共有四种NF实例类型,分别为防火墙(用F表示),路由(routing,用R表示),DPI(用D表示)以及网络地址转换(英文:Network Address Translation,简称:NAT,用N表示)。所述N的描述表的大小由具有最多实例数的NF决定,如某个系统中有32个Routing实例、16个DPI实例、12个Firewall实例及7个NAT实例,则该系统的 NF描述表的大小为4x32=128个。其中,4表示所述系统支持的实例的个数。
配置管理器负责高性能数据平面的生成和失效保护数据平面的配置,并控制软件实例和硬件加速实例之间的流量路由。对于每个NF配置请求,配置管理器访问NF描述表,选择合适的NF实例构成满足需求的高性能数据平面。例如,当NF配置请求中包括了一个业务链上的多个业务节点的网络功能需求时,则所述配置管理器首先要选择所述业务链中所有的NFs,例如图1中EF1,ER,ED,EF2,表示流量需要依次通过业务链上的Firewall1,Routing,DPI,Firewall2,那么配置管理器需要找到上述4个网络功能。其次,所述配置管理要保证选择的NFs可以目标吞吐量(throughput,记为T),以支持最大高峰流量,即峰值数据量(peak,记为P)。最后,为了选择适当的NFs,所述配置管理器需要综合评估所有输入参数。
图4为本发明实施例提供的虚拟网络功能的配置方法中选择符合网络功能需求的NF实例的流程图。如图4所示,当业务节点位于一条业务链,且所述网络功能配置请求包括所述业务链上每个业务节点的网络功能需求,以及所述业务链的业务链的目标吞吐量和峰值数据量,即配置请求中包括(EF1,ER,ED,EF2,P,T),所述每个业务节点的网络功能需求包括所述业务节点的请求能力。则根据所述NF描述表和所述各业务节点的网络功能需求,依次从所述NF描述表中获取满足所述业务链上每个业务节点的网络功能需求的实例描述符的具体流程如下:
S201:按照所述业务链和所述NF描述表,依次获取每个业务节点对应的网络功能的第一实例描述符集合。
在该方案中,首先,按照业务链上每个节点的网络功能,依次读取各个NF子表,获取与每个业务节点的网络功能一致(即满足网络功能需求中NF种类)的实例描述符组成上述的第一实例描述符集合。
S202:从每个业务节点对应的第一实例描述符集合中,获取每个业务节点对应的满足所述目标吞吐量的第二实例描述符集合。
在本步骤中,针对每个业务节点,按照半分法检索该业务节点对应的第一实例描述符集合,获取满足所述目标吞吐量的第二实例描述符集合。在该方案中,由于每个业务节点属于同一个业务链,连续处理相同的业务,因此一般情况下对于吞吐量的需求是一致的,因此在每个业务节点对应的第一实例描述符集合可以采用同样的目标吞吐量进行检索。
进一步的,在上述第二实例描述符集合中的子表中,按照半分法检索吞吐量T字段,找到满足该目标吞吐量的实例描述符(这里的满足并不限制为完全相等,可以是该目标吞 吐量上下20%的范围内,该20%为设置的值,可以根据实际情况进行调整)组成第二实例描述符集合。
S203:在每个业务节点对应的第二实例描述符集合中,获取最大能力大于所述业务节点的请求能力的第三实例描述符集合。
在本步骤中,从所述第二实例描述符集合中获取最大能力大于所述请求能力的第三实例描述符集合。其含义是针对每个业务节点,基于上述选择出的第二实例描述符集合,按照对该业务节点的请求能力,检索能力E字段比请求能力的值高的实例描述符组成与该业务节点对应的第三实例描述符集合。
S204:在每个业务节点对应的第三实例描述符集合中,获取平均处理批量值大于所述峰值数据量的第四实例描述符集合。
在本步骤中,根据所述峰值数据量,从每个业务节点对应的所述第三实例描述符集合中获取平均处理批量值大于所述峰值数据量的第四实例描述符集合。同样的,由于每个业务节点属于同一个业务链,连续处理相同的业务,因此一般情况下峰值数据量的需求是一致的,因此在每个业务节点对应的第三实例描述符集合可以采用同样的峰值数据量进行检索。
即基于上步选择出的第三实例描述符集合,根据网络功能配置请求中的峰值数据量P,选择批量值B大于所述峰值数据量的实例描述符组成的第四实例描述符集合。
S205:在每个业务节点对应的所述第四实施例描述符集合中,根据每个实例描述符对应的网络功能的加速资源的利用率和/或优先级,获取满足所述业务节点的网络功能需求的实例描述符。
进一步的,基于步骤S204选择出的第四实例描述符集合,选择加速器类型D(如CPU、GPU及FPGA等)和利用率U,如果可以选出合适的NF描述表项,反馈选择完成;如果没有合适的NF描述表项,反馈未完成,反馈最接近的NF描述表项。这里的合适指的是:优先选择利用率低的加速设备,或者根据预先设置的对每个网络功能的加速设备的优先级顺序进行选择,选出对每个网络功能加速效果最好的加速设备。
完成实例描述符选择后,配置管理器访问NF实例库,根据选择出的实例描述符获得NF实例文件,根据所述NF实例文件构建高性能数据平面。配置过程,还需要配置路由,使得加速设备(也称为加速器)之间使用RAM通信(如报文需要穿越多个不同加速器情况),而针对相同的加速设备可直接进行通信,不需要经过RAM(例如:在图1中在同样的加速器GPU中实现路由和DPI,不需要访问RAM)。最后,为了在线按需重配置,配置 管理器需要生成失效保护数据平面(与高性能数据平面一一对应)。用于在具体配置过程中,将所述业务链上的每个业务节点的业务定向到预先配置的失效保护数据平面上继续执行;根据获取到的满足各业务节点的网络功能需求的NF实例文件对每个业务节点重新配置,生成新的业务链;将所述失效保护数据平面上的业务重新定向到所述新的业务链上执行,完成网络功能配置。
本实施例提供的一种具体的配置方法,基于图1所示的架构,可以支持单个NF业务节点的配置,也可以支持多个NFs组成业务链上的一个或多个业务节点的配置,通过对各节点采用指定的加速设备来增强NF性能。
该体系可以支持弹性扩展,可以根据需要增加NF实例和加速器。增加新的NF实例时,只需要将NF实例增加到NF实例库,并在NF描述符表中增加相应的表项,当新的NF配置请求到达时,配置管理器选择NF实例,并配置NF实例。在重配置过程中,NFs的配置管理器将流量重定向到失效保护数据平面,当重新配置完成后,配置管理器将流量重定向回高性能数据平面,实现在线的网络功能按需配置。
另外,在按照上述的方法配置网络功能及加速设备时业务不中断。在选择新的网络功能实例过程中,不需要复杂优化算法,基于多层匹配的方法,可以快速有效的在线选择合适的NF实例,整个过程可自动化完成加速设备选择及配置,省时省力。
图5为本发明实施例提供的虚拟网络功能的配置装置的结构示意图,如图5所示,该虚拟网络功能的配置装置10具体包括:
接收模块11,用于接收网管系统发送的网络功能配置请求,所述网络功能配置请求中包括业务节点的网络功能需求;
处理模块12,用于从网络功能NF实例库中获取满足所述业务节点的网络功能需求的NF实例文件,其中,所述NF实例库中包含每个业务功能基于每种加速设备的实例文件;
配置模块13,用于根据获取的所述NF实例文件对所述业务节点进行网络功能配置。
本实施例提供的虚拟网络功能的配置装置,用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,当接收模块接收到网络功能配置请求时,处理模块在NF实例库中查找满足请求中的需求的示例文件,然后对业务链上的一个或多个业务节点或者单独的业务节点进行网络功能配置,实现网络功能以及网络功能的加速资源的动态配置,有效节省网络加速资源配置的时间,提高配置效率。
在上述实施例的基础上,所述处理模块12还用于根据每个业务功能以及预先获取的每种加速设备的镜像文件配置所述NF实例库;所述NF实例库还包括NF描述表;所述 NF描述表的每个表项包括一个实例描述符,所述实例描述符用于描述一个业务功能基于一个加速设备的实例文件;
所述实例描述符包括功能类型以及以下参数中的至少一个:加速设备类型、吞吐量、最大能力、平均处理批量值和设备利用率。
可选的,所述接收模块11接收到所述网络功能需求包括目标吞吐量、请求能力、峰值数据量中的至少一个。
进一步的,所述处理模块12具体用于:
从所述NF描述表中获取包括满足所述网络功能需求的实例描述符的NF描述表项;
根据所述获取到的NF描述表项,从所述NF实例库中的实例文件中获取满足所述网络功能需求的NF实例文件。
可选的,当所述业务节点位于一条业务链,所述网络功能配置请求包括所述业务链上每个业务节点的网络功能需求,以及所述业务链的目标吞吐量和峰值数据量,所述每个业务节点的网络功能需求包括所述业务节点的请求能力;所述处理模块12还用于:
按照所述业务链和所述NF描述表,依次获取每个业务节点对应的网络功能的第一实例描述符集合;
从每个业务节点对应的第一实例描述符集合中,获取每个业务节点对应的满足所述目标吞吐量的第二实例描述符集合;
在每个业务节点对应的第二实例描述符集合中,获取最大能力大于所述业务节点的请求能力的第三实例描述符集合;
在每个业务节点对应的第三实例描述符集合中,获取平均处理批量值大于所述峰值数据量的第四实例描述符集合;
在每个业务节点对应的所述第四实施例描述符集合中,根据每个实例描述符对应的网络功能的加速资源的利用率和/或优先级,获取满足所述业务节点的网络功能需求的实例描述符。
可选的,所述配置模块13具体用于:
将所述业务节点正在处理的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续执行;
根据获取到的满足所述业务节点的网络功能需求的NF实例文件对所述业务节点重新进行网络功能配置;
当所述业务节点的网络功能配置完成后,将所述失效保护数据平面上的业务重新定向 到所述业务节点上。
可选的,当所述业务节点位于业务链上时,所述配置模块13还用于:
将所述业务链上的每个业务节点的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续处理;
根据获取到的满足每个所述业务节点的网络功能需求的NF实例文件对所述业务链上的每个业务节点重新配置,生成新的业务链;
将所述失效保护数据平面上的业务重新定向到所述新的业务链上。
本方案中配置模块可以将正在进行的业务节点或者业务链的执行切换至失效保护数据平面上,配置完成后再切换回来,可以避免配置过程中业务中断。
本实施例提供的虚拟网络功能的配置装置,用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。
图6为本发明实施例提供的又一虚拟网络功能的配置装置的结构示意图,如图6所示,在上述实施例的基础上,该虚拟网络功能的配置装置10还包括:
发送模块14,用于向所述网管系统发送配置响应消息;所述配置响应消息用于通知所述网管系统是否完成网络功能配置。
本实施例提供的虚拟网络功能的配置装置,用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。
图7为本发明实施例提供的配置管理器的结构示意图;如图7所示,该配置管理器具体被实现为:接收器、处理器和用于存储程序等缓存内容的存储器;
接收器,用于接收网管系统发送的网络功能配置请求,所述网络功能配置请求中包括业务节点的网络功能需求;
处理器,用于从网络功能NF实例库中获取满足业务节点的网络功能需求的NF实例文件,其中,所述NF实例库中包含每个业务功能基于每种加速设备的实例文件;
所述处理器还用于根据获取的NF实例文件对业务节点进行功能配置。
进一步地,所述处理器还用于根据每个业务功能以及预先获取的每种加速设备的镜像文件配置所述NF实例库;其中,所述NF实例库还包括NF描述表;所述NF描述表的每个表项包括一个实例描述符,所述实例描述符用于描述一个业务功能基于一个加速设备的实例文件;
所述实例描述符包括功能类型以及以下参数中的至少一个:加速设备类型、吞吐量、最大能力、平均处理批量值和设备利用率。
接收器接收到所述网络功能需求包括目标吞吐量、请求能力、峰值数据量中的至少一个。
进一步地,所述处理器具体用于:
从所述NF描述表中获取包括满足所述网络功能需求的实例描述符的NF描述表项;
根据所述获取到的NF描述表项,从所述NF实例库中的实例文件中获取满足所述网络功能需求的NF实例文件。
进一步地,当所述业务节点位于一条业务链,所述网络功能配置请求包括所述业务链上每个业务节点的网络功能需求,以及所述业务链的目标吞吐量和峰值数据量,所述每个业务节点的网络功能需求包括所述业务节点的请求能力;所述处理器还用于:
按照所述业务链和所述NF描述表,依次获取每个业务节点对应的网络功能的第一实例描述符集合;
从每个业务节点对应的第一实例描述符集合中,获取每个业务节点对应的满足所述目标吞吐量的第二实例描述符集合;
在每个业务节点对应的第二实例描述符集合中,获取最大能力大于所述业务节点的请求能力的第三实例描述符集合;
在每个业务节点对应的第三实例描述符集合中,获取平均处理批量值大于所述峰值数据量的第四实例描述符集合;
在每个业务节点对应的所述第四实施例描述符集合中,根据每个实例描述符对应的网络功能的加速资源的利用率和/或优先级,获取满足所述业务节点的网络功能需求的实例描述符。
进一步地,所述处理器还具体用于:
将所述业务节点正在处理的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续执行;
根据获取到的满足所述业务节点的网络功能需求的NF实例文件对所述业务节点重新进行网络功能配置;
当所述业务节点的网络功能配置完成后,将所述失效保护数据平面上的业务重新定向到所述业务节点上。
可选的,当所述业务节点位于业务链上时,所述处理器还用于:
将所述业务链上的每个业务节点的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续处理;
根据获取到的满足每个所述业务节点的网络功能需求的NF实例文件对所述业务链上的每个业务节点重新配置,生成新的业务链;
将所述失效保护数据平面上的业务重新定向到所述新的业务链上。
本实施例提供的配置管理器,用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。
图8为本发明实施例提供的又一配置管理器的结构示意图,如图8所示,该配置管理器还包括:
发送器,用于向所述网管系统发送配置响应消息;所述配置响应消息用于通知所述网管系统是否完成网络功能配置。
本实施例提供的配置管理器,用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。
在上述配置管理器的实施例中,应理解,该处理器可以是中央处理单元(英文:central processing unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:digital signal processor,简称:DSP)、专用集成电路(英文:application-specific integrated circuit,简称:ASIC)等。该通用处理器可以是微处理器或者是任何常规的处理器等,而前述的存储器可以是只读存储器(英文:read-only memory,缩写:ROM)、RAM、快闪存储器、硬盘或者固态硬盘。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (15)

  1. 一种虚拟网络功能的配置方法,其特征在于,包括:
    接收网管系统发送的网络功能配置请求,所述网络功能配置请求中包括业务节点的网络功能需求;
    从网络功能NF实例库中获取满足所述业务节点的网络功能需求的NF实例文件,其中,所述NF实例库中包含每个业务功能基于每种加速设备的实例文件;
    根据获取的所述NF实例文件对所述业务节点进行网络功能配置。
  2. 根据权利要求1所述的方法,其特征在于,所述NF实例库还包括NF描述表;所述NF描述表的每个表项包括一个实例描述符,所述实例描述符用于描述一个业务功能基于一个加速设备的实例文件;
    所述实例描述符包括功能类型以及以下参数中的至少一个:加速设备类型、吞吐量、最大能力、平均处理批量值和设备利用率。
  3. 根据权利要求2所述的方法,其特征在于,所述网络功能需求包括目标吞吐量、请求能力、峰值数据量中的至少一个。
  4. 根据权利要求2或3所述的方法,其特征在于,所述从网络功能NF实例库中获取满足所述业务节点的网络功能需求的NF实例文件,包括:
    从所述NF描述表中获取包括满足所述网络功能需求的实例描述符的NF描述表项;
    根据所述获取到的NF描述表项,从所述NF实例库中的实例文件中获取满足所述网络功能需求的NF实例文件。
  5. 根据权利要求4所述的方法,其特征在于,当所述业务节点位于一条业务链,所述网络功能配置请求包括所述业务链上每个业务节点的网络功能需求,以及所述业务链的目标吞吐量和峰值数据量,所述每个业务节点的网络功能需求包括所述业务节点的请求能力;所述方法还包括:
    按照所述业务链和所述NF描述表,依次获取每个业务节点对应的网络功能的第一实例描述符集合;
    从每个业务节点对应的第一实例描述符集合中,获取每个业务节点对应的满足所述目标吞吐量的第二实例描述符集合;
    在每个业务节点对应的第二实例描述符集合中,获取最大能力大于所述业务节点的请求能力的第三实例描述符集合;
    在每个业务节点对应的第三实例描述符集合中,获取平均处理批量值大于所述峰值数 据量的第四实例描述符集合;
    在每个业务节点对应的所述第四实施例描述符集合中,根据每个实例描述符对应的网络功能的加速资源的利用率和/或优先级,获取满足所述业务节点的网络功能需求的实例描述符。
  6. 根据权利要求1至4任一项所述的方法,其特征在于,所述根据获取的NF实例文件对所述业务节点进行网络功能配置,包括:
    将所述业务节点正在处理的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续执行;
    根据获取到的满足所述业务节点的网络功能需求的NF实例文件对所述业务节点重新进行网络功能配置;
    当所述业务节点的网络功能配置完成后,将所述失效保护数据平面上的业务重新定向到所述业务节点上。
  7. 根据权利要求5所述的方法,其特征在于,当所述业务节点位于业务链上时,所述根据获取的NF实例文件对所述业务节点进行网络功能配置包括:
    将所述业务链上的每个业务节点的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续处理;
    根据获取到的满足每个所述业务节点的网络功能需求的NF实例文件对所述业务链上的每个业务节点重新配置,生成新的业务链;
    将所述失效保护数据平面上的业务重新定向到所述新的业务链上。
  8. 根据权利要求1至7任一项所述的方法,其特征在于,所述接收网络功能配置请求之前,所述方法还包括:
    根据每个业务功能以及预先获取的每种加速设备的镜像文件配置所述NF实例库。
  9. 一种虚拟网络功能的配置装置,其特征在于,包括:
    接收模块,用于接收网管系统发送的网络功能配置请求,所述网络功能配置请求中包括业务节点的网络功能需求;
    处理模块,用于从网络功能NF实例库中获取满足所述业务节点的网络功能需求的NF实例文件,其中,所述NF实例库中包含每个业务功能基于每种加速设备的实例文件;
    配置模块,用于根据获取的所述NF实例文件对所述业务节点进行网络功能配置。
  10. 根据权利要求9所述的装置,其特征在于,所述处理模块还用于根据每个业务功能以及预先获取的每种加速设备的镜像文件配置所述NF实例库;所述NF实例库还包括 NF描述表;所述NF描述表的每个表项包括一个实例描述符,所述实例描述符用于描述一个业务功能基于一个加速设备的实例文件;
    所述实例描述符包括功能类型以及以下参数中的至少一个:加速设备类型、吞吐量、最大能力、平均处理批量值和设备利用率。
  11. 根据权利要求9或10所述的装置,其特征在于,所述所述网络功能需求包括目标吞吐量、请求能力、峰值数据量中的至少一个。
  12. 根据权利要求10或11所述的装置,其特征在于,所述处理模块具体用于:
    从所述NF描述表中获取包括满足所述网络功能需求的实例描述符的NF描述表项;
    根据所述获取到的NF描述表项,从所述NF实例库中的实例文件中获取满足所述网络功能需求的NF实例文件。
  13. 根据权利要求12所述的装置,其特征在于,所述业务节点位于一条业务链,所述网络功能配置请求包括所述业务链上每个业务节点的网络功能需求,以及所述业务链的目标吞吐量和峰值数据量,所述每个业务节点的网络功能需求包括所述业务节点的请求能力;所述处理模块还用于:
    按照所述业务链和所述NF描述表,依次获取每个业务节点对应的网络功能的第一实例描述符集合;
    从每个业务节点对应的第一实例描述符集合中,获取每个业务节点对应的满足所述目标吞吐量的第二实例描述符集合;
    在每个业务节点对应的第二实例描述符集合中,获取最大能力大于所述业务节点的请求能力的第三实例描述符集合;
    在每个业务节点对应的第三实例描述符集合中,获取平均处理批量值大于所述峰值数据量的第四实例描述符集合;
    在每个业务节点对应的所述第四实施例描述符集合中,根据每个实例描述符对应的网络功能的加速资源的利用率和/或优先级,获取满足所述业务节点的网络功能需求的实例描述符。
  14. 根据权利要求9至12任一项所述的装置,其特征在于,所述配置模块具体用于:
    将所述业务节点正在处理的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续执行;
    根据获取到的满足所述业务节点的网络功能需求的NF实例文件对所述业务节点重新进行网络功能配置;
    当所述业务节点的网络功能配置完成后,将所述失效保护数据平面上的业务重新定向到所述业务节点上。
  15. 根据权利要求13所述的装置,其特征在于,当所述业务节点位于业务链上时,所述配置模块还用于:
    将所述业务链上的每个业务节点的业务定向到预先配置的失效保护数据平面上,由所述失效保护数据平面继续处理;
    根据获取到的满足每个所述业务节点的网络功能需求的NF实例文件对所述业务链上的每个业务节点重新配置,生成新的业务链;
    将所述失效保护数据平面上的业务重新定向到所述新的业务链上。
PCT/CN2016/106137 2015-11-30 2016-11-16 虚拟网络功能的配置方法和装置 WO2017092568A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP16869878.5A EP3373517B1 (en) 2015-11-30 2016-11-16 Configuration method and device for virtual network function
EP19207155.3A EP3668013B1 (en) 2015-11-30 2016-11-16 Virtual network function configuration method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510860808.1 2015-11-30
CN201510860808.1A CN106817236B (zh) 2015-11-30 2015-11-30 虚拟网络功能的配置方法和装置

Publications (1)

Publication Number Publication Date
WO2017092568A1 true WO2017092568A1 (zh) 2017-06-08

Family

ID=58796269

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/106137 WO2017092568A1 (zh) 2015-11-30 2016-11-16 虚拟网络功能的配置方法和装置

Country Status (3)

Country Link
EP (2) EP3373517B1 (zh)
CN (2) CN106817236B (zh)
WO (1) WO2017092568A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019216797A1 (en) * 2018-05-08 2019-11-14 Telefonaktiebolaget Lm Ericsson (Publ) Method and node for managing a request for hardware acceleration by means of an accelerator device
CN113708965A (zh) * 2021-08-24 2021-11-26 北京计算机技术及应用研究所 一种高性能构件化的数据包处理框架

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109391592B (zh) 2017-08-08 2021-12-24 华为技术有限公司 网络功能服务的发现方法及设备
CN109039711B (zh) * 2018-07-12 2021-01-15 联想(北京)有限公司 一种硬件加速器的更换方法、装置及服务器
EP3609131A1 (en) * 2018-08-07 2020-02-12 Siemens Aktiengesellschaft Operational constraints for operational functions of field devices
CN109547252A (zh) * 2018-11-27 2019-03-29 新华三技术有限公司合肥分公司 实例化节点的方法、装置和服务器
EP4029198A4 (en) * 2019-09-12 2023-08-30 Telefonaktiebolaget Lm Ericsson (Publ) METHOD AND DEVICE FOR SERVICE ADMINISTRATION
CN113572630B (zh) * 2021-02-10 2024-06-28 腾讯科技(深圳)有限公司 网络配置信息的生成方法、装置、电子设备、介质和产品

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014110453A1 (en) * 2013-01-11 2014-07-17 Huawei Technologies Co., Ltd. Network function virtualization for a network device
CN104009871A (zh) * 2014-06-06 2014-08-27 中国科学院声学研究所 Sdn控制器实现方法及sdn控制器
CN104951353A (zh) * 2014-03-28 2015-09-30 华为技术有限公司 一种对vnf实现加速处理的方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100543451B1 (ko) * 2003-04-17 2006-01-23 삼성전자주식회사 가상 사설망 기능과 무선 랜 기능을 갖는 복합 네트워크장치 및 구현 방법
US10069683B2 (en) * 2013-09-27 2018-09-04 Nxp Usa, Inc. Apparatus for optimising a configuration of a communications network device
CN104811326A (zh) * 2014-01-24 2015-07-29 中兴通讯股份有限公司 一种管理业务链的方法、系统及装置
WO2015113234A1 (zh) * 2014-01-28 2015-08-06 华为技术有限公司 网络功能虚拟化的方法及装置
CN104219127B (zh) * 2014-08-30 2018-06-26 华为技术有限公司 一种虚拟网络实例的创建方法以及设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014110453A1 (en) * 2013-01-11 2014-07-17 Huawei Technologies Co., Ltd. Network function virtualization for a network device
CN104951353A (zh) * 2014-03-28 2015-09-30 华为技术有限公司 一种对vnf实现加速处理的方法及装置
CN104009871A (zh) * 2014-06-06 2014-08-27 中国科学院声学研究所 Sdn控制器实现方法及sdn控制器

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Network Functions Virtualisation (NFV); Infrastructure; Compute Domain", ETSI GS NFV-INF 003 V1.1.1, 31 December 2014 (2014-12-31), XP055489807 *
CHE, SHUAI ET AL.: "Accelerating Compute-Intensive Applications with GPUS and FPGAs", A PPLICATION SPECIFIC PROCESSORS , 2008 . SASP 2008 . SYMPOSIUM ON, 18 July 2008 (2008-07-18), XP031289546 *
See also references of EP3373517A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019216797A1 (en) * 2018-05-08 2019-11-14 Telefonaktiebolaget Lm Ericsson (Publ) Method and node for managing a request for hardware acceleration by means of an accelerator device
CN112041817A (zh) * 2018-05-08 2020-12-04 瑞典爱立信有限公司 用于管理借助于加速器装置的硬件加速的请求的方法和节点
US11340949B2 (en) 2018-05-08 2022-05-24 Telefonaktiebolaget Lm Ericsson (Publ) Method and node for managing a request for hardware acceleration by means of an accelerator device
CN113708965A (zh) * 2021-08-24 2021-11-26 北京计算机技术及应用研究所 一种高性能构件化的数据包处理框架

Also Published As

Publication number Publication date
EP3373517B1 (en) 2020-01-08
EP3373517A4 (en) 2018-09-19
CN112260848A (zh) 2021-01-22
CN106817236B (zh) 2020-09-18
EP3668013B1 (en) 2023-05-31
CN112260848B (zh) 2023-12-08
CN106817236A (zh) 2017-06-09
EP3373517A1 (en) 2018-09-12
EP3668013A1 (en) 2020-06-17

Similar Documents

Publication Publication Date Title
WO2017092568A1 (zh) 虚拟网络功能的配置方法和装置
US10979293B2 (en) Service deployment method and network functions acceleration platform
US10171567B2 (en) Load balancing computer device, system, and method
US20200351204A1 (en) Method, apparatus, and system for load balancing of service chain
US9749145B2 (en) Interoperability for distributed overlay virtual environment
US10977079B2 (en) Method and apparatus for implementing acceleration processing on VNF
CN107346292B (zh) 服务器系统及其计算机实现的方法
US9634938B2 (en) Adaptive scheduling of data flows in data center networks for efficient resource utilization
US9565135B2 (en) System and method for service chaining with tunnel chains in software defined network
US10666617B2 (en) Intercepting network traffic routed by virtual switches for selective security processing
US10491464B2 (en) Network topology assisted device provisioning
US8819211B2 (en) Distributed policy service
TWI766893B (zh) 虛擬專有網路及規則表生成方法、裝置及路由方法
CN107113241B (zh) 路由确定方法、网络配置方法以及相关装置
US10944723B2 (en) Systems and methods for managing endpoints and security policies in a networked environment
US9009782B2 (en) Steering traffic among multiple network services using a centralized dispatcher
US10826916B2 (en) Agent-less network traffic inspection using an overlay network
US9967139B2 (en) Remote zone management of JBOD systems
KR101754618B1 (ko) 소프트웨어 정의 네트워크 기반의 가상 네트워크 동적 생성 방법 및 그 장치
WO2022037571A1 (zh) 报文转发方法及装置,和计算机可读存储介质
US10516613B1 (en) Network device storage of incremental prefix trees
US20220350748A1 (en) Consistent hashing for communication devices
EP4351094A1 (en) Method and apparatus for allocating address, method and apparatus for determining node, and storage medium

Legal Events

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

Ref document number: 16869878

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2016869878

Country of ref document: EP