Terminal direct connection satellite uplink synchronization method and device

CN122909658APending Publication Date: 2026-10-13TSINGHUA UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611252216.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-18
Publication Date
2026-10-13

AI Technical Summary

Technical Problem

然而,这种强依赖性也引入了一个新的攻击面,攻击者可以伪造或重放卫星广播的SIB19信令,更改卫星星历或者公共TA,诱使终端计算出错误的TA值,使得终端发送的上行信令偏离基站的接收窗口,无法被正确解码,从而引发连接中断,导致终端通信失败

Benefits of technology

[0022]本发明提供的终端直连卫星的上行同步方法及装置,对接收到的系统信息消息进行合法性验证;若在预设时长内未接收到合法的系统信息消息,则基于目标历史多普勒频移及预设卫星星历数据,确定目标终端侧定时提前值,其中,目标历史多普勒频移根据预设时长之前的合法系统信息消息得到;根据预设的地面基站位置及目标终端侧定时提前值,确定目标完整定时提前值;按照目标完整定时提前值发送上行数据。即使在预设时长内未接收到合法的系统信息消息,也可以基于目标历史多普勒频移及预设卫星星历数据推测出目标终端侧定时提前值,并进一步得到目标完整定时提前值,从而按照目标完整定时提前值发送上行数据,以实现终端与卫星的直连通信,从而提高了终端直连卫星通信场景中终端通信的成功率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122909658A_ABST
    Figure CN122909658A_ABST
Patent Text Reader

Abstract

The application provides an uplink synchronization method and device for a terminal directly connecting to a satellite, and relates to the technical field of satellite communication. The method comprises the following steps: verifying the legality of a received system information message; if a legal system information message is not received within a preset time length, determining a target terminal side timing advance value based on a target historical Doppler frequency shift and preset satellite ephemeris data, wherein the target historical Doppler frequency shift is obtained according to a legal system information message before the preset time length; determining a target complete timing advance value according to a preset ground base station position and the target terminal side timing advance value; and sending uplink data according to the target complete timing advance value. The target terminal side timing advance value is speculated based on the target historical Doppler frequency shift and the preset satellite ephemeris data, and the target complete timing advance value is further obtained, so that the uplink data is sent according to the target complete timing advance value, thereby improving the success rate of terminal communication in a terminal directly connecting to a satellite communication scenario.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of satellite communication technology, and in particular to an uplink synchronization method and apparatus for a terminal directly connected to a satellite. Background Technology

[0002] Direct satellite connectivity for mobile phones provides services to mobile terminals via low-Earth orbit satellites, extending the coverage of cellular networks to areas inaccessible by terrestrial base stations, and has gradually become a key infrastructure for the future mobile internet. In recent years, the 3rd Generation Partnership Project (3GPP) has expanded the Non-Terrestrial Network (NTN) protocol based on the 5G protocol to support direct satellite connectivity for mobile phones, and various satellite operators have indicated that they will deploy the NTN protocol on their satellite constellations in the future.

[0003] Base stations typically use time-division multiplexing to allocate data transmission time slots for different mobile terminals, and the uplink signaling sent by the terminal needs to fall within the base station's receiving window. However, due to the varying distances between mobile terminals and base stations, mobile networks employ an uplink synchronization mechanism. This mechanism involves the base station sending Timing Advance (TA) signaling to inform the terminal how far in advance it needs to send its signal to arrive at the base station in the corresponding time slot. However, in direct satellite networks, the latency of the satellite-to-ground link exceeds the range of the TA signaling in the 5G protocol. Therefore, the NTN protocol extends the uplink synchronization mechanism by adding a System Information Block (SIB) broadcast signaling, called SIB19 signaling, which informs the terminal of the current satellite ephemeris information and the common TA of the feeder link. The terminal obtains its own positioning via navigation satellites, then calculates the terminal-side TA value from the satellite based on the satellite position in the SIB19 signaling, and adds the common TA value to obtain the complete TA value from the terminal to the base station, thus achieving uplink synchronization.

[0004] This demonstrates that uplink synchronization between mobile phones and satellites relies on SIB19 signaling. However, this strong dependence also introduces a new attack surface. Attackers can forge or replay SIB19 signaling broadcast by the satellite, alter satellite ephemeris or public TA, and induce the terminal to calculate incorrect TA values. This causes the uplink signaling sent by the terminal to deviate from the base station's receiving window, making it impossible to decode correctly, thus triggering a connection interruption and causing terminal communication failure. Summary of the Invention

[0005] This invention provides an uplink synchronization method and apparatus for direct satellite connection of a terminal, which improves the success rate of terminal communication in direct satellite communication scenarios.

[0006] This invention provides an uplink synchronization method for a terminal directly connected to a satellite, applied to a terminal, the method comprising: Verify the validity of received system information messages; If no legitimate system information message is received within a preset time period, the timing advance value on the target terminal side is determined based on the target historical Doppler frequency shift and preset satellite ephemeris data, wherein the target historical Doppler frequency shift is obtained based on legitimate system information messages prior to the preset time period; Based on the preset location of the ground base station and the timing advance value on the target terminal side, determine the complete timing advance value of the target; Uplink data is sent according to the target complete timing advance value.

[0007] In one possible implementation, the validation of the received system information message includes: Check whether the current system information message was sent by an authenticated satellite; If the message is not sent by an authenticated satellite, the current system information message is signed and authenticated. If the signature is deemed valid, the satellite that sent the current system information message is determined to be an authenticated satellite, and the system information message whose signature is deemed valid is a legitimate system information message. If the message is sent by a certified satellite, then the predicted parameter value corresponding to the current system information message is predicted based on the historical legitimate system information messages of the certified satellite. Based on the difference between the actual parameter values ​​and the predicted parameter values ​​in the current system information message, it is determined whether the current system information message is valid.

[0008] In one possible implementation, if the message is sent by a certified satellite, predicting the prediction parameter value corresponding to the current system information message based on the historical legitimate system information messages of the certified satellite includes: If the message is sent by a certified satellite, then based on the historical legitimate system information messages of the certified satellite, the first predicted satellite position and the first predicted satellite velocity when the satellite sends the current system information message are predicted; and the first predicted common timing advance value is calculated based on the first predicted satellite position. Determining the validity of the current system information message based on the difference between the actual parameter value and the predicted parameter value in the current system information message includes: Calculate the distance difference between the actual satellite position and the first predicted satellite position in the current system information message; Calculate the velocity difference between the actual satellite velocity in the current system information message and the first predicted satellite velocity; Calculate the time difference between the actual common timing advance value and the first predicted common timing advance value in the current system information message; If at least one of the following conditions is met: the distance difference is greater than a preset distance threshold, the speed difference is greater than a preset speed threshold, or the time difference is greater than a preset time threshold, the current system information message is determined to be invalid; otherwise, the current system information message is determined to be valid.

[0009] In one possible implementation, the method further includes: Obtain the time offset value and service switching time from the current system information message, wherein the time offset value represents the elapsed time since the last switching of the satellite; Determine whether the sum of the service switching time and the time offset value is within the tolerance window at the current time; If the message is not within the tolerance window at the current moment, then the current system information message is deemed invalid. If it is within the tolerance window at the current moment, then the following steps are triggered: check whether the current system information message was sent by an authenticated satellite.

[0010] In one possible implementation, determining whether the sum of the service switching time and the time offset value is within the tolerance window of the current time includes: Determine if T is satisfied Service +T offset >T now +δ, if satisfied, then within the tolerance window at the current time, where T Service T is the time of service switching. offset T is the time offset value. now δ represents the current time, and δ represents the preset tolerance window size.

