Data synchronization method and apparatus, related devices, storage medium, and computer program product

CN122933649APending Publication Date: 2026-10-16CHINA MOBILE COMM LTD RES INST +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510409320.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-02
Publication Date
2026-10-16

AI Technical Summary

Technical Problem

[0003]然而,如何保障XR业务的数据流(也可以称为媒体流)间的同步,目前尚未有解决方案

Benefits of technology

[0091] The data synchronization method, apparatus, related devices, storage medium, and computer program products provided in this application embodiment include: a first functional module of a first terminal receiving first information sent by a second functional module of a network device; the first information representing a first strategy for a first set, the first set including a first terminal associated with a first service and one or more second terminals; the first strategy being used for data synchronization between the first terminal and the one or more second terminals; using the first and second information, performing synchronization-related processing on the data packets to be synchronized, and sending the first information to the one or more second terminals; the second information containing information related to the data packets to be synchronized for the one or more second terminals. A fifth functional module of a second terminal receives the first information sent by the first functional module of the first terminal, and uses the first and tenth information to perform synchronization-related processing on the data packets to be synchronized; the tenth information containing information related to the data packets to be synchronized for the first terminal and other second terminals among the one or more second terminals besides the second terminal. The technical solution provided in this application embodiment allows the second functional module of the network device to provide a data synchronization strategy to each terminal in a set of terminals (i.e., the first set) associated with the same service (such as XR service) through a proxy terminal (i.e., the first terminal). This enables the functional module of each terminal to perform data synchronization within the terminal set based on the data synchronization strategy and the data packets to be synchronized from other terminals. In this way, the synchronization between different data streams of the XR service can be guaranteed to the greatest extent without performance optimization through the network device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122933649A_ABST
    Figure CN122933649A_ABST
Patent Text Reader

Abstract

The application discloses a data synchronization method and device, a first function module, a second function module, a fifth function module, a storage medium and a computer program product. The method comprises the following steps: a first function module of a first terminal receives first information sent by a second function module of a network device, the first information representing a first policy of a first set, the first set comprising a first terminal and one or more second terminals associated with a first service, and the first policy being used for data synchronization between the first terminal and the one or more second terminals; and the first information and second information are used to perform synchronization-related processing on a to-be-synchronized data packet, and the first information is sent to the one or more second terminals, wherein the second information comprises to-be-synchronized data packet related information of the one or more second terminals.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of network transmission technology, and in particular to a data synchronization method, apparatus, related equipment, storage medium, and computer program product. Background Technology

[0002] Extended Reality (XR) is a new service introduced in fifth-generation mobile communication (5G) networks that combines reality and virtuality to provide an immersive human-computer interaction experience. XR services are multi-modal services with high data bandwidth and low latency requirements. They can obtain input data from one or more message nodes (or message sources) and provide output data to one or more destination nodes (or destinations).

[0003] However, there is currently no solution for ensuring the synchronization between data streams (also known as media streams) in XR services. Summary of the Invention

[0004] To address the related technical issues, embodiments of this application provide a data synchronization method, apparatus, related devices, storage medium, and computer program product.

[0005] The technical solution of this application embodiment is implemented as follows:

[0006] This application provides a data synchronization method applied to a first functional module of a first terminal, including:

[0007] The network device receives first information sent by a second functional module. The first information represents a first strategy for a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0008] Using the first information and the second information, synchronization-related processing is performed on the data packets to be synchronized, and the first information is sent to the one or more second terminals. The second information contains information related to the data packets to be synchronized from the one or more second terminals.

[0009] In the above scheme, the step of using the first information and the second information to perform synchronization-related processing on the data packets to be synchronized includes:

[0010] The third information is determined, wherein the third information represents the first reception duration of the second information;

[0011] Using the first information, the second information, and the third information, it is determined that the first condition is met. The first condition indicates that the first reception duration is less than or equal to the first duration associated with the first strategy, and no data packet information related to the data packets to be synchronized from all of the one or more second terminals has been received.

[0012] Cache the data packets to be synchronized.

[0013] The method in the above scheme further includes:

[0014] Using the first information, the second information, and the third information, it is determined that a second condition is met, wherein the second condition represents one of the following:

[0015] The first receiving time is equal to the first time, and no data packet information to be synchronized from all of the one or more second terminals has been received;

[0016] The first receiving duration is less than or equal to the first duration, and information related to the data packets to be synchronized from all of the one or more second terminals is received;

[0017] The data packet to be synchronized is sent to the third functional module of the first terminal.

[0018] The method in the above scheme further includes:

[0019] Using the first information and the second information, a second terminal that meets the third condition is determined, wherein the third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration.

[0020] Send a fourth message to the second functional module, the fourth message being used to request adjustment of the quality of service of the determined data packets to be synchronized to the second terminal.

[0021] In the above scheme, determining the second terminal that meets the third condition using the first information and the second information includes:

[0022] Determine a first timestamp, which represents the time when the first functional module receives the second information;

[0023] Using the second information, a second timestamp is determined, which represents the time when the second functional module receives the data packet to be synchronized from the one or more second terminals;

[0024] Using the first timestamp, the second timestamp, and the first information, a second terminal that meets the third condition is determined.

[0025] The method in the above scheme further includes:

[0026] Receive information related to the data packets to be synchronized sent by one or more second terminals respectively.

[0027] The method in the above scheme further includes:

[0028] The fifth piece of information is determined, which includes information related to the data packets to be synchronized from the first terminal.

[0029] The fifth information is sent to one or more second terminals respectively.

[0030] In the above scheme, determining the fifth piece of information includes:

[0031] The second functional module receives the data packet to be synchronized and a third timestamp, wherein the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal.

[0032] The fifth piece of information is determined using the data packet to be synchronized and the third timestamp.

[0033] The method in the above scheme further includes:

[0034] Send a sixth message to the second functional module. The sixth message is used to request the configuration of the first strategy for the first set. The sixth message includes one or more of the following:

[0035] The seventh piece of information represents the type of the first service;

[0036] The eighth piece of information represents the data packet type of the first service;

[0037] The ninth piece of information is used to identify the first terminal and the second terminal in the first set.

[0038] The method in the above scheme further includes:

[0039] Obtain service-related information from one or more terminals, wherein the service-related information includes at least the service type information of the one or more terminals;

[0040] Using the service type information of the one or more terminals, determine one or more terminals associated with the first service from the one or more terminals;

[0041] The first set is obtained by selecting the first terminal and one or more second terminals from one or more determined terminals.

[0042] This application also provides a data synchronization method, applied to a second functional module of a network device, including:

[0043] Send first information to a first functional module of a first terminal. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0044] The method in the above scheme further includes:

[0045] When the first functional module determines that a second terminal meets the third condition, it receives the fourth information sent by the first functional module. The third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration associated with the first strategy. The fourth information is used to request adjustment of the quality of service of the data packet to be synchronized of the determined second terminal.

[0046] Using the fourth information, the quality of service (QoS) of the data packets to be synchronized for the determined second terminal is adjusted.

[0047] In the above scheme, the sixth information sent by the first functional module is received. The sixth information is used to request the configuration of the first strategy for the first set. The sixth information includes one or more of the following:

[0048] The seventh piece of information represents the type of the first service;

[0049] The eighth piece of information represents the data packet type of the first service;

[0050] The ninth information is used to identify the first terminal and the second terminal in the first set;

[0051] The first information is determined using the sixth information.

[0052] The method in the above scheme further includes:

[0053] Receive the data packet to be synchronized, and determine a second timestamp and a third timestamp, wherein the second timestamp represents the time when the second functional module receives the data packet to be synchronized from the one or more second terminals, and the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal;

[0054] Send the data packet to be synchronized, the second timestamp, and the third timestamp.

[0055] This application also provides a data synchronization method applied to the fifth functional module of a second terminal, including:

[0056] The system receives first information sent by a first functional module of a first terminal. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0057] Using the first information and the tenth information, synchronization-related processing is performed on the data packets to be synchronized. The tenth information includes information related to the data packets to be synchronized from the first terminal and other second terminals among the one or more second terminals, excluding the second terminal itself.

[0058] In the above scheme, the step of using the first information and the tenth information to perform synchronization-related processing on the data packets to be synchronized includes:

[0059] Determine the eleventh information, wherein the eleventh information represents the second reception duration of the tenth information;

[0060] Using the first information, the tenth information, and the eleventh information, it is determined that the fourth condition is met. The fourth condition indicates that the second reception duration is less than or equal to the first duration associated with the first strategy, and no data packet related information to be synchronized is received from the first terminal and all terminals in the other second terminals.

[0061] Cache the data packets to be synchronized.

[0062] The method in the above scheme further includes:

[0063] Using the first information, the tenth information, and the eleventh information, it is determined that the fifth condition is satisfied, and the fifth condition represents one of the following:

[0064] The second receiving duration is equal to the first duration, and no data packet information to be synchronized is received from the first terminal and all other second terminals.

[0065] The second receiving duration is less than or equal to the first duration, and the data packet information to be synchronized is received from the first terminal and all the other second terminals.

[0066] The data packet to be synchronized is sent to the sixth functional module of the second terminal.

