A dynamic adjustment method, server, medium and program product of a communication network
By dynamically adjusting network handover strategies through mobile prediction models and difference calculations on the server side, the problems of low network resource utilization and unstable handover in traditional network architectures are solved, realizing intelligent network optimization and efficient handover for user terminals.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-21
- Publication Date
- 2026-04-07
AI Technical Summary
Traditional static network architectures are difficult to adapt to complex and ever-changing network environments and business needs, resulting in low network resource utilization, high operation and maintenance costs, unstable network switching at the user end, and ping-pong effects and service interruptions.
By introducing a mobile prediction model on the server side, the system predicts future location and network status based on user terminal action status data, dynamically adjusts network handover strategies, optimizes network resource allocation and handover decisions, and selects the best handover location and timing by combining historical network status data and difference calculations.
It achieves intelligent optimization of user terminal network handover, reduces the ping-pong effect, improves network quality and user experience, and enhances network resource utilization and handover reliability.
Smart Images

Figure CN118870457B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wireless communication networks, and more particularly to a method for dynamically adjusting a communication network, a server, a medium, and a program product. Background Technology
[0002] With the rapid development of emerging technologies such as mobile internet, the Internet of Things, and cloud computing, communication networks face the challenge of diverse demands, including massive connectivity, high-speed transmission, and low-latency interaction. Traditional static network architectures struggle to adapt to complex and ever-changing network environments and business needs, leading to problems such as low network resource utilization and high maintenance costs.
[0003] Currently, some research and practice on dynamic adjustment of communication networks have been carried out using related technologies. One typical approach is dynamic adjustment based on Software-Defined Networking (SDN), which achieves flexible scheduling and optimized configuration of network resources through a centralized control plane. Another approach is dynamic adjustment based on Network Functions Virtualization (NFV), which enables elastic scaling and on-demand deployment of resources by software-based implementation of network functions.
[0004] However, in complex heterogeneous network environments (such as the coexistence of 5G, LTE, WiFi, etc.), even with the application of relevant technologies, users may still rely on simple signal strength thresholds to determine network connectivity, leading to network instability such as the ping-pong effect (network switching back and forth) or service interruptions, which affects the user's online experience. Summary of the Invention
[0005] This application provides a method, server, medium, and program product for dynamically adjusting a communication network, which is used to adjust the communication network according to the environment of the user terminal, thereby improving the problems of unstable communication network services and poor user experience in heterogeneous network environments.
[0006] In a first aspect, this application provides a dynamic adjustment method for a communication network, applied to a server. The method includes: receiving motion status data sent by a user terminal, including GPS coordinates, movement speed values, and azimuth data; inputting the motion status data into a mobility prediction model to obtain a position coordinate sequence and a set of area identifiers for the user terminal within a future preset time period; the position coordinate sequence including the position coordinates of the user terminal at multiple future time points; determining the real-time network currently accessed by the user terminal and multiple alternative networks within the set of area identifiers; and determining the position coordinates of the user terminal at multiple target locations within the position coordinate sequence based on historical network status data within the set of area identifiers. The system determines the initial network score of the real-time network and the backup network score of the candidate network; it identifies multiple target location coordinates where the initial network score is lower than the backup network score and the absolute value of the difference between the two is higher than a preset difference value, and uses these as switching location coordinates, with the corresponding backup network serving as the target switching network; when the number of switching location coordinates exceeds a preset threshold, it determines the location coordinates within the location coordinate sequence where the difference between the initial network score and the backup network score is at a preset difference threshold, and uses these as switching execution coordinates, with the time node corresponding to the switching execution coordinates serving as the switching execution time; at the switching execution time, it sends the target switching network to the user terminal, enabling the user terminal to access the target switching network.
[0007] In the above embodiments, the server receives motion status data sent by the user terminal and inputs it into a mobility prediction model to predict the user terminal's location coordinate sequence and area identifier set over a future period. Then, it determines the user's current real-time network and candidate networks within that area, and calculates the network scores of the real-time network and candidate networks at the user's future location based on historical network status data for that area. By comparing the score differences between the real-time network and candidate networks, the location coordinates requiring network switching are identified. Finally, the optimal switching time is selected, and the target switching network is sent to the user terminal, achieving timely network switching. This approach comprehensively considers factors such as the user's movement trajectory and network conditions, predicting and planning the optimal network switching strategy in advance, effectively improving communication quality in heterogeneous network environments and avoiding the ping-pong effect.
[0008] In conjunction with some embodiments of the first aspect, in some embodiments, when the number of switching position coordinates exceeds a preset threshold, the position coordinates within the position coordinate sequence where the difference between the initial network score and the backup network score is at a preset difference threshold are determined as switching execution coordinates, and the time node corresponding to the switching execution coordinate is the switching execution time. Specifically, this includes: calculating the absolute value of the difference between the initial network score and the backup network score corresponding to each switching position coordinate, generating a difference sequence; obtaining the maximum difference in the difference sequence, and determining a preset difference threshold based on the maximum difference; traversing the position coordinate sequence, obtaining position coordinates where the absolute value of the difference between the initial network score and the backup network score is greater than or equal to the preset difference threshold, and using them as candidate switching coordinates; determining the earliest candidate switching coordinate as the switching execution coordinate, and the time node corresponding to the switching execution coordinate is the switching execution time.
[0009] In the above embodiment, after identifying multiple switching location coordinates, the server further calculates the score differences between the real-time network and the candidate network at these locations, generating a difference sequence. Then, a preset difference threshold is determined based on the maximum value of the difference sequence, and the server iterates through the user's location sequence to find locations with score differences greater than or equal to the threshold as candidate switching points. Finally, the earliest candidate switching point is selected as the final network switching execution location and time. By setting a difference threshold to filter switching points and prioritizing the earliest switching opportunity, the server can minimize the number of switching operations and latency while ensuring network switching effectiveness, further optimizing network switching performance.
[0010] In conjunction with some embodiments of the first aspect, in some embodiments, obtaining the maximum difference in the difference sequence and determining a preset difference threshold based on the maximum difference specifically includes: calculating the degree of difference between two adjacent differences in the difference sequence to obtain a degree of difference sequence; wherein, the formula for calculating the degree of difference is... , For the i-th difference, For the i-th difference, For the (i-1)th difference, for and The larger value in the sequence is used; the difference sequence is sorted to obtain the positive difference sequence; the preset position value of the positive difference sequence is determined as the difference threshold.
[0011] In the above embodiments, when determining the preset difference threshold, the server first calculates the difference degree between two adjacent differences in the difference sequence to obtain a difference degree sequence, wherein the calculation of the difference degree takes into account the relative size of the differences before and after. Then, the difference degree sequence is sorted in ascending order, and a certain preset percentile difference degree value is taken as the threshold. This allows for dynamic adjustment of the threshold size according to the actual difference distribution, filtering out the switching point with the most significant difference, and improving the rationality and reliability of the threshold determination.
[0012] In conjunction with some embodiments of the first aspect, in some embodiments, determining the real-time network currently accessed by the user terminal and multiple candidate networks within the set of area identifiers specifically includes: determining the physical area where the user terminal is currently located based on action status data, and obtaining the logical area identifier corresponding to the physical area; obtaining multiple available network identifiers corresponding to the logical area identifier, and using the networks corresponding to each available network identifier as candidate networks; obtaining the connection status data of the user terminal, and determining the networks in the connection status data that are in the connection state as real-time networks.
[0013] In the above embodiments, when determining candidate networks, the server first uses the user terminal's activity status data to determine its physical region and obtains the logical region identifier corresponding to that physical region. Then, based on the logical region identifier, it searches for multiple available networks within that region and uses them as candidate networks. Finally, combining the user terminal's actual connection status data, it determines the currently connected network as the real-time network. Through the mapping relationship between physical and logical regions, multiple candidate networks within the user's region are efficiently and accurately determined. Simultaneously, by obtaining the user's actual connection status, the current real-time network can be accurately identified.
[0014] In conjunction with some embodiments of the first aspect, in some embodiments, before receiving the action status data including GPS coordinates, movement speed values, and azimuth data sent by the user terminal, the method further includes: acquiring historical action trajectory data of the user terminal, the historical action trajectory data including the historical position coordinates of the user terminal at each historical time node, the corresponding historical movement speed values, and historical azimuth data; constructing a motion prediction model based on the historical action trajectory data; the motion prediction model is used to predict the position coordinates of the user terminal at each future time node within a preset time period based on the current position coordinates, movement speed values, and azimuth data of the user terminal.
[0015] In the above embodiment, before receiving the user's real-time movement status data, the server first obtains the user's historical movement trajectory data, including historical location coordinates, speed, and azimuth. Then, it uses this historical data to construct a motion prediction model to predict the user's location changes over a future period based on the user's current movement status. By fully utilizing the user's historical behavioral characteristics and employing machine learning and other technologies, it achieves accurate prediction of the user's movement trajectory, enabling early detection of user location change trends and providing a longer-term reference for network switching decisions.
[0016] In conjunction with some embodiments of the first aspect, in some embodiments, after the step of sending the target switching network to the user terminal at the handover execution time, enabling the user terminal to access the target switching network, the method further includes: obtaining network quality parameters of the user terminal after accessing the target switching network; the network quality parameters include latency, jitter, and packet loss rate; determining whether all network quality parameters are better than a preset quality threshold; if not, maintaining the connection between the user terminal and the real-time network within a preset protection time period at the handover execution time, and re-obtaining the network quality parameters of the user terminal accessing the target switching network after a preset retry time interval; if the network quality parameters are not better than the preset quality threshold within a preset number of retries, then terminating the network handover and maintaining the connection between the user terminal and the real-time network.
[0017] In the above embodiments, after a network switch is executed, the server acquires various network quality parameters in real time, such as latency, jitter, and packet loss rate, after the user accesses the new network. It then determines whether these parameters are all better than preset quality thresholds. If the requirements are not met, the connection between the user and the original real-time network is temporarily maintained for a preset protection period. Simultaneously, the quality of the new network is reassessed according to a preset retry interval until the requirements are met or the maximum number of retries is reached. This effectively addresses unexpected situations such as network instability, ensuring continuous service for the user by promptly falling back to the original network. It also provides the new network with a certain amount of fault tolerance time, avoiding unnecessary backswitches triggered by temporary fluctuations.
[0018] In conjunction with some embodiments of the first aspect, in some embodiments, after the step of sending the target switching network to the user terminal at the handover execution time so that the user terminal can access the target switching network, the method further includes: calculating the historical handover success rate of each target switching network of the user terminal; associating and storing the historical handover success rate with the identifier of the target switching network; when multiple target switching networks are determined, obtaining the historical handover success rate associated with the identifier of each target switching network, and excluding target switching networks with historical handover success rates lower than a preset stable success threshold from the candidate networks.
[0019] In the above embodiments, the server counts the number of successful handovers and the total number of handovers for each candidate network, calculates the corresponding handover success rate, and stores it in association with the network identifier. When multiple candidate target networks are identified, the historical handover success rates of these networks are retrieved and compared. Networks with success rates below a preset stability threshold are eliminated, thus obtaining more reliable target networks. Introducing the historical handover success rate dimension allows for dynamic evaluation and filtering based on the actual interaction between the user and each candidate network, prioritizing networks with better compatibility with the user's terminal and more stable connections as handover targets, effectively improving the handover success rate and enhancing the overall network handover effect and user experience.
[0020] In a second aspect, embodiments of this application provide a server comprising: one or more processors and a memory; the memory is coupled to the one or more processors and is used to store computer program code, the computer program code including computer instructions, wherein the one or more processors invoke the computer instructions to cause the server to perform the method described in the first aspect and any possible implementation thereof.
[0021] Thirdly, embodiments of this application provide a computer program product containing instructions that, when the computer program product is run on a server, cause the server to perform the method described in the first aspect and any possible implementation thereof.
[0022] Fourthly, embodiments of this application provide a computer-readable storage medium including instructions that, when executed on a server, cause the server to perform the method described in the first aspect and any possible implementation thereof.
[0023] Understandably, the server provided in the second aspect, the computer program product provided in the third aspect, and the computer storage medium provided in the fourth aspect are all used to execute the methods provided in the embodiments of this application. Therefore, the beneficial effects they can achieve can be referred to the beneficial effects in the corresponding methods, and will not be repeated here.
[0024] One or more technical solutions provided in the embodiments of this application have at least the following technical effects or advantages:
[0025] 1. By adopting a mobility prediction model based on user terminal action status data, the system can obtain the user's location coordinate sequence and area in advance for a period of time, and calculate the scores of the real-time network and alternative networks based on historical network status data in the area, thus identifying the best switching location and timing. Therefore, it can fully consider the dynamic changes in user movement trajectory and network conditions, and make accurate network switching decisions in advance. This effectively solves the problem of frequent ping-pong switching caused by user terminals making simple decisions based on real-time signals in existing technologies, thereby realizing intelligent optimization scheduling of network switching.
[0026] 2. Because it adopts the method of calculating the difference between adjacent differences in the difference sequence, and determines the difference threshold by sorting the difference sequence and taking the preset percentile value, the switching position with the most significant difference and the most switching value is selected. Therefore, it can fully consider the relative significance of the network quality change before and after the switching position, and adaptively adjust the threshold. This effectively solves the problem that the fixed threshold used in the existing technology is difficult to adapt to the dynamic network environment and easily introduces a lot of redundant switching points, thus realizing the flexible selection of switching positions.
[0027] 3. By statistically analyzing and storing the historical handover success rates of each candidate network separately, and prioritizing networks with high success rates and meeting preset stability requirements when determining the target network for handover, the system can fully utilize historical statistical information on actual user interactions with each network to objectively assess the reliability and stability of each network. This effectively solves the problem of handover failures caused by dynamic network fluctuations, which is difficult to address in existing technologies that rely solely on static selection based on network attributes. As a result, the system achieves precise optimization of the target network for handover. Attached Figure Description
[0028] Figure 1 This is a flowchart illustrating a method for dynamically adjusting a communication network in an embodiment of this application.
[0029] Figure 2 This is another flowchart illustrating the dynamic adjustment method of the communication network in the embodiments of this application;
[0030] Figure 3 This is a schematic diagram of the physical device structure of a server in an embodiment of this application. Detailed Implementation
[0031] The terminology used in the following embodiments of this application is for the purpose of describing particular embodiments only and is not intended to be limiting of this application. As used in the specification of this application, the singular expressions “a,” “an,” “the,” “the,” and “this” are intended to include the plural expressions as well, unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in this application refers to any or all possible combinations including one or more of the listed items.
[0032] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature, and in the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.
[0033] To facilitate understanding, the application scenarios of the embodiments of this application are described below.
[0034] Xiao Li is a pharmaceutical sales representative who frequently needs to drive to visit clinics and pharmacies in suburban areas. Due to the complex and varied terrain of his work area, which spans different network coverage zones including urban areas, suburbs, and towns, Xiao Li often encounters unstable and intermittent network connections when using his mobile phone for business communications in the car. For example, when driving on country roads, the 5G network signal is intermittent, causing frequent interruptions to his voice calls with doctors; when he enters the suburbs, uploading and sharing critical documents is hindered. These network problems severely impact Xiao Li's work efficiency and service quality, preventing him from maintaining timely and effective communication with clients.
[0035] In related technologies, user terminals can switch between different networks by employing a network handover method based on real-time signal strength. The following describes a scenario where the dynamic adjustment method for communication networks from this related technology is used.
[0036] Currently, the network switching solution on Xiao Li's phone is mainly based on real-time signal strength comparison. While driving between urban and rural areas, the phone continuously monitors the signal strength of multiple available networks. When the signal strength of a candidate network exceeds a preset threshold and is significantly higher than the current network, the phone automatically switches to that network. However, the network environment in the urban-rural fringe is complex and variable, with varying coverage and quality across different networks. In some areas, due to rapid signal fluctuations and overlaps, the phone repeatedly switches between 4G and 5G networks, which not only fails to improve the network experience but also introduces more latency and instability. Furthermore, signal strength alone cannot accurately assess the overall network quality. Sometimes, even after switching to a high-signal network, the user experience can significantly deteriorate due to strained underlying transmission resources and a surge in load. For example, when Xiao Li parks his car in a parking lot at a popular tourist attraction, despite a strong 5G signal, the surge in the number of tourists' phones simultaneously causing severe network congestion and resulting in choppy and unclear video calls.
[0037] The dynamic adjustment method for the communication network in this application introduces a network handover decision-making mechanism based on user movement trajectory prediction on the network side, achieving more intelligent and accurate network handover. This not only improves the timeliness and reliability of handover but also enhances the overall user experience. The following describes scenarios where the dynamic adjustment method for the communication network in this application is used.
[0038] The dynamic adjustment method for communication networks proposed in this application effectively addresses the pain points of existing technologies by introducing mobility prediction and overall decision-making on the network side. Taking Xiao Li's daily work as an example, when he goes out to visit clients, his mobile phone continuously reports its location, speed, and direction of travel to the intelligent handover scheduling server on the network side. The server uses machine learning algorithms to predict Xiao Li's travel route and regional changes over a period of time, and comprehensively analyzes the historical network quality statistics of each alternative network in these areas, such as latency, jitter, and packet loss rate, and scores the network quality for each predicted location. By dynamically comparing the quality score difference between the real-time network and the optimal alternative network, the system identifies key handover nodes that are expected to significantly improve the service experience, plans the best handover path and timing in advance, and controls Xiao Li's mobile phone to perform the handover operation. When Xiao Li arrives at the planned handover location, the mobile phone automatically switches to the pre-prepared optimal alternative network, ensuring that the entire service is always under the support of the optimal network, guaranteeing the continuity and stability of calls and data transmission. At the same time, the prediction-based overall decision-making overcomes the problems of instantaneous signal fluctuations and blind handovers, and the number and frequency of handovers are reasonably controlled.
[0039] As can be seen, the dynamic adjustment method of the communication network in this application embodiment can not only realize the network switching of user terminals, but also effectively solve the problems of frequent ping-pong switching and blind network selection in traditional solutions, thereby achieving a comprehensive improvement in network switching performance.
[0040] To facilitate understanding, the method provided in this implementation will be described in detail below, using the above scenario as an example. Please refer to [link / reference]. Figure 1 This is a flowchart illustrating a method for dynamically adjusting a communication network in an embodiment of this application.
[0041] S101. Receive action status data sent by the user terminal, including GPS coordinates, movement speed value and azimuth data.
[0042] In this context, the user terminal refers to a mobile device with wireless communication capabilities, such as a smartphone or tablet. The movement speed value represents the instantaneous rate of movement of the user terminal and can be calculated based on the rate of change of GPS coordinates. Azimuth data refers to the direction information of the user terminal's movement, which can be obtained through measurements using sensors such as an electronic compass. Motion status data is a set of parameters comprehensively reflecting the user terminal's movement status, including information from multiple dimensions such as position, speed, and direction. For example, when a user travels by high-speed rail, their mobile phone can collect GPS location, movement speed, and the train's direction of travel in real time and send this as motion status data to the server.
[0043] Specifically, the server receives time-series mobility status data reported by user terminals through designated applications via a data communication link. This data is typically sampled and transmitted at regular intervals, with the frequency dynamically adjusted based on application requirements and wireless network conditions. After receiving the data, the server performs necessary preprocessing, such as filtering outliers and interpolation, to improve data quality. Simultaneously, the server can aggregate and correlate mobility status data from different users to form a global user mobility dataset, providing a data foundation for optimizing mobility management across the entire network.
[0044] It should be noted that the user's mobile trajectory data will be authorized by the user before collection and use, and will only be used for location data determination. The user's personal information will be encrypted.
[0045] S102. Input the motion status data into the mobility prediction model to obtain the location coordinate sequence and area identifier set of the user terminal within a preset time period in the future.
[0046] The location coordinate sequence represents the predicted geographic coordinates of the user terminal at different future times, typically including a series of discrete latitude and longitude coordinates. The region identifier set is a set of region identifiers obtained by dividing the coordinate points in the location coordinate sequence into regions; each identifier corresponds to the geographic area where the coordinate point is located, such as a community, street, or business district. The preset time period refers to the time range covered by the model's predicted future movement trajectory, which can be configured according to the needs of network handover optimization tasks, typically ranging from tens of seconds to several minutes.
[0047] Specifically, after the server receives motion status data from a user terminal, it inputs it into a pre-trained mobility prediction model. Leveraging the model's predictive capabilities, the expected movement trajectory of the user terminal over a given period is obtained. The server organizes and encodes the motion status data, including GPS coordinates, speed, and azimuth, according to the input format defined by the model, forming a standardized feature vector. This feature vector is then input into the model's inference engine. Through internal mathematical calculations and logical judgments, the model generates a corresponding sequence of location coordinates and a set of region identifiers as output. This process can be executed in real-time or triggered at set time intervals to balance computational overhead and prediction timeliness. Through the mobility prediction model, the server can anticipate the location change trends of user terminals and use this information for predictive network handover planning, thereby improving the accuracy of handover timing and the continuity of connections.
[0048] It should be noted that the mobility prediction model is used to predict the movement trajectory of a user terminal over a future period. The input data for this model is the user terminal's movement trajectory data, including its location coordinates, speed, and azimuth at a given time point. The output data is a predicted sequence of the user terminal's location coordinates at various time points within a preset future time period.
[0049] Firstly, regarding model training, the core of mobility prediction models is time series forecasting. The server collects historical movement trajectory data from multiple user terminals at a given location as training samples. Each trajectory contains state data such as location coordinates, instantaneous velocity, and azimuth at several historical time points. The training objective of the model is to learn the time-dependent patterns of state changes, thereby making accurate predictions of future mobility states. Commonly used sequence models include Markov chains and recurrent neural networks, which can characterize state transition probabilities or nonlinear functional relationships. During training, appropriate feature representations need to be designed, such as multi-order differences of states and historical window lengths, to extract implicit periodicity and trends.
[0050] Secondly, the mobility prediction model itself is an end-to-end time series regression model. Its input is the user terminal's state vector at the current moment, including location coordinates, velocity, azimuth, etc., and its output is the predicted location coordinate sequence for each time point in the future. The core of the model is the state transition function, which can be constructed based on different machine learning paradigms such as probabilistic graphical models and deep learning. A key design choice is the trade-off between prediction temporal granularity and spatial granularity. Finer temporal granularity results in a longer prediction sequence, while finer spatial granularity leads to a denser network of coordinate points, both increasing computational overhead. Simultaneously, the model needs to balance its ability to model short-term and long-term dependencies. Convolutional neural networks can be used for short-term and medium-term dependencies, while recurrent neural networks with attention mechanisms can be used for long-term dependencies. Model performance is generally evaluated using the mean (e.g., MSE) and distribution (e.g., CDF) of the location error.
[0051] Finally, the application of mobility prediction models in network handover scenarios is mainly divided into two phases: the planning phase and the execution phase. In the planning phase, the model predicts the user's movement trajectory over a future period based on the user's current state and historical patterns. The server overlays the predicted trajectory with a network coverage map, evaluates the network quality and alternative networks at each future location, and then plans an optimal handover path that meets the user's needs and network constraints. In the execution phase, the model tracks the user's movement status in real time, calibrates prediction biases, and dynamically adjusts handover decisions. Once a critical handover node is reached, or if the prediction indicates a deterioration in the quality of the future path, a handover action is triggered. Simultaneously, the model continuously learns from the user's online behavior data, periodically using incremental training to improve prediction accuracy, forming a data closed loop.
[0052] In some embodiments, the construction and application of mobility prediction models can be achieved in various ways: Optionally, deep learning models of sequence prediction, such as Long Short-Term Memory (LSTM) networks and Gated Recurrent Units (GRUs), can be used; historical action state data is arranged in chronological order to form a sample sequence, and the future position coordinate sequence is labeled to train the model to learn the correlation between the user terminal's motion pattern and the future trajectory; in the inference phase, the model can automatically extract the temporal features contained in the input data and recursively generate predictions of future motion trends based on the motion trends over a past period. Optionally, kinematic models based on physical laws, such as uniform linear motion and uniformly accelerated linear motion, can also be used; based on the user terminal's current position, speed, and direction, kinematic equations are established, and the position function over a certain time period is solved to obtain the predicted position coordinate sequence; in practical applications, map information can be further overlaid, and road topology constraints can be used to optimize the predicted trajectory and improve prediction accuracy. It is understood that there are many mobility prediction models, as well as hybrid methods of machine learning and physical models, etc. This step does not limit these, as long as it can predict the future movement trajectory based on action state data.
[0053] S103. Determine the real-time network currently accessed by the user terminal and multiple alternative networks within the set of area identifiers.
[0054] In this context, the real-time network refers to the wireless access network that the user terminal is currently actually connected to, such as 4G or 5G. The alternative networks represent other available networks besides the real-time network in the area where the user terminal may move in the future; these typically consist of multiple networks of different standards or frequency bands. The area identifier set is a set of area identifiers obtained by geographically dividing the location points on the user terminal's predicted trajectory. For example, when a user is traveling on a subway, the real-time network might be a 5G small cell within the carriage, while the alternative networks in the elevated sections of the future route might include 5G macro cells and 4G base stations.
[0055] After obtaining the predicted movement trajectory of the user terminal, the server needs to determine the currently accessible and future available wireless networks in the areas where the user may roam in the future. Specifically, the server first obtains the user terminal's current actual network access information, such as the serving cell ID, as the real-time network. Then, for each geographical area covered by the predicted trajectory, the server queries the wireless network deployment information within that area to obtain a list of available alternative networks. This information can come from the network-side topology management system or be learned based on the user terminal's historical measurement data. The server aggregates the real-time network and the alternative networks for each area to construct a future-oriented, end-to-end logical network connection diagram, providing a basis for subsequent network switching decisions. Simultaneously, the server can also comprehensively analyze the service quality statistics of each alternative network to perform preliminary screening and ranking, eliminating low-quality networks that clearly do not meet the user's needs, thus reducing decision-making complexity.
[0056] In some embodiments, the acquisition of real-time networks and alternative networks can be achieved in multiple ways: Optionally, the server can send an acquisition request to the wireless access gateway or mobility management entity on the network side, carrying the user terminal's identification information; the network side searches for the base station information currently accessed by the user based on the user's identification, and obtains the coverage area of each base station through network topology data, thereby determining the real-time network and potential alternative networks in each area, and returns the request response to the server. Optionally, the server can also use the wireless measurement data reported by the user terminal to determine the real-time network and alternative networks; after the user terminal accesses a network, it continuously measures the signals of other surrounding networks and reports this information to the server along with the action status data; the server analyzes the measurement report, identifies the cell with the strongest signal as the real-time network, and other cells that meet the handover threshold as alternative networks, and classifies the alternative networks according to geographical region using the cell's location label. It is understood that other implementations of network acquisition are also possible, such as broadcast information monitoring, network database query, etc., which are not limited in this step.
[0057] S104. Based on historical network status data within the regional identifier set, determine the initial network score of the real-time network and the backup network score of the alternative network when the user terminal is at multiple target location coordinates in the location coordinate sequence.
[0058] Historical network status data refers to service quality statistics of the wireless network over a past period, including key performance indicators such as downlink and uplink bandwidth, latency, and packet loss rate, as well as network-side operational status data such as the number of access users and load rate. This data is typically collected and recorded at a specific time granularity (e.g., minutes, hours) and indexed and stored according to network cells and geographical regions, forming a global network performance database. The network score is a comprehensive quantitative evaluation of the service quality of a wireless network, expressed as a percentage; a higher score indicates better network quality. Target location coordinates are several specific coordinate points selected from a sequence of location coordinates. The server focuses on evaluating the network performance and handover value of user terminals at these coordinate points.
[0059] Once the server determines the real-time network and alternative networks that a user terminal may access in the future, it needs to evaluate the service quality of each network to provide a basis for selecting the optimal network. Specifically, the server first correlates the predicted location coordinate sequence with a network performance database to obtain the past performance of each network cell at each future location of the user terminal. Then, the server selects some representative coordinate points from the location sequence as target location coordinates, taking into account both temporal and spatial distribution. Next, for each target location coordinate, the server obtains the historical service quality statistics of the real-time network and each alternative network in the area where the coordinate is located, and according to certain calculation rules, combines different performance indicators to obtain an initial network score and a backup network score on a percentage basis, which serve as the performance score of each network at that coordinate point. Finally, the server arranges the network scores of each target coordinate in chronological order to form a network performance evaluation sequence. This sequence visually demonstrates the evolution trend of the service quality of the real-time network and alternative networks in the user terminal's future movement trajectory, and is an important input for network handover decisions.
[0060] In some embodiments, the network score can be calculated in several ways: Optionally, a weighted average method can be used, assigning different weights to each performance indicator and summing them to obtain the overall network score. The weights of each indicator can be determined according to the user's business needs, such as focusing on latency and packet loss rate for voice services, and focusing on bandwidth and load rate for streaming media services. The weights can be statically configured or dynamically optimized. Optionally, a fuzzy comprehensive evaluation method can also be used, mapping each indicator to a unified fuzzy membership space, constructing a fuzzy evaluation matrix, and using fuzzy transformation to synthesize the fuzzy comprehensive evaluation value of the network from the evaluation matrix. Then, the fuzzy comprehensive evaluation value is defuzzified using methods such as weighted average or centroid method to obtain the final network score. It is understood that other methods can also be used to calculate the network score, such as the analytic hierarchy process (AHP) and artificial neural networks, which are not limited in this step.
[0061] S105. Determine the coordinates of multiple target locations where the initial network score is lower than the backup network score and the absolute value of the difference between the two is higher than a preset gap value. Use these coordinates as the switching location coordinates and the corresponding backup network as the target switching network.
[0062] The preset gap value refers to the threshold at which the performance scores of the real-time network and the candidate network differ significantly, indicating a necessary network switch. Switching location coordinates are specific points in a future location coordinate sequence, suggesting that at that location, it is necessary for the user terminal to switch from the current real-time network to a better-performing candidate network. The target switching network is a candidate network with significantly superior performance to the real-time network; it represents the target network for switching at the switching location coordinates.
[0063] After the server obtains the performance scores of the real-time network and candidate networks at each target location coordinate, it needs to compare these scores to determine which coordinate points require network switching and the target network for the switch. Specifically, the server iterates through the target location coordinate sequence. For each coordinate point, it compares the initial network score of the real-time network with the backup network scores of each candidate network, identifying candidate networks whose performance scores are higher than the real-time network and whose difference exceeds a preset threshold. If such a candidate network exists, the current location coordinate is marked as a switch location coordinate, and the candidate network with the best performance is marked as the target switch network for that switch location. If no such candidate network exists, the current coordinate point retains its real-time network connection and is not marked for switching. After processing all target coordinate points, the server finally obtains a list of switch location coordinates and the target switch network corresponding to each switch location.
[0064] In some embodiments, the determination of the handover location coordinates and the target handover network can be handled flexibly: Optionally, the determination of the handover location can comprehensively consider contextual continuity, merging or eliminating isolated handover points to avoid frequent network handovers; the selection of the target handover network can also consider service continuity, prioritizing alternative networks with the same standard as the original real-time network and adjacent coverage areas to reduce handover costs. Optionally, the determination of the handover location and target network can also incorporate user preference factors, such as user-set cost budgets and network preferences; when multiple alternative networks have similar performance, the network with lower cost or user preference is given priority as the handover target. It is understood that the strategy for generating the handover planning scheme can be adjusted and optimized according to the actual scenario to balance handover performance and overhead, and this step does not impose specific limitations.
[0065] S106. When the number of switching position coordinates is higher than the preset number threshold, determine the position coordinates within the position coordinate sequence where the difference between the initial network score and the backup network score is at the preset difference threshold, and use them as the switching execution coordinates. The time node corresponding to the switching execution coordinates is the switching execution time.
[0066] The preset number threshold is a limit on the maximum number of handovers that can be tolerated within a certain period, considering the frequency of network handovers and signaling overhead. If the number of planned handover location coordinates exceeds this threshold, the handover scheme needs to be compressed in both time and space. The preset difference threshold is used to filter out the location with the greatest handover benefit from multiple handover locations. The larger the threshold, the more significant the performance improvement after handover, but some suboptimal handover opportunities may be missed; the smaller the threshold, the more sensitive and timely the handover, but some redundant handovers with minor improvements may be introduced. The handover execution coordinates are a subset of the handover location coordinates, indicating where the network handover scheme will ultimately determine the handover operation. The handover execution time is the future time node corresponding to the handover execution coordinates, indicating when the network handover will take place.
[0067] Once the server receives the list of switch location coordinates, if the number of coordinates is large, it needs to optimize the switchover scheme in terms of both time and performance to avoid excessively frequent network switching. Specifically, the server first checks if the number of switch location coordinates exceeds a preset threshold. If it does not, all switch locations will be adopted as the final switchover execution coordinates. If the threshold is exceeded, the server needs to select a subset of switch locations as the switchover execution coordinates. The selection logic is to prioritize the coordinates with the largest difference among the coordinates where the network performance difference between switch locations exceeds a preset difference threshold. By adjusting the difference threshold, the number and quality of selected coordinates can be controlled. The final determined switchover execution coordinates do not exceed the threshold but maximize network performance. Simultaneously, the server also needs to obtain the timestamps of the switchover execution coordinates within the location coordinate sequence as the switchover execution time to trigger future switchover operations. This information constitutes a filtered and optimized network switchover execution scheme, which can be distributed to user terminals to guide them in performing network switching at the optimal time and location in the future.
[0068] In some embodiments, multiple strategies can be used to balance handover performance and frequency: Optionally, the number threshold and difference threshold can be adaptively adjusted based on the user's mobility status and service patterns; for scenarios involving high-speed movement or frequent indoor / outdoor transitions, the number threshold can be appropriately relaxed to increase the number of handovers; for services such as real-time interaction or high-definition video, the difference threshold can be appropriately increased to enhance handover quality. Threshold settings can be based on human experience or optimized online using data-driven methods such as reinforcement learning. Optionally, the selection of handover execution coordinates can also consider the network type before and after the handover; while meeting performance requirements, coordinates with the same network standard or frequency band before and after the handover should be selected as much as possible to reduce handover latency and service interruption time. Furthermore, if multiple adjacent handover locations have the same target network, only the location with the best performance can be selected to avoid redundant handovers. It is understood that the optimization logic of the handover scheme can be customized according to the deployment scenario and performance requirements; this step does not impose any limitations.
[0069] S107. At the handover execution time, the target handover network is sent to the user terminal, so that the user terminal can access the target handover network.
[0070] Once the server completes the network handover planning, it needs to promptly notify the user terminal of the handover decision, guiding it to perform the network handover at an appropriate future time to optimize mobility performance. Specifically, the server sets a timer for each handover execution coordinate, with the timer's trigger time corresponding to the handover execution moment for that coordinate. When a timer triggers, the server immediately sends a handover instruction message to the user terminal, containing the identifier information of the target handover network corresponding to that coordinate. Upon receiving the handover instruction, the user terminal can initiate the access process to the target handover network, including authentication, registration, and PDN connection establishment. After successful access, the user terminal switches from the original real-time network to the higher-performance target handover network, achieving a seamless network handover. Subsequently, the user terminal will continue to provide service connectivity through the new real-time network until the next handover moment arrives.
[0071] During network handover, servers and user terminals need to maintain regular synchronization to ensure that the sending and execution of handover commands are highly consistent in time. To achieve this, common time synchronization mechanisms such as GPS and NTP can be used, or synchronization signals and system time in cellular networks can be utilized to establish a unified time reference between the server and terminals. Furthermore, considering the latency and packet loss characteristics of wireless links, handover commands can be sent with a certain advance protection time to ensure that user terminals receive the command promptly and complete the handover at the scheduled execution time. Simultaneously, handover commands can be repeatedly sent at regular time intervals, and an Ack feedback mechanism can be implemented to improve the reliability of command delivery.
[0072] The above embodiments mainly illustrate the basic principles and processes of the network handover optimization scheme of this application. In practical applications, this scheme can be further optimized and expanded to adapt to more diverse and complex networking scenarios. For example, in specific environments such as high-speed mobility, densely populated urban areas, and indoor-outdoor handover, the granularity and accuracy of mobility prediction can be specifically enhanced, and the handover decision algorithm can be optimized to cope with rapidly changing network conditions. In addition, this scheme can also be combined with key 5G technologies such as network slicing and edge computing to provide customized end-to-end handover assurance services for users in vertical industries.
[0073] The following provides a more detailed description of the process of the method provided in this implementation. Please refer to [link / reference]. Figure 2 This is another flowchart illustrating the dynamic adjustment method of the communication network in this application embodiment.
[0074] S201. Receive motion status data sent by the user terminal, including GPS coordinates, movement speed value, and azimuth data.
[0075] Referring to step S101, the server will determine the user terminal's action status data.
[0076] In some embodiments, the server acquires the historical movement trajectory data of the user terminal, which includes the historical location coordinates, corresponding historical movement speed values, and historical azimuth angle data of the user terminal at each historical time point. Based on the historical movement trajectory data, a movement prediction model is constructed. The movement prediction model is used to predict the location coordinates of the user terminal at each future time point within a preset time period based on the current location coordinates, movement speed values, and azimuth angle data of the user terminal.
[0077] Historical movement trajectory data refers to the user terminal's movement records over a past period, including information such as location, speed, and direction. Historical time nodes represent a specific moment in the past. Historical location coordinates represent the user terminal's geographical location at a given historical time node. Historical movement speed values refer to the user terminal's instantaneous movement rate at a given historical moment. Historical azimuth data represents the angle between the user terminal's direction of movement and true north at a given moment.
[0078] During the network handover planning phase, the server needs to predict the movement trajectory of user terminals over a future period in order to identify potential areas of network performance degradation in advance and prepare a network handover plan. By acquiring the past activity history of user terminals, the periodicity and trends of their movement can be identified, which can be used to predict future movement.
[0079] Specifically, the server first acquires the user terminal's historical movement trajectory data, which includes the location coordinates, movement speed, and azimuth at several historical time points. Then, the server uses machine learning algorithms, employing the historical data as training samples, to construct a movement prediction model. This model takes the current movement state (position, speed, and direction) as input and generates a sequence of predicted positions for a predetermined future time period as output. The prediction results can be discrete time points or continuous function curves.
[0080] S202. Input the motion status data into the mobility prediction model to obtain the location coordinate sequence and area identifier set of the user terminal within a preset time period in the future.
[0081] Referring to step S102, the server will determine the user terminal's location coordinate sequence and region identifier set.
[0082] S203. Determine the real-time network currently accessed by the user terminal and multiple alternative networks within the set of area identifiers.
[0083] Referring to step S103, the server will determine the real-time network and the alternative network.
[0084] In some embodiments, the server determines the physical region where the user terminal is currently located based on the action status data, obtains the logical region identifier corresponding to the physical region, obtains multiple available network identifiers corresponding to the logical region identifier, and uses the networks corresponding to each available network identifier as candidate networks; obtains the connection status data of the user terminal, and determines the networks in the connection status data that are in the connection state as the real-time network.
[0085] In this context, a physical region represents a real-world geographical area. Logical region identifiers are used to abstract and categorize physical regions, simplifying network configuration management. An available network identifier is the unique name of an access network deployed within a logical region.
[0086] After determining the predicted movement trajectory of the user terminal, the server needs to evaluate network options for each location point in order to plan the optimal handover strategy. By obtaining alternative networks available in the user's area, the range of network selection can be narrowed down, eliminating unnecessary handover options.
[0087] Specifically, the server first obtains real-time action status data reported by the user terminal, mainly including the current location coordinates. Then, the server compares the location coordinates with the geographical boundaries of the physical area to determine the user's physical region. Next, the server queries the mapping relationship between physical regions and logical identifiers to obtain the corresponding logical identifier for that physical region. Then, the server retrieves a pre-configured table of logical identifiers and available networks to obtain all available network identifiers and their attributes within that logical region. These networks become the current candidate switching networks. Simultaneously, the server obtains real-time connection status data from the user terminal, identifies networks that are active or connected, and determines them as the current real-time network. The real-time network is a subset of the candidate networks.
[0088] In some embodiments, the acquisition of alternative networks can be more refined: Optionally, after initially acquiring alternative networks within the logical area, real-time load data of these networks can be further collected, and high-load networks can be eliminated by comprehensively considering the switching experience. Optionally, when determining the real-time network, in addition to examining the connection status, network quality can also be considered, and the network with the best user experience among multiple connected networks can be selected as the real-time network. It is understood that the construction of alternative networks can also consider factors such as operator policies and user preferences, and be dynamically adjusted in real time, which is not limited here.
[0089] S204. Based on historical network status data within the regional identifier set, determine the initial network score of the real-time network and the backup network score of the alternative network when the user terminal is at multiple target location coordinates in the location coordinate sequence.
[0090] Referring to step S104, the server will determine the initial network score and the backup network score.
[0091] S205. Determine the coordinates of multiple target locations where the initial network score is lower than the backup network score and the absolute value of the difference between the two is higher than a preset gap value. Use these coordinates as the switching location coordinates and the corresponding backup network as the target switching network.
[0092] Referring to step S105, the server will determine the coordinates of the switching location and the target switching network.
[0093] S206. Calculate the absolute value of the difference between the initial network score and the backup network score corresponding to each switching position coordinate, and generate a difference sequence.
[0094] The initial network score represents the performance rating of the network currently accessed by the user terminal. The backup network score refers to the performance rating of other available networks besides the current network at each handover location coordinate. The absolute value of the difference measures the performance gap between the initial network and the backup networks. The difference sequence is a series of numbers composed of the network performance differences at each handover location coordinate, reflecting the changing trend of the network status throughout the process.
[0095] During the network handover planning phase, the server needs to evaluate and screen various candidate handover locations. By calculating performance differences, the benefits of handover can be predicted, providing a basis for decision-making. Specifically, the server iterates through the predicted trajectory of user terminals, identifying several handover location coordinates. For each handover location, the server obtains the initial network performance score and the performance scores of all backup networks. Then, the server calculates the difference between the initial network score and the score of each backup network, and takes the absolute value. All differences are summed to form a difference sequence of the same length as the handover location coordinate sequence. The larger the difference, the greater the network performance disparity at the corresponding location, and the more necessary it is to handover.
[0096] S207. Obtain the maximum difference in the difference sequence, and determine the preset difference threshold based on the maximum difference.
[0097] The maximum difference refers to the largest element in the difference sequence, representing the location where network performance changes most drastically along the user's movement path. The preset difference threshold is the lower limit of the difference that triggers network switching, used to filter the coordinates of the switching location in subsequent steps.
[0098] After determining the difference sequence, the server needs to further assess the necessity of switching at each location. By setting a difference threshold, switching locations with insignificant performance improvements can be filtered out, optimizing switching costs. Specifically, the server iterates through the difference sequence, finding the element with the maximum value, which is the maximum difference. Then, the server calculates a preset difference threshold based on the maximum difference. The threshold can be directly equal to the maximum difference, or slightly adjusted, such as multiplying by a scaling factor or adding / subtracting a fixed margin. The threshold setting needs to balance switching benefits and costs; too high a threshold may miss valuable switching points, while too low a threshold may introduce redundant switching.
[0099] In some embodiments, the difference threshold can be determined in several ways: Optionally, the threshold can be set as a certain percentage of the maximum difference, such as 80% or 90%; the percentage can be selected based on the sensitivity requirements of network switching. Optionally, the threshold can also consider the statistical distribution characteristics of the difference; subtracting the mean of the difference sequence from the maximum difference and then dividing by the standard deviation yields a modified z-score threshold. It is understood that other statistical methods can also be used to set a reasonable difference threshold, which is not limited here.
[0100] In some embodiments, the server calculates the degree of difference between two adjacent differences in the difference sequence to obtain a degree of difference sequence; wherein, the formula for calculating the degree of difference is: , For the i-th difference, For the i-th difference, For the (i-1)th difference, for and The larger value in the sequence is used; the difference sequence is sorted to obtain the positive difference sequence; the preset position value of the positive difference sequence is determined as the difference threshold.
[0101] The difference degree measures the degree of network performance difference between two adjacent handover locations, reflecting the drastic nature of network performance changes. The difference degree sequence is a series of differences between adjacent difference pairs, characterizing the kurtosis distribution of network performance fluctuations throughout the process. The positive difference degree sequence is formed by arranging the difference degree sequences in ascending order. The difference degree threshold is the lower limit for selecting the difference degree at each handover location, used to pinpoint the interval with the most drastic performance changes in subsequent steps.
[0102] After calculating the performance difference sequence for switching locations, the server needs to further identify areas of abrupt changes in network performance in order to focus on and optimize switching locations. By introducing difference metrics and thresholds, the most severe performance drops can be located, avoiding frequent switching where performance improvements are insignificant.
[0103] Specifically, the server first iterates through the difference sequence, taking each pair of adjacent differences and calculating their dissimilarity. The dissimilarity calculation formula considers two factors: the absolute difference between adjacent differences and the relative proportion of the two differences, multiplied by 100 to convert it into a percentage. The larger the dissimilarity, the greater the contrast in network performance between adjacent locations. The dissimilarity scores are then aggregated to obtain a dissimilarity sequence, which is the same length as the difference sequence. Next, the server sorts the dissimilarity sequence in ascending order to obtain a positive dissimilarity sequence. Then, the server determines a percentile, such as the top 20%, and the dissimilarity value corresponding to that in the positive dissimilarity sequence, serving as the dissimilarity threshold. Determining the threshold requires a trade-off between performance improvement and switching frequency.
[0104] S208. Traverse the position coordinate sequence and obtain the position coordinates where the absolute value of the difference between the initial network score and the backup network score is greater than or equal to the preset difference threshold, and use them as candidate switching coordinates.
[0105] Among them, the candidate switching coordinates are the selected locations where the switching benefits are obvious, and they form the basis for determining the final switching plan.
[0106] After determining the difference threshold, the server needs to use it as a standard to filter the coordinates of switching locations, obtaining a streamlined candidate set to reduce planning overhead. Specifically, the server iterates through the coordinate sequence of switching locations again, using the difference sequence as a reference. For each switching location, the server compares the absolute value of its performance difference with the preset threshold. If the difference is not less than the threshold, the location is considered to have significant switching benefits and is included in the candidate switching coordinate set; otherwise, the location is eliminated and not considered. This filtering process can significantly reduce the number of switching locations and improve the efficiency of scheme optimization. At the same time, the candidate switching coordinates cover the main network performance change areas in the path, and have the highest switching value.
[0107] In some embodiments, the acquisition of candidate switching coordinates can be flexibly managed: optionally, the direction of the inequality can be adjusted left or right; if the switching tendency is more aggressive, it can be relaxed to greater than a threshold, otherwise it can be tightened to greater than or equal to. Optionally, location points that are slightly inferior to the threshold can be included depending on the network type; if the network type is the same before and after the switching, the requirements can be appropriately relaxed to reduce switching costs. It is understood that the selection principle of candidate switching coordinates can be weighed according to the needs of the application scenario, and is not limited here.
[0108] S209. Determine the earliest candidate switching coordinate as the switching execution coordinate, and the time node corresponding to the switching execution coordinate is the switching execution time.
[0109] The handover execution coordinates are the final, unique handover location. The handover execution time represents the point in time when the network handover occurs at that location, which is a future moment for the user terminal.
[0110] After selecting the candidate handover coordinate set, the server needs to determine the handover execution location and time from it, serving as the final single handover plan to guide the user terminal in performing the network handover. Specifically, the server retrieves all location points in the candidate handover coordinate set and obtains their corresponding future time nodes. Then, the server compares the order of these time nodes and selects the earliest arriving time node. The candidate handover coordinates corresponding to this time node are determined as the handover execution coordinates, meaning the network handover will be performed at that location. Simultaneously, this future time node is also determined as the handover execution time, representing the start time of the network handover. Choosing the earliest handover time can improve network performance as quickly as possible and obtain the longest possible benefit.
[0111] In some embodiments, the determination of the handover execution location and time can be approached from multiple angles: Optionally, the handover execution coordinates do not need to be strictly the earliest; the latest or a suitable location can also be selected. Based on user preference estimation, the optimal solution in terms of both time and space can be flexibly selected. Optionally, a certain margin can be added to the earliest time for handover execution; considering signaling round-trip delay, the handover time can be appropriately delayed to reduce the timing pressure of decision-making and notification. It is understood that the strategy for selecting the handover location and timing can be adapted to local conditions, with the aim of maximizing user preferences and experience, and is not limited here.
[0112] S210. At the handover execution time, the target handover network is sent to the user terminal, enabling the user terminal to access the target handover network.
[0113] Referring to step S107, the server will connect the user terminal to the target switching network.
[0114] In some embodiments, the server obtains network quality parameters of the user terminal after it accesses the target switching network; the network quality parameters include latency, jitter, and packet loss rate; it determines whether all network quality parameters are better than a preset quality threshold; if not, it maintains the connection between the user terminal and the real-time network within a preset protection period at the time of handover execution, and re-obtains the network quality parameters of the user terminal after accessing the target switching network after a preset retry interval; if the network quality parameters are not better than the preset quality threshold within a preset number of retries, it terminates the network handover and maintains the connection between the user terminal and the real-time network.
[0115] Among these, network quality parameters are key indicators for evaluating data transmission quality. Latency represents the round-trip time required for data to travel from sender to receiver. Jitter refers to the degree of fluctuation in data arrival delay. Packet loss rate refers to the proportion of data packets lost during transmission out of the total number of packets sent. The preset quality threshold is the quality standard for determining whether a handover is successful. The preset retry interval represents the time interval between two handover attempts. The preset number of retries represents the maximum number of handover retries allowed.
[0116] After a user terminal performs a network handover, the server needs to evaluate the real-time quality of the switched network to verify the correctness of the handover decision. By setting a handover quality assessment period and a retry mechanism, handover failures can be detected and addressed promptly, ensuring a continuous communication experience for users. Specifically, within a preset protection period starting at the handover execution time, the server acquires network quality parameters such as latency, jitter, and packet loss rate of the user terminal on the target network. Then, the server compares each parameter with a preset quality threshold. If all parameters are better than the threshold, the handover is considered successful, the server stops monitoring, and the user terminal continues to communicate using the target network. Conversely, if any parameter fails to meet the standard, it indicates that the handover quality is unsatisfactory. At this time, the server will initiate retry logic. During the protection period, the server will maintain the connection between the user terminal and the real-time network before the handover in case of fallback. At the same time, the server sets a preset retry interval, such as 2 seconds. After this interval expires, the server guides the user terminal to retry accessing the target network and acquire network quality parameters again. If the parameters meet the requirements after retrying, the switchover is successful; if the parameters still do not meet the requirements after multiple retries, the switchover is considered to have failed, the server actively terminates the process, cancels the switchover decision, and maintains the connection between the user terminal and the original real-time network.
[0117] In some embodiments, the handover quality assessment time window can be optionally set to a longer duration, such as 1 minute, to determine the stability of network quality. Optionally, when individual quality parameters slightly violate the threshold, the standards can be relaxed to accept handover with a certain tolerance, improving the continuity of user communication. Optionally, after multiple failed handover retries, the server can also attempt to switch to other alternative networks instead of directly aborting the handover, improving the handover success rate. It is understood that the handover quality assessment criteria themselves can also be dynamically adjusted based on network data and user feedback, and the time interval and number of handover retries can also be flexibly set, without limitation here.
[0118] S211. Statistically calculate the historical handover success rate of each target handover network for user terminals.
[0119] The historical handover success rate represents the percentage of successful handover attempts made by a user terminal from its initial network to its target network over a past period. It reflects the availability and reliability trends of different target networks.
[0120] To further improve the robustness of the handover scheme, the server needs to consider the past handover performance of each network when selecting candidate networks, prioritizing those with high success rates to reduce the risk of handover failure. Specifically, the server reviews network handover logs within a certain historical time window and performs statistical analysis on the logs according to dimensions such as the handover initiation time, the network before the handover, the network after the handover, and the handover result. For each candidate target handover network, the server calculates the total number of handover requests initiated from the current initial network to it within this historical window, as well as the number of requests that ultimately completed the handover. Then, the server divides the number of successful handovers by the total number of handover attempts to obtain a percentage handover success rate. A higher success rate indicates better network availability and makes it more suitable as a handover target.
[0121] In some embodiments, the statistical criteria for historical handover success rate can be refined: optionally, the determination of handover success can be supplemented with quality constraints such as handover latency; only handovers completed within a specified time limit are counted as successful, otherwise they are classified as failures. Optionally, the length of the historical window can be balanced; the longer the time, the more stable the statistics, but the weaker the specificity, and vice versa. It is understood that the factors considered in the success rate calculation can be diverse, such as signal strength and congestion level, to evaluate network availability from multiple perspectives; this is not limited here.
[0122] S212. Associate and store the historical handover success rate with the identifier of the target handover network.
[0123] The identifier of the target switching network is used to uniquely identify a candidate network, and can be the network's PLMN ID, SSID, etc. Association storage means establishing a mapping relationship between success rate values and corresponding network identifiers, facilitating subsequent retrieval.
[0124] After obtaining the success rates of each target network, the server needs to persist this intermediate result for use in subsequent steps. By using associative storage, a fast index of network identifiers and success rates can be established. Specifically, the server uses the identifier of the target switching network as the key and the corresponding historical switching success rate as the value, forming a key-value pair. Then, the server stores all key-value pairs in a hash table or relational database. When a subsequent step needs to query the success rate of a specific target network, the server only needs to provide the network identifier to quickly retrieve the corresponding success rate value from storage, avoiding duplicate calculations.
[0125] In some embodiments, the storage method for success rate can be flexibly designed: optionally, in addition to success rate, other statistics such as switching latency and signal strength can also be stored to enrich the network profile. Optionally, for newly emerging candidate networks that do not yet have historical data, a default initial success rate, such as 50%, can be set for them. It is understood that the associated storage data structure can be other index types, which are not limited here.
[0126] S213. When multiple target switching networks are determined, obtain the historical switching success rate associated with the identifier of each target switching network, and exclude target switching networks whose historical switching success rate is lower than the preset stable success threshold from the candidate networks.
[0127] The preset stable success threshold is the lower limit of the success rate for determining whether a target network for handover is reliable; it represents the minimum acceptable standard for the probability of a successful handover. Excluding a candidate network means disqualifying it from being a potential handover target.
[0128] In the aforementioned steps, the server may select several alternative networks that significantly outperform the initial network. However, if some of these alternative networks have had a low success rate in the past, directly using them as the switching target would carry significant risk.
[0129] Specifically, the server first sets a preset stable success threshold, such as 75%, as the minimum success rate that a qualified handover target must achieve. Then, the server iterates through all networks in the candidate handover network set, obtaining their identifiers one by one, and uses these identifiers to retrieve the associated storage to obtain the corresponding historical handover success rates. Next, the server compares the success rates with the preset threshold. If the success rate is lower than the threshold, the network is removed from the candidate set and excluded as an unreliable object. Conversely, if the success rate is not lower than the threshold, the network is retained as a highly available handover target. Ultimately, the remaining candidate networks are all stable networks with a high probability of successful handover.
[0130] In some embodiments, the reliability pruning of candidate networks can be more granular: optionally, the stability threshold does not have to be a fixed value, but can be set as a percentile, such as the median or 25th percentile, according to the overall distribution of success rates. Optionally, the process of excluding candidate networks can be initiated before performance screening, prioritizing success rate and balancing the importance of performance and reliability. It is understood that reliability evaluation criteria can be a combination of multiple indicators, such as throughput and latency stability, to more comprehensively reflect the switching experience; this is not limited here.
[0131] In this embodiment, by fully utilizing network-side computing and storage resources, performing mobility prediction and overall decision-making from a global perspective, and proactively disseminating the optimal handover plan to the terminal, the timing and target selection of network handover can be precisely controlled. This effectively solves the problems of information asymmetry and optimization difficulties existing in traditional terminal autonomous decision-making mechanisms, thereby achieving intelligent collaborative optimization of user mobility and connection reliability. This solution greatly improves the flexibility and adaptability of network handover.
[0132] The server in the embodiments of this invention is described below from the perspective of hardware processing. Please refer to [link / reference]. Figure 3 This is a schematic diagram of the physical device structure of a server in an embodiment of this application.
[0133] It should be noted that, Figure 3 The server structure shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of the present invention.
[0134] like Figure 3 As shown, the server includes a Central Processing Unit (CPU) 301, which can perform various appropriate actions and processes based on a program stored in Read-Only Memory (ROM) 302 or a program loaded from storage portion 308 into Random Access Memory (RAM) 303, such as performing the methods described in the above embodiments. The RAM 303 also stores various programs and data required for system operation. The CPU 301, ROM 302, and RAM 303 are interconnected via a bus 304. An Input / Output (I / O) interface 305 is also connected to the bus 304.
[0135] The following components are connected to I / O interface 305: input section 306 including audio input devices, push-button switches, etc.; output section 307 including a liquid crystal display (LCD) and audio output devices, indicator lights, etc.; storage section 308 including a hard disk, etc.; and communication section 309 including a network interface card such as a LAN (Local Area Network) card, modem, etc. Communication section 309 performs communication processing via a network such as the Internet. Drive 310 is also connected to I / O interface 305 as needed. Removable media 311, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., are installed on drive 310 as needed so that computer programs read from them can be installed into storage section 308 as needed.
[0136] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing computer programs for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 309, and / or installed from removable medium 311. When the computer program is executed by central processing unit (CPU) 301, it performs the various functions defined in the present invention.
[0137] It should be noted that specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0138] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. Each block in a flowchart or block diagram may represent a module, program segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those shown in the drawings.
[0139] Specifically, the server in this embodiment includes a processor and a memory. The memory stores a computer program. When the computer program is executed by the processor, it implements the dynamic adjustment method of the communication network provided in the above embodiment.
[0140] In another aspect, the present invention also provides a computer-readable storage medium, which may be included in the server described in the above embodiments; or it may exist independently and not assembled into the server. The storage medium carries one or more computer programs that, when executed by a processor of the server, cause the server to implement the dynamic adjustment method of the communication network provided in the above embodiments.
[0141] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
[0142] As used in the above embodiments, depending on the context, the term "when..." can be interpreted as meaning "if...", "after...", "in response to determining...", or "in response to detecting...". Similarly, depending on the context, the phrase "when determining..." or "if (the stated condition or event) is interpreted as meaning "if determining...", "in response to determining...", "when (the stated condition or event) is detected", or "in response to detecting (the stated condition or event)".
[0143] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This program can be stored in a computer-readable storage medium, and when executed, it can include the processes described in the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.
Claims
1. A method for dynamically adjusting a communication network, characterized in that, Applied to a server, the method includes: Receive action status data sent by the user terminal, including GPS coordinates, movement speed value, and azimuth data; The action status data is input into the mobility prediction model to obtain the location coordinate sequence and area identifier set of the user terminal within a future preset time period; the location coordinate sequence includes the location coordinates of the user terminal at multiple future time nodes. Determine the real-time network currently accessed by the user terminal and multiple alternative networks within the set of area identifiers; Based on the historical network status data within the set of regional identifiers, the initial network score of the real-time network and the backup network score of the alternative network are determined when the user terminal is at multiple target location coordinates in the location coordinate sequence. The coordinates of multiple target locations where the initial network score is lower than the backup network score and the absolute value of the difference between the two is higher than a preset difference value are used as the switching location coordinates, and the corresponding backup network is used as the target switching network. When the number of switching position coordinates exceeds a preset threshold, the position coordinates within the position coordinate sequence whose difference between the initial network score and the backup network score is greater than or equal to a preset difference threshold are determined as switching execution coordinates, and the time node corresponding to the switching execution coordinate is the switching execution time. Specifically, this includes: calculating the absolute value of the difference between the initial network score and the backup network score corresponding to each switching position coordinate, generating a difference sequence; obtaining the maximum difference in the difference sequence, and determining a preset difference threshold based on the maximum difference; traversing the position coordinate sequence, obtaining position coordinates whose absolute difference between the initial network score and the backup network score is greater than or equal to the preset difference threshold, and using these as candidate switching coordinates; determining the candidate switching coordinate with the earliest time node as the switching execution coordinate, and the time node corresponding to the switching execution coordinate is the switching execution time. At the handover execution time, the target handover network is sent to the user terminal, enabling the user terminal to access the target handover network.
2. The method according to claim 1, characterized in that, The step of obtaining the maximum difference in the difference sequence and determining a preset difference threshold based on the maximum difference specifically includes: Calculate the degree of difference between any two adjacent differences in the difference sequence to obtain a degree of difference sequence; wherein, the formula for calculating the degree of difference is: , wherein For the i-th difference degree, the For the i-th difference, the For the (i-1)th difference, the for and The larger value in; Sort the difference sequence to obtain a positive difference sequence; A preset position value of the positive difference sequence is determined as the difference threshold.
3. The method according to claim 1, characterized in that, The step of determining the real-time network currently accessed by the user terminal and the multiple alternative networks within the area identifier set specifically includes: Based on the action status data, determine the physical area where the user terminal is currently located, and obtain the logical area identifier corresponding to the physical area; Obtain multiple available network identifiers corresponding to the logical region identifier, and use the networks corresponding to each available network identifier as candidate networks; Obtain the connection status data of the user terminal, and identify the network in the connection status data that is in a connected state as the real-time network.
4. The method according to claim 1, characterized in that, Before the step of receiving the action status data including GPS coordinates, movement speed value, and azimuth angle data sent by the user terminal, the method further includes: Acquire the historical movement trajectory data of the user terminal, which includes the historical location coordinates of the user terminal at each historical time point, the corresponding historical movement speed value, and the historical azimuth angle data. Based on the historical movement trajectory data, a mobility prediction model is constructed; the mobility prediction model is used to predict the location coordinates of the user terminal at each future time node within a preset time period based on the current location coordinates, movement speed value and azimuth angle data of the user terminal.
5. The method according to claim 1, characterized in that, After the step of sending the target handover network to the user terminal at the handover execution time, enabling the user terminal to access the target handover network, the method further includes: The network quality parameters of the user terminal after accessing the target switching network are obtained; the network quality parameters include latency, jitter, and packet loss rate. Determine whether all the network quality parameters are better than the preset quality threshold; If not, then within the preset protection time period of the handover execution time, maintain the connection between the user terminal and the real-time network, and reacquire the network quality parameters of the user terminal accessing the target handover network after the preset retry time interval. If the network quality parameters do not exceed the preset quality threshold within the preset number of retries, the network handover is terminated, and the connection between the user terminal and the real-time network is maintained.
6. The method according to claim 1, characterized in that, After the step of sending the target handover network to the user terminal at the handover execution time, enabling the user terminal to access the target handover network, the method further includes: Statistically analyze the historical handover success rate of each target handover network for the user terminal; The historical handover success rate is associated with and stored in relation to the identifier of the target handover network; When multiple target switching networks are identified, the historical switching success rate associated with the identifier of each target switching network is obtained, and target switching networks with historical switching success rates lower than a preset stable success threshold are excluded from the candidate networks.
7. A server, characterized in that, The server includes: one or more processors and a memory; the memory is coupled to the one or more processors, the memory being used to store computer program code, the computer program code including computer instructions, and the one or more processors invoking the computer instructions to cause the server to perform the method as described in any one of claims 1-6.
8. A computer-readable storage medium comprising instructions, characterized in that, When the instruction is executed on the server, it causes the server to perform the method as described in any one of claims 1-6.
9. A computer program product, characterized in that, When the computer program product is run on the server, the server performs the method as described in any one of claims 1-6.
Citation Information
Patent Citations
Multi-attribute handover decision method for heterogeneous vehicle communication network
CN102572982A
Multi-attribute vertical switching method based on mobile trend perception
CN107071839A