[0011] In one possible implementation, if no valid system information message is received within a preset time period, determining the timing advance value on the target terminal side based on the target's historical Doppler shift and preset satellite ephemeris data includes: If no valid system information message is received within a preset time period, the target historical Doppler shift and preset satellite ephemeris data are obtained, wherein the preset satellite ephemeris data includes two rows of orbital elements of each satellite in the communication service constellation; Based on the two rows of orbital elements of each satellite, the satellite whose theoretical Doppler frequency shift is closest to the historical Doppler frequency shift of the target is selected from among the satellites to obtain the target satellite. The theoretical Doppler frequency shift of the satellite is obtained from the two rows of orbital elements of the satellite. Based on the positioning data of the terminal, the target terminal-side timing advance value between the terminal and the target satellite is calculated.

[0012] In one possible implementation, the step of selecting the target satellite from among the satellites whose theoretical Doppler shift is closest to the target historical Doppler shift based on the two rows of orbital elements of each satellite includes: The satellites are classified according to the two rows of orbital elements to obtain multiple satellite classes. The orbital differences of the satellites in the same satellite class are less than a preset orbital difference value. The satellite orbits are obtained based on the two rows of orbital elements. Based on the positioning data of the terminal, satellites whose orbits are not within the effective communication range of the terminal are filtered out, and the remaining satellites are classified as the first satellite category. The target satellite is obtained by selecting the satellite whose theoretical Doppler shift is closest to the historical Doppler shift of the target satellite from the first satellite class.

[0013] In one possible implementation, based on the terminal's positioning data, satellite classes whose orbits are outside the terminal's effective communication range are filtered out, leaving a first satellite class, including: Based on the positioning data of the terminal and the orbits of each of the satellite types, calculate the actual angle between the terminal and the orbital plane normal vector of each of the satellite types; Based on the positioning data of the terminal, determine the maximum angle between the terminal and the normal vector of the satellite orbital plane; Satellites whose actual included angle is smaller than the maximum included angle are filtered out to obtain the remaining first satellite class.

[0014] In one possible implementation, the step of calculating the actual angle between the terminal and the orbital plane normal vector of each of the satellite types, based on the terminal's positioning data and the orbits of each satellite type, includes: For each satellite class, the actual angle between the terminal and the orbital plane normal vector of the satellite class is calculated using the following formula: = ; in, The actual angle between the terminal and the orbital plane normal vector of the i-th satellite class; Let be the orbital plane normal vector of the i-th satellite class; The location vector of the terminal is obtained based on the terminal's positioning data; Determining the maximum angle between the terminal and the normal vector of the satellite orbit plane based on the terminal's positioning data includes: The maximum angle between the terminal and the normal vector of the satellite orbital plane is calculated using the following formula: ; in, The maximum included angle; The minimum elevation angle of the terminal; The radius of the Earth; The distance from the terminal to the Earth's center is obtained based on the terminal's positioning data.

[0015] In one possible implementation, the target satellite is obtained by selecting the satellite in the first satellite class whose theoretical Doppler shift is closest to the target's historical Doppler shift, including: For each first satellite class, select one satellite in the first satellite class to obtain the first satellite, and assign the value of the mean anomaly angle in the two rows of orbital elements of the first satellite to the optimal mean anomaly angle; If the current number of iterations is less than the maximum number of iterations, calculate the mean square error between the Doppler frequency shift of the first satellite at the current optimal mean aperimeter angle and the historical Doppler frequency shift of the target, and calculate the gradient value of the mean square error with respect to the mean aperimeter angle; If the current value of the search flag parameter is the first value, assign the value of the second gradient parameter to the first gradient parameter, and assign the gradient value of this round to the second gradient parameter; assign the value of the second angle parameter to the first angle parameter, and assign the value of the best mean anterior angle before the update to the second angle parameter; use the gradient descent algorithm to update the value of the best mean anterior angle; wherein, the initial value of the search flag parameter is the first value; When the current value of the search flag parameter is the second value, if the gradient value of this round has the same sign as the first gradient parameter, then assign the gradient value of this round to the first gradient parameter and assign the value of the best mean anterior angle before the update to the first angle parameter; if the gradient value of this round has the same sign as the second gradient parameter, then assign the gradient value of this round to the second gradient parameter and assign the value of the best mean anterior angle before the update to the second angle parameter; update the value of the best mean anterior angle; If the current second gradient parameter has the opposite sign to the first gradient parameter, set the search flag parameter to the second value; If the absolute value of the difference between the second angle parameter and the first angle parameter is greater than or equal to the preset precision value, update the iteration count and return to the step of determining the number of iterations to be executed; If the first satellite class has not performed a flip calculation, update the value of the optimal mean anterior angle and return to the step of determining the number of iterations; If the first satellite class has undergone a flip calculation, the mean square error corresponding to the current best mean aperimeter angle is output to obtain the first mean square error of the first satellite class, and the first satellite class with the smallest first mean square error is selected to obtain the second satellite class. The second mean square error is obtained by calculating the mean square error between the theoretical Doppler frequency shift of each satellite in the second satellite class and the historical Doppler frequency shift of the target, and the satellite with the smallest second mean square error is selected as the target satellite.

[0016] In one possible implementation, determining the target complete timing advance value based on the preset ground base station location and the target terminal-side timing advance value includes: Based on the preset location of the ground base station and the positioning data of the terminal, the ground base station closest to the terminal is selected from the set of ground base stations to obtain the target ground base station; Calculate the target common timing advance value based on the location of the target ground base station; The target common timing advance value is added to the target terminal-side timing advance value to obtain the target complete timing advance value.

[0017] In one possible implementation, after transmitting uplink data according to the target full timing advance value, the method further includes: If the target satellite cannot be accessed, the target ground base station is removed from the set of ground base stations, and the process returns to the following steps: Based on the preset location of the ground base station and the positioning data of the terminal, the ground base station closest to the terminal is selected from the set of ground base stations to obtain the target ground base station.

[0018] The present invention also provides an uplink synchronization device for a terminal directly connected to a satellite, applied to a terminal, the device comprising: The cross-layer authentication module is used to verify the legitimacy of received system information messages; The terminal-side timing advance reconstruction module is used to determine the target terminal-side timing advance value based on the target historical Doppler frequency shift and preset satellite ephemeris data if no valid system information message is received within a preset time period. The target historical Doppler frequency shift is obtained based on valid system information messages before the preset time period. The common timing advance reconstruction module is used to determine the target complete timing advance value based on the preset ground base station location and the timing advance value on the target terminal side; The data transmission module is used to transmit uplink data according to the target complete timing advance value.

[0019] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the uplink synchronization method for direct connection of a terminal to a satellite as described above.

[0020] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the uplink synchronization method for direct connection of a terminal to a satellite as described above.

[0021] The present invention also provides a computer program product, including a computer program that, when executed by a processor, implements the uplink synchronization method for direct connection of a terminal to a satellite as described above.