[0067] This application embodiment also provides a data synchronization device, which is disposed in a first functional module of a first terminal, including:

[0068] The first receiving unit is configured to receive first information sent by the second functional module of the network device. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0069] The first synchronization unit is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the second information, and to send the first information to the one or more second terminals. The second information contains information related to the data packets to be synchronized of the one or more second terminals.

[0070] This application embodiment also provides a data synchronization device, disposed in the second functional module of a network device, including:

[0071] The first sending unit is configured to send first information to a first functional module of a first terminal. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0072] This application embodiment also provides a data synchronization device, which is set in the fifth functional module of the second terminal, including:

[0073] The second receiving unit is configured to receive first information sent by the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0074] The second synchronization unit is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the tenth information. The tenth information includes information related to the data packets to be synchronized from the first terminal and other second terminals among the one or more second terminals excluding the second terminal.

[0075] This application embodiment also provides a first functional module, including: a first processor and a first communication interface; wherein,

[0076] The first communication interface is used to receive first information sent by the second functional module of the network device. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0077] The first processor is configured to perform synchronization-related processing on the data packets to be synchronized using the first information and the second information, and to send the first information to the one or more second terminals through the first communication interface. The second information contains information related to the data packets to be synchronized of the one or more second terminals.

[0078] This application embodiment also provides a second functional module, including: a second processor and a second communication interface; wherein,

[0079] The second communication interface is used to send first information to the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0080] This application embodiment also provides a fifth functional module, including: a third processor and a third communication interface; wherein,

[0081] The third communication interface is used to receive first information sent by the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0082] The third processor is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the tenth information. The tenth information includes information related to the data packets to be synchronized from the first terminal and other second terminals among the one or more second terminals, excluding the second terminal.

[0083] This application also provides a first functional module, including: a first processor and a first memory for storing a computer program capable of running on the processor.

[0084] Wherein, when the first processor is used to run the computer program, it executes the steps of any of the methods on the first functional module side described above.

[0085] This application also provides a second functional module, including: a second processor and a second memory for storing computer programs capable of running on the processor.

[0086] Wherein, when the second processor is used to run the computer program, it executes the steps of any of the methods on the second functional module side described above.

[0087] This application embodiment also provides a fifth functional module, including: a third processor and a third memory for storing computer programs capable of running on the processor.

[0088] When the third processor runs the computer program, it executes any of the steps of the method on the fifth functional module side.

[0089] This application embodiment also provides a storage medium storing a computer program thereon, wherein when the computer program is executed by a processor, it implements the steps of any of the methods on the first functional module side, or the steps of any of the methods on the second functional module side, or the steps of any of the methods on the fifth functional module side.

[0090] This application also provides a computer program product, including a computer program, which, when executed by a processor, implements the steps of any of the methods on the first functional module side, or the steps of any of the methods on the second functional module side, or the steps of any of the methods on the fifth functional module side.

[0091] The data synchronization method, apparatus, related devices, storage medium, and computer program products provided in this application embodiment include: a first functional module of a first terminal receiving first information sent by a second functional module of a network device; the first information representing a first strategy for a first set, the first set including a first terminal associated with a first service and one or more second terminals; the first strategy being used for data synchronization between the first terminal and the one or more second terminals; using the first and second information, performing synchronization-related processing on the data packets to be synchronized, and sending the first information to the one or more second terminals; the second information containing information related to the data packets to be synchronized for the one or more second terminals. A fifth functional module of a second terminal receives the first information sent by the first functional module of the first terminal, and uses the first and tenth information to perform synchronization-related processing on the data packets to be synchronized; the tenth information containing information related to the data packets to be synchronized for the first terminal and other second terminals among the one or more second terminals besides the second terminal. The technical solution provided in this application embodiment allows the second functional module of the network device to provide a data synchronization strategy to each terminal in a set of terminals (i.e., the first set) associated with the same service (such as XR service) through a proxy terminal (i.e., the first terminal). This enables the functional module of each terminal to perform data synchronization within the terminal set based on the data synchronization strategy and the data packets to be synchronized from other terminals. In this way, the synchronization between different data streams of the XR service can be guaranteed to the greatest extent without performance optimization through the network device. Attached Figure Description

[0092] Figure 1 This is a schematic flowchart of a first data synchronization method according to an embodiment of this application;

[0093] Figure 2This is a system architecture diagram of an enabled network according to an embodiment of this application;

[0094] Figure 3 This is a schematic flowchart of the second data synchronization method according to an embodiment of this application;

[0095] Figure 4 This is a schematic flowchart of the third data synchronization method according to an embodiment of this application;

[0096] Figure 5 This is a schematic diagram of the first data stream synchronization process in an application embodiment of this application;

[0097] Figure 6 This is a schematic diagram of the second data stream synchronization process in an application embodiment of this application;

[0098] Figure 7 This is a schematic diagram of the structure of a first data synchronization device according to an embodiment of this application;

[0099] Figure 8 This is a schematic diagram of the structure of a second data synchronization device according to an embodiment of this application;

[0100] Figure 9 This is a schematic diagram of the third type of data synchronization device according to an embodiment of this application;

[0101] Figure 10 This is a schematic diagram of the structure of the first functional module in an embodiment of this application;

[0102] Figure 11 This is a schematic diagram of the second functional module structure in an embodiment of this application;

[0103] Figure 12 This is a schematic diagram of the fifth functional module structure in an embodiment of this application;

[0104] Figure 13 This is a schematic diagram of the data synchronization system structure according to an embodiment of this application. Detailed Implementation

[0105] The present application will now be described in further detail with reference to the accompanying drawings and embodiments.

[0106] XR services require high bandwidth and low latency communication. To ensure the coordination capability (or synchronization capability) between multiple data streams in XR services, related technologies have proposed a method for measuring data packet latency. Specifically, the latency jitter between data streams is calculated by measuring latency between end-to-end connections. The end-to-end latency measurement results are mainly generated by the Protocol Data Unit (PDU), Session Anchor (PSA), and User Plane Function (UPF) constructing GPRS and User Plane Tunneling Protocol (GTP-U) data packets carrying the Quality of Service Monitoring Packet (QMP) identifier. These packets are periodically sent to the terminal via the Next Generation Radio Access Network (NG-RAN). The time of sending and receiving the measurement data packets is recorded on the PSAUPF and NG-RAN sides (which can be represented as (T1, T4) and (T2, T3) respectively). The latency is then calculated based on the recorded time and reported to the upper-layer application function (AF).

[0107] However, the above solution has the following problems:

[0108] 1. The end-to-end measurement results only include the latency of uplink and downlink data packets between the terminal and PSAUPF, and do not include the latency on the N6 interface between PSAUPF and the service server. Considering that the N6 interface uses the Internet's best-effort service, only considering the latency guarantee between the UE and PSAUPF may affect the synchronization between data streams, which in turn will affect the service experience.

[0109] 2. The method of periodically sending measurement packets cannot fully simulate the traffic behavior and characteristics of different data streams in XR services, resulting in a deviation between the measured latency and the actual latency, thus failing to guarantee the synchronization between data streams.

[0110] 3. The above measurement scheme is for measuring and optimizing the performance of a single data stream. However, different data streams may use different data channels (e.g., using different Access Point Names (APNs) or network slices), which can lead to inconsistent optimization levels between data streams, thus failing to achieve data collaboration between different data streams. In addition, the network side needs to wait for the measurement results to be reported before it can perform performance optimization, which will also cause optimization delays.

[0111] In various embodiments of this application, the network device provides a data synchronization policy for each terminal in a group associated with the same XR service, enabling each terminal to dynamically perform data collaborative operations based on the data synchronization policy and data packet synchronization information of other terminals. In this way, the synchronization experience between different data streams of the XR service can be guaranteed to the maximum extent without waiting for the network side's Quality of Service (QoS) adjustment process.

[0112] This application provides a data synchronization method, such as... Figure 1 As shown, the first functional module applied to the first terminal includes the following method:

[0113] Step 101: Receive first information sent by the second functional module of the network device. The first information represents a first policy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first policy is used for data synchronization between the first terminal and the one or more second terminals.

[0114] Step 102: Using the first information and the second information, perform synchronization-related processing on the data packets to be synchronized, and send the first information to the one or more second terminals. The second information contains information related to the data packets to be synchronized of the one or more second terminals.

[0115] In practical applications, the first functional module at least has the control capability to provide business collaboration, and the second functional module at least has AF (Action Function) functionality, enabling it to invoke network capabilities. Additionally, the first terminal may also include a third functional module, which can be understood as a vertical industry application client deployed on the first terminal (also referred to as a user equipment (UE) or user, etc., which is not limited in this embodiment), capable of invoking application services. The network device may also include a fourth functional module, which can be understood as a vertical industry application server deployed on the network side, capable of providing application services.

