Resource management method, device and storage medium

文档序号:510397 发布日期:2021-05-28 浏览:3次 中文

阅读说明:本技术 一种资源管理方法、装置及存储介质 (Resource management method, device and storage medium ) 是由 陈春秀 周峰 胡志凌 于 2019-11-26 设计创作,主要内容包括:本申请公开了一种资源管理方法,包括:获取虚拟化网络功能(VNF)的需求信息;基于所述VNF的需求信息以及现场可编程逻辑门阵列(FPGA)卡的状态,划分所述FPGA卡的可重构区域;本申请还公开了一种资源管理装置及存储介质;通过本申请实施例,可以根据VNF的需求信息,合理地动态划分FPGA卡的可重构区域。(The application discloses a resource management method, which comprises the following steps: acquiring demand information of a Virtualized Network Function (VNF); dividing a reconfigurable area of a Field Programmable Gate Array (FPGA) card based on the demand information of the VNF and the state of the FPGA card; the application also discloses a resource management device and a storage medium; through the embodiment of the application, the reconfigurable area of the FPGA card can be reasonably and dynamically divided according to the demand information of the VNF.)

1. A method for resource management, the method comprising:

acquiring demand information of a Virtual Network Function (VNF);

and dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card of the field programmable logic gate array.

2. The method of claim 1, wherein the obtaining demand information of the VNF comprises:

receiving a deployment VNF request;

based on the request for deploying the VNF, acquiring at least one item of demand information of the VNF:

the service type, the minimum occupation ratio of the reconfigurable area of each service type and the required number of each service type.

3. The method according to claim 1 or 2, wherein the dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card comprises:

dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and at least one of the following states of the FPGA card:

the number of the reconfigurable areas divided in the FPGA card, the number of virtual functions VF of the reconfigurable areas and the maximum number of the reconfigurable areas allowed to be divided by the FPGA card.

4. The method of claim 1, further comprising:

and under the condition that the requirement information of at least one VNF is obtained, and the same quantity of the requirement information of the VNF is greater than or equal to a first threshold value, the at least one FPGA card is divided into the same reconfigurable areas.

5. The method of claim 3, wherein partitioning the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card comprises:

the number of the reconfigurable areas divided aiming at each service type is more than or equal to the required number of each service type;

the number of the FPGA cards divided into the reconfigurable area is less than the total number of the FPGA cards.

6. An apparatus for resource management, the apparatus comprising:

an acquisition unit, configured to acquire requirement information of a virtualized network function VNF;

and the dividing unit is used for dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card.

7. The apparatus of claim 6,

the obtaining unit is further configured to receive a VNF deployment request; based on the request for deploying the VNF, acquiring at least one item of demand information of the VNF:

the service type, the minimum occupation ratio of the reconfigurable area of each service type and the required number of each service type.

8. The apparatus according to claim 6 or 7,

the dividing unit is further configured to divide the reconfigurable area of the FPGA card based on the demand information of the VNF and at least one of the following states of the FPGA card:

the number of the reconfigurable areas divided in the FPGA card, the number of virtual functions VF of the reconfigurable areas and the maximum number of the reconfigurable areas allowed to be divided by the FPGA card.

9. The apparatus of claim 6,

the dividing unit is further configured to divide the same reconfigurable area for the at least one FPGA card when the requirement information of the at least one VNF is acquired and the number of the VNFs with the same requirement information is greater than or equal to a first threshold.

10. The apparatus of claim 8,

the dividing unit is further configured to divide the number of the reconfigurable regions for each service type to be greater than or equal to the required number of each service type;

the number of the FPGA cards divided into the reconfigurable area is less than the total number of the FPGA cards.

11. A storage medium storing an executable program which, when executed by a processor, implements the resource management method of any one of claims 1 to 5.

12. A resource management device comprising a memory, a processor and an executable program stored on the memory and executable by the processor, wherein the processor executes the executable program to perform the steps of the resource management method according to any one of claims 1 to 5.

Technical Field

The present invention relates to the field of hardware acceleration and virtual network technologies, and in particular, to a resource management method, an apparatus, and a storage medium.

Background

Part of Reconfigurable (PR) areas may be partitioned into one or more reconfigurable areas in a Field-Programmable Gate Array (FPGA) card, and after the reconfigurable areas are partitioned, other application logic cannot use hardware resources in the areas. However, the flexibility of layout and wiring during compiling can be influenced by excessive division of the reconfigurable area; the space and waste of FPGA card resources can be caused by too few reconfigurable area divisions, and how to reasonably and dynamically divide the reconfigurable area of the FPGA card is a technical problem to be solved.