[0022] The uplink synchronization method and apparatus for direct satellite connection provided by this invention verifies the legitimacy of received system information messages. If no legitimate system information message is received within a preset time period, a timing advance value for the target terminal side is determined based on the target's historical Doppler frequency shift and preset satellite ephemeris data. The target's historical Doppler frequency shift is obtained from legitimate system information messages received before the preset time period. A complete timing advance value for the target terminal side is determined based on the preset ground base station location and the target terminal-side timing advance value. Uplink data is then transmitted according to the target's complete timing advance value. Even if no legitimate system information message is received within the preset time period, the target terminal-side timing advance value can be inferred based on the target's historical Doppler frequency shift and preset satellite ephemeris data, and the complete timing advance value can be further obtained. Uplink data can then be transmitted according to the target's complete timing advance value to achieve direct communication between the terminal and the satellite, thereby improving the success rate of terminal communication in direct satellite connection scenarios. Attached Figure Description

[0023] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0024] Figure 1 This is one of the flowcharts illustrating the uplink synchronization method for direct satellite connection of a terminal provided by the present invention; Figure 2 This is a schematic diagram of a possible implementation of step S11 in this invention; Figure 3 This is a schematic diagram of a possible implementation of step S12 in this invention; Figure 4 This is a schematic diagram of a possible implementation of step S122 in this invention; Figure 5 This is one of the flowcharts illustrating the uplink synchronization method for direct satellite connection of a terminal provided by the present invention; Figure 6 This is a schematic diagram of an uplink synchronization device for direct satellite connection of a terminal provided by the present invention. Figure 7 This is a schematic diagram of an application scenario of the uplink synchronization device for direct satellite connection of the terminal provided by the present invention; Figure 8 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation

[0025] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0026] In traditional mobile networks, there are two main methods for defending against broadcast signaling spoofing attacks: signaling spoofing detection and digital authentication. However, due to the high dynamism of low-Earth orbit (LEO) satellites, existing methods have limited effectiveness in defending against NTN protocols. Signaling spoofing detection typically uses machine learning algorithms to identify spoofing attacks by analyzing message sequences between base stations and terminals. Such detection mechanisms can usually only identify the attacker's presence after the fact, lacking the ability to filter spoofed signaling in real time and unable to recover the correct timing advance. Therefore, terminals are still prone to connection interruptions. Digital authentication uses cryptographic methods to digitally authenticate broadcast signaling, but directly applying traditional digital authentication schemes in the NTN environment still has shortcomings. On the one hand, SIB19 carries rapidly changing satellite parameters, requiring frequent updates to track the satellite's continuous motion. This makes the signing and verification process for each message impose high computational and signaling overhead on both satellite broadcasting and terminal synchronization processes. On the other hand, digital authentication alone cannot prevent replay attacks. While these messages are still cryptographically verifiable, they may still mislead terminals into calculating incorrect timing advances.

[0027] To solve at least one of the above problems, the present invention provides an uplink synchronization method and apparatus for direct satellite connection of a terminal, which will be described below in conjunction with... Figures 1 to 8 Please provide a detailed explanation.

[0028] Figure 1 This is a flowchart illustrating the uplink synchronization method for direct satellite connection between a terminal and a terminal provided by the present invention. Applied to a terminal, the method includes: S11, verify the validity of the received system information message.

[0029] System information messages are used to inform the terminal of the satellite's current ephemeris information and the common transfer signaling (TA) of the feed link. In one example, the system information message can be an SIB broadcast signaling under the NTN protocol, specifically SIB19 signaling.

[0030] The terminal verifies the legitimacy of received system information messages to determine their validity. In one example, the terminal can detect the legitimacy of a system information message based on signaling forgery detection or digital authentication. In another example, the terminal can verify whether the system information message matches the physical layer characteristics of the satellite observed by the terminal, such as whether it matches the observed satellite orbit or Doppler shift, thereby determining the legitimacy of the system information message.

[0031] For legitimate system information messages, the terminal can directly communicate with the satellite based on parameters such as the common TA (Transmission Address). Illegal system information messages are discarded.

[0032] S12, if no valid system information message is received within a preset time period, then the timing advance value of the target terminal side is determined based on the target historical Doppler frequency shift and the preset satellite ephemeris data, wherein the target historical Doppler frequency shift is obtained based on the valid system information message before the preset time period.

[0033] An attacker must send a forged signal using the same satellite frequency at the same time to overwrite the original legitimate signal. However, even if the signaling plane is compromised, the Doppler shift between the terminal and the satellite cannot be modified. Therefore, the historical Doppler shift of the satellite, i.e., the target's historical Doppler shift, can be obtained based on legitimate system information messages from a preset time period ago.

[0034] If the terminal does not receive a valid system information message within a certain time window, it will use the target's historical Doppler shift observed by the terminal and preset satellite ephemeris data to infer the predicted position of the satellite, and then infer the user-side TA value. This provides a reliable estimate of the terminal-side TA value without relying on system information messages. The duration of the time window is a preset duration.

[0035] S13, determine the target complete timing advance value based on the preset ground base station location and the target terminal side timing advance value.

[0036] To further recover the complete TA value, it is also necessary to reconstruct the TA value of the feeder link between the satellite and the ground base station, i.e., the common TA value. Based on the terminal's location and the preset ground base station location, a target ground base station is selected, and the common TA value is calculated based on the target ground base station's location and the satellite's predicted location. By combining the reconstructed common TA value with the target terminal-side TA value, the target complete TA value from the terminal to the satellite is derived.

[0037] S14, send uplink data according to the target complete timing advance value.

[0038] The terminal sends uplink data to the satellite based on the target's complete TA value.

[0039] In this embodiment of the invention, even if no legitimate system information message is received within a preset time period, the timing advance value of the target terminal can be inferred based on the target's historical Doppler frequency shift and preset satellite ephemeris data, and the complete timing advance value of the target can be obtained. Uplink data is then sent according to the complete timing advance value of the target to achieve direct communication between the terminal and the satellite, thereby improving the success rate of terminal communication in the scenario of direct satellite communication.

[0040] based on Figure 1 The illustrated embodiment, in one possible implementation, see [link to example]. Figure 2 Step S11 verifies the legality of the received system information message, including: S111, check whether the current system information message was sent by an authenticated satellite.

[0041] The authenticated satellite is identified as the satellite through a signature in the system information message. For details on the signature authentication process, please refer to the description in the next step.

[0042] S112, if the message is not sent by an authenticated satellite, then the current system information message is signed and authenticated; if the signature is deemed valid, the satellite that sent the current system information message is determined to be an authenticated satellite, wherein the system information message whose signature is deemed valid is a legitimate system information message.

[0043] When a terminal switches to a new satellite, it receives a system information message containing satellite ephemeris data. To ensure the authenticity of the system information message, this invention adds a digital certificate and a digital signature to the message content. This digital signature can be implemented using relevant cryptographic methods, which are not specifically limited in this invention. As an example, identity-based cryptography can be used for authentication. The operator generates a certificate for each satellite and ground base station based on its node ID, which is assigned by the operator. Before broadcasting, the satellite or ground base station signs the system information message using its private key. The terminal, pre-configured with the operator's master public key, obtains the node ID from the system information message and calculates the public key based on the node ID and the certificate, thereby verifying the digital signature in the system information message. If the digital signature verification fails, indicating potential tampering or forgery, the terminal discards the system information message. If the signature authentication of the system information message passes, the system information message is considered legitimate, and the satellite sending the current system information message is determined to be an authenticated satellite.

[0044] S113, if the message is sent by a certified satellite, then based on the historical legitimate system information messages of the certified satellite, predict the prediction parameter value corresponding to the current system information message.

[0045] Because the motion of legitimate, certified satellites is strictly constrained by celestial dynamics, the parameter sequences broadcast in multiple system information messages must constitute a continuous trajectory. Therefore, after a satellite's system information message is certified, subsequent predicted parameter values, such as satellite position, can be derived shortly based on the ephemeris data contained in that certified message. By fitting continuous satellite position observations to the satellite's dynamic orbit model, the terminal can perform consistency verification to distinguish whether the current system information message is legitimate.