[0116] For example, in the relevant enabling network architecture, such as Figure 2As shown, the Service Enabler Architecture Layer (SEAL) deploys an XR enabler server (which can be represented as XRApp-S) and an XR enabler client (which can be represented as XRApp-C), which can jointly provide collaborative control capabilities for XR services to the application client (which can be represented as VAL client) and application server (which can be represented as VAL server) in the Vertical Application Layer (VAL). Under the above architecture, the first functional module may include an XR enabling client, which can be understood as an enabling client deployed on the first terminal, having at least the functions of registering and reporting information (such as application performance data) and initiating connections between terminals; the second functional module may include an XR enabling server, which can call 5G network capabilities through the N33 / N5 interface and provide capability opening functions to the application server as a unified interface, and can also perform policy control on the first functional module based on the SEALDD-Uu interface; the third functional module may include an application client, which can call the services of the network-side application server; the fourth functional module may include an application server, which can call the underlying network slicing related capabilities and provide services to the third functional module.

[0117] In practical applications, before step 101, the first functional module can perform service discovery for the terminal and determine the first set from the discovered terminals.

[0118] Based on this, in one embodiment, the method may further include:

[0119] Obtain service-related information from one or more terminals, wherein the service-related information includes at least the service type information of the one or more terminals;

[0120] Using the service type information of the one or more terminals, determine one or more terminals associated with the first service from the one or more terminals;

[0121] The first set is obtained by selecting the first terminal and one or more second terminals from one or more determined terminals.

[0122] The service type information of the one or more terminals (which can be represented as service ID or Multi-modal server ID) indicates the type of service, such as cloud gaming. Additionally, the service-related information may also include identification information of the one or more terminals (which can be represented as UE ID) and / or data packet type information associated with the service of the one or more terminals (which can also be understood as service flow type information). The data packet type information indicates the type of data packets contained in the data flow, such as audio, video, or haptic feedback.

[0123] In practical applications, the first functional module can obtain service-related information of one or more terminals through broadcasting, and use the service type information of one or more terminals to determine one or more terminals using the first service (i.e., the terminals have the same service type information). The first service may include XR services.

[0124] Next, one or more terminals using the first service can negotiate to select the first terminal and the one or more second terminals (the selection method is not limited in this embodiment) to obtain the first set; wherein, the first terminal can be understood as a proxy terminal (which can be referred to as a proxy UE) in the first set, which can communicate with the network device and with each second terminal; the one or more second terminals can be understood as other terminals besides the first terminal among the one or more terminals using the first service.

[0125] In practical applications, after determining the first set, the first functional module can configure the first strategy for the first set through the second functional module.

[0126] Based on this, in one embodiment, the method may further include:

[0127] Send a sixth message to the second functional module. The sixth message is used to request the configuration of the first strategy for the first set. The sixth message includes one or more of the following:

[0128] The seventh piece of information represents the type of the first service;

[0129] The eighth piece of information represents the data packet type of the first service;

[0130] The ninth piece of information is used to identify the first terminal and the second terminal in the first set.

[0131] Wherein, the first strategy can be understood as the data collaboration strategy between terminals included in the first set, the seventh information can be understood as the first service type information, the eighth information can be understood as the data packet type information associated with the first service, the first service can be associated with multiple data packet types, and the ninth information can be understood as the identification information of all terminals in the first set.

[0132] In practical applications, the first functional module sends the sixth information to the second functional module so that the second functional module can make a strategy decision based on the sixth information, thereby generating the first strategy; wherein, the first strategy may include the first duration, which can be understood as a preset waiting time, and the value can be set as needed, such as 3 seconds.

[0133] Here, after step 101, the first functional module can synchronize the information of the data packets to be synchronized within the first set by broadcasting, so that the one or more second terminals can subsequently perform collaborative processing of the data packets based on the received information.

[0134] Based on this, in one embodiment, the method may further include:

[0135] The fifth piece of information is determined, which includes information related to the data packets to be synchronized from the first terminal.

[0136] The fifth information is sent to one or more second terminals respectively.

[0137] Here, the first functional module can obtain the data packets to be synchronized from the core network (such as the 5G core network (5GC)) and determine the fifth information based on the obtained data packets to be synchronized, thereby synchronizing the information of the data packets to be synchronized within the first set.

[0138] Specifically, in one embodiment, determining the fifth piece of information includes:

[0139] The second functional module receives the data packet to be synchronized and a third timestamp, wherein the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal.

[0140] The fifth piece of information is determined using the data packet to be synchronized and the third timestamp.

[0141] The data packet to be synchronized may carry the seventh information, and the information related to the data packet to be synchronized of the first terminal may include one or more of the third timestamp, the seventh information and the ninth information (or at least one of them); the third timestamp may be understood as the initial timestamp marked by the second functional module for the data packet to be synchronized of the first terminal.

[0142] Here, after determining the fifth information, the first functional module can send the fifth information to the one or more second terminals respectively; wherein, the fifth information can be sent to the fifth functional modules of the one or more second terminals respectively, the fifth functional module has at least the control capability to provide business collaboration, the fifth functional module may include an XR enabling client, and the fifth functional module can be understood as an enabling client deployed on the second terminal.

[0143] Correspondingly, the one or more second terminals can also synchronize the data packets to be synchronized within the first set via broadcast, so that the first terminals can perform collaborative processing of the data packets.

[0144] Based on this, in one embodiment, the method may further include:

[0145] Receive information related to the data packets to be synchronized sent by one or more second terminals respectively.

[0146] Among them, it can receive data packets related to synchronization sent by the fifth functional modules of one or more second terminals respectively.

[0147] In practical applications, for each second terminal, after receiving the corresponding data packet to be synchronized and the second timestamp, the relevant information of the data packet to be synchronized of the second terminal can be generated and sent to the first functional module, so that the first functional module can obtain the second information. The second timestamp can be understood as the initial timestamp marked by the second functional module for the data packet to be synchronized of the second terminal. The relevant information of the second terminal to be synchronized can include the second timestamp, the seventh information and the ninth information.

[0148] In practical applications, the first functional module can perform synchronization-related processing on the data packets to be synchronized based on the reception status of the data packets to be synchronized by the second terminal and the first strategy.

[0149] Specifically, in one embodiment, the step of performing synchronization-related processing on the data packets to be synchronized using the first information and the second information includes:

[0150] The third information is determined, wherein the third information represents the first reception duration of the second information;

[0151] Using the first information, the second information, and the third information, it is determined that the first condition is met. The first condition indicates that the first reception duration is less than or equal to the first duration associated with the first strategy, and no data packet information related to the data packets to be synchronized from all of the one or more second terminals has been received.

[0152] Cache the data packets to be synchronized.

[0153] In practical applications, the first reception duration can be understood as the duration during which the first terminal actually receives the data packet information to be synchronized from one or more second terminals.

[0154] In practical applications, during the process of receiving the data packets to be synchronized from one or more second terminals, the first functional module can determine the third information through a timer. If the first reception duration is less than or equal to the first duration and no data packets to be synchronized from all second terminals have been received, the first functional module can wait and cache the data packets to be synchronized from the first terminal. In this way, data synchronization between terminals can be achieved through data packet caching in scenarios where there are service quality deviations between different data streams.

[0155] In practical applications, during the transmission of data packets to be synchronized by one or more second terminals, in order to avoid excessive waiting time due to failure of some data packets, the first functional module can also send the data packets to be synchronized to the third functional module according to the reception status of relevant information of the data packets to be synchronized by the second terminals, so as to avoid affecting the delivery of other data packets to be synchronized.

[0156] Based on this, in one embodiment, the method may further include:

[0157] Using the first information, the second information, and the third information, it is determined that a second condition is met, wherein the second condition represents one of the following:

[0158] The first receiving time is equal to the first time, and no data packet information to be synchronized from all of the one or more second terminals has been received;

[0159] The first receiving duration is less than or equal to the first duration, and information related to the data packets to be synchronized from all of the one or more second terminals is received;

[0160] The data packet to be synchronized is sent to the third functional module of the first terminal.

[0161] In practical applications, if not all information related to the data packets to be synchronized from the second terminal is received within the first time period (which can also be understood as waiting for timeout), the first functional module can send the data packets to be synchronized to the third functional module to avoid affecting the transmission of normal data packets to be synchronized.

[0162] In addition, if all the data packets to be synchronized from the second terminal have been received within the first time period, the first functional module can also send the data packets to be synchronized to the third functional module.

[0163] Here, if the service quality of the data stream is poor, the first functional module may not be able to optimize the business experience through data packet caching. In this case, the first functional module can adjust the service quality through the second functional module to achieve data synchronization.

[0164] Based on this, in one embodiment, the method may further include:

[0165] Using the first information and the second information, a second terminal that meets the third condition is determined, wherein the third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration.

[0166] Send a fourth message to the second functional module, the fourth message being used to request adjustment of the quality of service of the determined data packets to be synchronized to the second terminal.

[0167] Here, the first functional module may receive information about the data packets to be synchronized from the second terminal only after the first time interval. This indicates that the service quality of some data streams is poor, resulting in a large transmission delay for the data packets. In this case, the first functional module can determine the transmission delay of the data packets to be synchronized by using the timestamp corresponding to the data packets to be synchronized, thereby identifying the second terminal that meets the third condition.

[0168] Specifically, in one embodiment, determining the second terminal that satisfies the third condition using the first information and the second information includes:

[0169] Determine a first timestamp, which represents the time when the first functional module receives the second information;