Disclosure of Invention

The embodiment of the application provides a resource management method, a resource management device and a storage medium, so that a server can reasonably and dynamically divide a reconfigurable area of an FPGA card according to the demand information of a VNF.

The application provides a resource management method, which comprises the following steps:

acquiring demand information of a Virtualized Network Function (VNF);

and dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the field FPGA card.

In the foregoing solution, the acquiring the demand information of the VNF includes:

receiving a deployment VNF request;

based on the request for deploying the VNF, acquiring at least one item of demand information of the VNF:

the service type, the minimum occupation ratio of the reconfigurable area of each service type and the required number of each service type.

In the foregoing solution, the dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card includes:

dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and at least one of the following states of the FPGA card:

the number of the reconfigurable areas divided in the FPGA card, the number of virtual functions VF of the reconfigurable areas and the maximum number of the reconfigurable areas allowed to be divided by the FPGA card.

In the above scheme, the method further comprises:

and under the condition that the requirement information of at least one VNF is obtained, and the same quantity of the requirement information of the VNF is greater than or equal to a first threshold value, the at least one FPGA card is divided into the same reconfigurable areas.

In the foregoing solution, dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card includes:

the number of the reconfigurable areas divided aiming at each service type is more than or equal to the required number of each service type;

the number of the FPGA cards divided into the reconfigurable area is less than the total number of the FPGA cards.

An embodiment of the present application further provides a resource management device, including:

an acquisition unit, configured to acquire requirement information of a virtualized network function VNF;

and the dividing unit is used for dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card.

In the foregoing solution, the obtaining unit is further configured to receive a VNF deployment request; based on the request for deploying the VNF, acquiring at least one item of demand information of the VNF:

the service type, the minimum occupation ratio of the reconfigurable area of each service type and the required number of each service type.

In the foregoing solution, the dividing unit is further configured to divide the reconfigurable area of the FPGA card based on the demand information of the VNF and at least one of the following states of the FPGA card:

the number of the reconfigurable areas divided in the FPGA card, the number of virtual functions VF of the reconfigurable areas and the maximum number of the reconfigurable areas allowed to be divided by the FPGA card.

In the foregoing solution, the dividing unit is further configured to divide the same reconfigurable area for the at least one FPGA card when the requirement information of the at least one VNF is acquired and the same number of the requirement information of the VNF is greater than or equal to a first threshold.

In the foregoing solution, the dividing unit is further configured to divide the number of reconfigurable regions for each service type to be greater than or equal to the required number of each service type;

the number of the FPGA cards divided into the reconfigurable area is less than the total number of the FPGA cards.

The embodiment of the invention also provides a storage medium which stores an executable program, and the executable program is executed by a processor to realize the resource management method.

According to the resource management method, the resource management device and the storage medium provided by the embodiment of the invention, the demand information of the VNF is acquired; and based on the demand information of the VNF and the state of the FPGA card, the reconfigurable area of the FPGA card is divided, so that the reconfigurable area of the FPGA card can be reasonably and dynamically divided according to the actual demand of the service type, and the optimal utilization of the FPGA card is achieved. The embodiment of the application further provides a resource management method, wherein the at least one FPGA card is divided into the same reconfigurable areas under the condition that the requirement information of at least one VNF is obtained, and the same quantity of the requirement information of the VNF is greater than or equal to a first threshold value; in the environment deployment stage, FPGA cards are divided in batches, and the deployment time is saved.

Drawings

Fig. 1 is a schematic diagram of an FPGA card dividing a plurality of reconfigurable regions according to an embodiment of the present application;

fig. 2 is a first schematic flowchart illustrating an alternative resource management method according to an embodiment of the present application;

fig. 3 is an optional flowchart illustrating that the server divides the reconfigurable area of the FPGA card based on the VNF requirement information and the state of the FPGA card according to the embodiment of the present application;

fig. 4 is a first schematic diagram of three schemes for dividing FPGA cards according to an embodiment of the present application;

fig. 5 is a schematic view illustrating an alternative flow chart of a resource management method according to an embodiment of the present application;

fig. 6 is a schematic view illustrating an alternative flow chart of a resource management method according to an embodiment of the present application;