[0046] In one example, the terminal can predict the first predicted satellite position and the first predicted satellite velocity when the satellite is sending the current system information message, based on the historical legitimate system information messages of the certified satellite; and calculate the first predicted common timing advance value based on the first predicted satellite position.

[0047] Assume the reception time of the last certified system information message for the certified satellite is The satellites carried have positions and velocities of [missing information]. and The current system information message reception time is It is assumed that the satellite's motion is approximately uniform circular motion. Based on Rodriguez's rotation formula, the first predicted satellite position in the current system information message is... and the first predicted satellite velocity It can be represented as: , ; in, , is the normal vector of the satellite's orbital plane; , which is the angle of the satellite.

[0048] Simultaneously, the terminal can locate a ground base station from the ground station's position. This ground base station can match the common TA value in an authenticated system information message. The terminal can then use this ground base station and the first predicted satellite position to calculate the current common TA value, i.e., the first predicted common timing advance value.

[0049] S114. Based on the difference between the actual parameter value and the predicted parameter value in the current system information message, determine whether the current system information message is valid.

[0050] The parameter values ​​carried in the current system information message are called actual parameter values. If the difference between the actual parameter value and the predicted parameter value is less than the prediction difference threshold, the current system information message is considered valid; otherwise, the current system information message is considered invalid.

[0051] In one example, the actual parameter values ​​may include the actual satellite position, the actual satellite velocity, and the actual common timing advance value. The terminal can then calculate the distance difference between the actual satellite position and the first predicted satellite position in the current system information message; calculate the velocity difference between the actual satellite velocity and the first predicted satellite velocity in the current system information message; and calculate the time difference between the actual common timing advance value and the first predicted common timing advance value in the current system information message. If at least one of the following conditions is met: the distance difference is greater than a preset distance threshold, the velocity difference is greater than a preset velocity threshold, and the time difference is greater than a preset time threshold, the current system information message is determined to be invalid; otherwise, the current system information message is determined to be valid.

[0052] In this embodiment of the invention, system information messages from new satellites are authenticated by signature. For subsequent system information messages sent by authenticated satellites that have been authenticated by signature, the legitimacy of the system information messages is authenticated by predicting parameter values. The computational power consumed by predicting parameter values ​​is less than that consumed by signature authentication, thus reducing the computational cost of verifying the legitimacy of system information messages.

[0053] Digital certificate-based signature authentication cannot reliably detect replay attacks. Therefore, the physical properties of Doppler shift can be utilized to detect replay attacks. Due to the high speed of satellite flight, the relative motion between the satellite and the terminal causes a significant Doppler shift. The magnitude of the Doppler shift is theoretically determined by the terminal coordinates, the satellite's instantaneous position and velocity vector, and the carrier frequency. Therefore, the ephemeris data broadcast in a single system information message must maintain strict physical consistency with the Doppler shift observed at the physical layer. This cross-layer correlation can serve as the basis for verifying the legitimacy of the system information message.

[0054] based on Figure 2 In one possible implementation of the illustrated embodiment, the method further includes: Step A1: Obtain the time offset value and service switching time from the current system information message, wherein the time offset value represents the elapsed time since the last switching of the satellite.

[0055] The system information message includes a time offset value and a service handover time. The time offset value represents the elapsed time since the last handover, and the service handover time indicates the time when the satellite will perform the next service handover. In one example, taking system information message SIB19, the service handover time is represented by the t-Service field. Furthermore, in this embodiment of the invention, an additional t-offset field is added to SIB19 to represent the elapsed time since the last handover, i.e., the time offset value.

[0056] Step A2: Determine whether the sum of the service switching time and the time offset value is within the tolerance window of the current time.

[0057] During a satellite overhead pass, the Doppler frequency shift monotonically decreases. Therefore, a tolerance window can be set, within which all Doppler frequency shifts are different. Determine if T is satisfied. Service +T offset >T now +δ, if satisfied, then it is within the tolerance window at the current time; otherwise, it is not within the tolerance window at the current time, where T Service T is the time of service switching. offset T is the time offset value. now δ represents the current time, and δ represents the preset tolerance window size.

[0058] Step A3: If the message is not within the tolerance window at the current moment, then the current system information message is determined to be invalid.

[0059] When the current system information message is determined to be invalid, it can be discarded directly without any further action.

[0060] Step A4: If it is within the tolerance window at the current moment, then trigger the execution step: S1011, check whether the current system information message is sent by an authenticated satellite.

[0061] In this embodiment of the invention, replay attacks are reliably detected by judging the tolerance window, thereby filtering out system information messages of replay attacks, so as to further improve the success rate of terminal communication in the scenario of direct satellite communication between the terminal and the terminal.

[0062] based on Figure 1 The illustrated embodiment, in one possible implementation, see [link to example]. Figure 3 If no valid system information message is received within a preset time period in step S12, the timing advance value on the target terminal side is determined based on the target's historical Doppler frequency shift and preset satellite ephemeris data, including: S121, if no valid system information message is received within a preset time period, the target historical Doppler shift and preset satellite ephemeris data are obtained, wherein the preset satellite ephemeris data includes two rows of orbital elements of each satellite in the communication service constellation.

[0063] The target historical Doppler shift can be obtained based on legitimate system information messages.

[0064] S122, based on the two rows of orbital elements of each of the satellites, select the satellite whose theoretical Doppler frequency shift is closest to the historical Doppler frequency shift of the target satellite to obtain the target satellite, wherein the theoretical Doppler frequency shift of the satellite is obtained according to the two rows of orbital elements of the satellite.

[0065] The Doppler shift of a satellite can be calculated based on its two-line element set (TLE), hereinafter referred to as the theoretical Doppler shift. It is evident that the mean square error between the theoretical Doppler shift of the satellite and the historical Doppler shift of the target satellite is calculated, and the satellite with the smallest mean square error is selected as the target satellite.

[0066] In one example, the target satellite can be obtained using the following formula: ; in, Let N be the historical Doppler frequency shift of the i-th target, and N be the total number of selected historical Doppler frequency shifts. The time corresponding to the historical Doppler shift of the i-th target. for The theoretical Doppler frequency shift at time t, s Let S be the satellite, S be the set of satellites in the communication service constellation, and m be the mean anomaly angle. For the target satellite, The mean angle of approach of the target satellite.

[0067] S123, Calculate the target terminal-side timing advance value between the terminal and the target satellite based on the positioning data of the terminal.

[0068] Based on the terminal's positioning and the target satellite's location, the timing advance value between the terminal and the target satellite can be calculated, which is called the target terminal-side timing advance value.

[0069] In this embodiment of the invention, even if no legitimate system information message is received within a preset time period, the timing advance value of the target terminal can be determined based on the target's historical Doppler frequency shift and preset satellite ephemeris data, providing a basis for subsequently determining the target's complete timing.

[0070] If the mean square error of the Doppler frequency shift between the computing terminal and all satellites consumes a significant amount of the terminal's computing resources, then to reduce this consumption, based on... Figure 3 The illustrated embodiment, in one possible implementation, see [link to example]. Figure 4 S122, based on the two rows of orbital elements of each satellite, selects the satellite whose theoretical Doppler shift is closest to the historical Doppler shift of the target satellite to obtain the target satellite, including: S1221, classify each satellite according to the two rows of orbital elements to obtain multiple satellite classes, wherein the orbital difference of each satellite in the same satellite class is less than a preset orbital difference value, and the satellite orbit is obtained according to the two rows of orbital elements of the satellite.