[0170] Using the second information, a second timestamp is determined, which represents the time when the second functional module receives the data packet to be synchronized from the one or more second terminals;

[0171] Using the first timestamp, the second timestamp, and the first information, a second terminal that meets the third condition is determined.

[0172] The first timestamp can be understood as the time when the second information is received via broadcast.

[0173] In practical applications, the first functional module can determine the transmission delay of the data packet to be synchronized of the second terminal by comparing the first timestamp and the second timestamp, thereby identifying the second terminal that meets the third condition. If there is a second terminal that meets the third condition, it means that the first functional module cannot achieve data synchronization through local caching. In this case, the first functional module can send the fourth information to the second functional module so that the second functional module can adjust the quality of service of the data packet to be synchronized of the second terminal, thereby improving the service experience of the first service. The fourth information may include the transmission delay of the data packet to be synchronized of the second data packet and / or the data packet type corresponding to the data packet to be synchronized of the second data packet.

[0174] Here, when performing data synchronization-related processing on the data packet to be synchronized, the first functional module can also send the first information to the one or more second terminals to synchronize the first strategy, so that the one or more second terminals can perform synchronization-related processing, thereby realizing data synchronization between terminals.

[0175] Accordingly, embodiments of this application also provide a data synchronization method, such as... Figure 3 As shown, the second functional module applied to a network device includes the following method:

[0176] Step 301: Send first information to the first functional module of the first terminal. The first information represents the first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0177] In practical applications, before step 301, the second functional module needs to determine the first information.

[0178] Based on this, such as Figure 3 As shown, in one embodiment, the method may further include:

[0179] Step 300: Receive the sixth message sent by the first functional module, the sixth message being used to request the configuration of the first strategy for the first set, the sixth message including one or more of the following:

[0180] The seventh piece of information represents the type of the first service;

[0181] The eighth piece of information represents the data packet type of the first service;

[0182] The ninth information is used to identify the first terminal and the second terminal in the first set;

[0183] The first information is determined using the sixth information.

[0184] In practical applications, after receiving the sixth information, the second functional module can make a strategy decision based on the sixth information, thereby generating the first information, and then sending the first information to the first functional module.

[0185] Here, before the synchronization data packet is sent, the fourth functional module can initiate a registration process with the second functional module so that the data packet can be sent after successful registration; wherein, the data packet can contain data packets of different modalities, such as voice, video, etc., that is, the fourth functional module can send data streams of different modalities.

[0186] For example, the fourth functional module can send tenth information to the second functional module. The tenth information is used to request service registration. The tenth information may include one or more of the following: the identifier information of the fourth functional module, the data packet type information to be sent, and the service type information corresponding to the data packet to be sent. After receiving the tenth information, the second functional module authenticates the fourth functional module using locally pre-configured authentication information to determine whether the fourth functional module has the authority to send data packets. If it is determined that the fourth functional module has the authority to send data packets, the second functional module sends a success response to the fourth functional module. If it is determined that the fourth functional module does not have the authority to send data packets, the second functional module sends a failure response to the fourth functional module.

[0187] Here, when the fourth functional module has the authority to send data packets, the second functional module can receive the data packets to be synchronized sent by the fourth functional module and mark the received data packets to be synchronized with a time tag so as to measure the latency index of the data packets at the business level, thereby achieving accurate feedback on the quality of user business services.

[0188] Based on this, in one embodiment, the method may further include:

[0189] Receive the data packet to be synchronized, and determine a second timestamp and a third timestamp, wherein the second timestamp represents the time when the second functional module receives the data packet to be synchronized from the one or more second terminals, and the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal;

[0190] Send the data packet to be synchronized, the second timestamp, and the third timestamp.

[0191] In practical applications, after marking the data packets to be synchronized, the second functional module can forward the data packets to be synchronized, the second timestamp, and the third timestamp to the core network, so that the first terminal and the one or more second terminals can obtain the corresponding data packets to be synchronized and timestamps from the core network respectively. For example, the first terminal obtains the data packets to be synchronized corresponding to the first terminal, and the second terminal obtains the data packets to be synchronized corresponding to the second terminal.

[0192] In practical applications, when synchronization cannot be guaranteed through the data packet caching of the first functional module, the second functional module can adjust the quality of service of the reporting second terminal to ensure data synchronization between the reporting second terminal and other terminals.

[0193] Based on this, in one embodiment, the method may further include:

[0194] When the first functional module determines that a second terminal meets the third condition, it receives fourth information sent by the first functional module. The third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration associated with the first strategy. The fourth information is used to request adjustment of the quality of service of the data packet to be synchronized of the determined second terminal.

[0195] Using the fourth information, the quality of service (QoS) of the data packets to be synchronized for the determined second terminal is adjusted.

[0196] Here, the second functional module can generate a second strategy based on the fourth information and adjust the quality of service (QoS) of the determined data packets to be synchronized for the second terminal through the core network to ensure data synchronization among multiple data packets. For example, the second functional module can adjust the priority of the determined data packets to be synchronized for the second terminal through network elements associated with the data plane in the core network to achieve QoS adjustment.

[0197] Accordingly, embodiments of this application also provide a data synchronization method, such as... Figure 4 As shown, the fifth functional module applied to the second terminal includes the following method:

[0198] Step 401: Receive first information sent by the first functional module of the first terminal, the first information representing the first strategy of the first set, the first set including the first terminal associated with the first service and one or more second terminals, the first strategy being used for data synchronization between the first terminal and the one or more second terminals;

[0199] Step 402: Using the first information and the tenth information, perform synchronization-related processing on the data packets to be synchronized. The tenth information includes information related to the data packets to be synchronized from the first terminal and other second terminals among the one or more second terminals, excluding the second terminal.

[0200] The second terminal may further include a sixth functional module, which can be understood as a vertical industry application client deployed on the second terminal (also referred to as UE or user, etc., which is not limited in this embodiment of the application), and can at least call application services.

[0201] In practical applications, before step 402, the fifth functional module can receive the fifth information sent by the first functional module, and simultaneously receive the information related to the data packets to be synchronized sent by the fifth functional modules of the other second terminals, thereby obtaining the tenth information. Additionally, the fifth functional module can also obtain the data packets to be synchronized from the second terminals in the core network.

[0202] Next, the fifth functional module can perform synchronization-related processing on the data packets to be synchronized based on the reception status of the data packets to be synchronized by the first terminal and the other second terminals.

[0203] Specifically, in one embodiment, the implementation of step 402 may include:

[0204] Determine the eleventh information, wherein the eleventh information represents the second reception duration of the tenth information;

[0205] Using the first information, the tenth information, and the eleventh information, it is determined that the fourth condition is met. The fourth condition indicates that the second reception duration is less than or equal to the first duration associated with the first strategy, and no data packet related information to be synchronized is received from the first terminal and all terminals in the other second terminals.

[0206] Cache the data packets to be synchronized.

[0207] In practical applications, the second reception duration can be understood as the duration during which the second terminal actually receives the data packet information to be synchronized from the first terminal and the other second terminals.

[0208] In practical applications, during the process of receiving the data packets to be synchronized from the first terminal and the other second terminals, the fifth functional module can determine the eleventh information through a started timer. If the second reception duration is less than or equal to the first duration, and not all data packets to be synchronized from all terminals have been received, the fifth functional module can wait and cache the data packets to be synchronized from the second terminals. This allows for data synchronization between terminals through data packet caching in scenarios where there are service quality discrepancies between different data streams.

[0209] In practical applications, during the transmission of data packets to be synchronized between the first terminal and the other second terminals, in order to avoid excessive waiting time due to failure of some data packets, the fifth functional module can also send the data packets to be synchronized to the sixth functional module according to the reception status of the relevant information of the data packets to be synchronized by the terminal, so as to avoid affecting the delivery of other data packets to be synchronized.

[0210] Based on this, in one embodiment, the method may further include:

[0211] Using the first information, the tenth information, and the eleventh information, it is determined that the fifth condition is satisfied, and the fifth condition represents one of the following:

[0212] The second receiving duration is equal to the first duration, and no data packet information to be synchronized is received from the first terminal and all other second terminals.

[0213] The second receiving duration is less than or equal to the first duration, and the data packet information to be synchronized is received from the first terminal and all the other second terminals.

[0214] The data packet to be synchronized is sent to the sixth functional module of the second terminal.

[0215] In practical applications, if the information related to the data packets to be synchronized from all terminals is not received within the first time period (which can also be understood as waiting for a timeout), the fifth functional module can send the data packets to be synchronized from the second terminal to the sixth functional module to avoid affecting the transmission of normal data packets to be synchronized.

[0216] In addition, if all terminals have received the data packets to be synchronized within the first time period, the fifth functional module can also send the data packets to be synchronized to the sixth functional module.

