Scaling out / in method and apparatus, device, storage medium and program
By setting up common components in the UPF cluster, automatically obtaining load information and processing capacity information, determining capacity update strategies, and performing capacity expansion or reduction processing, the problem of poor flexibility in UPF network element expansion is solved, and more flexible and automated expansion is achieved Scale reduction process.
Patent Information
- Application Number
- PCT/CN2023/110322
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-07-31
- Publication Date
- 2025-02-06
AI Technical Summary
In the prior art, the expansion flexibility of UPF network elements is poor, and due to the functional requirements of SMF network elements, the expansion process is not flexible enough.
By setting up general components in the UPF cluster, obtaining load information and processing capacity information, determining capacity update strategies, and automatically expanding or shrinking capacity through general components, avoiding manual operations.
Improve the flexibility of expansion and capacity of UPF network elements, avoid the limitation of expansion and capacity by SMF network elements or load balancing instances, and realize the automated capacity expansion and capacity reduction process.
Smart Images

Figure CN2023110322_06022025_PF_FP_ABST
Abstract
Description
Scaling method, device, equipment, storage medium and program Technical Field
[0001] The embodiments of the present application relate to the field of communication technologies, and in particular to a method, apparatus, device, storage medium, and program for scaling capacity. Background Art
[0002] To better serve users, the capacity of the User Plane Function (UPF) network element of the fifth generation (5G) core network can be expanded to enhance the service capability of the UPF network element.
[0003] Currently, multiple UPF network elements can be configured to run in parallel to achieve capacity expansion of the UPF network element. The multiple UPF network elements can be managed and controlled by the Session Management Function (SMF) network element. For example, the SMF network element can sense the load of multiple UPF network elements and control the multiple UPF network elements to forward messages according to load balancing requirements. However, the above method requires the SMF network element to have the ability to manage and control the UPF network element, and has high functional requirements for the SMF network element, so that the capacity expansion of the UPF network element is limited by the SMF network element, resulting in poor expansion flexibility of the UPF network element.
[0004] Summary of the Invention
[0005] The present application provides a scaling method, apparatus, device, storage medium and program, which can improve the scaling flexibility of UPF network elements.
[0006] In a first aspect, the present application provides a scaling method applied to a user plane function (UPF) cluster, wherein a common component is set in the UPF cluster, and the UPF cluster is used to deploy at least one control plane instance and at least one data plane instance, and the method includes:
[0007] Obtaining load information and processing capacity information of the UPF cluster;
[0008] Determine a capacity update strategy based on the load information and processing capability information, where the capacity update strategy is used to indicate an update of the number of control plane instances and / or data plane instances in the UPF cluster;
[0009] According to the capacity update strategy, the UPF cluster is expanded or reduced in capacity through the general component.
[0010] In a possible implementation, the load information includes the number of requests received by the UPF cluster per unit time;
[0011] The processing capacity information includes: the first request processing volume of the control plane instance in the UPF cluster per unit time, and the second request processing volume of the data plane instance in the UPF cluster per unit time.
[0012] In one possible implementation, determining a capacity update strategy according to the load information and the processing capability information includes:
[0013] determining a first request volume range corresponding to the first request processing volume, and if the request reception volume is outside the first request volume range, determining a first capacity update strategy, wherein the first capacity update strategy is used to indicate adjusting the number of control plane instances;
[0014] determining a second request volume range corresponding to the second request processing volume, and if the request reception volume is outside the second request volume range, determining a second capacity update strategy, wherein the second capacity update strategy is used to indicate adjusting the number of data plane instances;
[0015] The capacity update strategy includes the first capacity update strategy and the second capacity update strategy.
[0016] In one possible implementation, according to the capacity update strategy, the UPF cluster is expanded or reduced by the general component, including:
[0017] According to the first capacity update strategy, the control plane instance in the UPF cluster is expanded or reduced in capacity; and / or,
[0018] According to the second capacity update strategy, the data plane instance in the UPF cluster is expanded or reduced in capacity.
[0019] In one possible implementation, the first capacity update strategy is used to indicate adding a control plane instance; and according to the first capacity update strategy, the control plane instance in the UPF cluster is expanded, including:
[0020] Generate an identifier of a newly added control plane instance through the general component;
[0021] Allocate hardware resources and control plane image files to the newly added control plane instance through the general component;
[0022] The identifier of the newly added control plane instance is added to the control plane configuration file through the general component to add the control plane instance to the UPF cluster.
[0023] In one possible implementation, the first capacity update strategy is used to indicate reducing control plane instances; and scaling down the control plane instances in the UPF cluster according to the first capacity update strategy includes:
[0024] Determine a candidate control plane instance among multiple control plane instances of the UPF cluster, where the candidate control plane instance is the control plane instance with the smallest load among the multiple control plane instances;
[0025] Through the general component, the identifier of the candidate control plane instance is deleted in the control plane configuration file to reduce the control plane instances in the UPF cluster.
[0026] In one possible implementation, the second capacity update strategy is used to indicate adding a data plane instance; and according to the second capacity update strategy, the data plane instance in the UPF cluster is expanded, including:
[0027] Generate an identifier of a newly added data plane instance through the general component;
[0028] Allocate hardware resources and data plane image files to the newly added data plane instance through the general component;
[0029] Controlling the newly added data plane instance to send a registration request to a preset control plane instance, where the registration request includes an identifier of the newly added data plane instance;
[0030] The preset control plane instance adds an identifier of the newly added data plane instance in the data plane configuration file and allocates an Internet Protocol IP address to the newly added data plane instance;
[0031] Control the newly added data plane instance to bind the IP address and publish the IP address to add a new data plane instance in the UPF cluster.
[0032] In one possible implementation, the second capacity update strategy is used to indicate reducing data plane instances; and scaling down the data plane instances in the UPF cluster according to the second capacity update strategy includes:
[0033] Determine a candidate data plane instance from a plurality of data plane instances in the UPF cluster, where the candidate data plane instance is the data plane instance with the smallest load among the plurality of data plane instances;
[0034] Through the preset control plane instance, the identifier of the candidate data plane instance is deleted in the data plane configuration file, and the IP address corresponding to the candidate data plane is recovered, so as to reduce the data plane instance in the UPF cluster.
[0035] In a possible implementation, the method further includes:
[0036] Receive the PFCP request sent by the Session Management Function (SMF) network element;
[0037] Determine a target control plane instance among the multiple control plane instances by using the general component, wherein the target control plane instance is the control plane instance with the smallest load among the multiple control plane instances;
[0038] Processing the PFCP request through the target control plane instance to obtain the PFCP processing result;
[0039] Determine a target data plane instance from the multiple data plane instances using the target control plane instance, where the target data plane instance is the data plane instance with the smallest load among the multiple data plane instances;
[0040] According to the PFCP processing result, data processing is performed through the target data plane instance.
[0041] In a possible implementation, a public cache is further provided in the UPF cluster; and processing the PFCP request through the target control plane instance to obtain the PFCP processing result includes:
[0042] The target control plane instance obtains the historical processing information of the PFCP request from the public cache;
[0043] The target control plane instance processes the PFCP request according to the historical processing information and the PFCP request to obtain the PFCP processing result.
[0044] In a second aspect, the present application provides a scaling device, which is applied to a user plane function UPF cluster, wherein a general component is set in the UPF cluster, and the UPF cluster is used to deploy at least one control plane instance and at least one data plane instance. The device includes an acquisition module, a determination module, and a scaling module, wherein:
[0045] The acquisition module is used to obtain the load information and processing capacity information of the UPF cluster;
[0046] The determination module is used to determine a capacity update strategy according to the load information and the processing capability information, wherein the capacity update strategy is used to indicate an update of the number of control plane instances and / or data plane instances in the UPF cluster;
[0047] The expansion and contraction module is used to expand or contract the UPF cluster through the general component according to the capacity update strategy.
[0048] In a possible implementation, the load information includes the number of requests received by the UPF cluster per unit time;
[0049] The processing capacity information includes: the first request processing volume of the control plane instance in the UPF cluster per unit time, and the second request processing volume of the data plane instance in the UPF cluster per unit time.
[0050] In a possible implementation, the determining module is specifically configured to:
[0051] determining a first request volume range corresponding to the first request processing volume, and if the request reception volume is outside the first request volume range, determining a first capacity update strategy, wherein the first capacity update strategy is used to indicate adjusting the number of control plane instances;
[0052] determining a second request volume range corresponding to the second request processing volume, and if the request reception volume is outside the second request volume range, determining a second capacity update strategy, wherein the second capacity update strategy is used to indicate adjusting the number of data plane instances;
[0053] The capacity update strategy includes the first capacity update strategy and the second capacity update strategy.
[0054] In one possible implementation, the expansion and contraction module is specifically configured to:
[0055] According to the first capacity update strategy, the control plane instance in the UPF cluster is expanded or reduced in capacity; and / or,
[0056] According to the second capacity update strategy, the data plane instance in the UPF cluster is expanded or reduced in capacity.
[0057] In one possible implementation, the first capacity update strategy is used to instruct to add a control plane instance; and the capacity expansion module is specifically configured to:
[0058] Generate an identifier of a newly added control plane instance through the general component;
[0059] Allocate hardware resources and control plane image files to the newly added control plane instance through the general component;
[0060] The identifier of the newly added control plane instance is added to the control plane configuration file through the general component to add the control plane instance to the UPF cluster.
[0061] In one possible implementation, the first capacity update strategy is used to indicate a reduction in control plane instances; and the capacity expansion and contraction module is specifically configured to:
[0062] Determine a candidate control plane instance among multiple control plane instances of the UPF cluster, where the candidate control plane instance is the control plane instance with the smallest load among the multiple control plane instances;
[0063] Through the general component, the identifier of the candidate control plane instance is deleted in the control plane configuration file to reduce the control plane instances in the UPF cluster.
[0064] In one possible implementation, the second capacity update strategy is used to instruct to add a data plane instance; and the capacity expansion module is specifically configured to:
[0065] Generate an identifier of a newly added data plane instance through the general component;
[0066] Allocate hardware resources and data plane image files to the newly added data plane instance through the general component;
[0067] Controlling the newly added data plane instance to send a registration request to a preset control plane instance, where the registration request includes an identifier of the newly added data plane instance;
[0068] The preset control plane instance adds an identifier of the newly added data plane instance in the data plane configuration file and allocates an Internet Protocol IP address to the newly added data plane instance;
[0069] Control the newly added data plane instance to bind the IP address and publish the IP address to add a new data plane instance in the UPF cluster.
[0070] In one possible implementation, the second capacity update strategy is used to instruct to reduce data plane instances; and the capacity expansion and contraction module is specifically configured to:
[0071] Determine a candidate data plane instance from a plurality of data plane instances in the UPF cluster, where the candidate data plane instance is the data plane instance with the smallest load among the plurality of data plane instances;
[0072] Through the preset control plane instance, the identifier of the candidate data plane instance is deleted in the data plane configuration file, and the IP address corresponding to the candidate data plane is recovered, so as to reduce the data plane instance in the UPF cluster.
[0073] In a possible implementation, the capacity expansion and contraction device further includes a request processing module, and the request processing module is configured to:
[0074] Receive the PFCP request sent by the Session Management Function (SMF) network element;
[0075] Determine a target control plane instance among the multiple control plane instances by using the general component, wherein the target control plane instance is the control plane instance with the smallest load among the multiple control plane instances;
[0076] Processing the PFCP request through the target control plane instance to obtain the PFCP processing result;
[0077] Determine a target data plane instance from the multiple data plane instances using the target control plane instance, where the target data plane instance is the data plane instance with the smallest load among the multiple data plane instances;
[0078] According to the PFCP processing result, data processing is performed through the target data plane instance.
[0079] In a possible implementation, a public cache is further provided in the UPF cluster; and the request processing module is specifically configured to:
[0080] The target control plane instance obtains the historical processing information of the PFCP request from the public cache;
[0081] The target control plane instance processes the PFCP request according to the historical processing information and the PFCP request to obtain the PFCP processing result.
[0082] In a third aspect, the present application provides a capacity expansion and contraction device, comprising: a processor, and a memory communicatively connected to the processor;
[0083] The memory stores a computer program;
[0084] The processor executes the computer program to implement the method as described in any one of the first aspects.
[0085] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a computer, the method as described in any one of the first aspects is implemented.
[0086] In a fifth aspect, the present application provides a computer program product, comprising a computer program, which implements the method as described in any one of the first aspects when executed by a computer.
[0087] The expansion and contraction methods, devices, equipment, storage media, and programs provided in this application can obtain the load information and processing capacity information of the UPF cluster; can determine the capacity update strategy based on the load information and processing capacity information; and can perform expansion or contraction processing on the UPF cluster through common components based on the capacity update strategy. In the above method, the expansion or contraction of the UPF network element can be automatically implemented through common components, avoiding the expansion of the UPF network element through manual operation, making the expansion and contraction flexibility of the UPF network element better. In addition, the above method can avoid the expansion and contraction of the UPF network element being limited by the SMF network element or the load balancing instance in the UPF network element, further improving the expansion and contraction flexibility of the UPF network element. BRIEF DESCRIPTION OF THE DRAWINGS
[0088] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0089] FIG1 is a schematic diagram of a 5G core network architecture provided in an embodiment of the present application;
[0090] FIG2 is a schematic diagram of a connection between a UPF network element and an SMF network element provided in an embodiment of the present application;
[0091] FIG3 is a schematic diagram of a UPF network element provided in an embodiment of the present application;
[0092] FIG4 is a schematic diagram of a flow chart of a capacity expansion and contraction method provided in an embodiment of the present application;
[0093] FIG5 is a flow chart of a control plane instance expansion method provided in an embodiment of the present application;
[0094] FIG6 is a flow chart of a control plane instance scaling method provided in an embodiment of the present application;
[0095] FIG7 is a flow chart of a method for expanding a data plane instance according to an embodiment of the present application;
[0096] FIG8 is a schematic diagram of a flow chart of a method for scaling down a data plane instance provided in an embodiment of the present application;
[0097] FIG9 is a schematic diagram of a process of UPF cluster data processing provided by an embodiment of the present application;
[0098] FIG10 is a schematic structural diagram of a capacity expansion and contraction device provided in an embodiment of the present application;
[0099] FIG11 is a schematic structural diagram of another expansion and contraction device provided in an embodiment of the present application;
[0100] FIG12 is a schematic diagram of the hardware structure of a capacity expansion and contraction device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0101] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. In the following description, when referring to the drawings, identical numerals in different figures represent identical or similar elements, unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
[0102] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.
[0103] This application relates to a 5G core network. To facilitate understanding of the embodiments of this application, the 5G core network is first described in conjunction with Figure 1.
[0104] As shown in Figure 1, Figure 1 is a schematic diagram of a 5G core network architecture provided by an embodiment of the present application. Referring to Figure 1, the 5G core network may include a UPF network element, an authentication server function (AUSF) network element, an access and mobility management function (AMF) network element, an SMF network element, a network slice selection function (NSSF) network element, a network exposure function (NEF) network element, a network repository function (NRF) network element, a policy control function (PCF) network element, a unified data management function (UDM) network element, and an application function (AF) network element.
[0105] User equipment (UE) can be a 5G terminal device such as a mobile phone or computer. The radio access network (R)AN can be a 5G base station. The data network (DN) can be the service server accessed by the UE.
[0106] As shown in Figure 1, AUSF network elements, AMF network elements, SMF network elements, AF network elements, UDM network elements, PCF network elements, NRF network elements, NEF network elements, and NSSF network elements can be connected through a bus. AUSF network elements can access the bus through the AUSF service interface (Nausf), AMF network elements can access the bus through the AMF service interface (Namf), SMF network elements can access the bus through the SMF service interface (Nsmf), AF network elements can access the bus through the AF service interface (Naf), UDM network elements can access the bus through the UDM service interface (Nudm), PCF network elements can access the bus through the PCF service interface (Npcf), NRF network elements can access the bus through the NRF service interface (Nnrf), NEF network elements can access the bus through the NEF service interface (Nnef), and NSSF network elements can access the bus through the NSSF service interface (Nnssf). The UE and the AMF network element can interact through the signaling plane interface (N1), the AMF network element and the (R)AN can interact through the signaling plane interface (N2), the (R)AN and the UPF network element can interact through the data interface (N3), the UPF network elements can interact through the user plane interface (N9), the UPF network element and the SMF network element can interact through the control interface (N4), and the UPF network element and the DN can interact through the data interface (N6).
[0107] The UPF network element obtains the Packet Forwarding Control Protocol (PFCP) request from the SMF network element through the N4 interface, maintains the Packet Data Unit (PDU) session table according to the PFCP request, and can forward service traffic according to the PDU session table during the uplink and downlink data processing.
[0108] In the related art, in order to improve the service capability of the UPF network element, the UPF network element can be expanded. The following describes the expansion process of the UPF network element in the related art with reference to FIG2.
[0109] Figure 2 is a schematic diagram of a connection between a UPF network element and an SMF network element provided in an embodiment of the present application. Referring to Figure 2, a UPF cluster may include multiple independent UPF network elements (e.g., UPF 1, UPF 2, ..., and UPF n in Figure 2). The SMF network element can communicate with each UPF network element separately through the N4 interface.
[0110] The multiple UPF network elements in the UPF cluster can be configured by technicians according to actual needs. For example, when the UPF cluster needs to be expanded, technicians can add new UPF network elements in the UPF cluster.
[0111] The load balancing module in the SMF network element can sense the load of each UPF network element. The SMF network element can control each UPF network element to create and delete sessions based on the load, so that each UPF network element in the UPF cluster has a balanced load.
[0112] However, in the above method, the SMF network element needs to have the functions of multiple UPF access, UPF load sensing, load balancing, and UPF network element selection, which places high functional requirements on the SMF network element. In addition, to avoid incompatibility issues when the SMF network element communicates with multiple UPF network elements, it is generally required that the SMF network element and the UPF network element be produced by the same manufacturer. This makes the expansion of the UPF network element limited by the SMF network element, resulting in poor expansion flexibility of the UPF network element.
[0113] In view of this, the present application provides a scaling method that can scale UPF network elements in a way that is not perceived by the outside world, thereby making the scaling flexibility of UPF network elements better. The scaling method provided by the present application is described below in conjunction with FIG3 .
[0114] FIG3 is a schematic diagram of a UPF network element provided in an embodiment of the present application. Referring to FIG3 , common components may be provided in the UPF network element. The control plane and data plane of the UPF network element may be provided separately. The control plane may include multiple control plane instances (e.g., control plane instance 1, control plane instance 2, ..., and control plane instance n in FIG3 ). The data plane may include multiple data plane instances (e.g., data plane instance 1, data plane instance 2, ..., and data plane instance m in FIG3 ).
[0115] Common components can be container orchestration engines (Kubernetes, K8s), lightweight container orchestration engines (K3s), or multi-container orchestration tools (Docker-compose).
[0116] The UPF network element may be a physical server; or, the UPF network element may be a cluster of multiple physical servers, which is not limited in this application.
[0117] Multiple control plane instances of a UPF network element can be deployed on a single physical server; alternatively, multiple control plane instances of a UPF network element can be deployed on multiple physical servers; alternatively, multiple control plane instances of a UPF network element can be deployed on a single virtual server; alternatively, multiple control plane instances of a UPF network element can be deployed on multiple virtual servers. This application does not impose any limitation on this.
[0118] Multiple data plane instances of a UPF network element can be deployed on a single physical server; alternatively, multiple data plane instances of a UPF network element can be deployed on multiple physical servers; alternatively, multiple data plane instances of a UPF network element can be deployed on a single virtual server; alternatively, multiple data plane instances of a UPF network element can be deployed on multiple virtual servers. This application does not impose any limitation on this.
[0119] In the aforementioned UPF network element, the universal component can obtain the UPF network element's load and, based on the UPF network element's load, add / delete control plane instances and / or data plane instances to achieve expansion or contraction of the UPF network element. By scaling the UPF network element using the aforementioned method, the scaling of the UPF network element can be prevented from being limited by the SMF network element. Furthermore, in the aforementioned method, the universal component can automatically scale the UPF network element, eliminating manual operations and providing greater flexibility in scaling the UPF network element.
[0120] The technical solutions shown in this application are described below through specific embodiments. It should be noted that the following embodiments can exist independently or in combination with each other, and the same or similar contents will not be repeated in different embodiments.
[0121] FIG4 is a flow chart of a method for scaling capacity provided in an embodiment of the present application. As shown in FIG4 , the method of this embodiment includes:
[0122] S401. Obtain load information and processing capacity information of the UPF cluster.
[0123] This embodiment can be applied to a UPF cluster, in which common components are set, and the UPF cluster is used to deploy at least one control plane instance and at least one data plane instance.
[0124] A UPF cluster may be a server cluster that can implement the functions of a UPF network element. The UPF cluster may include several physical servers and / or several virtual servers.
[0125] Any control plane instance can be an independent unit that implements the control plane functions of the UPF network element. The control plane instance can be deployed on a physical server; or the control plane instance can be deployed on a virtual server.
[0126] Any data plane instance can be an independent unit that implements the UPF network data plane function. A data plane instance can be deployed on a physical server or a virtual server.
[0127] The load information may include the number of requests received by the UPF cluster per unit time. For example, the load information may be the number of PFCP requests received by the UPF cluster per unit time.
[0128] The processing capacity information may include the first request processing volume of the control plane instance in the UPF cluster per unit time, and the second request processing volume of the data plane instance in the UPF cluster per unit time.
[0129] The first request may be a request that the control plane instance needs to process. For example, the first request may be a PFCP request.
[0130] The second request may be a request that the data plane instance needs to process. For example, the second request may be a processing result of the PFCP request sent by the control plane instance to the data plane instance.
[0131] It should be noted that the first request processing volume per unit time of the control plane instance in the UPF cluster can be the sum of the number of first requests processed per unit time by all control plane instances in the UPF cluster. The second request processing volume per unit time of the data plane instance in the UPF cluster can be the sum of the number of second requests processed per unit time by all data plane instances in the UPF cluster.
[0132] In this embodiment, the load information and processing capacity information of the UPF cluster can be obtained through the general component.
[0133] S402. Determine a capacity update strategy based on the load information and the processing capability information. The capacity update strategy is used to indicate the number of control plane instances and / or data plane instances to be updated in the UPF cluster.
[0134] The capacity update policy may include a first capacity update policy and a second capacity update policy. The first capacity update policy is used to indicate the number of control plane instances to be adjusted. The second capacity update policy is used to indicate the number of data plane instances to be adjusted.
[0135] In this embodiment, a first request quantity range corresponding to the first request processing quantity can be determined. If the request reception quantity is outside the first request quantity range, a first capacity update strategy is determined; a second request quantity range corresponding to the second request processing quantity is determined. If the request reception quantity is outside the second request quantity range, a second capacity update strategy is determined.
[0136] The first request quantity range can be the numerical range of the sum of the numbers of first requests that can be processed by all control plane instances in the UPF network element within the load range.
[0137] It should be understood that if the first requested amount is less than all values in the first requested amount range, then redundant control plane instances exist in the UPF network element, that is, the number of control plane instances needs to be reduced. If the first requested amount is greater than all values in the first requested amount range, then the control plane of the UPF network element needs to be expanded, that is, the number of control plane instances needs to be increased.
[0138] The second request quantity range can be the numerical range of the sum of the numbers of second requests that can be processed by all data plane instances in the UPF network element within the load range.
[0139] It should be understood that if the second requested amount is less than all values in the second requested amount range, then redundant data plane instances exist in the UPF network element, that is, the number of data plane instances needs to be reduced. If the second requested amount is greater than all values in the second requested amount range, then the data plane of the UPF network element needs to be expanded, that is, the number of data plane instances needs to be increased.
[0140] For example, assume that the minimum value in the first request volume range is x and the maximum value is y, where x and y are numbers greater than 0. If the first request volume processed by the control plane instance per unit time is less than x, a first capacity update policy may be determined, the first capacity update policy being used to instruct a decrease in the number of control plane instances. If the first request volume processed by the control plane instance per unit time is greater than y, a first capacity update policy may be determined, the first capacity update policy being used to instruct an increase in the number of control plane instances.
[0141] Assume that the minimum value in the second request volume range is x and the maximum value is y, where x and y are numbers greater than 0. If the second request volume processed by the data plane instance per unit time is less than x, a second capacity update policy can be determined, which indicates a reduction in the number of data plane instances. If the second request volume processed by the data plane instance per unit time is greater than y, a second capacity update policy can be determined, which indicates an increase in the number of data plane instances.
[0142] S403: According to the capacity update strategy, the UPF cluster is expanded or reduced through common components.
[0143] In this embodiment, the general component can expand or shrink the control plane instance in the UPF cluster according to the first capacity update strategy; and / or, expand or shrink the data plane instance in the UPF cluster according to the second capacity update strategy.
[0144] Specifically, if the first capacity update strategy indicates to reduce the number of control plane instances, the general component can delete the control plane instances in the UPF cluster to achieve the scaling down of the control plane instances of the UPF cluster. If the first capacity update strategy indicates to increase the number of control plane instances, the general component can increase the control plane instances in the UPF cluster to achieve the scaling up of the control plane instances of the UPF cluster. If the second capacity update strategy indicates to reduce the number of data plane instances, the general component can delete the data plane instances in the UPF cluster to achieve the scaling down of the data plane instances of the UPF cluster. If the second capacity update strategy indicates to increase the number of data plane instances, the general component can increase the data plane instances in the UPF cluster to achieve the scaling up of the data plane instances of the UPF cluster.
[0145] It should be noted that in this embodiment, the general component can perform load balancing on the control plane instances, and the control plane instances can perform load balancing on the data plane instances. This avoids the need to set up a load balancing module for the UPF network element in the SMF network element, thereby preventing the scalability of the UPF network element from being limited by the SMF network element. In addition, in this embodiment, there is no need to set up a load balancing instance in the UPF network element, thus avoiding the service capacity of the UPF network element being limited by the load balancing instance.
[0146] The scaling method provided in this embodiment can obtain the load information and processing capacity information of the UPF cluster; can determine the capacity update strategy based on the load information and processing capacity information; and can perform expansion or contraction processing on the UPF cluster through common components based on the capacity update strategy. In the above method, the expansion or contraction of the UPF network element can be automatically implemented through common components, avoiding the expansion of the UPF network element through manual operation, making the expansion and contraction flexibility of the UPF network element better. In addition, the above method can avoid the expansion and contraction of the UPF network element being limited by the SMF network element or the load balancing instance in the UPF network element, further improving the expansion and contraction flexibility of the UPF network element.
[0147] Based on the embodiment of FIG4 , the specific method of expanding or shrinking the UPF cluster according to the capacity update strategy through the general component is described in detail below in combination with FIG5-FIG8 .
[0148] First, referring to FIG5 , the expansion process of the control plane instance in the UPF cluster is described in detail.
[0149] FIG5 is a flow chart of a control plane instance expansion method provided in an embodiment of the present application. As shown in FIG5 , the method of this embodiment includes:
[0150] S501: Generate an identifier for a newly added control plane instance through a common component.
[0151] In this embodiment, the first capacity update strategy is used to instruct to add a control plane instance, that is, the control plane instance can be expanded through a common component.
[0152] For any control plane instance, the control plane instance identifier can be used to uniquely indicate the corresponding control plane instance. For example, the control plane instance identifier can be a string of characters.
[0153] In this embodiment, the first capacity update policy may further indicate the number of newly added control plane instances. The general component may generate a corresponding identifier for each newly added control plane instance according to the first capacity update policy.
[0154] S502: Allocate hardware resources and control plane image files to the newly added control plane instance through common components.
[0155] The hardware resources allocated to the newly added control plane instance may be CPU resources, storage resources, etc. required by the newly added control plane instance.
[0156] The control plane image file allocated to the newly added control plane instance may be the image resource corresponding to the newly added control plane instance.
[0157] In this embodiment, the general component may increase the number of control plane instances in the control plane configuration file to allocate a control plane image file to the newly added control plane instance.
[0158] S503. Add an identifier of a new control plane instance to the control plane configuration file through a common component to add a control plane instance to the UPF cluster.
[0159] In this embodiment, the general component can automatically increase the number of control plane instances in the control plane configuration file according to the first capacity update strategy, and can add the identifier of the newly added control plane instance to the control plane configuration file to achieve capacity expansion of the control plane instances in the UPF cluster.
[0160] For example, assuming that the first capacity update policy indicates adding one new control plane instance, the general component may increase the number of control plane instances by one in the control plane configuration file according to the first capacity update policy, generate an identifier for the newly added control plane instance, and add the identifier of the newly added control plane instance to the control plane configuration file.
[0161] It should be noted that, in this embodiment, the newly added control plane instance can be deployed on the original physical server or virtual server in the UPF cluster; or, the newly added control plane instance can also be deployed on the newly added physical server or virtual server in the UPF cluster.
[0162] The scaling method provided in this embodiment can generate an identifier for a new control plane instance through a common component; allocate hardware resources and a control plane image file to the new control plane instance through the common component; and add the identifier of the new control plane instance to the control plane configuration file through the common component to add the control plane instance to the UPF cluster. In the above method, the common component can be used to automatically implement the scaling of the control plane instance in the UPF network element, avoiding the need for manual scaling of the UPF cluster and improving the flexibility of the UPF network element scaling.
[0163] Next, with reference to FIG6 , the scaling-down process of the control plane instance in the UPF cluster is described in detail.
[0164] FIG6 is a flow chart of a control plane instance scaling method provided in an embodiment of the present application. As shown in FIG6 , the method of this embodiment includes:
[0165] S601. Determine a candidate control plane instance among multiple control plane instances of a UPF cluster.
[0166] In this embodiment, the first capacity update strategy is used to instruct to delete the control plane instance, that is, the control plane instance can be scaled down through the common component.
[0167] The control plane instance to be selected may be a control plane instance that needs to be deleted.
[0168] In this embodiment, the selected control plane instance is the one with the smallest load among the multiple control plane instances. In other words, when a control plane instance needs to be deleted, the one with the smallest load among the multiple control plane instances can be deleted to ensure that the control plane instance scaling down has minimal impact on the normal operation of the UPF network element.
[0169] S602. Delete the identifier of the candidate control plane instance in the control plane configuration file through the common component to reduce the control plane instances in the UPF cluster.
[0170] In this embodiment, the general component can automatically delete the identifier of the candidate control plane instance in the control plane configuration file to complete the scaling down of the control plane instance in the UPF cluster.
[0171] The scaling method provided in this embodiment can determine a candidate control plane instance from multiple control plane instances in a UPF cluster. A common component can be used to delete the identifier of the candidate control plane instance from the control plane configuration file to reduce the number of control plane instances in the UPF cluster. In this method, the common component can be used to automatically scale down control plane instances in UPF network elements, eliminating the need for manual scaling down of the UPF cluster and improving the flexibility of scaling up UPF network elements.
[0172] Next, with reference to FIG7 , the expansion processing of the data plane instance in the UPF cluster is described in detail.
[0173] FIG7 is a flow chart of a method for expanding a data plane instance according to an embodiment of the present application. As shown in FIG7 , the method of this embodiment includes:
[0174] S701: Generate an identifier for a newly added data plane instance through a common component.
[0175] In this embodiment, the second capacity update strategy is used to instruct to add a data plane instance, that is, the capacity of the data plane instance can be expanded through a common component.
[0176] For any data plane instance, the data plane instance identifier can be used to uniquely identify the corresponding data plane instance. For example, the data plane instance identifier can be a string of characters.
[0177] In this embodiment, the second capacity update policy may further indicate the number of newly added data plane instances. The general component may generate a corresponding identifier for each newly added data plane instance according to the second capacity update policy.
[0178] S702: Allocate hardware resources and data plane image files to the newly added data plane instance through common components.
[0179] The hardware resources allocated to the newly added data plane instance can be the CPU resources, storage resources, etc. required by the newly added data plane instance.
[0180] The control plane image file allocated to the newly added data plane instance may be the image resource corresponding to the newly added data plane instance.
[0181] In this embodiment, the general component may increase the number of data plane instances in the data plane configuration file to allocate control plane image files to the newly added data plane instances.
[0182] S703: Control the newly added data plane instance to send a registration request to the preset control plane instance. The registration request includes an identifier of the newly added data plane instance.
[0183] The preset control plane instance may be a pre-set control plane instance used to perform registration processing on a newly added data plane instance.
[0184] It should be understood that the preset control plane instance can be one or more control plane instances in a UPF cluster or multiple control plane instances. During implementation, the preset control plane instance can be determined from multiple control plane instances in a UPF cluster based on actual needs. This embodiment does not limit the method for determining the preset control plane instance.
[0185] S704: The preset control plane instance adds an identifier of the newly added data plane instance to the data plane configuration file and allocates an IP address to the newly added data plane instance.
[0186] The IP address may be an IP address used by the UPF cluster to communicate with other network elements. For example, the IP address may be the IP address of the N3 interface, the IP address of the N6 interface, or the IP address of the N9 interface.
[0187] In this embodiment, each interface of the UPF cluster (e.g., N3 interface, N6 interface, or N9 interface) has a pre-configured address pool, which includes multiple IP addresses configured for the interface. The number of IP addresses included in each address pool can be set according to actual needs and is not limited in this embodiment.
[0188] For example, the address pool of the N3 interface may include multiple IP addresses of the N3 interface, the address pool of the N6 interface may include multiple IP addresses of the N6 interface, and the address pool of the N9 interface may include multiple IP addresses of the N9 interface.
[0189] In this embodiment, the preset control plane instance can allocate an IP address to the newly added data plane instance, so that the newly added data plane instance can communicate with other network elements through the IP address.
[0190] In this embodiment, by assigning IP addresses to newly added data plane instances, each data plane instance is configured with a corresponding IP address. For any data plane instance, it can communicate with other network elements (NEs) via the IP address, receiving data traffic from upstream and downstream NEs. For a UPF cluster, the UPF cluster can implement multiple IP addresses for data plane instances, and can receive different traffic data through different IP addresses, achieving load balancing across the data plane instances.
[0191] S705. Control the binding of the new data plane instance to the IP address and publish the IP address to add the new data plane instance in the UPF cluster.
[0192] In this embodiment, after the preset control plane instance allocates an IP address to the newly added data plane instance, the newly added data plane instance can be bound to the IP address and publish dynamic routes to announce the IP address to the corresponding network elements to guide the corresponding network elements to forward data traffic to the newly added data plane instance.
[0193] It should be noted that, in this embodiment, the newly added data plane instance can be deployed on the original physical server or virtual server in the UPF cluster; alternatively, the newly added data plane instance can also be deployed on the newly added physical server or virtual server in the UPF cluster.
[0194] The scaling method provided in this embodiment can generate an identifier for a newly added data plane instance through a common component; can allocate hardware resources and data plane image files to the newly added data plane instance through the common component; can control the newly added data plane instance to send a registration request to a preset control plane instance; the preset control plane instance adds the identifier of the newly added data plane instance to the data plane configuration file and allocates an Internet Protocol (IP) address to the newly added data plane instance, thereby adding the new data plane instance to the UPF cluster. In the above method, the common component can be used to automatically implement the scaling of data plane instances in the UPF network element, avoiding the need to manually scale the UPF cluster, thereby improving the scaling flexibility of the UPF network element.
[0195] Next, with reference to FIG8 , the scaling down process of the data plane instance in the UPF cluster is described in detail.
[0196] FIG8 is a flow chart of a method for scaling down a data plane instance provided in an embodiment of the present application. As shown in FIG8 , the method of this embodiment includes:
[0197] S801. Determine a candidate data plane instance from multiple data plane instances in a UPF cluster.
[0198] In this embodiment, the second capacity update strategy is used to instruct to delete the data plane instance, that is, the data plane instance can be scaled down through the common component.
[0199] The data plane instance to be selected may be a data plane instance that needs to be deleted.
[0200] In this embodiment, the selected data plane instance is the data plane instance with the smallest load among the multiple data plane instances. In other words, when a data plane instance needs to be deleted, the data plane instance with the smallest load among the multiple data plane instances can be deleted to ensure that the data plane instance scaling down has minimal impact on the normal operation of the UPF network element.
[0201] S802. By presetting the control plane instance, delete the identifier of the candidate data plane instance in the data plane configuration file and reclaim the IP address corresponding to the candidate data plane to reduce the data plane instance in the UPF cluster.
[0202] In this embodiment, for any candidate data plane instance, when the candidate data plane instance is deleted, the preset control plane instance can delete the identifier of the candidate data plane instance in the data plane configuration file and reclaim the IP address of the candidate data plane to complete the scaling down of the data plane instance in the UPF cluster.
[0203] Based on any of the above embodiments, the process of processing data by the UPF cluster is described below in conjunction with Figure 9.
[0204] FIG9 is a flow chart of a UPF cluster data processing process provided by an embodiment of the present application. As shown in FIG9 , the method of this embodiment includes:
[0205] S901. The general component receives the PFCP request sent by the SMF network element.
[0206] In this embodiment, the UPF cluster can receive the PFCP request through the general component.
[0207] Optionally, a distribution module may be provided in the general component, and the distribution module may be used to receive PFCP requests.
[0208] S902: The general component determines a target control plane instance from multiple control plane instances.
[0209] The target control plane instance is the control plane instance with the smallest load among the multiple control plane instances. The target control plane instance can be used to process the PFCP request.
[0210] In this embodiment, the general component can obtain the load of multiple control plane instances in the UPF cluster and determine the target control plane instance based on the load of each control plane instance and the load balancing strategy. The load balancing strategy can be set according to actual needs and is not limited in this embodiment.
[0211] Optionally, the general component may determine the control plane instance with the smallest load among the multiple control plane instances as the target control plane instance.
[0212] S903: The general component sends a PFCP request to the target control plane instance.
[0213] The general component may send the PFCP request to the target control plane instance, so that the target control plane instance may process the PFCP request.
[0214] S904: The target control plane instance processes the PFCP request and obtains a PFCP processing result.
[0215] In this embodiment, a public cache is also provided in the UPF cluster. The public cache can be a storage space accessible to all control plane instances in the UPF cluster.
[0216] The public cache can be used to store processing information for each PFCP request received by the UPF cluster. For example, after the target control plane instance processes the PFCP request and obtains the PFCP processing result, it can store the PFCP processing result in the public cache.
[0217] In this embodiment, the target control plane instance obtains historical processing information of the PFCP request from the public cache; the target control plane instance processes the PFCP request according to the historical processing information and the PFCP request to obtain a PFCP processing result.
[0218] The historical processing information of the PFCP request may be historical processing information of the session corresponding to the PFCP request.
[0219] In this embodiment, for any session, processing information of all PFCP requests corresponding to the session may be stored in a public cache, so that other control plane network elements can further process the session.
[0220] The PFCP request may include a corresponding session identifier, and the target control plane instance may obtain historical processing information of the PFCP request from the cache space according to the session identifier.
[0221] For example, assuming the PFCP request is a modification request for session A, the target control plane instance can retrieve historical PFCP request processing information from the public cache based on the identifier of session A in the PFCP request. This historical PFCP request processing information includes session A establishment information and / or session A modification information. The target control plane instance can process the PFCP request based on the PFCP request and the session A establishment information and / or session A modification information, obtaining a PFCP processing result.
[0222] In this embodiment, the target control plane instance may also store the PFCP processing result in a public cache.
[0223] S905: The target control plane instance determines a target data plane instance from multiple data plane instances.
[0224] The target data plane instance is the data plane instance with the smallest load among the multiple data plane instances.
[0225] In this embodiment, the target control plane instance can obtain the load of multiple data plane instances in the UPF cluster and determine the target data plane instance based on the load of each data plane instance and the load balancing strategy. The load balancing strategy can be set according to actual needs and is not limited in this embodiment.
[0226] Optionally, the target control plane instance may determine a data plane instance with the smallest load among the multiple data plane instances as the target data plane instance.
[0227] S906. The target control plane instance sends the PFCP processing result to the target data plane instance.
[0228] S907: The target data plane instance performs data processing according to the PFCP processing result.
[0229] The data processing may include performing General Packet Radio Service Tunneling Protocol (GTP) encapsulation, decapsulation, Quality of Service (QoS), or caching on the data.
[0230] In this embodiment, the target data plane instance may process the data corresponding to the session corresponding to the PFCP request according to the PFCP processing result.
[0231] Specifically, the target data plane instance can receive data corresponding to the session corresponding to the PFCP request sent by upstream and downstream network elements, can process the received data, and can forward the processed data.
[0232] In the scaling method provided by this embodiment, the general component can receive a PFCP request sent by an SMF network element, can determine a target control plane instance from multiple control plane instances, and can send a PFCP request to the target control plane instance. The target control plane instance can process the PFCP request to obtain a PFCP processing result, can determine a target data plane instance from multiple data plane instances, and can send the PFCP processing result to the target data plane instance. The target data plane instance can perform data processing based on the PFCP processing result. In the above method, the general component can perform load balancing processing on the control plane instance, and the control plane instance can perform load balancing processing on the data plane instance. This avoids setting up a load balancing module for the UPF network element in the SMF network element, thereby avoiding the scaling of the UPF network element being limited by the SMF network element. In addition, in this embodiment, there is no need to set up a load balancing instance in the UPF network element, thereby avoiding the service capability of the UPF network element being limited by the load balancing instance, making the scaling flexibility of the UPF network element better.
[0233] FIG10 is a schematic diagram of the structure of a scaling device provided by an embodiment of the present application. Referring to FIG10 , the scaling device 10 is applied to a UPF cluster, wherein a common component is provided in the UPF cluster, and the UPF cluster is used to deploy at least one control plane instance and at least one data plane instance. The scaling device 10 includes an acquisition module 11, a determination module 12, and a scaling module 13, wherein:
[0234] The acquisition module 11 is used to obtain the load information and processing capacity information of the UPF cluster;
[0235] The determining module 12 is configured to determine a capacity update strategy based on the load information and the processing capability information, wherein the capacity update strategy is configured to indicate an update number of control plane instances and / or data plane instances in the UPF cluster;
[0236] The expansion and contraction module 13 is used to expand or contract the UPF cluster through the general component according to the capacity update strategy.
[0237] The capacity expansion and contraction device provided in this embodiment can be used to execute the capacity expansion and contraction method in the above method embodiment. Its implementation principle and technical effects are similar and will not be described in detail here.
[0238] In a possible implementation, the load information includes the number of requests received by the UPF cluster per unit time;
[0239] The processing capacity information includes: the first request processing volume of the control plane instance in the UPF cluster per unit time, and the second request processing volume of the data plane instance in the UPF cluster per unit time.
[0240] In a possible implementation, the determining module 12 is specifically configured to:
[0241] determining a first request volume range corresponding to the first request processing volume, and if the request reception volume is outside the first request volume range, determining a first capacity update strategy, wherein the first capacity update strategy is used to indicate adjusting the number of control plane instances;
[0242] determining a second request volume range corresponding to the second request processing volume, and if the request reception volume is outside the second request volume range, determining a second capacity update strategy, wherein the second capacity update strategy is used to indicate adjusting the number of data plane instances;
[0243] The capacity update strategy includes the first capacity update strategy and the second capacity update strategy.
[0244] In a possible implementation, the expansion and contraction module 13 is specifically configured to:
[0245] According to the first capacity update strategy, the control plane instance in the UPF cluster is expanded or reduced in capacity; and / or,
[0246] According to the second capacity update strategy, the data plane instance in the UPF cluster is expanded or reduced in capacity.
[0247] In a possible implementation, the first capacity update strategy is used to indicate adding a control plane instance; and the capacity expansion and contraction module 13 is specifically configured to:
[0248] Generate an identifier of a newly added control plane instance through the general component;
[0249] Allocate hardware resources and control plane image files to the newly added control plane instance through the general component;
[0250] The identifier of the newly added control plane instance is added to the control plane configuration file through the general component to add the control plane instance to the UPF cluster.
[0251] In a possible implementation, the first capacity update strategy is used to indicate a reduction in control plane instances; and the capacity expansion and contraction module 13 is specifically configured to:
[0252] Determine a candidate control plane instance among multiple control plane instances of the UPF cluster, where the candidate control plane instance is the control plane instance with the smallest load among the multiple control plane instances;
[0253] Through the general component, the identifier of the candidate control plane instance is deleted in the control plane configuration file to reduce the control plane instances in the UPF cluster.
[0254] In one possible implementation, the second capacity update strategy is used to instruct to add a data plane instance; and the capacity expansion module 13 is specifically configured to:
[0255] Generate an identifier of a newly added data plane instance through the general component;
[0256] Allocate hardware resources and data plane image files to the newly added data plane instance through the general component;
[0257] Controlling the newly added data plane instance to send a registration request to a preset control plane instance, where the registration request includes an identifier of the newly added data plane instance;
[0258] The preset control plane instance adds an identifier of the newly added data plane instance in the data plane configuration file and allocates an Internet Protocol IP address to the newly added data plane instance;
[0259] Control the newly added data plane instance to bind the IP address and publish the IP address to add a new data plane instance in the UPF cluster.
[0260] In a possible implementation, the second capacity update strategy is used to indicate reducing data plane instances; and the capacity expansion and contraction module 13 is specifically configured to:
[0261] Determine a candidate data plane instance from a plurality of data plane instances in the UPF cluster, where the candidate data plane instance is the data plane instance with the smallest load among the plurality of data plane instances;
[0262] Through the preset control plane instance, the identifier of the candidate data plane instance is deleted in the data plane configuration file, and the IP address corresponding to the candidate data plane is recovered, so as to reduce the data plane instance in the UPF cluster.
[0263] FIG11 is a schematic diagram of the structure of another scaling device provided in an embodiment of the present application. Referring to FIG11 , the scaling device 10 further includes a request processing module 14, which is used to:
[0264] Receive the PFCP request sent by the Session Management Function (SMF) network element;
[0265] Determine a target control plane instance among the multiple control plane instances by using the general component, wherein the target control plane instance is the control plane instance with the smallest load among the multiple control plane instances;
[0266] Processing the PFCP request through the target control plane instance to obtain the PFCP processing result;
[0267] Determine a target data plane instance from the multiple data plane instances using the target control plane instance, where the target data plane instance is the data plane instance with the smallest load among the multiple data plane instances;
[0268] According to the PFCP processing result, data processing is performed through the target data plane instance.
[0269] In a possible implementation, a public cache is further provided in the UPF cluster; the request processing module 14 is specifically configured to:
[0270] The target control plane instance obtains the historical processing information of the PFCP request from the public cache;
[0271] The target control plane instance processes the PFCP request according to the historical processing information and the PFCP request to obtain the PFCP processing result.
[0272] The capacity expansion and contraction device provided in this embodiment can be used to execute the capacity expansion and contraction method in the above method embodiment. Its implementation principle and technical effects are similar and will not be described in detail here.
[0273] Figure 12 is a schematic diagram of the hardware structure of a capacity expansion and contraction device provided in an embodiment of the present application. Referring to Figure 12 , the capacity expansion and contraction device 20 may include: a processor 21 and a memory 22 , wherein the processor 21 and the memory 22 are capable of communicating; illustratively, the processor 21 and the memory 22 communicate via a communication bus 23 , the memory 22 is configured to store program instructions, and the processor 21 is configured to invoke the program instructions in the memory to execute the capacity expansion and contraction method described in any of the above method embodiments.
[0274] Optionally, the capacity expansion and contraction device 20 may further include a communication interface, which may include a transmitter and / or a receiver.
[0275] Optionally, the processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), or application-specific integrated circuits (ASICs). A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in this application may be directly implemented by a hardware processor or implemented by a combination of hardware and software modules in the processor.
[0276] An embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a computer, the scaling method described in any of the above method embodiments is implemented. The implementation principle and technical effects are similar and will not be elaborated here.
[0277] An embodiment of the present application also provides a computer program product, including a computer program. When the computer program is executed by a computer, it implements the scaling method described in any of the above method embodiments. The implementation principle and technical effects are similar and will not be described in detail here.
[0278] All or part of the steps of the above-mentioned method embodiments can be completed by hardware related to program instructions. The aforementioned program can be stored in a readable memory. When the program is executed, it performs the steps of the above-mentioned method embodiments; and the aforementioned memory (storage medium) includes: read-only memory (ROM), RAM, flash memory, hard disk, solid-state drive, magnetic tape, floppy disk, optical disc, and any combination thereof.
[0279] The present application embodiment is described with reference to the flow chart and / or block diagram of the method, device (system), and computer program product according to the embodiment of the present application. It should be understood that each process and / or box in the flow chart and / or block diagram and the combination of the process and / or box in the flow chart and / or block diagram can be realized by computer program instructions. These computer program instructions can be provided to the processing unit of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable terminal device to produce a machine, so that the instruction executed by the processing unit of the computer or other programmable terminal device produces a device for realizing the function specified in one process or multiple processes and / or one box or multiple boxes of the flow chart.
[0280] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable terminal device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device that implements the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.
[0281] These computer program instructions can also be loaded onto a computer or other programmable terminal device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.
[0282] Obviously, those skilled in the art may make various changes and modifications to the embodiments of the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the embodiments of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations.
[0283] In this application, the term "include" and its variations may refer to non-restrictive inclusion; the term "or" and its variations may refer to "and / or". In this application, the terms "first", "second", etc. are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. In this application, "plurality" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the previous and subsequent associated objects are in an "or" relationship.
Claims
1. A method for scaling up and down, characterized in that: Applied to a user plane function UPF cluster, a common component is set in the UPF cluster, the UPF cluster is used to deploy at least one control plane instance and at least one data plane instance, and the method includes: Obtaining load information and processing capacity information of the UPF cluster; Determine a capacity update strategy according to the load information and the processing capacity information, where the capacity update strategy is used to indicate the number of control plane instances and / or data plane instances in the UPF cluster to be updated; According to the capacity update strategy, the UPF cluster is expanded or reduced in capacity through the general component.
2. The method according to claim 1, characterized in that The load information includes the amount of requests received by the UPF cluster per unit time; The processing capacity information includes: the first request processing volume of the control plane instance in the UPF cluster per unit time, and the second request processing volume of the data plane instance in the UPF cluster per unit time.
3. The method according to claim 2, characterized in that Determining a capacity update strategy according to the load information and the processing capability information includes: Determine a first request amount range corresponding to the first request processing amount, and if the request receiving amount is outside the first request amount range, determine a first capacity update strategy, where the first capacity update strategy is used to indicate adjusting the number of control plane instances; Determine a second request amount range corresponding to the second request processing amount, and if the request receiving amount is outside the second request amount range, determine a second capacity update strategy, where the second capacity update strategy is used to indicate adjusting the number of data plane instances; The capacity update strategy includes the first capacity update strategy and the second capacity update strategy.
4. The method according to claim 3, characterized in that According to the capacity update strategy, the UPF cluster is expanded or reduced in capacity through the general component, including: According to the first capacity update strategy, the control plane instance in the UPF cluster is expanded or reduced in capacity; and / or, According to the second capacity update strategy, the data plane instance in the UPF cluster is expanded or reduced in capacity.
5. The method according to claim 4, characterized in that The first capacity update strategy is used to indicate adding a control plane instance; and according to the first capacity update strategy, the control plane instance in the UPF cluster is expanded, including: Generate an identifier of a newly added control plane instance through the general component; Allocate hardware resources and control plane image files to the newly added control plane instance through the general component; The identifier of the newly added control plane instance is added to the control plane configuration file through the general component to add the control plane instance in the UPF cluster.
6. The method according to claim 4, characterized in that The first capacity update strategy is used to indicate reducing the control plane instance; According to the first capacity update strategy, scaling down the control plane instance in the UPF cluster includes: Determine a candidate control plane instance among multiple control plane instances of the UPF cluster, wherein the candidate control plane instance is a control plane instance with the smallest load among the multiple control plane instances; Through the general component, the identifier of the candidate control plane instance is deleted in the control plane configuration file to reduce the control plane instances in the UPF cluster.
7. The method according to claim 4, characterized in that The second capacity update strategy is used to indicate adding a data plane instance; and according to the second capacity update strategy, the data plane instance in the UPF cluster is expanded, including: Generate an identifier of a newly added data plane instance through the general component; Allocate hardware resources and data plane image files to the newly added data plane instance through the general component; Controlling the newly added data plane instance to send a registration request to a preset control plane instance, wherein the registration request includes an identifier of the newly added data plane instance; The preset control plane instance adds an identifier of the newly added data plane instance in the data plane configuration file and allocates an Internet Protocol IP address to the newly added data plane instance; Control the newly added data plane instance to bind the IP address and publish the IP address to add a new data plane instance in the UPF cluster.
8. The method according to claim 4, characterized in that The second capacity update strategy is used to indicate reducing the data plane instance; According to the second capacity update strategy, scaling down the data plane instances in the UPF cluster includes: Determine a candidate data plane instance from among multiple data plane instances in the UPF cluster, wherein the candidate data plane instance The data plane instance is the data plane instance with the smallest load among the multiple data plane instances; By presetting the control plane instance, the identifier of the candidate data plane instance is deleted in the data plane configuration file, and the IP address corresponding to the candidate data plane is recovered, so as to reduce the data plane instances in the UPF cluster.
9. The method according to any one of claims 1 to 8, characterized in that: The method further comprises: Receive the message forwarding control protocol PFCP request sent by the session management function SMF network element; Determine a target control plane instance among the multiple control plane instances by using the general component, wherein the target control plane instance is the control plane instance with the smallest load among the multiple control plane instances; Processing the PFCP request through the target control plane instance to obtain the PFCP processing result; Determine a target data plane instance from the multiple data plane instances by using the target control plane instance, wherein the target data plane instance is the data plane instance with the smallest load among the multiple data plane instances; According to the PFCP processing result, data processing is performed through the target data plane instance.
10. The method according to claim 9, characterized in that A public cache is also provided in the UPF cluster; Processing the PFCP request through the target control plane instance to obtain the PFCP processing result includes: The target control plane instance obtains the historical processing information of the PFCP request from the public cache; The target control plane instance processes the PFCP request according to the historical processing information and the PFCP request to obtain the PFCP processing result.
11. A capacity expansion and contraction device, characterized in that: Applied to a user plane function UPF cluster, a general component is set in the UPF cluster, the UPF cluster is used to deploy at least one control plane instance and at least one data plane instance, the device includes an acquisition module, a determination module and a scaling module, wherein: The acquisition module is used to obtain the load information and processing capacity information of the UPF cluster; The determination module is used to determine a capacity update strategy according to the load information and the processing capability information, wherein the capacity update strategy is used to indicate the number of control plane instances and / or data plane instances in the UPF cluster to be updated; The expansion and contraction module is used to expand or contract the UPF cluster through the general component according to the capacity update strategy.
12. A capacity expansion and contraction device, characterized in that: include: A processor, and a memory communicatively connected to the processor; The memory stores a computer program; The processor executes the computer program to implement the method according to any one of claims 1 to 10.
13. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a computer, the method according to any one of claims 1 to 10 is implemented.
14. A computer program product, characterized in that The invention comprises a computer program, which implements the method according to any one of claims 1 to 10 when being executed by a computer.
Citation Information
Patent Citations
System and method for automatically and elastically expanding and contracting resources, and cloud platform
CN111796908A
Cluster capacity dynamic adjustment method, equipment, storage medium and communication system
CN113811013A
User plane function (UPF) equipment, message processing method and equipment
CN115835259A
User plane function (UPF) selection based on predicted load information
US20210219179A1