[0071] Based on the two orbital elements, the relevant parameters of a satellite's orbit can be obtained, such as inclination, right ascension of the ascending node, and mean orbital number. Satellites are classified according to their orbits, grouping those with orbital differences less than a preset value into a single satellite class. In one example, a set C records the classification results, where each element in C represents a satellite class, initialized as an empty set. The satellite set is then iterated through. For each satellite s in the set, for the currently selected satellite s, iterate through the set C, and for each satellite class... Take the first satellite added to c. If s and If the differences in inclination, right ascension of the ascending node, and average number of orbits are all less than the corresponding thresholds, then the two satellites are considered to belong to the same satellite class, and s is added to c. If s does not belong to an existing satellite class, a new satellite class is created, and s is added to the new satellite class, which is also added to C.

[0072] S1222, Based on the positioning data of the terminal, satellites whose orbits are not within the effective communication range of the terminal are filtered out, and the remaining satellites are the first satellite category.

[0073] Based on the positioning data of the terminal and the orbits of each satellite class, the actual angle between the terminal and the orbital plane normal vector of each satellite class is calculated; based on the positioning data of the terminal, the maximum angle between the terminal and the satellite orbital plane normal vector is determined; satellite classes with actual angles smaller than the maximum angle are filtered out to obtain the remaining first satellite class.

[0074] In one example, for each satellite class, the actual angle between the terminal and the orbital plane normal vector of that satellite class is calculated using the following formula: = ; in, The actual angle between the terminal and the orbital plane normal vector of the i-th satellite class; Let be the orbital plane normal vector of the i-th satellite class; The location vector of the terminal is obtained based on the terminal's positioning data.

[0075] The maximum angle between the terminal and the normal vector of the satellite orbital plane is calculated using the following formula: ; in, The maximum included angle; The minimum elevation angle of the terminal; The radius of the Earth; The distance from the terminal to the Earth's center is obtained based on the terminal's positioning data.

[0076] if If the i-th satellite class is within the effective communication range of the terminal; If the i-th satellite class is filtered out, then the remaining satellite class is the first satellite class. S1223, Select the satellite in the first satellite class whose theoretical Doppler frequency shift is closest to the target's historical Doppler frequency shift to obtain the target satellite.

[0077] In this embodiment of the application, satellites are classified according to regulations, and satellites outside the effective communication range of the terminal are filtered out. This reduces the number of satellites that need to be compared with Doppler frequency shift, thereby reducing the consumption of terminal computing resources and improving the terminal's response speed.

[0078] This application also provides a hybrid gradient descent and bisection search method for the mean anterior angle search, aiming to minimize the residual between the theoretical Doppler shift predicted by TLE and the target historical Doppler shift actually observed by the terminal. However, this optimization process faces two challenges: first, the search may converge to a local optimum; second, non-differentiable regions may cause gradient-based updates to fail. Regarding the first problem, local optima typically correspond to geometrically opposite satellite positions, roughly 180° different from the global optimum in orbital phase. Therefore, once gradient descent converges to a candidate solution, a ±180° phase flip can be used to escape such symmetric local minima and restart the minimization process. Regarding the second problem, the sign change of the gradient is monitored during continuous iterations. If a sign reversal is detected, it indicates the existence of a non-differentiable region or oscillatory behavior. Therefore, a bisection search strategy can be switched from gradient descent to a local neighborhood to ensure stable convergence.

[0079] based on Figure 4 In one possible implementation of the illustrated embodiment, step S1223, selecting the satellite in the first satellite class whose theoretical Doppler shift is closest to the target historical Doppler shift to obtain the target satellite, includes: Step B1: For each first satellite class, select one satellite in the first satellite class to obtain the first satellite, and assign the value of the mean anomaly angle in the two rows of orbital elements of the first satellite to the optimal mean anomaly angle.

[0080] In one example, for the current first satellite class, the first satellite added to the first satellite class during the satellite classification process can be selected as the first satellite of the current first satellite class.

[0081] Step B2: Determine whether the current iteration count is less than the maximum iteration count, where the initial value of the iteration count is 0.

[0082] The maximum number of iterations can be set according to the actual situation, for example, it can be 50, 80 or 100 times. If the current number of iterations is less than the maximum number of iterations, then proceed to step B3; if the current number of iterations is equal to the maximum number of iterations, then proceed to step B8.

[0083] Step B3: If the current iteration number is less than the maximum iteration number, calculate the mean square error between the Doppler frequency shift of the first satellite at the current optimal mean aperimeter angle and the historical Doppler frequency shift of the target, and calculate the gradient value of the mean square error with respect to the mean aperimeter angle.

[0084] Step B4: When the current value of the search flag parameter is the first value, assign the value of the second gradient parameter to the first gradient parameter, and assign the gradient value of this round to the second gradient parameter; assign the value of the second angle parameter to the first angle parameter, and assign the value of the best mean anterior angle before the update to the second angle parameter; use the gradient descent algorithm to update the value of the best mean anterior angle: M new =M old -ξ×lr; where M old M is the value of the optimal plan anterior angle before the update. new The updated optimal mean anterior angle is ξ, the gradient value of this round is lr, the learning rate of the gradient descent algorithm is lr, and the initial value of the search flag parameter is the first value.

[0085] In one example, the search flag parameter is denoted as flag_bin, which indicates whether binary search is triggered. It is initialized to the first value, for example, False. The first gradient parameter is denoted as grad[0], the second gradient parameter as grad[1], the first angle parameter as param[0], and the second angle parameter as param[1]. The initial values ​​of grad[0] and grad[1] can be set to 0, and the initial values ​​of param[0] and param[1] are set to the values ​​of the mean aperimeter angle in TLE. If flag_bin is False, the gradient descent algorithm is used, updating grad[0]=grad[1] and grad[1]=ξ, updating param[0]=param[1], and param[1]=M. old Update M new =M old -ξ×lr.

[0086] Step B5: When the current value of the search flag parameter is the second value, if the gradient value of this round has the same sign as the first gradient parameter, then assign the gradient value of this round to the first gradient parameter, and assign the value of the best mean anterior angle before the update to the first angle parameter; if the gradient value of this round has the same sign as the second gradient parameter, then assign the gradient value of this round to the second gradient parameter, and assign the value of the best mean anterior angle before the update to the second angle parameter; update the value of the best mean anterior angle: M new = (first angle parameter + second angle parameter) / 2.

[0087] If flag_bin is True, and True is the second value, then update the gradients in grad[0] and grad[1] that have the same sign as ξ. If grad[0] and ξ have the same sign, then update grad[0] = ξ and param[0] = M. old If grad[1] and ξ have the same sign, update grad[1] = ξ and param[1] = M. old Update M by taking the mean of param[0] and param[1]. new = (param[0] + param[1]) / 2.

[0088] Step B6: Determine whether the signs of the current second gradient parameter and the first gradient parameter are opposite. If they are opposite, set the search flag parameter to the second value.

[0089] If the symbols of grad[0] and grad[1] are opposite, then flag_bin is set to True.

[0090] Step B7: Calculate the absolute value of the difference between the second angle parameter and the first angle parameter. If the current absolute value is greater than or equal to the preset precision value, update the iteration count and return to execute step B2: Determine whether the current iteration count is less than the maximum iteration count.