[0217] The data synchronization method provided in this application embodiment includes a first functional module of a first terminal receiving first information sent by a second functional module of a network device. The first information represents a first strategy for a first set, which includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals. Using the first and second information, synchronization-related processing is performed on the data packets to be synchronized, and the first information is sent to the one or more second terminals. The second information contains information related to the data packets to be synchronized for the one or more second terminals. A fifth functional module of the second terminal receives the first information sent by the first functional module of the first terminal and uses the first and tenth information to perform synchronization-related processing on the data packets to be synchronized. The tenth information contains information related to the data packets to be synchronized for the first terminal and other second terminals among the one or more second terminals besides the first terminal. The technical solution provided in this application embodiment allows the second functional module of the network device to provide a data synchronization strategy to each terminal in a set of terminals (i.e., the first set) associated with the same service (such as XR service) through a proxy terminal (i.e., the first terminal). This enables the functional module of each terminal to perform data synchronization within the terminal set based on the data synchronization strategy and the data packets to be synchronized from other terminals. In this way, the synchronization between different data streams of the XR service can be guaranteed to the greatest extent without performance optimization through the network device.

[0218] The following section provides a more detailed description of this application with reference to application examples.

[0219] This application example proposes a scheme for synchronizing XR multimodal data streams (also known as multimodal service streams) based on an enabled network architecture. Specifically, under the enabled network architecture, UE groups associated with the same XR service are identified through UE group service discovery and information broadcasting, and a unified policy control interface is provided to distribute data coordination policies to UE groups via XRApp-S, enabling UE groups to perform group management and synchronization management operations between multimodal data streams.

[0220] Specifically, such as Figure 5 As shown, the process of XR multimodal data stream synchronization includes the following steps:

[0221] Step 501: The UE performs UE discovery (UEDiscovery) through broadcast messages to find UEs using the same XR service and form a UE group (i.e., the first set mentioned above); through negotiation between UEs using the same XR service (i.e., UE1 and UE2), UE1 (i.e., the first terminal mentioned above) is elected as the proxy UE and UE2 (i.e., the second terminal mentioned above) is elected as the non-proxy UE.

[0222] UE1 includes VAL-C1 (the third functional module mentioned above) and XRAPP-C1 (the first functional module mentioned above), and UE2 includes VAL-C2 (the sixth functional module mentioned above) and XRAPP-C2 (the fifth functional module mentioned above).

[0223] Here, during the service discovery process, each UE can provide UE information through broadcast messages in order to identify UEs using the same XR service. The UE-related information includes XR Service ID (i.e., the seventh information mentioned above), UE ID, and XR data stream type (i.e., the eighth information mentioned above). UEs using the same XR service are understood to be UEs with the same XR Service ID.

[0224] Step 502: UE1’s XRAPP-C1 sends a UE Group Registration Request (which can be expressed as UE Group Registration Request in English) (i.e. the sixth information mentioned above) to XRApp-S to request the registration and data coordination strategy (i.e. the first strategy mentioned above);

[0225] The UE group registration request carries one or more of the following: XR Service ID, XR data stream type, and UE identifier in the UE group (i.e., the ninth information mentioned above).

[0226] Step 503: After receiving the UE group registration request, XRApp-S generates a data coordination strategy (such as the waiting timeout period (which can be expressed as delay expectation) (i.e., the first duration mentioned above)).

[0227] Step 504: XRApp-S sends a data coordination policy to XRAPP-C1 to realize the distribution of data coordination policies between UEs (which can be expressed as UE Data Coordination Policy Distribution in English).

[0228] Step 505: After receiving the data collaboration strategy, XRAPP-C1 synchronizes the data collaboration strategy with other XRAPP-C (i.e., XRAPP-C2);

[0229] In addition, XRAPP-C1 will also synchronize the XR Service ID to XRAPP-C2.

[0230] Step 506: VAL-S1 and VAL-S2 in the network send service registration requests to XRApp-S respectively; after receiving the service registration request, XRApp-S determines whether VAL-S1 and VAL-S2 are authorized users and whether they have the authority to initiate the service registration request; if VAL-S1 and VAL-S2 are not authorized users, XRApp-S returns a failure response; if VAL-S1 and VAL-S2 are authorized users, then proceed to step 407;

[0231] The service registration request carries one or more of the following: VAL-S1 or VAL-S2 identifier, XR Service ID, and XR data stream type.

[0232] Step 507: VAL-S1 and VAL-S2 send data streams, and the sent data streams carry the XR Service ID;

[0233] Step 508: After XRApp-S receives the data packet associated with the data stream (i.e., the data packet to be synchronized mentioned above), it marks the received data packet with a time stamp (i.e., the second timestamp and the third timestamp mentioned above);

[0234] Step 509: XRApp-S sends the tagged data packet to 5GC;

[0235] Step 510: XRApp-C1 receives data packets from 5GC;

[0236] Step 511: XRApp-C1 performs information synchronization within the UE group, that is, XRApp-C1 synchronizes the data packet information received by XRApp-C2 (i.e., the fifth information mentioned above);

[0237] Step 512: XRApp-C1 starts a timer to record the duration of receiving synchronization information from other UEs (i.e., the first reception duration mentioned above); if the recorded duration does not exceed the waiting timeout in the data coordination strategy, and synchronization information from all UEs has not been received (i.e., the first condition mentioned above), then wait and buffer the current data packet.

[0238] Step 513: XRApp-C2 receives data packets from 5GC;

[0239] Step 514: XRApp-C2 performs information synchronization within the UE group, that is, XRApp-C2 synchronizes the data packet information received by XRApp-C1 (i.e., the second information mentioned above);

[0240] Meanwhile, XRApp-C2 starts a timer to record the duration of receiving synchronization information from other UEs (i.e., the second reception duration mentioned above); if the recorded duration does not exceed the waiting timeout in the data coordination strategy, and synchronization information from all UEs has not been received (i.e., the fourth condition mentioned above), then it waits and buffers the current data packet.

[0241] Step 515: If the recorded duration times out and no synchronization information from all UEs is received (i.e., the second and fifth conditions mentioned above), XRApp-C1 and XRApp-C2 send data packets to VAL-C; if the recorded duration does not time out and synchronization information from all UEs is received (i.e., the second condition mentioned above), XRApp-C1 and XRApp-C2 send data packets to VAL-C.

[0242] Step 516: If synchronization information from some UEs is received only after the recorded timeout, XRApp-C1 can determine that the network service quality corresponding to the specified data stream is poor and experience optimization cannot be achieved through data stream collaboration within the UE group. Therefore, proceed to step 517.

[0243] Here, XRApp-C1 determines the data packet delay by comparing the time of receiving the UE synchronization information in the broadcast notification with the time of the initial timestamp carried in the data packet; if the data packet delay exceeds the waiting timeout, it means that the network service quality corresponding to the specified data stream is poor.

[0244] Step 517: XRApp-C1 reports the UE data stream transmission indicators (i.e., the fourth information mentioned above) to XRAPP-S;

[0245] The UE data stream transmission indicator carries the data stream identifier and latency corresponding to XRApp-C1.

[0246] Step 518: After receiving the UE data stream transmission indicators, XRAPP-S makes a service quality adjustment decision for the specified data stream (which can be expressed as UE Direct Connection Decision).

[0247] Step 519: XRAPP-S sends a Quality of Service (QoS) adjustment request to the data plane network elements in 5GC to adjust the priority of the data flow;

[0248] Step 520: The data plane network element sends a service quality adjustment result notification (which can be expressed as Direct UE Data Transmission Result Notification) to XRAPP-S.

[0249] As can be seen from the description of steps 501 to 520 above, under the architecture of the enabled network, such as Figure 6 As shown, by enabling the network server to provide a unified policy control interface for industry customers and to distribute data collaboration policies, and by measuring data packet latency indicators at the business level, the network server uniformly timestamps the data streams so that in scenarios where there are deviations in the quality of service of the data streams, collaboration can be carried out within the same XR service-related UE group, maximizing the synchronization experience between different data streams of XR services without waiting for the QoS tuning process of 5GC. At the same time, it also achieves accurate feedback on the quality of service of user services.

[0250] In addition, in scenarios where the network service quality corresponding to a specified data stream is poor and experience optimization cannot be achieved through data stream collaboration within a UE group, the XR service experience can be improved by reporting the data stream QoE information to the network side, allowing the network side to continue adjusting the service quality.

[0251] To implement the method of the embodiments of this application, the embodiments of this application also provide a data synchronization device, which is disposed on the first functional module of the first terminal, such as... Figure 7 As shown, the device includes:

[0252] The first receiving unit 701 is configured to receive first information sent by the second functional module of the network device. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0253] The first synchronization unit 702 is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the second information, and to send the first information to the one or more second terminals. The second information contains information related to the data packets to be synchronized of the one or more second terminals.

[0254] In one embodiment, the first synchronization unit 702 is configured to determine third information, the third information representing a first reception duration of the second information; using the first information, the second information, and the third information, determine that a first condition is met, the first condition representing that the first reception duration is less than or equal to a first duration associated with the first strategy, and no data packet information related to the data packets to be synchronized from all of the one or more second terminals is received; and cache the data packets to be synchronized.

[0255] In one embodiment, the apparatus may further include: a second transmitting unit; wherein,

[0256] The first synchronization unit 702 is further configured to use the first information, the second information and the third information to determine that a second condition is met, wherein the second condition represents one of the following: the first reception duration is equal to the first duration and no data packet information related to the data to be synchronized is received from all of the one or more second terminals; the first reception duration is less than or equal to the first duration and all data packet information related to the data to be synchronized is received from all of the one or more second terminals.