fig. 7 is a second schematic diagram of three schemes for dividing FPGA cards according to the embodiment of the present application;

fig. 8 is a first schematic structural diagram of an alternative resource management apparatus according to an embodiment of the present application;

fig. 9 is a schematic diagram illustrating an alternative structure of a resource management device according to an embodiment of the present application;

fig. 10 is a third schematic diagram of an alternative structure of a resource management device according to an embodiment of the present application.

Detailed Description

The present invention will be described in further detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

Before describing the embodiments of the present application in detail, a related art virtualization, that is, an FPGA card, is briefly described.

Virtualization is a key technology for realizing network function virtualization. Virtualization is a resource management technology for abstracting and converting various entity resources such as existing computing, storage, and networks.

With the rise of artificial intelligence, various fields also put forward higher requirements on data computation amount and computation speed, which also leads the FPGA card to play an increasingly important role in the field of accelerated computation, and a lot of applications and services can obviously improve the computation speed and the computation efficiency by means of the support provided by the FPGA card.

In order to improve the development efficiency of the FPGA card, better utilize the logic resources of the FPGA card, and facilitate large-scale deployment and application of the FPGA card, the FPGA card needs to be logically abstracted to a certain degree, so that a top-level user does not need to pay much attention to the implementation mode and details of the hardware logic of the FPGA card. The FPGA card virtualization technology is developed.

Part of reconfigurable FPGA cards are one of the main characteristics of FPGA cards, one or more regions can be divided in the FPGA cards, and the regions are independently programmed and configured in the running process of the FPGA cards so as to change the logic of circuits in the regions without influencing the normal running of other circuits of the FPGA cards.

Fig. 1 shows a schematic diagram of an FPGA card partitioning into multiple reconfigurable regions. In fig. 1, two reconfigurable regions, namely, a region 1 and a region 2, are divided inside an FPGA card; an unreconfigurable region, region 3, is partitioned.

After the FPGA card divides the reconfigurable area, other application logics cannot use hardware resources in the area. If too many reconfigurable areas are divided, the flexibility of layout and wiring during compiling is seriously influenced, so that some time sequence paths must be bypassed, the reconfigurable areas are avoided, and the wiring delay is too long; if the number of the divided reconfigurable areas is too small, the resources of the FPGA card can be vacant and wasted.

In order to deal with large-scale deployment and application of the FPGA card, the FPGA card needs to be configured, including: and dividing the reconfigurable area. And large-scale deployment needs to support automation of FPGA card configuration and needs to be careful when the reconfigurable area is divided. Therefore, how to reasonably and dynamically divide the reconfigurable area is a technical problem to be solved.

Based on the problems existing in the resource management method for the reconfigurable area of the FPGA card, the resource management method can solve the technical problems and the defects which cannot be solved in the prior technical scheme.

Fig. 2 is a schematic view illustrating an alternative flow of a resource management method according to an embodiment of the present application, which will be described according to various steps.

Step S101, acquiring demand information of the VNF.

In some embodiments, a virtual module, which manages resource requirements of a VNF related to a traffic type, in a server sends requirement information of the VNF to the server, and the server obtains the requirement information of the VNF, where the requirement information of the VNF includes: at least one of a service type, a minimum occupation ratio of a reconfigurable area of each service type, and a required number of each service type.

In some embodiments, the virtual module for managing resource requirements of the VNF related to the service type is Virtualized Function management (VNFM).

In some embodiments, before the server obtains the demand information of the VNF, the method further includes: the method comprises the steps that a server external virtual module sends a VNF deployment request related to upper-layer services to a server, the server receives the VNF deployment request, and demand information of the VNF is obtained based on the VNF deployment request.

In some embodiments, the server obtains the VNF deployment request and formulates a corresponding VNF deployment scenario. The method comprises the following steps: and at least one of a VNF deployment position and a resource division scheme of the FPGA card.

And S102, dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card.

In some embodiments, the status of the FPGA card includes: at least one of the number of the reconfigurable areas which are divided in the FPGA card, the number of virtual functions VF of the reconfigurable areas and the maximum number of the reconfigurable areas which are allowed to be divided by the FPGA card.

In some embodiments, when the divided reconfigurable regions exist in the FPGA card, the divided reconfigurable regions are not re-divided, and the tasks are configured for the divided reconfigurable regions of the FPGA card according to the requirement information of the VNF.