[0091] If |param[0]-param[1]| is less than the preset precision value If the result is positive, proceed to step B8; otherwise, increment the iteration count by 1 and return to step B2.

[0092] Step B8: When the current absolute value is less than the preset precision value, or when the current iteration number is equal to the maximum iteration number, determine whether a flip calculation has been performed for the first satellite class.

[0093] Step B9: If the flip calculation has not been performed, then perform the flip calculation: Update the value M of the optimal mean anterior angle. new =(M oldThe expression `+180)%360` is used to initialize the iteration count, first gradient parameter, second gradient parameter, first angle parameter, and second angle parameter. The execution step is then returned: determine if the current iteration count is less than the maximum iteration count. Here, `%` represents the modulo operation.

[0094] Step B10: If a flip calculation has been performed, output the mean square error corresponding to the current best mean aperimeter angle to obtain the first mean square error of the first satellite class.

[0095] Step B11: Select the first satellite class with the smallest mean square error to obtain the second satellite class.

[0096] For each first satellite class, the process from steps B1 to B10 above is performed to obtain the first mean square error for each first satellite class. The first satellite class with the smallest first mean square error is selected as the second satellite class.

[0097] Step B12: Calculate the mean square error between the theoretical Doppler frequency shift of each satellite in the second satellite class and the historical Doppler frequency shift of the target to obtain the second mean square error.

[0098] Step B13: Select the satellite with the smallest second mean square error to obtain the target satellite.

[0099] In this embodiment of the invention, further filtering of the first satellite class to obtain a second satellite class reduces the number of satellites requiring Doppler shift comparison, thereby reducing the consumption of terminal computing resources and improving the terminal's response speed. Furthermore, minimizing the residual between the theoretical Doppler shift predicted by TLE and the target's actual historical Doppler shift observed by the terminal accurately determines the target satellite.

[0100] based on Figure 1 The illustrated embodiment, in one possible implementation, see [link to example]. Figure 5 Step S13, determining the target complete timing advance value based on the preset ground base station location and the target terminal-side timing advance value, includes: S131, Based on the preset location of the ground base station and the positioning data of the terminal, select the ground base station closest to the terminal from the set of ground base stations to obtain the target ground base station.

[0101] The terminal obtains the locations of various ground base stations in the ground base station set through the preset ground base station locations, sorts them in ascending order according to the distance between the ground base stations and the terminal, and selects the ground base station closest to the terminal's location as the target ground base station. S132, Calculate the target common timing advance value based on the location of the target ground base station.

[0102] Based on the location of the target ground base station and the predicted location of the target satellite, the timing advance value between the target ground base station and the target satellite is calculated, which is the target common timing advance value.

[0103] S133, add the target common timing advance value to the target terminal-side timing advance value to obtain the target complete timing advance value.

[0104] After sending uplink data according to the target complete timing advance value in step S14, the method further includes: S15, if the target satellite cannot be accessed, the target ground base station is removed from the set of ground base stations, and the process returns to step S131: based on the preset ground base station location and the terminal's positioning data, the ground base station closest to the terminal is selected from the set of ground base stations to obtain the target ground base station.

[0105] The terminal initiates random access using the estimated target full timing advance value. If successful, the ground base station location is correct and is used for subsequent uplink synchronization TA calculation. If it fails, the terminal recalculates the target full timing advance value using the current target ground base station and re-initiates random access to reduce access failures due to congestion. If it still fails, the next target ground base station is selected.

[0106] In this embodiment of the invention, possible common TA values ​​are determined one by one through enumeration, thereby identifying the most likely ground base station. By combining the reconstructed target common TA value with the target terminal-side TA value, the end-to-end target complete TA value is derived. Even when real system information messages are unavailable, subsequent random access and uplink synchronization processes can still be supported. This improves the success rate of terminal communication in direct satellite communication scenarios.

[0107] The uplink synchronization device for direct satellite connection of a terminal provided by the present invention will be described below. The uplink synchronization device for direct satellite connection of a terminal described below can be referred to in correspondence with the uplink synchronization method for direct satellite connection of a terminal described above.

[0108] See Figure 6 The present invention also provides an uplink synchronization device for a terminal directly connected to a satellite, applied to a terminal, the device comprising: The cross-layer authentication module 601 is used to verify the legitimacy of received system information messages; The terminal-side timing advance reconstruction module 602 is used to determine the target terminal-side timing advance value based on the target historical Doppler frequency shift and preset satellite ephemeris data if no valid system information message is received within a preset time period. The target historical Doppler frequency shift is obtained based on valid system information messages before the preset time period. The common timing advance reconstruction module 603 is used to determine the target complete timing advance value based on the preset ground base station location and the timing advance value on the target terminal side; The data transmission module 604 is used to transmit uplink data according to the target complete timing advance value.

[0109] In one example, taking the system information message SIB19 as an example, the application scenario of the uplink synchronization device for direct connection of the terminal to the satellite in this invention can be as follows: Figure 7 As shown, Figure 7 The data transmission module is not shown.

[0110] In one possible implementation, the cross-layer authentication module 601 is specifically configured to: detect whether the current system information message was sent by an authenticated satellite; if it was not sent by an authenticated satellite, perform signature authentication on the current system information message; if the signature is deemed successful, determine that the satellite sending the current system information message is an authenticated satellite, wherein the system information message whose signature is deemed successful is a legitimate system information message; if it was sent by an authenticated satellite, predict the predicted parameter value corresponding to the current system information message based on the historical legitimate system information messages of the authenticated satellite; and determine whether the current system information message is legitimate based on the difference between the actual parameter value in the current system information message and the predicted parameter value.

[0111] In one possible implementation, the cross-layer authentication module 601 is specifically configured to: if the message is sent by an authenticated satellite, predict the first predicted satellite position and the first predicted satellite velocity when the satellite sends the current system information message based on the historical legitimate system information messages of the authenticated satellite; calculate a first predicted common timing advance value based on the first predicted satellite position; calculate the distance difference between the actual satellite position in the current system information message and the first predicted satellite position; calculate the velocity difference between the actual satellite velocity in the current system information message and the first predicted satellite velocity; calculate the time difference between the actual common timing advance value in the current system information message and the first predicted common timing advance value; and determine that the current system information message is invalid if at least one of the following conditions is met: the distance difference is greater than a preset distance threshold, the velocity difference is greater than a preset velocity threshold, and the time difference is greater than a preset time threshold; otherwise, determine that the current system information message is valid.

[0112] In one possible implementation, the cross-layer authentication module 601 is further configured to: obtain the time offset value and service switching time in the current system information message, wherein the time offset value represents the elapsed time since the last switching of the satellite; determine whether the sum of the service switching time and the time offset value is within the tolerance window of the current time; if it is not within the tolerance window of the current time, determine that the current system information message is invalid; if it is within the tolerance window of the current time, trigger the execution step: detect whether the current system information message was sent by an authenticated satellite.

[0113] In one possible implementation, the cross-layer authentication module 601 is specifically used to: determine whether T is satisfied. Service +T offset >T now +δ, if satisfied, then within the tolerance window at the current time, where T Service T is the time of service switching. offset T is the time offset value. now δ represents the current time, and δ represents the preset tolerance window size.

[0114] In one possible implementation, the terminal-side timing advance reconstruction module 602 is specifically configured to: if no valid system information message is received within a preset time period, acquire the target historical Doppler shift and preset satellite ephemeris data, wherein the preset satellite ephemeris data includes two rows of orbital elements of each satellite in the communication service constellation; based on the two rows of orbital elements of each satellite, select the satellite whose theoretical Doppler shift is closest to the target historical Doppler shift to obtain the target satellite, wherein the theoretical Doppler shift of the satellite is obtained according to the two rows of orbital elements of the satellite; and calculate the target terminal-side timing advance value between the terminal and the target satellite based on the terminal's positioning data.

[0115] In one possible implementation, the terminal-side timing advance reconstruction module 602 is specifically used for: classifying each satellite according to the two rows of orbital elements to obtain multiple satellite classes, wherein the orbital difference of each satellite in the same satellite class is less than a preset orbital difference value, and the satellite orbit is obtained according to the two rows of orbital elements; filtering out satellite classes whose orbits are not within the effective communication range of the terminal according to the terminal's positioning data, and the remaining satellite classes are the first satellite class; selecting the satellite in the first satellite class whose theoretical Doppler frequency shift is closest to the historical Doppler frequency shift of the target to obtain the target satellite.

[0116] In one possible implementation, the terminal-side timing advance reconstruction module 602 is specifically used to: calculate the actual angle between the terminal and the orbital plane normal vector of each satellite class based on the terminal's positioning data and the orbits of each satellite class; determine the maximum angle between the terminal and the satellite orbital plane normal vector based on the terminal's positioning data; and filter out satellite classes whose actual angle is less than the maximum angle to obtain the remaining first satellite class.

[0117] In one possible implementation, the terminal-side timing advance reconstruction module 602 is specifically used to: for each satellite class, calculate the actual angle between the terminal and the orbital plane normal vector of the satellite class using the following formula: = ; in, The actual angle between the terminal and the orbital plane normal vector of the i-th satellite class; Let be the orbital plane normal vector of the i-th satellite class; The location vector of the terminal is obtained based on the terminal's positioning data; The maximum angle between the terminal and the normal vector of the satellite orbital plane is calculated using the following formula: ; in, The maximum included angle; The minimum elevation angle of the terminal; The radius of the Earth; The distance from the terminal to the Earth's center is obtained based on the terminal's positioning data.

[0118] In one possible implementation, the terminal-side timing advance reconstruction module 602 is specifically used for: For each first satellite class, select one satellite in the first satellite class to obtain the first satellite, and assign the value of the mean anomaly angle in the two rows of orbital elements of the first satellite to the optimal mean anomaly angle; Determine if the current iteration count is less than the maximum iteration count, where the initial value of the iteration count is 0; If the current number of iterations is less than the maximum number of iterations, calculate the mean square error between the Doppler frequency shift of the first satellite at the current optimal mean aperimeter angle and the historical Doppler frequency shift of the target, and calculate the gradient value of the mean square error with respect to the mean aperimeter angle; When the current value of the search flag parameter is the first value, assign the value of the second gradient parameter to the first gradient parameter, and assign the gradient value of this round to the second gradient parameter; assign the value of the second angle parameter to the first angle parameter, and assign the value of the best mean anterior angle before the update to the second angle parameter; use the gradient descent algorithm to update the value of the best mean anterior angle: M new =M old -ξ×lr; where M old M is the value of the optimal plan anterior angle before the update. new The updated optimal mean anterior angle is ξ, the gradient value of this round is lr, the learning rate of the gradient descent algorithm is lr, and the initial value of the search flag parameter is the first value. When the current value of the search flag parameter is the second value, if the gradient value of this round has the same sign as the first gradient parameter, then assign the gradient value of this round to the first gradient parameter, and assign the value of the best mean anterior angle before the update to the first angle parameter; if the gradient value of this round has the same sign as the second gradient parameter, then assign the gradient value of this round to the second gradient parameter, and assign the value of the best mean anterior angle before the update to the second angle parameter; update the value of the best mean anterior angle: M new = (First angle parameter + Second angle parameter) / 2; Determine if the signs of the current second gradient parameter and the first gradient parameter are opposite. If they are opposite, set the search flag parameter to the second value. Calculate the absolute value of the difference between the second angle parameter and the first angle parameter. If the current absolute value is greater than or equal to the preset precision value, update the iteration count and return to the execution step: determine whether the current iteration count is less than the maximum iteration count; When the current absolute value is less than the preset precision value, or when the current number of iterations is equal to the maximum number of iterations, determine whether a flip calculation has been performed for the first satellite class; If the flip calculation has not been performed, then perform the flip calculation: update the value of the optimal mean anterior angle M. new =(M old +180)%360, and initialize the iteration count, first gradient parameter, second gradient parameter, first angle parameter, and second angle parameter, then return to the execution step: determine whether the current iteration count is less than the maximum iteration count; If a flip calculation has been performed, the mean square error corresponding to the current best mean aperimeter angle is output to obtain the first mean square error of the first satellite class. The second satellite class is obtained by selecting the first satellite class with the smallest mean square error. The second mean square error is obtained by calculating the mean square error between the theoretical Doppler frequency shift of each satellite in the second satellite class and the historical Doppler frequency shift of the target. The target satellite is obtained by selecting the satellite with the smallest second mean square error.

[0119] In one possible implementation, the common timing advance reconstruction module 603 is specifically used to: select the ground base station closest to the terminal from the ground base station set according to the preset ground base station location and the terminal's positioning data, and obtain the target ground base station; Calculate the target common timing advance value based on the location of the target ground base station; The target common timing advance value is added to the target terminal-side timing advance value to obtain the target complete timing advance value.

[0120] In one possible implementation, the common timing advance reconstruction module 603 is further configured to remove the target ground base station from the set of ground base stations if the target satellite cannot be accessed, and return to the execution step: select the ground base station closest to the terminal from the set of ground base stations according to the preset ground base station location and the terminal's positioning data to obtain the target ground base station.

[0121] Figure 8 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 8 As shown, the electronic device may include a processor 810, a communications interface 820, a memory 830, and a communication bus 840, wherein the processor 810, the communications interface 820, and the memory 830 communicate with each other via the communication bus 840. The processor 810 can call logical instructions in the memory 830 to execute any of the uplink synchronization methods for direct satellite connection described in this invention.

[0122] Furthermore, the logical instructions in the aforementioned memory 830 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0123] On the other hand, the present invention also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer is able to execute the uplink synchronization method for direct connection of a terminal to a satellite provided by the above methods.