[0257] The second sending unit is used to send the data packet to be synchronized to the third functional module of the first terminal.

[0258] In one embodiment, the first synchronization unit 702 is further configured to use the first information and the second information to determine a second terminal that meets a third condition, wherein the third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration.

[0259] The second sending unit is further configured to send fourth information to the second functional module, the fourth information being used to request adjustment of the quality of service of the determined data packets to be synchronized by the second terminal.

[0260] In one embodiment, the first synchronization unit 702 is configured to determine a first timestamp, the first timestamp representing the time when the first functional module receives the second information; use the second information to determine a second timestamp, the second timestamp representing the time when the second functional module receives the data packet to be synchronized from the one or more second terminals; and use the first timestamp, the second timestamp, and the first information to determine the second terminal that satisfies the third condition.

[0261] In one embodiment, the first receiving unit 701 is further configured to receive information related to the data packets to be synchronized sent by the one or more second terminals respectively.

[0262] In one embodiment, the first synchronization unit 702 is further configured to determine fifth information, the fifth information including information related to the data packet to be synchronized of the first terminal;

[0263] The second sending unit is further configured to send the fifth information to the one or more second terminals respectively.

[0264] In one embodiment, the first receiving unit 701 is used to receive the data packet to be synchronized and a third timestamp, wherein the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal;

[0265] The first synchronization unit 702 is used to determine the fifth information using the data packet to be synchronized and the third timestamp.

[0266] In one embodiment, the first receiving unit 701 is further configured to send sixth information to the second functional module, the sixth information being used to request the configuration of the first strategy for the first set, the sixth information including one or more of the following:

[0267] The seventh piece of information represents the type of the first service;

[0268] The eighth piece of information represents the data packet type of the first service;

[0269] The ninth piece of information is used to identify the first terminal and the second terminal in the first set.

[0270] In one embodiment, the first receiving unit 701 is further configured to acquire service-related information of one or more terminals, wherein the service-related information includes at least service type information of the one or more terminals;

[0271] The first synchronization unit 702 is further configured to use the service type information of the one or more terminals to determine one or more terminals associated with the first service from the one or more terminals; and select the first terminal and one or more second terminals from the determined one or more terminals to obtain the first set.

[0272] In practical applications, the first receiving unit 701 and the second sending unit can be implemented by the communication interface in the data synchronization device, and the first synchronization unit 702 can be implemented by the processor in the data synchronization device.

[0273] To implement the method of the embodiments of this application, the embodiments of this application also provide a data synchronization device, which is disposed on the second functional module of the network device, such as... Figure 8 As shown, the device includes:

[0274] The first sending unit 801 is used to send first information to the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0275] In one embodiment, such as Figure 8 As shown, the device may further include: a third receiving unit 800 and an adjustment unit; wherein,

[0276] The third receiving unit 800 is used to receive fourth information sent by the first functional module when the first functional module determines that the second terminal meets the third condition. The third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration associated with the first strategy. The fourth information is used to request adjustment of the quality of service of the data packet to be synchronized of the determined second terminal.

[0277] The adjustment unit is used to adjust the quality of service of the determined data packets to be synchronized to the second terminal using the fourth information.

[0278] In one embodiment, the third receiving unit 800 is further configured to receive sixth information sent by the first functional module, the sixth information being used to request the configuration of the first strategy for the first set, the sixth information including one or more of the following:

[0279] The seventh piece of information represents the type of the first service;

[0280] The eighth piece of information represents the data packet type of the first service;

[0281] The ninth information is used to identify the first terminal and the second terminal in the first set;

[0282] The adjustment unit is further configured to determine the first information using the sixth information.

[0283] In one embodiment, the adjustment unit is further configured to receive a data packet to be synchronized and determine a second timestamp and a third timestamp, wherein the second timestamp represents the time when the second functional module receives the data packet to be synchronized from the one or more second terminals, and the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal.

[0284] The first sending unit 801 is used to send the data packet to be synchronized, the second timestamp, and the third timestamp.

[0285] In practical applications, the third receiving unit 800 and the first sending unit 801 can be implemented by the communication interface in the data synchronization device, and the adjustment unit can be implemented by the communication interface in the data synchronization device combined with a processor.

[0286] To implement the method of the embodiments of this application, the embodiments of this application also provide a data synchronization device, which is disposed on the fifth functional module of the second terminal, such as... Figure 9 As shown, the device includes:

[0287] The second receiving unit 901 is used to receive first information sent by the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0288] The second synchronization unit 902 is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the tenth information. The tenth information includes information related to the data packets to be synchronized from the first terminal and other second terminals among the one or more second terminals, excluding the second terminal.

[0289] In one embodiment, the second synchronization unit 902 is configured to determine eleventh information, the eleventh information representing the second reception duration of the tenth information; using the first information, the tenth information, and the eleventh information, determine that a fourth condition is met, the fourth condition representing that the second reception duration is less than or equal to a first duration associated with the first strategy, and no data packet related information to be synchronized is received from the first terminal and all terminals among the other second terminals; and cache the data packet to be synchronized.

[0290] In one embodiment, the apparatus may further include: a third transmitting unit; wherein,

[0291] The second synchronization unit 902 is further configured to use the first information, the tenth information, and the eleventh information to determine that a fifth condition is met, wherein the fifth condition represents one of the following: the second receiving duration is equal to the first duration, and no data packet information related to the data to be synchronized is received from the first terminal and all terminals in the other second terminals; or the second receiving duration is less than or equal to the first duration, and data packet information related to the data to be synchronized is received from the first terminal and all terminals in the other second terminals.

[0292] The third sending unit is used to send the data packet to be synchronized to the sixth functional module of the second terminal.

[0293] In practical applications, the second receiving unit 901 and the third sending unit can be implemented by the communication interface in the data synchronization device, and the second synchronization unit 902 can be implemented by the processor in the data synchronization device.

[0294] It should be noted that the data synchronization device provided in the above embodiments is only illustrated by the division of the above program modules when performing data synchronization. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the processing described above. In addition, the data synchronization device and the data synchronization method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0295] Based on the hardware implementation of the above program modules, and in order to implement the method on the first functional module side of the embodiments of this application, the embodiments of this application also provide a first functional module, such as... Figure 10 As shown, the first functional module 1000 includes:

[0296] The first communication interface 1001 is capable of exchanging information with the second functional module;

[0297] The first processor 1002 is connected to the first communication interface 1001 to enable information interaction with the second functional module, and is used to execute the methods provided by one or more technical solutions on the first functional module side when running a computer program;

[0298] The computer program is stored in the first memory 1003.

[0299] Specifically, the first communication interface 1001 is used to receive first information sent by the second functional module of the network device. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0300] The first processor 1002 is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the second information, and to send the first information to the one or more second terminals through the first communication interface. The second information contains information related to the data packets to be synchronized of the one or more second terminals.

[0301] In one embodiment, the first processor 1002 is configured to determine third information, the third information representing a first reception duration of the second information; using the first information, the second information, and the third information, determine that a first condition is met, the first condition representing that the first reception duration is less than or equal to a first duration associated with the first strategy, and no data packet information related to the data packets to be synchronized from all of the one or more second terminals is received; and cache the data packets to be synchronized.

[0302] In one embodiment, the first processor 1002 is further configured to use the first information, the second information, and the third information to determine that a second condition is met, wherein the second condition represents one of the following: the first reception duration is equal to the first duration, and no data packet information related to the data to be synchronized is received from all of the one or more second terminals; or the first reception duration is less than or equal to the first duration, and data packet information related to the data to be synchronized is received from all of the one or more second terminals.

[0303] The first communication interface 1001 is also used to send the data packet to be synchronized to the third functional module of the first terminal.

[0304] In one embodiment, the first processor 1002 is further configured to use the first information and the second information to determine a second terminal that meets a third condition, wherein the third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration.

[0305] The first communication interface 1001 is also used to send fourth information to the second functional module, the fourth information being used to request adjustment of the quality of service of the determined data packets to be synchronized by the second terminal.

[0306] In one embodiment, the first processor 1002 is configured to determine a first timestamp, the first timestamp representing the time when the first functional module receives the second information; use the second information to determine a second timestamp, the second timestamp representing the time when the second functional module receives the data packet to be synchronized from the one or more second terminals; and use the first timestamp, the second timestamp, and the first information to determine the second terminal that satisfies the third condition.

[0307] In one embodiment, the first communication interface 1001 is further configured to receive information related to the data packets to be synchronized sent by the one or more second terminals respectively.

[0308] In one embodiment, the first processor 1002 is further configured to determine fifth information, the fifth information including information related to the data packets to be synchronized by the first terminal;

[0309] The first communication interface 1001 is also used to send the fifth information to the one or more second terminals respectively.

[0310] In one embodiment, the first communication interface 1001 is used to receive the data packet to be synchronized and a third timestamp, wherein the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal;

[0311] The first processor 1002 is used to determine the fifth information using the data packet to be synchronized and the third timestamp.

[0312] In one embodiment, the first communication interface 1001 is further configured to send sixth information to the second functional module, the sixth information being used to request the configuration of the first strategy for the first set, the sixth information including one or more of the following:

[0313] The seventh piece of information represents the type of the first service;

[0314] The eighth piece of information represents the data packet type of the first service;

[0315] The ninth information is used to identify the first terminal and the second terminal in the first set.

[0316] In one embodiment, the first communication interface 1001 is further configured to acquire service-related information of one or more terminals, wherein the service-related information includes at least service type information of the one or more terminals;

[0317] The first processor 1002 is further configured to utilize the service type information of the one or more terminals to determine one or more terminals associated with the first service from the one or more terminals; and select the first terminal and one or more second terminals from the determined one or more terminals to obtain the first set.

[0318] It should be noted that the specific processing procedures of the first communication interface 1001 and the first processor 1002 can be understood by referring to the above method.

[0319] Of course, in practical applications, the various components in the first functional module 1000 are coupled together through the bus system 1004. It can be understood that the bus system 1004 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 1004 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, in... Figure 10 The general labeled all buses as Bus System 1004.

[0320] The first memory 1003 in this embodiment is used to store various types of data to support the operation of the first functional module 1000. Examples of such data include any computer program used to operate on the first functional module 1000.

[0321] The methods disclosed in the embodiments of this application can be applied to the first processor 1002, or implemented by the first processor 1002. The first processor 1002 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in the first processor 1002. The first processor 1002 may be a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The first processor 1002 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in the first memory 1003. The first processor 1002 reads the information in the first memory 1003 and completes the steps of the aforementioned method in combination with its hardware.

[0322] In an exemplary embodiment, the first functional module 1000 may be implemented by one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers (MCUs), microprocessors, or other electronic components to perform the aforementioned method.

[0323] Based on the hardware implementation of the above program modules, and in order to implement the method on the second functional module side of the embodiments of this application, the embodiments of this application also provide a second functional module, such as... Figure 11 As shown, the second functional module 1100 includes:

[0324] The second communication interface 1101 is capable of exchanging information with the first functional module;

[0325] The second processor 1102 is connected to the second communication interface 1101 to enable information interaction with the first functional module and to execute the methods provided by one or more technical solutions on the second functional module side when running a computer program.

[0326] The computer program is stored in the second memory 1103.

[0327] Specifically, the second communication interface 1102 is used to send first information to the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0328] In one embodiment, the second communication interface 1102 is further configured to receive fourth information sent by the first functional module when the first functional module determines that the second terminal meets the third condition. The third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration associated with the first strategy. The fourth information is used to request adjustment of the quality of service of the data packet to be synchronized of the determined second terminal.

[0329] The second processor 1102 is also used to adjust the quality of service of the determined data packets to be synchronized for the second terminal using the fourth information.

[0330] In one embodiment, the second communication interface 1102 is further configured to receive sixth information sent by the first functional module, the sixth information being used to request the configuration of the first strategy for the first set, the sixth information including one or more of the following:

[0331] The seventh piece of information represents the type of the first service;

[0332] The eighth piece of information represents the data packet type of the first service;

[0333] The ninth information is used to identify the first terminal and the second terminal in the first set;

[0334] The second processor 1102 is further configured to determine the first information using the sixth information.

[0335] In one embodiment, the second processor 1102 is further configured to receive a data packet to be synchronized through the second communication interface 1101, and determine a second timestamp and a third timestamp, wherein the second timestamp represents the time when the second functional module receives the data packet to be synchronized from the one or more second terminals, and the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal.

[0336] The second communication interface 1102 is also used to send the data packet to be synchronized, the second timestamp, and the third timestamp.

[0337] It should be noted that the specific processing procedures of the second communication interface 1101 and the second processor 1102 can be understood by referring to the above method.

[0338] Of course, in practical applications, the various components in the second functional module 1100 are coupled together through the bus system 1104. It can be understood that the bus system 1104 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 1104 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, in... Figure 11 The general designated all buses as Bus System 1104.

[0339] The second memory 1103 in this embodiment is used to store various types of data to support the operation of the second functional module 1100. Examples of such data include any computer program used to operate on the second functional module 1100.

[0340] The methods disclosed in the above embodiments of this application can be applied to the second processor 1102, or implemented by the second processor 1102. The second processor 1102 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in the second processor 1102. The second processor 1102 may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The second processor 1102 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in the second memory 1103. The second processor 1102 reads the information in the second memory 1103 and completes the steps of the aforementioned method in conjunction with its hardware.

[0341] In an exemplary embodiment, the second functional module 1100 may be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to perform the aforementioned method.

[0342] Based on the hardware implementation of the above program modules, and in order to implement the method on the fifth functional module side of the embodiments of this application, the embodiments of this application also provide a fifth functional module, such as... Figure 12 As shown, the fifth functional module 1200 includes:

[0343] The third communication interface 1201 is capable of exchanging information with the first functional module;

[0344] The third processor 1202 is connected to the second communication interface 1201 to enable information interaction with the first functional module and to execute the methods provided by one or more technical solutions on the fifth functional module side when running a computer program.

[0345] The computer program is stored in the third memory 1203.

[0346] Specifically, the third communication interface 1201 is used to receive first information sent by the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

[0347] The third processor 1202 is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the tenth information. The tenth information includes information related to the data packets to be synchronized from the first terminal and other second terminals among the one or more second terminals, excluding the second terminal.

[0348] In one embodiment, the third processor 1202 is configured to determine eleventh information, the eleventh information representing the second reception duration of the tenth information; using the first information, the tenth information, and the eleventh information, determine that a fourth condition is met, the fourth condition representing that the second reception duration is less than or equal to a first duration associated with the first strategy, and no data packet information related to the data packet to be synchronized is received from the first terminal and all terminals among the other second terminals; and cache the data packet to be synchronized.

[0349] In one embodiment, the third processor 1202 is further configured to use the first information, the tenth information, and the eleventh information to determine that a fifth condition is met, the fifth condition representing one of the following: the second reception duration is equal to the first duration, and no data packet information related to the data to be synchronized is received from the first terminal and all terminals among the other second terminals; the second reception duration is less than or equal to the first duration, and data packet information related to the data to be synchronized is received from the first terminal and all terminals among the other second terminals.

[0350] The third communication interface 1201 is used to send the data packet to be synchronized to the sixth functional module of the second terminal.

[0351] It should be noted that the specific processing procedures of the third communication interface 1201 and the third processor 1202 can be understood with reference to the above method.

[0352] Of course, in practical applications, the various components in the fifth functional module 1200 are coupled together through the bus system 1204. It can be understood that the bus system 1204 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 1204 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, in... Figure 12 The general designated all buses as Bus System 1204.

[0353] The third memory 1203 in this embodiment is used to store various types of data to support the operation of the fifth functional module 1200. Examples of such data include any computer program used to operate on the fifth functional module 1200.

[0354] The methods disclosed in the above embodiments of this application can be applied to, or implemented by, the third processor 1202. The third processor 1202 may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by the integrated logic circuitry of the hardware or by instructions in the form of software within the third processor 1202. The third processor 1202 may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The third processor 1202 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as execution by a hardware decoding processor, or execution by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, specifically a third memory 1203. The third processor 1202 reads information from the third memory 1203 and, in conjunction with its hardware, completes the steps of the aforementioned method.

[0355] In an exemplary embodiment, the fifth functional module 1200 may be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to perform the aforementioned method.

[0356] It is understood that the memories (first memory 1003, second memory 1103, and third memory 1203) in the embodiments of this application can be volatile memories or non-volatile memories, or both. Non-volatile memories can be read-only memories (ROM), programmable read-only memories (PROM), erasable programmable read-only memories (EPROM), electrically erasable programmable read-only memories (EEPROM), magnetic random access memories (FRAM), flash memories, magnetic surface memories, optical discs, or compact disc read-only memories (CD-ROM); magnetic surface memories can be disk storage or magnetic tape storage. Volatile memories can be random access memories (RAM), which are used as external caches.By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM). The memories described in the embodiments of this application are intended to include, but are not limited to, these and any other suitable types of memory.

[0357] To implement the method provided in the embodiments of this application, the embodiments of this application also provide a data synchronization system, such as... Figure 13 As shown, the system includes: a first functional module 1301, a second functional module 1302, and a third functional module 1303.

[0358] It should be noted that the specific processing procedures of the first functional module 1301, the second functional module 1302, and the third functional module 1303 have been detailed above and will not be repeated here.

[0359] In an exemplary embodiment, this application also provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium. For example, it may include a first memory 1003 storing a computer program, which can be executed by a first processor 1002 of a first functional module 1000 to complete the steps described in the first functional module-side method. Another example is a second memory 1103 storing a computer program, which can be executed by a second processor 1102 of a second functional module 1100 to complete the steps described in the second functional module-side method. Yet another example is a third memory 1203 storing a computer program, which can be executed by a third processor 1202 of a fifth functional module 1200 to complete the steps described in the fifth functional module-side method. The computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM.