In some embodiments, the server divides the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card, including steps S201 to S203. Fig. 3 shows an optional flowchart that the server divides the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card, which will be described according to each step.

Step S201, the server makes different schemes for dividing the FPGA card according to the minimum occupation ratio of the reconfigurable areas of different service types.

In some embodiments, the reconfigurable area minimum occupation ratio is a ratio of a minimum area relative to the reconfigurable area required by a service type to the reconfigurable area.

For example, if the minimum required area is a half reconfigurable area for a service of type a, the minimum percentage of the reconfigurable area for the service of type a is 1/2.

In some embodiments, the server, according to the minimum occupation ratio of the reconfigurable areas of different service types, makes different schemes for dividing the FPGA card, including: the server formulates a scheme for dividing the FPGA card according to the minimum occupation ratio of the reconfigurable areas corresponding to different service types, so that the FPGA card can provide the corresponding minimum reconfigurable area for at least one service type.

In other embodiments, the product of the number of the minimum occupation ratios of different reconfigurable areas in the FPGA card and the corresponding minimum occupation ratio of the reconfigurable area is added to obtain a value of 1.

As shown in table 1, the minimum reconfigurable area occupation ratio corresponding to the service type includes 1/2 and 1/4, and accordingly, in a case that no partitioned reconfigurable area exists in the FPGA card, the server formulates 3 schemes for partitioning the FPGA card, and fig. 4 shows a schematic diagram one of the three schemes for partitioning the FPGA card provided in the embodiment of the present application, which includes:

in the scheme x 301, 2 1/2 reconfigurable areas are divided on the FPGA card, and the service with the service type a can be supported.

Scheme y 302, 1 1/2 reconfigurable area and 2 1/4 reconfigurable areas are divided on the FPGA card, and services with A, B and/or C service types can be supported

The scheme z 303 divides 4 1/4 reconfigurable areas on the FPGA card, and can support services with service types B and/or C.

Type of service Reconfigurable area minimum occupancy ratio Required quantity
A 1/2 10
B 1/4 5
C 1/4 10

Table 1 example data for dynamic partitioning of reconfigurable regions

And S202, the server formulates a scheme for dividing the reconfigurable area according to the scheme for formulating and dividing the FPGA card.

In some embodiments, the server formulates a scheme for dividing the reconfigurable area according to the scheme for formulating and dividing the FPGA cards, so that the divided FPGA cards meet the required number of all service types.

In some embodiments, the number of reconfigurable areas divided for each service type is greater than or equal to the required number of each service type; the number of the FPGA cards divided into the reconfigurable area is less than the total number of the FPGA cards.

For example, the total number of the FPGA cards is 9, taking table 1 as an example, and combining the scheme in 3 of dividing the FPGA cards, the scheme of dividing the reconfigurable area is as follows:

in the inequality group, x is the number of the FPGA cards divided according to the scheme x in the scheme of dividing the reconfigurable area according to the embodiment; y is the number of FPGA cards divided according to the scheme y in the scheme for dividing the reconfigurable area; and z is the number of FPGA cards divided according to the scheme z in the scheme for dividing the reconfigurable area.

In the first inequality, the scheme x can divide 2 reconfigurable regions with the minimum percentage of 1/2 on the FPGA card; according to the scheme y, 1 reconfigurable area with the minimum proportion of 1/2 can be divided on the FPGA card, the required number of service types A to the reconfigurable area with the minimum proportion of 1/2 is 10, and therefore the inequality for the service types A is 2x + y which is more than or equal to 10.

In the second inequality, the scheme y may divide 2 1/4 reconfigurable regions on the FPGA card, the scheme z may divide 4 1/4 reconfigurable regions on the FPGA card, and the minimum occupation ratio of the service types B and C to the reconfigurable regions is 1/4, so the inequality for the service types B and C is 2y +4z ≧ 5+ 10.

In the third inequality described above, the total number of FPGA cards is 9, and therefore the total number of the scheme x, the scheme y, and the scheme z is not more than 9.

From the above set of inequalities, x is 2, y is 6, z is 1, or x is 3, y is 4, z is 2, or x is 4, y is 2, z is 3, or x is 5, y is 0, z is 4. The solution of the above equation set, i.e. the number of x, y, z, is selected according to the actual requirements.