[0124] In another aspect, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the uplink synchronization method for direct connection of a terminal to a satellite provided by the above methods.

[0125] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0126] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0127] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention 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; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. An uplink synchronization method for a terminal directly connected to a satellite, characterized in that, Applied to a terminal, the method includes: Verify the validity of received system information messages; If no legitimate system information message is received within a preset time period, the timing advance value on the target terminal side is determined based on the target historical Doppler frequency shift and preset satellite ephemeris data, wherein the target historical Doppler frequency shift is obtained based on legitimate system information messages prior to the preset time period; Based on the preset location of the ground base station and the timing advance value on the target terminal side, determine the complete timing advance value of the target; Uplink data is sent according to the target complete timing advance value.

2. The method according to claim 1, characterized in that, The process of verifying the legitimacy of received system information messages includes: Check whether the current system information message was sent by an authenticated satellite; If the message is not sent by an authenticated satellite, the current system information message is signed and authenticated. If the signature is deemed valid, the satellite that sent the current system information message is determined to be an authenticated satellite, and the system information message whose signature is deemed valid is a legitimate system information message. If the message is sent by a certified satellite, then the predicted parameter value corresponding to the current system information message is predicted based on the historical legitimate system information messages of the certified satellite. Based on the difference between the actual parameter values ​​and the predicted parameter values ​​in the current system information message, it is determined whether the current system information message is valid.