[0360] In an exemplary embodiment, this application also provides a computer program product, including a computer program that can be executed by a first processor 1002 of a first functional module 1000 to complete the steps described in the aforementioned first functional module-side method; or, the computer program can be executed by a second processor 1102 of a second functional module 1100 to complete the steps described in the aforementioned second functional module-side method; or, the computer program can be executed by a third processor 1202 of a fifth functional module 1200 to complete the steps described in the aforementioned fifth functional module-side method.

[0361] It should be noted that terms such as "first" and "second" are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0362] Furthermore, the technical solutions described in the embodiments of this application can be combined arbitrarily without conflict.

[0363] The above description is merely a preferred embodiment of this application and is not intended to limit the scope of protection of this application.

Claims

1. A data synchronization method, characterized in that, The first functional module applied to the first terminal includes: The network device receives first information sent by a second functional module. The first information represents a first strategy for a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals. Using the first information and the second information, synchronization-related processing is performed on the data packets to be synchronized, and the first information is sent to the one or more second terminals. The second information contains information related to the data packets to be synchronized from the one or more second terminals.

2. The method according to claim 1, characterized in that, The step of using the first and second information to perform synchronization-related processing on the data packets to be synchronized includes: The third information is determined, wherein the third information represents the first reception duration of the second information; Using the first information, the second information, and the third information, it is determined that the first condition is met. The first condition indicates that the first reception duration is less than or equal to the first duration associated with the first strategy, and no data packet information related to the data packets to be synchronized from all of the one or more second terminals has been received. Cache the data packets to be synchronized.

3. The method according to claim 2, characterized in that, The method further includes: Using the first information, the second information, and the third information, it is determined that a second condition is met, wherein the second condition represents one of the following: The first receiving time is equal to the first time, and no data packet information to be synchronized from all of the one or more second terminals has been received; The first receiving duration is less than or equal to the first duration, and information related to the data packets to be synchronized from all of the one or more second terminals is received; The data packet to be synchronized is sent to the third functional module of the first terminal.

4. The method according to claim 2, characterized in that, The method further includes: Using the first information and the second information, a second terminal that meets the third condition is determined, wherein the third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration. Send a fourth message to the second functional module, the fourth message being used to request adjustment of the quality of service of the determined data packets to be synchronized to the second terminal.

5. The method according to claim 4, characterized in that, The step of determining the second terminal that meets the third condition using the first information and the second information includes: Determine a first timestamp, which represents the time when the first functional module receives the second information; Using the second information, a second timestamp is determined, which represents the time when the second functional module receives the data packet to be synchronized from the one or more second terminals; Using the first timestamp, the second timestamp, and the first information, a second terminal that meets the third condition is determined.

6. The method according to claim 1, characterized in that, The method further includes: Receive information related to the data packets to be synchronized sent by one or more second terminals respectively.

7. The method according to claim 1, characterized in that, The method further includes: The fifth piece of information is determined, which includes information related to the data packets to be synchronized from the first terminal. The fifth information is sent to one or more second terminals respectively.

8. The method according to claim 7, characterized in that, The determination of the fifth piece of information includes: The second functional module receives the data packet to be synchronized and a third timestamp, wherein the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal. The fifth piece of information is determined using the data packet to be synchronized and the third timestamp.

9. The method according to claim 1, characterized in that, The method further includes: Send a sixth message to the second functional module. The sixth message is used to request the configuration of the first strategy for the first set. The sixth message includes one or more of the following: The seventh piece of information represents the type of the first service; The eighth piece of information represents the data packet type of the first service; The ninth piece of information is used to identify the first terminal and the second terminal in the first set.

10. The method according to claim 9, characterized in that, The method further includes: Obtain service-related information from one or more terminals, wherein the service-related information includes at least the service type information of the one or more terminals; Using the service type information of the one or more terminals, determine one or more terminals associated with the first service from the one or more terminals; The first set is obtained by selecting the first terminal and one or more second terminals from one or more determined terminals.

11. A data synchronization method, characterized in that, The second functional module applied to network devices includes: Send first information to a first functional module of a first terminal. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

12. The method according to claim 11, characterized in that, The method further includes: When the first functional module determines that a second terminal meets the third condition, it receives fourth information sent by the first functional module. The third condition indicates that the transmission delay of the data packet to be synchronized of the second terminal is greater than the first duration associated with the first strategy. The fourth information is used to request adjustment of the quality of service of the data packet to be synchronized of the determined second terminal. Using the fourth information, the quality of service (QoS) of the data packets to be synchronized for the determined second terminal is adjusted.

13. The method according to claim 11, characterized in that, The method further includes: The system receives a sixth message sent by the first functional module. The sixth message is used to request the configuration of the first strategy for the first set. The sixth message includes one or more of the following: The seventh piece of information represents the type of the first service; The eighth piece of information represents the data packet type of the first service; The ninth information is used to identify the first terminal and the second terminal in the first set; The first information is determined using the sixth information.

14. The method according to claim 11, characterized in that, The method further includes: Receive the data packet to be synchronized, and determine a second timestamp and a third timestamp, wherein the second timestamp represents the time when the second functional module receives the data packet to be synchronized from the one or more second terminals, and the third timestamp represents the time when the second functional module receives the data packet to be synchronized from the first terminal; Send the data packet to be synchronized, the second timestamp, and the third timestamp.

15. A data synchronization method, characterized in that, The fifth functional module applied to the second terminal includes: The system receives first information sent by a first functional module of a first terminal. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals. Using the first information and the tenth information, synchronization-related processing is performed on the data packets to be synchronized. The tenth information includes information related to the data packets to be synchronized from the first terminal and other second terminals among the one or more second terminals, excluding the second terminal itself.

16. The method according to claim 15, characterized in that, The step of using the first information and the tenth information to perform synchronization-related processing on the data packets to be synchronized includes: Determine the eleventh information, wherein the eleventh information represents the second reception duration of the tenth information; Using the first information, the tenth information, and the eleventh information, it is determined that the fourth condition is met. The fourth condition indicates that the second reception duration is less than or equal to the first duration associated with the first strategy, and no data packet related information to be synchronized is received from the first terminal and all terminals in the other second terminals. Cache the data packets to be synchronized.

17. The method according to claim 16, characterized in that, The method further includes: Using the first information, the tenth information, and the eleventh information, it is determined that the fifth condition is satisfied, and the fifth condition represents one of the following: The second receiving duration is equal to the first duration, and no data packet information to be synchronized is received from the first terminal and all other second terminals. The second receiving duration is less than or equal to the first duration, and the data packet information to be synchronized is received from the first terminal and all the other second terminals. The data packet to be synchronized is sent to the sixth functional module of the second terminal.

18. A data synchronization device, characterized in that, The first functional module set in the first terminal includes: The first receiving unit is configured to receive first information sent by the second functional module of the network device. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals. The first synchronization unit is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the second information, and to send the first information to the one or more second terminals. The second information contains information related to the data packets to be synchronized of the one or more second terminals.

19. A data synchronization device, characterized in that, The second functional module of the network device includes: The first sending unit is configured to send first information to a first functional module of a first terminal. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

20. A data synchronization device, characterized in that, The fifth functional module located on the second terminal includes: The second receiving unit is configured to receive first information sent by the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals. The second synchronization unit is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the tenth information. The tenth information includes information related to the data packets to be synchronized from the first terminal and other second terminals among the one or more second terminals excluding the second terminal.

21. A first functional module, characterized in that, include: A first processor and a first communication interface; wherein... The first communication interface is used to receive first information sent by the second functional module of the network device. The first information represents a first strategy of a first set. The first set includes a first terminal associated with a first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals. The first processor is configured to perform synchronization-related processing on the data packets to be synchronized using the first information and the second information, and to send the first information to the one or more second terminals through the first communication interface. The second information contains information related to the data packets to be synchronized of the one or more second terminals.

22. A second functional module, characterized in that, include: A second processor and a second communication interface; wherein... The second communication interface is used to send first information to the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals.

23. A fifth functional module, characterized in that, include: A third processor and a third communication interface; wherein... The third communication interface is used to receive first information sent by the first functional module of the first terminal. The first information represents a first strategy of the first set. The first set includes a first terminal associated with the first service and one or more second terminals. The first strategy is used for data synchronization between the first terminal and the one or more second terminals. The third processor is used to perform synchronization-related processing on the data packets to be synchronized using the first information and the tenth information. The tenth information includes information related to the data packets to be synchronized from the first terminal and other second terminals among the one or more second terminals, excluding the second terminal.

24. A first functional module, characterized in that, include: A first processor and a first memory for storing computer programs capable of running on the processor. Wherein, when the first processor is used to run the computer program, it performs the steps of the method according to any one of claims 1 to 10.

25. A second functional module, characterized in that, include: A second processor and a second memory for storing computer programs that can run on the processor. Wherein, when the second processor is used to run the computer program, it performs the steps of the method according to any one of claims 11 to 14.

26. A fifth functional module, characterized in that, include: A third processor and a third memory for storing computer programs that can run on the processor. When the third processor runs the computer program, it performs the steps of the method according to any one of claims 15 to 17.

27. A storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10, or the steps of the method according to any one of claims 11 to 14, or the steps of the method according to any one of claims 15 to 17.

28. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10, or the steps of the method according to any one of claims 11 to 14, or the steps of the method according to any one of claims 15 to 17.