In some embodiments, as many reconfigurable regions as possible are needed, so 1 is selected, i.e., 2 FPGA cards are divided using scheme x, 6 FPGA cards are divided using scheme y, and 1 FPGA card is divided using scheme z.

And step S203, the server divides the reconfigurable area of the FPGA card according to the established scheme for dividing the reconfigurable area.

In some embodiments, the server partitions the reconfigurable area of the FPGA card according to a formulated scheme for partitioning the reconfigurable area.

In some embodiments, in the case that there are a plurality of established schemes for dividing the reconfigurable regions, the corresponding established schemes for dividing the reconfigurable regions are selected according to actual requirements, such as the number of the reconfigurable regions required to be as large as possible or the number of the reconfigurable regions required to be as small as possible, so as to divide the reconfigurable regions of the FPGA card.

For example, in the above embodiment, if the actual requirement is that as many reconfigurable regions as possible are needed, x is 2, y is 6, and z is 1, that is, 2 FPGA cards are divided by using scheme x, 6 FPGA cards are divided by using scheme y, and 1 FPGA card is divided by using scheme z; if the actual requirement is that the number of reconfigurable areas needs to be as small as possible, x is 5, y is 0, and z is 4, that is, 5 FPGA cards are divided by using scheme x, 0 FPGA cards are divided by using scheme y, and 4 FPGA cards are divided by using scheme z.

Therefore, based on the demand information of the VNF and the state of the FPGA card, the reconfigurable area of the FPGA card is divided, the existing resources can be fully utilized under the condition that the redundancy of the FPGA card is not large, the operation of different services is guaranteed, and the shortage of resources is avoided.

Thus, the demand information of the VNF is acquired; and dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card. The reconfigurable area of the FPGA card can be dynamically divided according to the actual requirements of services. And after the server calculates the number of the service types of the upper application VNF according to the requirement information of all services, the reconfigurable area of the FPGA card is dynamically divided, and the optimal utilization of the FPGA card is realized. And dividing the reconfigurable area of the FPGA card by combining the service type in the VNF requirement information, the minimum ratio of the reconfigurable area of each service type and the required number of each service type, thereby avoiding the waste of FPGA resources caused by too few divided areas.

Fig. 5 is a schematic diagram illustrating an optional flow chart of a resource management method according to an embodiment of the present application, which will be described according to various steps.

Step S401, obtaining requirement information of at least one VNF.

In some embodiments, the server obtains the requirement information of at least one VNF, and if the quantity of the requirement information of the at least one VNF is equal to or greater than a first threshold, step S402 is performed; and ending the flow when the quantity of the demand information of the at least one VNF is equal to or less than a first threshold value.

In still other embodiments, when there are fewer traffic types included in the requirement information of the at least one VNF, or when the minimum percentage of reconfigurable areas of traffic types included in the requirement information of the at least one VNF is substantially the same, the requirement information of the at least one VNF is considered to be the same.

In other embodiments, the first threshold is a preset value.

Step S402, based on the demand information of the VNF and the state of the FPGA card, the reconfigurable area of the FPGA card is divided.

In some embodiments, the status of the FPGA card includes: at least one of the number of the reconfigurable areas which are divided in the FPGA card, the number of virtual functions VF of the reconfigurable areas and the maximum number of the reconfigurable areas which are allowed to be divided by the FPGA card.

In some embodiments, when the divided reconfigurable regions exist in the FPGA card, the divided reconfigurable regions are not re-divided, and the tasks are configured for the divided reconfigurable regions of the FPGA card according to the requirement information of the VNF.

Therefore, when the server acquires the demand information of at least one VNF and the quantity of the demand information of the at least one VNF is larger than or equal to the first threshold, the server performs batch reconfigurable area division in the environment deployment stage, and the service deployment time is saved.

Fig. 6 is a schematic view showing an alternative flow chart of a resource management method provided in the embodiment of the present application, and will be described according to various steps.

Step S501, receiving a VNF deployment request.

In some embodiments, the server external virtual module sends a VNF deployment request related to upper-layer services to the server, and the server receives the VNF deployment request and formulates a corresponding VNF deployment scenario. The method comprises the following steps: and at least one of a VNF deployment position and a resource division scheme of the FPGA card.

Step S502, acquiring demand information of the VNF.

In some embodiments, a virtual module, which manages resource requirements of a VNF related to a traffic type, in a server sends requirement information of the VNF to the server, and the server obtains the requirement information of the VNF, where the requirement information of the VNF includes: at least one of a service type, a minimum occupation ratio of a reconfigurable area of each service type, and a required number of each service type.