3. The method according to claim 2, characterized in that, If the message is sent by an authenticated satellite, then based on the historical legitimate system information messages of the authenticated satellite, the predicted parameter value corresponding to the current system information message is predicted, including: If the message is sent by a certified satellite, then based on the historical legitimate system information messages of the certified satellite, the first predicted satellite position and the first predicted satellite velocity when the satellite sends the current system information message are predicted; and the first predicted common timing advance value is calculated based on the first predicted satellite position. Determining the validity of the current system information message based on the difference between the actual parameter value and the predicted parameter value in the current system information message includes: Calculate the distance difference between the actual satellite position and the first predicted satellite position in the current system information message; Calculate the velocity difference between the actual satellite velocity in the current system information message and the first predicted satellite velocity; Calculate the time difference between the actual common timing advance value and the first predicted common timing advance value in the current system information message; If at least one of the following conditions is met: the distance difference is greater than a preset distance threshold, the speed difference is greater than a preset speed threshold, or the time difference is greater than a preset time threshold, the current system information message is determined to be invalid; otherwise, the current system information message is determined to be valid.

4. The method according to claim 2, characterized in that, The method further includes: Obtain the time offset value and service switching time from the current system information message, wherein the time offset value represents the elapsed time since the last switching of the satellite; Determine whether the sum of the service switching time and the time offset value is within the tolerance window at the current time; If the message is not within the tolerance window at the current moment, then the current system information message is deemed invalid. If it is within the tolerance window at the current moment, then the following steps are triggered: check whether the current system information message was sent by an authenticated satellite.

5. The method according to claim 1, characterized in that, If no valid system information message is received within a preset time period, the timing advance value on the target terminal side is determined based on the target's historical Doppler shift and preset satellite ephemeris data, including: If no valid system information message is received within a preset time period, the target historical Doppler shift and preset satellite ephemeris data are obtained, wherein the preset satellite ephemeris data includes two rows of orbital elements of each satellite in the communication service constellation; Based on the two rows of orbital elements of each satellite, the target satellite is selected from among the satellites whose theoretical Doppler frequency shift is closest to the historical Doppler frequency shift of the target. The theoretical Doppler frequency shift of the satellite is obtained from the two rows of orbital elements of the satellite. Based on the positioning data of the terminal, the target terminal-side timing advance value between the terminal and the target satellite is calculated.

6. The method according to claim 5, characterized in that, The method of selecting the target satellite based on the two rows of orbital elements of each satellite, and choosing the satellite whose theoretical Doppler shift is closest to the historical Doppler shift of the target satellite, includes: The satellites are classified according to the two rows of orbital elements to obtain multiple satellite classes. The orbital differences of the satellites in the same satellite class are less than a preset orbital difference value. The satellite orbits are obtained based on the two rows of orbital elements. Based on the positioning data of the terminal, satellites whose orbits are not within the effective communication range of the terminal are filtered out, and the remaining satellites are classified as the first satellite category. The target satellite is obtained by selecting the satellite whose theoretical Doppler shift is closest to the historical Doppler shift of the target satellite from the first satellite class.

7. The method according to claim 6, characterized in that, The process involves filtering out satellites whose orbits are outside the effective communication range of the terminal based on the terminal's positioning data. The remaining satellites constitute the first satellite category, which includes: Based on the positioning data of the terminal and the orbits of each of the satellite types, calculate the actual angle between the terminal and the orbital plane normal vector of each of the satellite types; Based on the positioning data of the terminal, determine the maximum angle between the terminal and the normal vector of the satellite orbital plane; Satellites whose actual included angle is smaller than the maximum included angle are filtered out to obtain the remaining first satellite class.

8. The method according to claim 6, characterized in that, The target satellite is obtained by selecting the satellite whose theoretical Doppler shift is closest to the historical Doppler shift of the target satellite from the first satellite class, including: For each first satellite class, select one satellite in the first satellite class to obtain the first satellite, and assign the value of the mean anomaly angle in the two rows of orbital elements of the first satellite to the optimal mean anomaly angle; If the current number of iterations is less than the maximum number of iterations, calculate the mean square error between the Doppler frequency shift of the first satellite at the current optimal mean aperimeter angle and the historical Doppler frequency shift of the target, and calculate the gradient value of the mean square error with respect to the mean aperimeter angle; If the current value of the search flag parameter is the first value, assign the value of the second gradient parameter to the first gradient parameter, and assign the gradient value of this round to the second gradient parameter; assign the value of the second angle parameter to the first angle parameter, and assign the value of the best mean anterior angle before the update to the second angle parameter; use the gradient descent algorithm to update the value of the best mean anterior angle; wherein, the initial value of the search flag parameter is the first value; When the current value of the search flag parameter is the second value, if the gradient value of this round has the same sign as the first gradient parameter, then assign the gradient value of this round to the first gradient parameter and assign the value of the best mean anterior angle before the update to the first angle parameter; if the gradient value of this round has the same sign as the second gradient parameter, then assign the gradient value of this round to the second gradient parameter and assign the value of the best mean anterior angle before the update to the second angle parameter; update the value of the best mean anterior angle; If the current second gradient parameter has the opposite sign to the first gradient parameter, set the search flag parameter to the second value; If the absolute value of the difference between the second angle parameter and the first angle parameter is greater than or equal to the preset precision value, update the iteration count and return to the step of determining the number of iterations to be executed; If the first satellite class has not performed a flip calculation, update the value of the optimal mean anterior angle and return to the step of determining the number of iterations; If the first satellite class has undergone a flip calculation, the mean square error corresponding to the current best mean aperimeter angle is output to obtain the first mean square error of the first satellite class, and the first satellite class with the smallest first mean square error is selected to obtain the second satellite class. The second mean square error is obtained by calculating the mean square error between the theoretical Doppler frequency shift of each satellite in the second satellite class and the historical Doppler frequency shift of the target, and the satellite with the smallest second mean square error is selected as the target satellite.

9. The method according to claim 1, characterized in that, The step of determining the target complete timing advance value based on the preset ground base station location and the target terminal-side timing advance value includes: Based on the preset location of the ground base station and the positioning data of the terminal, the ground base station closest to the terminal is selected from the set of ground base stations to obtain the target ground base station; Calculate the target common timing advance value based on the location of the target ground base station; The target common timing advance value is added to the target terminal-side timing advance value to obtain the target complete timing advance value; After transmitting uplink data according to the target complete timing advance value, the method further includes: If the target satellite cannot be accessed, the target ground base station is removed from the set of ground base stations, and the process returns to the following steps: Based on the preset location of the ground base station and the positioning data of the terminal, the ground base station closest to the terminal is selected from the set of ground base stations to obtain the target ground base station.

10. An uplink synchronization device for a terminal directly connected to a satellite, characterized in that, Applied to a terminal, the device includes: The cross-layer authentication module is used to verify the legitimacy of received system information messages; The terminal-side timing advance reconstruction module is used to determine the target terminal-side timing advance value based on the target historical Doppler frequency shift and preset satellite ephemeris data if no valid system information message is received within a preset time period. The target historical Doppler frequency shift is obtained based on valid system information messages before the preset time period. The common timing advance reconstruction module is used to determine the target complete timing advance value based on the preset ground base station location and the timing advance value on the target terminal side; The data transmission module is used to transmit uplink data according to the target complete timing advance value.