Load balancing method and device, computer readable storage medium, and electronic device
By receiving and judging traffic splitting requests, traffic splitting strategies are issued only when preset conditions are met, which solves the problems of resource waste and performance impact in existing technologies and achieves more accurate traffic splitting scheduling.
Patent Information
- Application Number
- CN202111372155.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-18
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2041-11-18
AI Technical Summary
Existing traffic offloading and scheduling methods will still offload traffic to the business servers of third-party services when users are in preset areas, even if the users do not use third-party services. This will increase resource consumption and affect the performance of other users.
It receives preset traffic splitting policies and traffic splitting requests from third-party applications, determines whether preset conditions are met, and issues traffic splitting policies only when the conditions are met, sending the user plane data stream corresponding to the third-party application to the local user plane function to achieve dynamic traffic splitting.
It saves network resources, improves the accuracy of traffic distribution policies, reduces resource waste, and minimizes the performance impact on other users.
Smart Images

Figure CN116156591B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of wireless communication technology, and more specifically, to a traffic offloading and scheduling method, a traffic offloading and scheduling device, a computer-readable storage medium, and an electronic device. Background Technology
[0002] With the development of wireless communication technology, a mechanism for traffic selection based on user-defined strategies has been developed, which enhances the flexibility and controllability of traffic selection and improves the efficiency of link utilization.
[0003] The existing 5G specifications stipulate the routing and scheduling function and process for any user: when a third party deploys a service server in the local network or at the edge node, it can issue a traffic diversion policy to instruct user data related to the third party's business that is within the coverage area of the edge node to be diverted from the local network to the third party's service server, thereby reducing latency and improving the service experience.
[0004] However, the current traffic splitting and scheduling method has the following problems: when a user is in a preset area, even if the user does not use third-party services, the traffic will still be split to the business server of the third-party services. This results in a large number of business data streams other than third-party services needing to be additionally split by the classifier, which leads to a large amount of resource consumption and will affect the performance of other users to some extent.
[0005] Therefore, a new method for traffic splitting and scheduling is needed.
[0006] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0007] The purpose of this disclosure is to provide a traffic diversion scheduling method, traffic diversion scheduling device, computer-readable storage medium, and electronic device, thereby overcoming, at least to some extent, the problem of wasted traffic diversion resources caused by the limitations and defects of related technologies.
[0008] According to one aspect of this disclosure, a traffic splitting and scheduling method is provided, comprising:
[0009] Receives preset traffic splitting strategies and traffic splitting requests sent by third-party applications;
[0010] When it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy, the traffic splitting strategy is issued;
[0011] A user plane data stream corresponding to the third-party application is determined, and according to the traffic splitting strategy, the user plane data stream corresponding to the third-party application is sent to the local user plane function so that the third-party application can obtain the user plane data stream.
[0012] In one exemplary embodiment of this disclosure, receiving a preset traffic splitting strategy and a traffic splitting request sent by a third-party application includes:
[0013] The application function / capability opening enablement platform receives preset traffic distribution strategies based on regions or time periods sent by third-party management servers;
[0014] The central user plane function receives the traffic diversion request sent by the third-party application and the user information of the current user;
[0015] The central user plane function sends the current user's information and the traffic diversion request to the application function through core network header enhancement.
[0016] In one exemplary embodiment of this disclosure, the traffic splitting request received by the central user plane function from the third-party application is generated by the third-party application based on the user information of the current user, when the user information of the current user meets the conditions.
[0017] In one exemplary embodiment of this disclosure, when it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy, the traffic splitting strategy is issued, including:
[0018] The application function / capability opening enablement platform determines whether the traffic splitting request sent by the third-party application meets the region or time period based on the preset traffic splitting strategy received from the application.
[0019] When the application function / capability opening enabling platform determines that the traffic splitting request meets the region or the time period, it will send the traffic splitting strategy to the strategy control function.
[0020] The policy control function converts the traffic splitting policy into policy control and billing rules, and sends the policy control and billing rules to the session management function.
[0021] In one exemplary embodiment of this disclosure, when the application function / capability enabling platform determines that the traffic splitting request satisfies the region or the time period, it sends the traffic splitting policy to the policy control function, including:
[0022] When the application function / capability enabling platform determines that the traffic diversion request meets the region or the time period, it determines whether the application function is located within the trusted domain.
[0023] When the application function / capability opening and enabling platform is located within the trusted domain, the application function will distribute the traffic splitting policy to the policy control function;
[0024] When the application function / capability opening enablement platform is located in an untrusted domain, the application function will distribute the traffic splitting policy to the network opening function;
[0025] The network open function performs authentication and distributes the traffic distribution policy to the policy control function.
[0026] In one exemplary embodiment of this disclosure, after sending the policy control and billing rules to the session management function, the traffic splitting and scheduling method further includes:
[0027] Insert local offloading into the session management function.
[0028] In one exemplary embodiment of this disclosure, determining the user plane data stream corresponding to the third-party application and sending the user plane data stream corresponding to the third-party application to the local user plane function according to the traffic splitting strategy includes:
[0029] The user plane data stream corresponding to the third-party application is determined through the local traffic splitting.
[0030] After determining that the local user plane function has received the business flow data initiated by the third-party application, it sends the user plane data stream corresponding to the third-party application to the local user plane function according to the traffic splitting strategy.
[0031] In one exemplary embodiment of this disclosure, after sending the user plane data stream corresponding to the third-party application to the local user plane function, the traffic splitting and scheduling method further includes:
[0032] After determining that the local user plane function has received the business flow data sent by the third-party application, it sends the user plane data stream corresponding to the third-party application to the third-party business server corresponding to the third-party application, so that the third-party application can obtain the user plane data stream from the third-party business server.
[0033] According to one aspect of this disclosure, a traffic diversion and scheduling apparatus is provided, comprising:
[0034] The request receiving module is used to receive the traffic splitting strategy sent by the third-party management server and the traffic splitting request sent by the third-party application.
[0035] The traffic splitting strategy delivery module is used to deliver the traffic splitting strategy when it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy.
[0036] The data stream distribution module is used to determine the user plane data stream corresponding to the third-party application, and send the user plane data stream corresponding to the third-party application to the local user plane function according to the distribution strategy, so that the third-party application can obtain the user plane data stream.
[0037] According to one aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the traffic splitting and scheduling method described in any of the exemplary embodiments above.
[0038] According to one aspect of this disclosure, an electronic device is provided, comprising:
[0039] Processor; and
[0040] Memory for storing the executable instructions of the processor;
[0041] The processor is configured to execute the traffic splitting scheduling method described in any of the above exemplary embodiments by executing the executable instructions.
[0042] This disclosure provides a traffic splitting scheduling method that receives a preset traffic splitting strategy and a traffic splitting request sent by a third-party application; when it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy, the traffic splitting strategy is issued; a user plane data stream corresponding to the third-party application is determined, and according to the traffic splitting strategy, the user plane data stream corresponding to the third-party application is sent to a local user plane function, so that the third-party application can obtain the user plane data stream from the local user plane function. On the one hand, by interacting with third-party applications in real time to obtain their dynamic traffic allocation request intentions, and performing dynamic traffic allocation based on these requests, network resources are saved. This solves the problem of resource waste caused by the need to allocate traffic to applications regardless of whether users are using them, as is the case in existing technologies. On the other hand, after receiving a traffic allocation request from a third-party application, the system determines whether the request meets the preset conditions of the traffic allocation policy. When the preset conditions are met, the traffic allocation policy is issued. This means that complex logical judgments can be made on the received traffic allocation requests, rather than relying on policy control functions for traffic allocation scheduling in related technologies, thus improving the accuracy of traffic allocation policy issuance.
[0043] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0044] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure. It is obvious that the drawings described below are merely some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.
[0045] Figure 1 A flowchart illustrating a traffic splitting and scheduling method according to an example embodiment of the present disclosure is shown schematically.
[0046] Figure 2 A block diagram of a traffic diversion scheduling system according to an example embodiment of the present disclosure is shown schematically.
[0047] Figure 3 The flowchart illustrates a method for receiving a preset traffic splitting strategy and a traffic splitting request sent by a third-party application, according to an example embodiment of the present disclosure.
[0048] Figure 4 The flowchart illustrates a method for issuing a traffic splitting strategy when it is determined that a traffic splitting request meets the preset conditions of the traffic splitting strategy, according to an example embodiment of the present disclosure.
[0049] Figure 5 The illustration shows a flowchart of a method for issuing a traffic splitting strategy to a policy control function when it is determined that a traffic splitting request meets a region or time period, according to an example embodiment of the present disclosure.
[0050] Figure 6 The flowchart illustrates a method for determining a user plane data stream corresponding to a third-party application and sending the user plane data stream corresponding to the third-party application to a local user plane function according to a traffic splitting strategy, based on an example embodiment of the present disclosure.
[0051] Figure 7 A flowchart illustrating a traffic splitting and scheduling method according to an example embodiment of the present disclosure is shown schematically.
[0052] Figure 8 The diagram schematically illustrates a traffic diversion and scheduling apparatus according to an exemplary embodiment of the present disclosure.
[0053] Figure 9 An electronic device for implementing the above-described traffic splitting and scheduling method is illustrated according to an example embodiment of the present disclosure. Detailed Implementation
[0054] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided to make this disclosure more comprehensive and complete, and to fully convey the concept of the example embodiments to those skilled in the art. The described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a full understanding of embodiments of this disclosure. However, those skilled in the art will recognize that the technical solutions of this disclosure can be practiced with one or more of the specific details omitted, or other methods, components, apparatus, steps, etc., can be employed. In other instances, well-known technical solutions are not shown or described in detail to avoid obscuring various aspects of this disclosure.
[0055] Furthermore, the accompanying drawings are merely illustrative of this disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0056] In related technologies, the 5G specification defines the routing and scheduling function and process for any user: when a third party deploys a service server in the local network or at the edge node, it can issue a traffic diversion policy to instruct user data related to the third party's business that is within the coverage area of the edge node to be diverted from the local network to the third party's service server, thereby reducing latency and improving the service experience.
[0057] However, the traffic splitting and scheduling methods in related technologies have the following problems: when a user is in a preset area, even if the user does not use third-party services, the traffic will still be split to the business server of the third-party services. This results in a large number of business data streams other than third-party services needing to be processed by the classifier for additional traffic splitting, which leads to a large amount of resource consumption and will affect the performance of other users to some extent.
[0058] Based on one or more of the above-mentioned problems, this example implementation first provides a traffic splitting and scheduling method, referring to... Figure 1 As shown, the traffic splitting and scheduling method may include the following steps:
[0059] Step S110. Receive the preset traffic splitting strategy and the traffic splitting request sent by the third-party application;
[0060] Step S120. When it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy, the traffic splitting strategy is issued;
[0061] Step S130. Determine the user plane data stream corresponding to the third-party application, and according to the traffic splitting strategy, send the user plane data stream corresponding to the third-party application to the local user plane function so that the third-party application can obtain the user plane data stream.
[0062] The above-described traffic splitting and scheduling method receives a preset traffic splitting strategy and a traffic splitting request sent by a third-party application; when it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy, the traffic splitting strategy is issued; the user plane data stream corresponding to the third-party application is determined, and according to the traffic splitting strategy, the user plane data stream corresponding to the third-party application is sent to the local user plane function, so that the third-party application can obtain the user plane data stream from the local user plane function. On the one hand, by interacting with third-party applications in real time to obtain their dynamic traffic allocation request intentions, and performing dynamic traffic allocation based on these requests, network resources are saved. This solves the problem of resource waste caused by the need to allocate traffic to applications regardless of whether users are using them, as is the case in existing technologies. On the other hand, after receiving a traffic allocation request from a third-party application, the system determines whether the request meets the preset conditions of the traffic allocation policy. When the preset conditions are met, the traffic allocation policy is issued. This means that complex logical judgments can be made on the received traffic allocation requests, rather than relying on policy control functions for traffic allocation scheduling in related technologies, thus improving the accuracy of traffic allocation policy issuance.
[0063] The following provides a detailed explanation and description of each step involved in the traffic splitting and scheduling method of the exemplary embodiments of this disclosure.
[0064] First, the application scenarios and purposes of the exemplary embodiments of this disclosure will be explained and described. Specifically, the exemplary embodiments of this disclosure can be applied to wireless communication of terminals, mainly studying how to reduce resource consumption and minimize the impact on other users in terms of performance when offloading traffic from third-party applications.
[0065] This disclosure is based on a received preset traffic splitting strategy and traffic splitting requests sent by third-party applications. On the one hand, when an application function receives a traffic splitting request from a third-party application, it determines whether the traffic splitting request meets the preset conditions of the preset traffic splitting strategy. Through the cooperation of the application function / capability enabling platform and the third-party application, the traffic splitting strategy is issued. The traffic splitting request is only sent to the application function / capability enabling platform when the user uses the third-party application and the third-party application wants to provide a better experience for the user. On the other hand, when the application function determines that the traffic splitting request meets the preset conditions of the traffic splitting strategy, the traffic splitting strategy is issued, which improves the accuracy of the traffic splitting strategy issuance. Furthermore, the user flow data related to the third-party application can be distributed to the third-party manager through a classifier, so that the third-party application can obtain the user flow data required by the current user using the third-party application in the third-party manager.
[0066] Secondly, the traffic diversion and scheduling system involved in the exemplary embodiments of this disclosure will be explained and described. (Reference) Figure 2 As shown, the traffic distribution and scheduling system may include a central node and local nodes. The central node includes a third-party management server 211, an application function / capability enabling platform 212, policy control functions 213, session management functions 214, access and mobility management functions 215, and a central user plane function 216; the local nodes include a third-party application 221, a wireless base station 222, local user plane functions 223, and a third-party service server 224. Specifically, the third-party management server 211 generates a preset traffic splitting policy and sends it to the application function / capability opening and enabling platform 212. Simultaneously, the application function / capability opening and enabling platform 212 receives traffic splitting requests from the third-party application 221 and determines whether the received requests meet the preset conditions of the traffic splitting policy. If they do, the platform sends the preset traffic splitting policy to the policy control function 213, which then distributes the received policy to the session management function 214. The session management function 214 performs traffic splitting according to the policy, sending user flow data related to the third-party application from the central user plane function 216 to the local user plane function 223. After the local user plane function 223 receives service flow data from the third-party application 221 via the wireless base station 222, it sends the user flow data related to the third-party application to the third-party service server 224. Additionally, the access and mobility management function 215 manages the wireless base station 222 and the third-party application 221.
[0067] The following will combine Figure 2 Steps S110-S130 are explained and described in detail.
[0068] In step S110, a preset traffic splitting strategy and a traffic splitting request sent by a third-party application are received.
[0069] This traffic offloading scheduling method can be applied to the 5G core network, which includes: an application function / capability opening and enabling platform, policy control function, session management function, central user plane function, and local user plane function. In this example embodiment, the preset traffic offloading policy is pre-generated by a third-party management server. The pre-generated traffic offloading policy does not consider the specific current user. The preset traffic offloading policy can be a time-based traffic offloading policy or a traffic offloading policy based on the current user's location area. In this example embodiment, the preset conditions for the traffic offloading policy are not specifically limited.
[0070] refer to Figure 3 As shown, receiving a preset traffic splitting strategy and a traffic splitting request sent by a third-party application may include steps S310-S330:
[0071] Step S310. The application function / capability opening enablement platform receives a preset traffic splitting strategy based on region or time period sent by a third-party management server;
[0072] Step S320. The central user plane function receives the traffic splitting request sent by the third-party application and the user information of the current user;
[0073] Step S330. The central user plane function sends the current user's user information and the traffic splitting request to the application function through core network header enhancement.
[0074] The following will explain and describe steps S310-S330. Specifically, firstly, the application function / capability opening and enabling platform receives a preset traffic distribution strategy sent by a third-party management server. This traffic distribution strategy can be a time-based strategy or a traffic distribution strategy based on the current user's location area. That is, the preset conditions of the traffic distribution strategy can be based on a time period or the current user's location area. In this example embodiment, the preset conditions of the traffic distribution strategy are not specifically limited. The capability opening and enabling platform may include application functions, and the capability opening and enabling platform may also be a part of the application functions. In this example embodiment, this is not specifically limited.
[0075] In addition to receiving preset traffic splitting strategies based on regions or time periods from third-party management servers, the application function / capability enabling platform also needs to receive traffic splitting requests from third-party applications. Upon receiving a traffic splitting request, the third-party application first sends the request to the central user plane function. This request can be based on HTTP (Hypertext Transfer Protocol) or HPPTS (Hypertext Transfer Protocol over Secure Socket Layer). In this example embodiment, the form of the traffic splitting request is not specifically limited. After receiving the traffic splitting request from the third-party application and the user information of the current user using the third-party application, the central user plane function adds the current user information to the data stream of the traffic splitting request using core header enhancement technology, and then sends the current user information and the traffic splitting request to the application function / capability enabling platform. The current user information can be the current user's level information or the current user's service quality requirements. The current user's service quality requirements can be low latency. In this example embodiment, the user information is not specifically limited.
[0076] Furthermore, in this example embodiment, the traffic redirection request received by the central user plane function from the third party is determined by the third-party application based on the user information of the current user using the third-party application. Specifically, when the current user opens the third-party application, the third-party application determines whether to provide traffic redirection to improve the current user's experience based on factors such as the current user's level information or the current user's requirements for the service quality of the third-party application. When the third-party application decides to provide traffic redirection to the current user, it generates a traffic redirection request and sends the generated traffic redirection request to the central user plane function.
[0077] In step S120, when it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy, the traffic splitting strategy is issued.
[0078] In this example embodiment, the preset conditions for the traffic splitting strategy can be that the current user's location is in a preset area, or that the time of the traffic splitting request is within a preset time period. This example embodiment does not specifically limit the preset conditions for the traffic splitting strategy. (See reference...) Figure 4 As shown, when it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy, the traffic splitting strategy is issued, which may include steps S410-S430:
[0079] Step S410. The application function / capability opening enablement platform determines whether the traffic splitting request sent by the third-party application meets the region or time period based on the received preset traffic splitting strategy based on region or time period.
[0080] Step S420. When the application function / capability opening enabling platform determines that the traffic splitting request meets the region or the time period, it sends the traffic splitting strategy to the strategy control function.
[0081] Step S430. The policy control function converts the traffic splitting policy into policy control and billing rules, and sends the policy control and billing rules to the session management function.
[0082] The following will explain and illustrate steps S410-S430. Specifically, after the application function / capability opening and enabling platform receives the preset traffic splitting policy based on region or time period sent by the third-party management server and the traffic splitting request sent by the third-party application, it can determine whether the traffic splitting request meets the preset conditions of the preset traffic splitting policy. When the traffic splitting request meets the preset conditions of the traffic splitting policy, the application function / capability opening and enabling platform will issue the traffic splitting policy to the policy control function; the policy control function will convert the traffic splitting policy into policy control and billing rules, and issue the policy control and billing rules to the session management function. In this process, the third-party application interacts with the application function in real time to obtain the dynamic traffic splitting request from the third-party application, and dynamically splits the traffic splitting request according to the traffic splitting policy. This saves network resources and solves the problem in the prior art where traffic splitting of the third-party application is required regardless of whether a user is using the application, thus causing resource waste.
[0083] For example, when the application function / capability enabling platform receives a preset traffic splitting policy based on location or time period, the location can be any specified area. When the current user's current location is within that area, the current user's traffic splitting request meets the preset conditions of the traffic splitting policy. The time period can be any specified time period, such as 15:00-18:00, etc. In this example embodiment, there are no specific limitations on the location and time period. Specifically, when the preset time period in the traffic splitting policy is 8:00-10:00, and the application function receives the traffic splitting request at 9:25, this time meets the preset time period of the traffic splitting policy. Therefore, the application function sends the traffic splitting policy to the policy control function. In this example embodiment, after receiving a traffic splitting request from a third-party application, the application function / capability opening enablement platform determines whether the traffic splitting request meets the preset conditions of the traffic splitting policy based on the received preset traffic splitting policy. When the preset conditions are met, the traffic splitting policy is issued. That is, the received traffic splitting request can be subjected to complex logical judgment, rather than the logical judgment performed by the policy control function before traffic splitting scheduling in related technologies, which improves the accuracy of traffic splitting policy issuance.
[0084] Furthermore, when the application function / capability opening enablement platform issues traffic distribution policies to the policy control function, it can do so through the network opening function. For details, please refer to... Figure 5 As shown, when the application function determines that the traffic splitting request meets the region or the time period, it sends the traffic splitting policy to the policy control function, which may include steps S510-S540:
[0085] Step S510. When the application function / capability opening enablement platform determines that the traffic splitting request meets the region or the time period, it determines whether the application function is located within the trusted domain.
[0086] Step S520. When the application function / capability opening enable platform is located within the trusted domain, the application function will send the traffic splitting policy to the policy control function;
[0087] Step S530. When the application function / capability opening enablement platform is located in an untrusted domain, the application function will send the traffic offloading policy to the network opening function;
[0088] Step S540. The network open function performs authentication and sends the traffic splitting policy to the policy control function.
[0089] The following will explain and illustrate steps S510-S540. Specifically, when the application function / capability opening enabling platform determines that the traffic offloading request meets the preset conditions of the traffic offloading policy, it determines whether the application function / capability opening enabling platform is located in the trusted domain. When the application function / capability opening enabling platform is located in the trusted domain, it can directly issue the traffic offloading policy to the policy control function. When the application function / capability opening enabling platform is located in the untrusted domain, it issues the traffic offloading policy to the network opening function. The network opening function is located between the 5G core network and external third-party application functions (and possibly some internal application functions). It is responsible for managing the network data open to the outside world. All external applications that want to access the internal data of the 5G core network must go through the network opening function, which performs authentication to ensure the security of external applications to the network. The network opening function then issues the traffic offloading policy to the policy control function.
[0090] Furthermore, after the policy control and billing rules are sent to the session management function, the traffic splitting and scheduling method further includes: inserting local traffic splitting into the session management function. The local traffic splitting can be ULCL (UplinkClassifier) or LADN (Local Area Data Network). In this example embodiment, the specific method of inserting local traffic splitting is not limited.
[0091] In step S130, a user plane data stream corresponding to the third-party application is determined, and according to the traffic splitting strategy, the user plane data stream corresponding to the third-party application is sent to the local user plane function so that the third-party application can obtain the user plane data stream.
[0092] In this example embodiment, the user plane data stream is the data stream required when a user performs any task in a third-party application; the user plane function is directly controlled and managed by the session management function, and performs business flow processing according to various policies issued by the session management function. (See reference...) Figure 6 As shown, determining the user plane data stream corresponding to the third-party application and sending the user plane data stream corresponding to the third-party application to the local user plane function according to the traffic splitting strategy may include steps S610 and S620:
[0093] Step S610. Determine the user plane data stream corresponding to the third-party application through the local traffic splitting;
[0094] Step S620. After determining that the local user plane function has received the service flow data initiated by the third-party application, the user plane data stream corresponding to the third-party application is sent to the local user plane function according to the traffic splitting strategy.
[0095] The following will explain and illustrate steps S610 and S620. Specifically, after inserting local traffic splitting into the session management function, local traffic splitting can determine the user plane data stream corresponding to the third-party application among all user plane data streams included in the central user plane function. When the current user uses the third-party application, the third-party application sends a business data stream to the local user plane function. After the local user plane function receives the business data stream, according to the traffic splitting strategy, the central user plane function sends the user plane data stream corresponding to the third-party application to the local user plane function so that the third-party application can obtain the user plane data stream.
[0096] Furthermore, after sending the user plane data stream corresponding to the third-party application to the local user plane function, the traffic splitting and scheduling method further includes: after determining that the local user plane function has received the service flow data sent by the third-party application, sending the user plane data stream corresponding to the third-party application to the third-party service server corresponding to the third-party application, so that the third-party application can obtain the user plane data stream from the third-party service server.
[0097] Specifically, after the local user plane function receives the business flow data sent by the third-party application, the local user plane will send the user plane data flow corresponding to the third-party application to the third-party business server corresponding to the third-party application, so that the third-party application can obtain the user plane data flow from the third-party business server and provide business services to the current user.
[0098] The traffic splitting scheduling method provided in this exemplary embodiment has at least the following advantages: the application function / capability opening enable platform interacts with third-party applications, obtains the traffic splitting request intent of third-party applications in real time, and performs dynamic traffic splitting according to the traffic splitting request sent by the third-party applications, saving network resources; and after receiving the traffic splitting request from the third-party applications, the application function determines whether to perform traffic splitting according to the preset conditions of the received traffic splitting strategy and issues the traffic splitting strategy, improving the accuracy of traffic splitting strategy issuance.
[0099] The following, combined with Figure 7 The traffic splitting and scheduling method of the exemplary embodiments of this disclosure will be further explained and described. The traffic splitting and scheduling method may include:
[0100] Step S702. The application function / capability opening enablement platform receives the traffic distribution policy sent by the third-party management server;
[0101] Step S704. The third-party application sends the traffic offloading request to the central user plane function.
[0102] Step S706. The central user plane function sends the current user's user information and traffic offloading request to the application function / capability opening enablement platform through the core network head enhancement technology;
[0103] Step S708. The application function / capability opening enablement platform determines whether the traffic splitting request meets the preset conditions of the traffic splitting strategy;
[0104] Step S710. When the conditions are met, the traffic splitting policy is sent to the policy control function;
[0105] Step S712. The policy control function converts the traffic splitting policy into policy control and billing rules, and sends the policy control and billing rules to the session management function;
[0106] Step S714. Insert local offloading in the session management function to send the user plane data stream corresponding to the third-party application to the local user plane function;
[0107] Step S716. The third-party application sends a business data stream to the local user plane function;
[0108] Step S718. The local user plane function sends the user plane data stream corresponding to the third-party application to the third-party business server;
[0109] Step S720. The third-party application obtains the user plane data stream from the third-party business server.
[0110] This disclosure also provides a traffic diversion and scheduling device, with reference to... Figure 8 As shown, it may include: a request receiving module 810, a traffic distribution strategy issuing module 820, and a data stream distribution module 830. Wherein:
[0111] The request receiving module 810 is used to receive preset traffic splitting strategies and traffic splitting requests sent by third-party applications;
[0112] The traffic splitting strategy delivery module 820 is used to deliver the traffic splitting strategy when it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy.
[0113] The data stream distribution module 830 is used to determine the user plane data stream corresponding to the third-party application, and send the user plane data stream corresponding to the third-party application to the local user plane function according to the distribution strategy, so that the third-party application can obtain the user plane data stream.
[0114] The specific details of each module in the above-mentioned diversion scheduling device have been described in detail in the corresponding diversion scheduling method, so they will not be repeated here.
[0115] In one exemplary embodiment of this disclosure, receiving a preset traffic splitting strategy and a traffic splitting request sent by a third-party application includes:
[0116] The application function / capability opening enablement platform receives preset traffic distribution strategies based on regions or time periods sent by third-party management servers;
[0117] The central user plane function receives the traffic diversion request sent by the third-party application and the user information of the current user;
[0118] The central user plane function sends the current user's information and the traffic diversion request to the application function through core network header enhancement.
[0119] In one exemplary embodiment of this disclosure, the traffic splitting request received by the central user plane function from the third-party application is generated by the third-party application based on the user information of the current user, when the user information of the current user meets the conditions.
[0120] In one exemplary embodiment of this disclosure, when it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy, the traffic splitting strategy is issued, including:
[0121] The application function / capability opening enablement platform determines whether the traffic splitting request sent by the third-party application meets the region or time period based on the preset traffic splitting strategy received from the application.
[0122] When the application function / capability opening enabling platform determines that the traffic splitting request meets the region or the time period, it will send the traffic splitting strategy to the strategy control function.
[0123] The policy control function converts the traffic splitting policy into policy control and billing rules, and sends the policy control and billing rules to the session management function.
[0124] In one exemplary embodiment of this disclosure, when the application function / capability enabling platform determines that the traffic splitting request satisfies the region or the time period, it sends the traffic splitting policy to the policy control function, including:
[0125] When the application function / capability enabling platform determines that the traffic diversion request meets the region or the time period, it determines whether the application function is located within the trusted domain.
[0126] When the application function / capability opening and enabling platform is located within the trusted domain, the application function will distribute the traffic splitting policy to the policy control function;
[0127] When the application function / capability opening enablement platform is located in an untrusted domain, the application function will distribute the traffic splitting policy to the network opening function;
[0128] The network open function performs authentication and distributes the traffic distribution policy to the policy control function.
[0129] In one exemplary embodiment of this disclosure, after sending the policy control and billing rules to the session management function, the traffic splitting and scheduling method further includes:
[0130] Insert local offloading into the session management function.
[0131] In one exemplary embodiment of this disclosure, determining the user plane data stream corresponding to the third-party application and sending the user plane data stream corresponding to the third-party application to the local user plane function according to the traffic splitting strategy includes:
[0132] The user plane data stream corresponding to the third-party application is determined through the local traffic splitting.
[0133] After determining that the local user plane function has received the business flow data initiated by the third-party application, it sends the user plane data stream corresponding to the third-party application to the local user plane function according to the traffic splitting strategy.
[0134] In one exemplary embodiment of this disclosure, after sending the user plane data stream corresponding to the third-party application to the local user plane function, the traffic splitting and scheduling method further includes:
[0135] After determining that the local user plane function has received the business flow data sent by the third-party application, it sends the user plane data stream corresponding to the third-party application to the third-party business server corresponding to the third-party application, so that the third-party application can obtain the user plane data stream from the third-party business server.
[0136] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to embodiments of this disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0137] Furthermore, although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.
[0138] In an exemplary embodiment of this disclosure, an electronic device capable of implementing the above-described method is also provided.
[0139] Those skilled in the art will understand that various aspects of this disclosure can be implemented as a system, method, or program product. Therefore, various aspects of this disclosure can be specifically implemented in the following forms: a completely hardware implementation, a completely software implementation (including firmware, microcode, etc.), or a combination of hardware and software aspects, collectively referred to herein as a "circuit," "module," or "system."
[0140] The following reference Figure 9 To describe an electronic device 900 according to such an embodiment of the present disclosure. Figure 9 The electronic device 900 shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments disclosed herein.
[0141] like Figure 9 As shown, the electronic device 900 is manifested in the form of a general-purpose computing device. The components of the electronic device 900 may include, but are not limited to: at least one processing unit 910, at least one storage unit 920, a bus 930 connecting different system components (including storage unit 920 and processing unit 910), and a display unit 940.
[0142] The storage unit stores program code that can be executed by the processing unit 910, causing the processing unit 910 to perform the steps described in the "Exemplary Methods" section of this specification according to various exemplary embodiments of this disclosure. For example, the processing unit 910 can perform actions such as... Figure 1The steps shown are as follows: S110: Receive a preset traffic splitting strategy and a traffic splitting request sent by a third-party application; S120: When it is determined that the traffic splitting request meets the preset conditions of the traffic splitting strategy, issue the traffic splitting strategy; S130: Determine the user plane data stream corresponding to the third-party application, and according to the traffic splitting strategy, send the user plane data stream corresponding to the third-party application to the local user plane function so that the third-party application can obtain the user plane data stream.
[0143] Storage unit 920 may include readable media in the form of volatile storage units, such as random access memory (RAM) 9201 and / or cache memory 9202, and may further include read-only memory (ROM) 9203.
[0144] Storage unit 920 may also include a program / utility 9204 having a set (at least one) program module 9205, such program module 9205 including but not limited to: operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.
[0145] Bus 930 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.
[0146] Electronic device 900 can also communicate with one or more external devices 1000 (e.g., keyboard, pointing device, Bluetooth device, etc.), and with one or more devices that enable a user to interact with electronic device 900, and / or with any device that enables electronic device 900 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 950. Furthermore, electronic device 900 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 960. As shown, network adapter 960 communicates with other modules of electronic device 900 via bus 930. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 900, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0147] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the methods according to the embodiments of this disclosure.
[0148] In exemplary embodiments of this disclosure, a computer-readable storage medium is also provided, on which a program product capable of implementing the methods described above is stored. In some possible implementations, various aspects of this disclosure may also be implemented as a program product including program code that, when the program product is run on a terminal device, causes the terminal device to perform the steps of the various exemplary embodiments of this disclosure described in the "Exemplary Methods" section above.
[0149] The program product for implementing the above-described method according to embodiments of the present disclosure may employ a portable compact disc read-only memory (CD-ROM) and include program code, and may run on a terminal device, such as a personal computer. However, the program product of the present disclosure is not limited thereto. In this document, the readable storage medium may be any tangible medium containing or storing a program that may be used by or in conjunction with an instruction execution system, apparatus, or device.
[0150] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0151] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.
[0152] The program code contained on the readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0153] Program code for performing the operations of this disclosure can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0154] Furthermore, the above figures are merely illustrative of the processes included in the method according to exemplary embodiments of this disclosure and are not intended to be limiting. It is readily understood that the processes shown in the above figures do not indicate or limit the temporal order of these processes. Additionally, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.
[0155] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and embodiments are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the claims.
Claims
1. A traffic splitting and scheduling method, characterized in that, Applied to a 5G core network, wherein the 5G core network includes: an application function / capability opening and enabling platform, policy control function, session management function, central user plane function, and local user plane function, and the traffic offloading and scheduling method includes: The application function / capability opening and enabling platform receives a preset traffic splitting strategy based on region or time period sent by a third-party management server; the central user plane function receives a traffic splitting request sent by a third-party application and the user information of the current user; the central user plane function sends the user information of the current user and the traffic splitting request to the application function / capability opening and enabling platform through core network head enhancement. The application function / capability enabling platform determines whether the traffic splitting request sent by the third-party application meets the region or time period based on the received preset traffic splitting policy. When the application function / capability enabling platform determines that the traffic splitting request meets the region or time period, it sends the traffic splitting policy to the policy control function. The policy control function converts the traffic splitting policy into policy control and billing rules, and sends the policy control and billing rules to the session management function. A user plane data stream corresponding to the third-party application is determined, and according to the traffic splitting strategy, the user plane data stream corresponding to the third-party application is sent to the local user plane function so that the third-party application can obtain the user plane data stream.
2. The traffic splitting and scheduling method according to claim 1, characterized in that, The traffic splitting request received by the central user plane function from the third-party application is generated by the third-party application based on the user information of the current user. When the user information of the current user meets the conditions, the traffic splitting request is generated.
3. The traffic splitting and scheduling method according to claim 1, characterized in that, When the application function / capability opening enabling platform determines that the traffic splitting request meets the region or the time period, it distributes the traffic splitting policy to the policy control function, including: When the application function / capability enabling platform determines that the traffic diversion request meets the region or the time period, it determines whether the application function is located within the trusted domain. When the application function / capability opening and enabling platform is located within the trusted domain, the application function / capability opening and enabling platform will distribute the traffic splitting policy to the policy control function; When the application function / capability opening enablement platform is located in an untrusted domain, the application function / capability opening enablement platform will distribute the traffic splitting policy to the network opening function. The network open function performs authentication and distributes the traffic distribution policy to the policy control function.
4. The traffic splitting and scheduling method according to claim 3, characterized in that, After sending the policy control and billing rules to the session management function, the traffic splitting and scheduling method further includes: Insert local offloading into the session management function.
5. The traffic splitting and scheduling method according to claim 4, characterized in that, Determine the user plane data stream corresponding to the third-party application, and send the user plane data stream corresponding to the third-party application to the local user plane function according to the traffic splitting strategy, including: The user plane data stream corresponding to the third-party application is determined through the local traffic splitting. After determining that the local user plane function has received the business flow data initiated by the third-party application, it sends the user plane data stream corresponding to the third-party application to the local user plane function according to the traffic splitting strategy.
6. The traffic splitting and scheduling method according to claim 5, characterized in that, After sending the user plane data stream corresponding to the third-party application to the local user plane function, the traffic splitting and scheduling method further includes: After determining that the local user plane function has received the business flow data sent by the third-party application, it sends the user plane data stream corresponding to the third-party application to the third-party business server corresponding to the third-party application, so that the third-party application can obtain the user plane data stream from the third-party business server.
7. A traffic diversion and scheduling device, characterized in that, Applied to a 5G core network, wherein the 5G core network includes: an application function / capability opening and enabling platform, policy control function, session management function, central user plane function, and local user plane function, and the traffic offloading and scheduling device includes: The request receiving module is used for the application function / capability opening and enabling platform to receive a preset traffic splitting strategy based on region or time period sent by a third-party management server; the central user plane function receives traffic splitting requests sent by third-party applications and user information of the current user; the central user plane function sends the user information of the current user and the traffic splitting request to the application function / capability opening and enabling platform through core network head enhancement. The traffic splitting policy delivery module is used by the application function / capability enabling platform to determine whether the traffic splitting request sent by the third-party application meets the region or time period based on the received preset traffic splitting policy; when the application function / capability enabling platform determines that the traffic splitting request meets the region or time period, it delivers the traffic splitting policy to the policy control function; the policy control function converts the traffic splitting policy into policy control and billing rules, and sends the policy control and billing rules to the session management function; The data stream distribution module is used to determine the user plane data stream corresponding to the third-party application, and send the user plane data stream corresponding to the third-party application to the local user plane function according to the distribution strategy, so that the third-party application can obtain the user plane data stream.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the traffic splitting and scheduling method according to any one of claims 1-6.
9. An electronic device, characterized in that, include: processor; as well as Memory for storing the executable instructions of the processor; The processor is configured to execute the traffic splitting scheduling method according to any one of claims 1-6 by executing the executable instructions.
Citation Information
Patent Citations
Content-based routing method and device
CN110120917A
Data distribution method and device
CN112584437A