In some embodiments, the virtual module that manages resource requirements of the traffic type-dependent VNF is a VNFM.

And S503, according to the minimum occupation ratios of the reconfigurable areas of different service types and the states of the FPGA card, making different schemes for dividing the FPGA card.

In some embodiments, the status of the FPGA card includes: at least one of the number of the reconfigurable areas which are divided in the FPGA card, the number of virtual functions VF of the reconfigurable areas and the maximum number of the reconfigurable areas which are allowed to be divided by the FPGA card.

In some embodiments, when the divided reconfigurable regions exist in the FPGA card, the divided reconfigurable regions are not re-divided, and the tasks are configured for the divided reconfigurable regions of the FPGA card according to the requirement information of the VNF.

In some embodiments, the reconfigurable area minimum occupation ratio is a ratio of a minimum area relative to the reconfigurable area required by a service type to the reconfigurable area.

For example, if the minimum required area is a half reconfigurable area for a service of type a, the minimum percentage of the reconfigurable area for the service of type a is 1/2.

In some embodiments, the server, according to the minimum occupation ratio of the reconfigurable areas of different service types, makes different schemes for dividing the FPGA card, including: the server formulates a scheme for dividing the FPGA card according to the minimum occupation ratio of the reconfigurable areas corresponding to different service types, so that the FPGA card can provide the corresponding minimum reconfigurable area for at least one service.

In other embodiments, the product of the number of the minimum occupation ratios of different reconfigurable areas in the FPGA card and the corresponding minimum occupation ratio of the reconfigurable area is added to obtain a value of 1.

Still taking the above table 1 as an example, the minimum occupation ratio of the reconfigurable area corresponding to the service type includes 1/2 and 1/4, and accordingly, in the case that no partitioned reconfigurable area exists in the FPGA card, the server formulates 3 schemes for partitioning the FPGA card, and fig. 7 shows a schematic diagram two of the three schemes for partitioning the FPGA card provided in the embodiment of the present application, including:

in the scheme x 601, 2 1/2 reconfigurable areas are divided on the FPGA card, and the service with the service type a can be supported.

Scheme y 602, 1 1/2 reconfigurable area and 2 1/4 reconfigurable areas are divided on the FPGA card, and services with A, B and/or C service types can be supported

Scheme z 603, 4 1/4 reconfigurable areas are divided on the FPGA card, and services with service types B and/or C can be supported.

And step S504, according to the scheme for making the division of the FPGA card, making a scheme for dividing the reconfigurable area.

In some embodiments, the server formulates a scheme for dividing the reconfigurable area according to the scheme for formulating and dividing the FPGA cards, so that the divided FPGA cards meet the required number of all service types.

In some embodiments, the number of reconfigurable areas divided for each service type is greater than or equal to the required number of each service type; the number of the FPGA cards divided into the reconfigurable area is less than the total number of the FPGA cards.

For example, the total number of the FPGA cards is 9, taking table 1 as an example, and combining the scheme in 3 of dividing the FPGA cards, the scheme of dividing the reconfigurable area is as follows:

in the inequality group, x is the number of the FPGA cards divided according to the scheme x in the scheme of dividing the reconfigurable area according to the embodiment; y is the number of FPGA cards divided according to the scheme y in the scheme for dividing the reconfigurable area; and z is the number of FPGA cards divided according to the scheme z in the scheme for dividing the reconfigurable area.

In the first inequality, the scheme x can divide 2 reconfigurable regions with the minimum percentage of 1/2 on the FPGA card; according to the scheme y, 1 reconfigurable area with the minimum proportion of 1/2 can be divided on the FPGA card, the required number of service types A to the reconfigurable area with the minimum proportion of 1/2 is 10, and therefore the inequality for the service types A is 2x + y which is more than or equal to 10.

In the second inequality, the scheme y may divide 2 1/4 reconfigurable regions on the FPGA card, the scheme z may divide 4 1/4 reconfigurable regions on the FPGA card, and the minimum occupation ratio of the service types B and C to the reconfigurable regions is 1/4, so the inequality for the service types B and C is 2y +4z ≧ 5+ 10.

In the third inequality described above, the total number of FPGA cards is 9, and therefore the total number of the scheme x, the scheme y, and the scheme z is not more than 9.

From the above set of inequalities, x is 2, y is 6, z is 1, or x is 3, y is 4, z is 2, or x is 4, y is 2, z is 3, or x is 5, y is 0, z is 4. The solution of the above equation set, i.e. the number of x, y, z, is selected according to the actual requirements.

In some embodiments, as many reconfigurable regions as possible are needed, so x is 2, y is 6, and z is 1, i.e. 2 FPGA cards are divided using scheme x, 6 FPGA cards are divided using scheme y, and 1 FPGA card is divided using scheme z.

And step S505, the server divides the reconfigurable area of the FPGA card according to the established scheme for dividing the reconfigurable area.

In some embodiments, the server partitions the reconfigurable area of the FPGA card according to a formulated scheme for partitioning the reconfigurable area.

In some embodiments, in the case that there are a plurality of established schemes for dividing the reconfigurable regions, the corresponding established schemes for dividing the reconfigurable regions are selected according to actual requirements, such as the number of the reconfigurable regions required to be as large as possible or the number of the reconfigurable regions required to be as small as possible, so as to divide the reconfigurable regions of the FPGA card.

For example, in the above embodiment, if the actual requirement is that as many reconfigurable regions as possible are needed, x is 2, y is 6, and z is 1, that is, 2 FPGA cards are divided by using scheme x, 6 FPGA cards are divided by using scheme y, and 1 FPGA card is divided by using scheme z; if the actual requirement is that the number of reconfigurable areas needs to be as small as possible, x is 5, y is 0, and z is 4, that is, 5 FPGA cards are divided by using scheme x, 0 FPGA cards are divided by using scheme y, and 4 FPGA cards are divided by using scheme z.

Thus, the demand information of the VNF is acquired; and dividing the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card of the field programmable logic gate array. The reconfigurable area of the FPGA card can be dynamically divided according to the actual requirements of services. After the server calculates the types and the quantity of the upper application VNFs according to the requirement information of all the services, the reconfigurable area of the FPGA card is dynamically divided, and the optimal utilization of the FPGA card is achieved. Meanwhile, the reconfigurable areas of the FPGA card are divided by combining the service types in the VNF requirement information, the minimum ratio of the reconfigurable areas of all the service types and the required number of each service type, so that the waste of FPGA resources caused by too few divided areas is avoided.

Fig. 8 is a schematic diagram illustrating an alternative structure of a resource management device according to an embodiment of the present application, which will be described according to various parts.

Server 700 includes an acquisition unit 701 and a dividing unit 702.

The obtaining unit 701 is configured to obtain requirement information of a virtualized network function VNF.

In some embodiments, the obtaining unit 701 is a Network Function Virtualization Orchestrator (NFVO).

The dividing unit 702 is configured to divide the reconfigurable area of the FPGA card based on the demand information of the VNF and the state of the FPGA card.

In some embodiments, the partitioning unit 702 is a Partial Reconfiguration Manager (PRM).

The obtaining unit 701 is further configured to receive a VNF deployment request; based on the request for deploying the VNF, acquiring at least one item of demand information of the VNF:

the service type, the minimum occupation ratio of the reconfigurable area of each service type and the required number of each service type.

The dividing unit 702 is further configured to divide the reconfigurable area of the FPGA card based on the requirement information of the VNF and at least one of the following states of the FPGA card:

the number of the reconfigurable areas divided in the FPGA card, the number of virtual functions VF of the reconfigurable areas and the maximum number of the reconfigurable areas allowed to be divided by the FPGA card.

The dividing unit 702 is further configured to divide the same reconfigurable area for the at least one FPGA card when the requirement information of the at least one VNF is acquired and the number of the requirement information of the VNF is equal to or greater than a first threshold.

The dividing unit 702 is further configured to determine that the number of reconfigurable regions divided for each service type is greater than or equal to the required number of each service type; the number of the FPGA cards divided into the reconfigurable area is less than the total number of the FPGA cards.

Fig. 9 is a schematic diagram illustrating an alternative structure of a resource management device according to an embodiment of the present application, which will be described according to various parts.

The NFVO is configured to receive a VNF deployment request, and formulate a deployment scenario of the VNF, where the deployment scenario of the VNF includes: a VNF deployment position and an FPGA card acceleration resource division scheme.

The NFVO is further configured to obtain an FPGA card acceleration requirement of the VNF and requirement information of the VNF from a Virtualized Network Function Manager (VNFM).

The NFVO is further configured to analyze a reconfigurable region partitioning scheme, including: and collecting the number of VFs under each node and the maximum reconfigurable area number allowed to be divided by the FPGA card through a part of reconfigurable managers.

And the NFVO is also used for requesting part of the reconfigurable manager to implement reconfigurable region division according to the reconfigurable region division scheme. And under the condition that the FPGA card has the divided reconfigurable areas, the reconfigurable areas are not re-divided, and the VNF deployment scheme is planned according to the divided reconfigurable areas and distributes tasks to the divided reconfigurable areas.

And the VNFM is used for managing the demand information of the VNF and sending the demand information of the VNF to the NFVP.

A Virtualized Infrastructure Manager (VIM) for controlling and managing virtualized resources, comprising: VNF virtual machine deployments and corresponding bindings of accelerator resources.

A Partial Reconfiguration Manager (PRM) for calling FPGA card driver to implement Partial Reconfiguration management, including: the method comprises at least one of reconfigurable area division, VF setting, areas allowing the division of the reconfigurable area and query of the maximum number of the reconfigurable areas.

The PRM is also used for configuring the FPGA card through driving, and comprises at least one of configuring a reconfigurable area and setting VF of the FPGA card.

The PRM is further configured to collect data of each node, report the data to the NFVO, and form a unified view in the NFVO to query at least one of a reconfigurable region, VF information, and a number of maximum reconfigurable regions allowed to be partitioned.

The FPGA card driver is a driver manager for different types of FPGA card network cards. The interface is used for providing a unified interface for a part of reconfigurable manager, and comprises the following components: and at least one of reconfigurable area division, VF setting, reconfigurable area division and VF information query.

Therefore, by introducing the PRM, the PRM calls the FPGA drive to realize the dynamic division of the reconfigurable area. The maximum reconfigurable area number of the reconfigurable areas is set from the device angle, the minimum occupation ratio of the reconfigurable areas is set from the service requirement angle, and the reduction of flexibility of layout and wiring during compiling caused by too many divided areas is avoided; and dividing the reconfigurable area of the FPGA card by combining the service type in the VNF requirement information, the minimum ratio of the reconfigurable area of each service type and the required number of each service type, thereby avoiding the waste of FPGA resources caused by too few divided areas.

Fig. 10 is a schematic diagram showing an alternative structure of a resource management device according to an embodiment of the present application, which will be described according to various parts.

The PRM810, configured to configure, by the FPGA card driver 804 of the node 801, the FPGA driver 806 of the node 802, and/or the FPGA driver 808 of the node 803, the FPGA card 805 of the node 801, the FPGA card 807 of the node 802, and/or the FPGA card 809 of the node 803, respectively, when the NVFP obtains requirement information of at least one VNF, and the same number of the requirement information of the at least one VNF is greater than or equal to a first threshold; the configuration of the FPGA card comprises at least one of configuration of a reconfigurable area of the FPGA card and setting of VF.

The FPGA card driver is used to provide a unified interface to the PRM810, and includes: and at least one of reconfigurable area division, VF setting, reconfigurable area division and VF information query.

Thus, when the NVFO acquires the requirement information of at least one VNF and the same quantity of the requirement information of the at least one VNF is greater than or equal to the first threshold, the PRM810 performs batch reconfigurable area division in the environment deployment stage, thereby saving the service deployment time.

Those of ordinary skill in the art will understand that: all or part of the steps of implementing the above method embodiments may be accomplished by hardware related to program commands, where the program may be stored in a storage medium, and when the program is executed, the program responds to a notification message based on a second application in a first area on a device screen when the notification message is received during the running of the first application; and the first area is smaller than the corresponding area of the input method application loaded when the second application is independently run on the screen of the device. And the aforementioned storage medium includes: a mobile storage device, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.

Alternatively, the integrated unit of the present invention may be stored in a computer-readable storage medium if it is implemented in the form of a software functional module and sold or used as a separate product. Based on such understanding, the technical solutions of the embodiments of the present invention may be essentially or partially implemented in the form of a software product, which is stored in a storage medium and includes several commands for enabling a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the methods described in the embodiments of the present invention. And the aforementioned storage medium includes: a removable storage device, a ROM, a RAM, a magnetic or optical disk, or various other media that can store program code.

The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and all the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the appended claims.

18页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:可重构智能控制器

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!