Communication system and method applied to multi-terminal synchronous cooperation
By introducing local direct transmission, edge caching and timing control, differential synchronization and cloud coordination mechanisms into the multi-terminal collaboration system, the problems of synchronization latency and poor real-time collaboration experience in multi-terminal collaboration are solved. Low-latency, high-efficiency multi-terminal data transmission and consistency maintenance are achieved, improving user experience and collaboration efficiency.
Patent Information
- Application Number
- CN202511379153.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-25
- Publication Date
- 2025-12-12
- Estimated Expiration
- 2045-09-25
AI Technical Summary
Existing technologies suffer from high synchronization latency and poor real-time collaboration experience in multi-terminal collaboration, especially in multi-person collaboration scenarios, where operations between terminals are difficult to transmit in real time, leading to a decline in user experience and collaboration efficiency.
It adopts a combination mechanism of local direct connection transmission module, edge caching and timing control module, differential synchronization module, real-time collaboration optimization module and cloud coordination module. Through local direct connection transmission, edge caching and timing control, differential synchronization and cloud coordination, it ensures low latency and consistency of data transmission across multiple terminals. The real-time collaboration optimization module sets transmission priority according to data type, prioritizing the transmission of critical operations.
It significantly reduces synchronization latency between multiple devices, improves the smoothness of real-time collaboration and the responsiveness of critical operations, ensures the correctness and stability of multi-terminal collaboration results, and can flexibly switch transmission paths in different network environments to avoid collaboration errors caused by out-of-order delivery or conflicts.
Smart Images

Figure CN121125735A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication system technology, and in particular to a communication system and method for multi-terminal synchronous collaboration. Background Technology
[0002] With the rapid development of mobile internet and cloud computing technologies, multi-terminal collaborative applications are becoming increasingly popular. Users often own multiple terminal devices, such as smartphones, tablets, laptops, desktops, and even smart wearable devices. In scenarios such as daily office work, remote education, team collaboration, and cross-platform entertainment, users need to synchronize and share information between multiple terminals to ensure the continuity and collaboration of operations.
[0003] Existing technologies mainly rely on cloud servers as intermediaries for data synchronization, which has the following shortcomings: 1. High synchronization latency: Since data must first be uploaded to the cloud and then distributed to each terminal, it is affected by network jitter, resulting in large data synchronization latency and difficulty in guaranteeing real-time performance; 2. Poor real-time collaboration experience: In multi-person collaboration scenarios, it is difficult to transmit operations between terminals in a timely manner, which can easily lead to problems such as "desynchronization" and "lag," affecting user experience and collaboration efficiency. In view of the above, this invention proposes a communication system and method for multi-terminal synchronous collaboration. Summary of the Invention
[0004] Based on the technical problems existing in the background technology, the present invention proposes a communication system and method for multi-terminal synchronous collaboration.
[0005] This invention proposes a communication system for multi-terminal synchronous collaboration, comprising a local direct transmission module, an edge buffer and timing control module, a differential synchronization module, a real-time collaboration optimization module, a cloud coordination module, and a remote terminal. The local direct transmission module is connected to the differential synchronization module and the real-time collaboration optimization module; the edge buffer and timing control module is connected to the real-time collaboration optimization module and the differential synchronization module; the differential synchronization module is connected to the cloud collaboration module; and the cloud collaboration module is connected to the real-time collaboration optimization module and the remote terminal.
[0006] Preferably, the local direct connection transmission module is used to establish a point-to-point high-speed transmission channel when multiple terminals are in the same local area network or near-field environment, so as to realize low-latency data transmission, and supports one of Wi-Fi Direct, Bluetooth Mesh, local area network multicast or point-to-point transmission protocols.
[0007] The edge cache and timing control module is used to cache the received operation data locally on each terminal and mark the operation order based on the vector clock mechanism to ensure the consistency of data merging among multiple terminals. The edge cache and timing control module uses the vector clock algorithm to resolve concurrent editing conflicts and generates a unified version according to the preset merging rules when conflicts occur.
[0008] Preferably, the differential synchronization module is used to detect differences in data between terminals, transmit operation differentials or data block differences, thereby reducing the amount of data transmitted, and calculates differential data in real time based on operation log records and data block partitioning methods to avoid transmitting redundant content.
[0009] The real-time collaboration optimization module is used to set priorities for different operations transmitted between terminals. Through a priority scheduling queue, it allocates high-priority transmission channels to key operations such as text input, voice data, or image annotation to ensure the instant synchronization of interactive operations and to ensure that key interactive operations are transmitted first, thereby improving the smoothness of real-time collaboration.
[0010] Preferably, the cloud coordination module is used as a backup relay node when direct connection between terminals is unavailable, to realize data synchronization between users in multiple remote locations. When network unreachability between terminals is detected, it automatically switches to cloud relay mode and re-establishes point-to-point transmission channel after direct connection is restored.
[0011] This invention also proposes a communication method for multi-terminal synchronous collaboration, comprising the following steps:
[0012] S1: Obtain the operation data of each terminal through the differential synchronization module, calculate the operation difference based on the operation log and data block partitioning method, and retain only the changed part to form differential data;
[0013] S2: The edge caching and timing control module writes the differential data in S1 into the local cache and uses the vector clock mechanism to add timestamps to the differential data to ensure the data transmission order and consistency between multiple terminals.
[0014] S3: The real-time collaboration optimization module sets priorities based on data types and enters the differential data cached in S2 into the scheduling queue according to priority, ensuring that critical operations are transmitted first.
[0015] S4: When multiple terminals are detected to be in a local area network or near-field environment, a point-to-point transmission channel is established through the local direct transmission module to directly transmit differential data. When the direct transmission is unavailable, it automatically switches to the cloud coordination module to transmit the differential data to the target terminal via the cloud.
[0016] S5: The edge buffer and timing control module merges the differential data according to the timing control information. If a concurrent conflict occurs, a vector clock conflict resolution algorithm is used to generate a consistent result.
[0017] S6: The merged results are updated instantly on the terminal user interface, thus ensuring a real-time collaborative experience among multiple terminals and users.
[0018] Preferably, the specific logical steps of S1 are as follows:
[0019] S101: Each terminal appends local operations to the local operation log in the form of O, and assigns a vector clock component to each operation;
[0020] S102: Obtain the current data sequence S directly from the local operation log, and divide the data sequence S into several blocks B according to fixed blocks. i ;
[0021] S103: For each block B i Calculate weak fingerprint R i Strong fingerprint H i The formula used is as follows:
[0022] Where p is the base and M is a large prime number;
[0023] H i =SHA256(B i );
[0024] S104: Receiver exchanges fingerprint list (i,R) i H i The receiving end uses the local corresponding fingerprint set for matching. If the receiving end has the same H... j =H i If the strong fingerprint does not match but the weak fingerprint is equal, then the block is considered to be consistent and there is no need to transmit the data of the block. If the strong fingerprint does not match but the weak fingerprint is equal, then further verification is required. If the fingerprint does not match, the block is marked as "needs to be transmitted / needs internal differential".
[0025] S105: Perform intra-block differencing on candidate distinct block pairs, using the formula: Let d(a,b) be the minimum edit cost of the source prefix length a and the target prefix length b, then:
[0026] d(0,0)=0
[0027]
[0028] Where 1 is an indicator function;
[0029] S106: The content to be transmitted is represented as a difference set Δ, and the formula used is: Where opk ∈{Insert,Delete,Replace};
[0030] S107: Perform reversible compression on Δ and add necessary metadata to form the final differential data packet δ to be sent. k The necessary metadata includes the source version number, vector clock, logical timestamp, and block fingerprint.
[0031] Preferably, the specific logical steps of S2 are as follows:
[0032] S201: The edge buffer and timing control module receives differential data δ generated by the differential synchronization module. k and δ k Temporarily store in the local cache structure CacheEntry = (δ k VC i ,status), where status indicates whether the data has been applied in the globally consistent order;
[0033] S202: When terminal P i When generating local differential data, update its own vector clock and the updated VC i This serves as the timestamp for the differential data and is bound to the differential data packet δ. k ;
[0034] S203: When terminal P i To other terminals P j Send differential data δ k At that time, along with the current vector clock, Packet = (δ k VC i When terminal P j Received from P i Differential data and its clock VC i Update its own vector clock: VC jk ←max(vc jk ,vc ik ),
[0035] S204: Given two difference data δ a and δ b If each carries a vector clock VC a and VC b , then: if VC a [k]≤VC b [k], and there exists some j such that VC a [j]≤VC b [j], then δ is called a →δb If the two cannot be compared, it indicates concurrent operations.
[0036] Preferably, the specific logical steps of S3 are as follows:
[0037] S301: Set basic priority based on the type of differential data. base ,in:
[0038] Text / input operation → w base =1;
[0039] Audio / video frames → w base =2;
[0040] Image / Annotation → w base =3;
[0041] Non-critical data → w base =4, the smaller the value, the higher the priority;
[0042] S302: Taking into account the difference data δ k The data type, urgency, and timeliness are considered to calculate the overall priority, using the formula: Priority(δ) k ) = f(type k ,VC K ,age(δ k ))=w k ;
[0043] S303: For each difference data δ k According to priority w k Insert a max-heap or min-heap Q into the scheduling queue, and its Q.push(δ) k w k In a max-heap, the weight value is smaller, indicating higher priority; the top element of the heap is always the data that is sent with the highest priority.
[0044] S304: The scheduler continuously retrieves the top differential data δ from queue Q. top Send, δ top =Q.pop(), if the sending channel is available, then transmit; otherwise, wait and retry. At the same time, the queue priority can be dynamically adjusted to ensure that data that has not been sent for a long time will not starve.
[0045] Preferably, in step S4, when performing local area network detection, the local subnet IP address range is used to determine whether they are on the same local area network. The determination condition is as follows:
[0046] LAN_same = (subnet(IP) local ) = subnet(IP peer ));
[0047] Near-field environment detection uses local area network broadcast or multicast protocols to detect nearby terminals, and the formula used is:
[0048] LocalDirectAvailable=LAN_same∨NearFieldDetected;
[0049] If the conditions are met, local direct connection transmission can be attempted;
[0050] The switching conditions for automatically switching to the cloud coordination module are as follows: The switching steps are as follows:
[0051] S401: Encapsulate the cached differential data Δ into a message packet that can be recognized by the cloud: P cloud = (Δ, VC, metadata);
[0052] S402: Send send_cloud(P) via the cloud coordination module cloud →targetterminal, the cloud relay is responsible for forwarding the data to the target terminal after receiving it.
[0053] Preferably, the specific logical steps of S5 are as follows:
[0054] S501: Read the data set to be merged from the local cache: D = {P1, P2, ..., P...} m}, and perform a partial order comparison of the vector clock for each data packet; if VC i <VC j That is, all components v i [k]≤v j [k] and at least one is strictly less than, indicating that P i The operation occurs in P j Previously, P was applied first. i If VC i ||VC j This indicates the existence of concurrent operations, and conflict handling should be initiated.
[0055] S502: Perform a definition conflict determination, the condition for which is: Conflict(P i ,P j ) = (VC i ||VC j )∧(Target(P i =Target(P) j If two concurrent operations operate on the same data object, a conflict is determined.
[0056] S503: A conflict resolution function is defined using a vector clock conflict resolution algorithm, and a consistency result is generated. The formula used is: Resolve(P) i ,P j → P * ;
[0057] Result = (D\{P i ,P j})∪{P *};
[0058] S504: Apply differential data according to timing and conflict resolution results, State new =Apply(State old ,Result), update the cache and synchronize the vector clock,VC local [ID] = VC local [ID]+1, converges all terminals to the same consistent state within a finite time.
[0059] Compared with existing technologies, the beneficial effects of this invention are:
[0060] 1. By transmitting only the operation difference rather than the complete data through the differential synchronization module, the amount of redundant data transmission is effectively reduced, the network bandwidth usage is reduced, and the data synchronization speed between multiple terminals is significantly improved, realizing low-latency real-time collaboration. In addition, the real-time collaboration optimization module sets the transmission priority according to the data type, so that highly sensitive operations such as text input and voice commands are transmitted first, ensuring the real-time response experience of users in critical scenarios and improving the smoothness of collaboration.
[0061] 2. By using the edge caching and timing control module, the differential data is version-identified and ordered using a vector clock to ensure that different terminals can correctly restore the global operation order when there are concurrent operations. Consistent results are generated through conflict detection and resolution mechanisms to avoid collaboration errors caused by out-of-order or conflict.
[0062] This invention achieves efficient transmission and consistency maintenance of operational data between multiple terminals through a mechanism that combines differential synchronization, edge caching and timing control, real-time collaboration optimization, and local direct connection with cloud coordination. It not only significantly reduces synchronization latency and improves the real-time response experience of critical operations, but also generates consistent results through a vector clock mechanism in the event of concurrent conflicts, avoiding collaboration errors caused by out-of-order or conflicting data. Furthermore, it flexibly switches transmission paths in different network environments, ultimately ensuring the correctness and stability of multi-terminal collaboration results, thus balancing system performance, reliability, and adaptability. Attached Figure Description
[0063] Figure 1This is a block diagram of a communication system for multi-terminal synchronous collaboration proposed in this invention;
[0064] Figure 2 This is a flowchart of a communication method for multi-terminal synchronous collaboration proposed in this invention. Detailed Implementation
[0065] The present invention will be further explained below with reference to specific embodiments.
[0066] Example
[0067] Reference Figure 1 This embodiment proposes a communication system for multi-terminal synchronous collaboration, including a local direct transmission module, an edge buffer and timing control module, a differential synchronization module, a real-time collaboration optimization module, a cloud coordination module, and a remote terminal. The local direct transmission module is connected to the differential synchronization module and the real-time collaboration optimization module. The edge buffer and timing control module is connected to the real-time collaboration optimization module and the differential synchronization module. The differential synchronization module is connected to the cloud collaboration module. The cloud collaboration module is connected to the real-time collaboration optimization module and the remote terminal.
[0068] The local direct connection transmission module is used to establish a point-to-point high-speed transmission channel when multiple terminals are in the same local area network or near-field environment, so as to achieve low-latency data transmission, and supports one of the following protocols: Wi-Fi Direct, Bluetooth Mesh, local area network multicast or point-to-point transmission protocol.
[0069] The edge caching and timing control module is used to cache the received operation data locally on each terminal and mark the operation order based on the vector clock mechanism to ensure the consistency of data merging between multiple terminals. The edge caching and timing control module uses the vector clock algorithm to resolve concurrent editing conflicts and generates a unified version according to the preset merging rules when conflicts occur.
[0070] The differential synchronization module is used to detect differences in data between terminals, transmit operation differentials or data block differences, thereby reducing the amount of data transmitted. Based on operation log records and data block partitioning methods, it calculates differential data in real time to avoid transmitting redundant content.
[0071] The real-time collaboration optimization module is used to set priorities for different operations transmitted between terminals. Through the priority scheduling queue, high-priority transmission channels are allocated to key operations such as text input, voice data, or image annotation to ensure the instant synchronization of interactive operations and to ensure that key interactive operations are transmitted first, thereby improving the smoothness of real-time collaboration.
[0072] The cloud coordination module is used as a backup relay node when direct connection between terminals is unavailable, enabling data synchronization between users in multiple remote locations. When network unreachability between terminals is detected, it automatically switches to cloud relay mode and re-establishes point-to-point transmission channels after direct connection is restored.
[0073] Reference Figure 2 This embodiment also proposes a communication method for multi-terminal synchronous collaboration, including the following steps:
[0074] S1: Obtain the operation data of each terminal through the differential synchronization module, calculate the operation difference based on the operation log and data block partitioning method, and retain only the changed part to form differential data;
[0075] The specific logical steps are as follows:
[0076] S101: Each terminal appends local operations to the local operation log in the form of O, and assigns a vector clock component to each operation;
[0077] S102: Obtain the current data sequence S directly from the local operation log, and divide the data sequence S into several blocks B according to fixed blocks. i ;
[0078] S103: For each block B i Calculate weak fingerprint R i Strong fingerprint H i The formula used is as follows:
[0079] Where p is the base and M is a large prime number;
[0080] H i =SHA256(B i );
[0081] S104: Receiver exchanges fingerprint list (i,R) i H i The receiving end uses the local corresponding fingerprint set for matching. If the receiving end has the same H... j =H i If the strong fingerprint does not match but the weak fingerprint is equal, then the block is considered to be consistent and there is no need to transmit the data of the block. If the strong fingerprint does not match but the weak fingerprint is equal, then further verification is required. If the fingerprint does not match, the block is marked as "needs to be transmitted / needs internal differential".
[0082] S105: Perform intra-block differencing on candidate distinct block pairs, using the formula: Let d(a,b) be the minimum edit cost of the source prefix length a and the target prefix length b, then:
[0083] d(0,0)=0
[0084]
[0085] Where 1 is an indicator function;
[0086] S106: The content to be transmitted is represented as a difference set Δ, and the formula used is: Where op k ∈{Insert,Delete,Replace};
[0087] S107: Perform reversible compression on Δ and add necessary metadata to form the final differential data packet δ to be sent. k Necessary metadata includes source version number, vector clock, logical timestamp, and block fingerprint;
[0088] S2: The edge caching and timing control module writes the differential data in S1 into the local cache and uses the vector clock mechanism to add timestamps to the differential data to ensure the data transmission order and consistency between multiple terminals.
[0089] The specific logical steps are as follows:
[0090] S201: The edge buffer and timing control module receives differential data δ generated by the differential synchronization module. k and δ k Temporarily store in the local cache structure CacheEntry = (δ k VC i ,status), where status indicates whether the data has been applied in the globally consistent order;
[0091] S202: When terminal P i When generating local differential data, update its own vector clock and the updated VC i This serves as the timestamp for the differential data and is bound to the differential data packet δ. k ;
[0092] S203: When terminal P i To other terminals P j Send differential data δ k At that time, along with the current vector clock, Packet = (δ k VC i When terminal P j Received from P i Differential data and its clock VC i Update its own vector clock: VC jk ←max(vc jk ,vc ik ),
[0093] S204: Given two difference data δ a and δ b If each carries a vector clock VC a and VC b , then: if VC a [k]≤VC b [k], and there exists some j such that VC a [j]≤VC b [j], then δ is called a →δ b If the two cannot be compared, it indicates concurrent operations;
[0094] S3: The real-time collaboration optimization module sets priorities based on data types and enters the differential data cached in S2 into the scheduling queue according to priority, ensuring that critical operations are transmitted first.
[0095] The specific logical steps are as follows:
[0096] S301: Set basic priority based on the type of differential data. base ,in:
[0097] Text / input operation → w base =1;
[0098] Audio / video frames → w base =2;
[0099] Image / Annotation → w base =3;
[0100] Non-critical data → w base =4, the smaller the value, the higher the priority;
[0101] S302: Taking into account the difference data δ k The data type, urgency, and timeliness are considered to calculate the overall priority, using the formula: Priority(δ) k ) = f(type k ,VC K ,age(δ k ))=w k ;
[0102] S303: For each difference data δ k According to priority w k Insert a max-heap or min-heap Q into the scheduling queue, and its Q.push(δ) k w k In a max-heap, the weight value is smaller, indicating higher priority; the top element of the heap is always the data that is sent with the highest priority.
[0103] S304: The scheduler continuously retrieves the top differential data δ from queue Q. top Send, δ top =Q.pop(), if the sending channel is available, then transmit; otherwise, wait and retry. At the same time, the queue priority can be dynamically adjusted to ensure that data that has not been sent for a long time will not starve.
[0104] S4: When multiple terminals are detected to be in a local area network or near-field environment, a point-to-point transmission channel is established through the local direct transmission module to directly transmit differential data. When the direct transmission is unavailable, it automatically switches to the cloud coordination module to transmit the differential data to the target terminal via the cloud.
[0105] When performing LAN testing, it uses the local subnet IP address range to determine whether they are on the same LAN. The determination criteria are:
[0106] LAN_same = (subnet(IP) local ) = subnet(IP peer ));
[0107] Near-field environment detection uses local area network broadcast or multicast protocols to detect nearby terminals, and the formula used is:
[0108] LocalDirectAvailable=LAN_same∨NearFieldDetected;
[0109] If the conditions are met, local direct connection transmission can be attempted;
[0110] The switching conditions for automatically switching to the cloud coordination module are as follows: The switching steps are as follows:
[0111] S401: Encapsulate the cached differential data Δ into a message packet that can be recognized by the cloud: P cloud = (Δ, VC, metadata);
[0112] S402: Send send_cloud(P) via the cloud coordination module cloud → targetterminal, the cloud relay is responsible for forwarding the data to the target terminal after receiving it;
[0113] S5: The edge buffer and timing control module merges the differential data according to the timing control information. If a concurrent conflict occurs, a vector clock conflict resolution algorithm is used to generate a consistent result.
[0114] The specific logical steps are as follows:
[0115] S501: Read the data set to be merged from the local cache: D = {P1, P2, ..., P...} m}, and perform a partial order comparison of the vector clock for each data packet; if VC i <VC j That is, all components v i [k]≤v j [k] and at least one is strictly less than, indicating that P i The operation occurs in P j Previously, P was applied first. i If VC i ||VC j This indicates the existence of concurrent operations, and conflict handling should be initiated.
[0116] S502: Perform a definition conflict determination, the condition for which is: Conflict(P i ,P j ) = (VC i ||VC j )∧(Target(P i =Target(P) j If two concurrent operations operate on the same data object, a conflict is determined.
[0117] S503: A conflict resolution function is defined using a vector clock conflict resolution algorithm, and a consistency result is generated. The formula used is: Resolve(P) i ,P j → P * ;
[0118] Result = (D\{P i ,P j})∪{P *};
[0119] S504: Apply differential data according to timing and conflict resolution results, State new =Apply(State old ,Result), update the cache and synchronize the vector clock,VC local [ID] = VC local [ID]+1, converges all terminals to the same consistent state within a finite time;
[0120] S6: The merged result is updated in real time on the terminal user interface, thereby ensuring a real-time collaborative experience among multiple terminals and users;
[0121] This embodiment achieves efficient transmission and consistency maintenance of operational data between multiple terminals through a mechanism that combines differential synchronization, edge caching and timing control, real-time collaboration optimization, and local direct connection with cloud coordination. It not only significantly reduces synchronization latency and improves the real-time response experience of critical operations, but also generates consistent results through a vector clock mechanism in the event of concurrent conflicts, avoiding collaboration errors caused by out-of-order or conflicting data. Furthermore, it flexibly switches transmission paths in different network environments, ultimately ensuring the correctness and stability of multi-terminal collaboration results, thus balancing system performance, reliability, and adaptability.
[0122] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.
Claims
1. A communication system for multi-terminal synchronous collaboration, characterized in that, It includes a local direct transmission module, an edge caching and timing control module, a differential synchronization module, a real-time collaboration optimization module, a cloud coordination module, and a remote terminal. The local direct transmission module is connected to the differential synchronization module and the real-time collaboration optimization module. The edge caching and timing control module is connected to the real-time collaboration optimization module and the differential synchronization module. The differential synchronization module is connected to the cloud collaboration module. The cloud collaboration module is connected to the real-time collaboration optimization module and the remote terminal.
2. The communication system for multi-terminal synchronous collaboration according to claim 1, characterized in that, The local direct connection transmission module is used to establish a point-to-point high-speed transmission channel when multiple terminals are in the same local area network or near-field environment, so as to realize low-latency data transmission, and supports one of Wi-Fi Direct, Bluetooth Mesh, local area network multicast or point-to-point transmission protocols. The edge cache and timing control module is used to cache the received operation data locally on each terminal and mark the operation order based on the vector clock mechanism to ensure the consistency of data merging among multiple terminals. The edge cache and timing control module uses the vector clock algorithm to resolve concurrent editing conflicts and generates a unified version according to the preset merging rules when conflicts occur.
3. A communication system for multi-terminal synchronous collaboration according to claim 1, characterized in that, The differential synchronization module is used to detect differences in data between terminals, transmit operation differentials or data block differences, thereby reducing the amount of data transmitted. Based on operation log records and data block partitioning methods, it calculates differential data in real time to avoid transmitting redundant content. The real-time collaboration optimization module is used to set priorities for different operations transmitted between terminals. Through a priority scheduling queue, it allocates high-priority transmission channels to key operations such as text input, voice data, or image annotation to ensure the instant synchronization of interactive operations and to ensure that key interactive operations are transmitted first, thereby improving the smoothness of real-time collaboration.
4. A communication system for multi-terminal synchronous collaboration according to claim 1, characterized in that, The cloud coordination module is used as a backup relay node when direct connection between terminals is unavailable, enabling data synchronization between users in multiple remote locations. When network unreachability between terminals is detected, it automatically switches to cloud relay mode and re-establishes point-to-point transmission channels after direct connection is restored.
5. A communication method for multi-terminal synchronous collaboration, characterized in that, Includes the following steps: S1: Obtain the operation data of each terminal through the differential synchronization module, calculate the operation difference based on the operation log and data block partitioning method, and retain only the changed part to form differential data; S2: The edge caching and timing control module writes the differential data in S1 into the local cache and uses the vector clock mechanism to add timestamps to the differential data to ensure the data transmission order and consistency between multiple terminals. S3: The real-time collaboration optimization module sets priorities based on data types and enters the differential data cached in S2 into the scheduling queue according to priority, ensuring that critical operations are transmitted first. S4: When multiple terminals are detected to be in a local area network or near-field environment, a point-to-point transmission channel is established through the local direct transmission module to directly transmit differential data. When the direct transmission is unavailable, it automatically switches to the cloud coordination module to transmit the differential data to the target terminal via the cloud. S5: The edge buffer and timing control module merges the differential data according to the timing control information. If a concurrent conflict occurs, a vector clock conflict resolution algorithm is used to generate a consistent result. S6: The merged results are updated instantly on the terminal user interface, thus ensuring a real-time collaborative experience among multiple terminals and users.
6. A communication method for multi-terminal synchronous collaboration according to claim 5, characterized in that, The specific logical steps of S1 are as follows: S101: Each terminal appends local operations to the local operation log in the form of O, and assigns a vector clock component to each operation; S102: Obtain the current data sequence S directly from the local operation log, and divide the data sequence S into several blocks B according to fixed blocks. i ; S103: For each block B i Calculate weak fingerprint R i Strong fingerprint H i The formula used is as follows: Where p is the base and M is a large prime number; H i =SHA256(B i ); S104: Receiver exchanges fingerprint list (i,R) i H i The receiving end uses the local corresponding fingerprint set for matching. If the receiving end has the same H... j =H i If the strong fingerprint does not match but the weak fingerprint is equal, then the block is considered to be consistent and there is no need to transmit the data of the block. If the strong fingerprint does not match but the weak fingerprint is equal, then further verification is required. If the fingerprint does not match, the block is marked as "needs to be transmitted / needs internal differential". S105: Perform intra-block differencing on candidate distinct block pairs, using the formula: Let d(a,b) be the minimum edit cost of the source prefix length a and the target prefix length b, then: d(0,0)=0 Where 1 is an indicator function; S106: The content to be transmitted is represented as a difference set Δ, and the formula used is: Where op k ∈{Insert,Delete,Replace}; S107: Perform reversible compression on Δ and add necessary metadata to form the final differential data packet δ to be sent. k The necessary metadata includes the source version number, vector clock, logical timestamp, and block fingerprint.
7. A communication method for multi-terminal synchronous collaboration according to claim 5, characterized in that, The specific logical steps of S2 are as follows: S201: The edge buffer and timing control module receives differential data δ generated by the differential synchronization module. k and δ k Temporarily store in the local cache structure CacheEntry = (δ k VC i ,status), where status indicates whether the data has been applied in the globally consistent order; S202: When terminal P i When generating local differential data, update its own vector clock and the updated VC i This serves as the timestamp for the differential data and is bound to the differential data packet δ. k ; S203: When terminal P i To other terminals P j Send differential data δ k At that time, along with the current vector clock, Packet = (δ k VC i When terminal P j Received from P i Differential data and its clock VC i Update its own vector clock: S204: Given two difference data δ a and δ b If each carries a vector clock VC a and VC b , then: if VC a [k]≤VC b [k], and there exists some j such that VC a [j]≤VC b [j], then δ is called a →δ b If the two cannot be compared, it indicates concurrent operations.
8. A communication method for multi-terminal synchronous collaboration according to claim 5, characterized in that, The specific logical steps of S3 are as follows: S301: Set basic priority based on the type of differential data. base ,in: Text / input operation → w base =1; Audio / video frames → w base =2; Image / Annotation → w base =3; Non-critical data → w base =4, the smaller the value, the higher the priority; S302: Taking into account the difference data δ k The data type, urgency, and timeliness are considered to calculate the overall priority, using the formula: Priority(δ) k ) = f(type k ,VC K ,age(δ k ))=w k ; S303: For each difference data δ k According to priority w k Insert a max-heap or min-heap Q into the scheduling queue, and its Q.push(δ) k w k In a max-heap, the weight value is smaller, indicating higher priority; the top element of the heap is always the data that is sent with the highest priority. S304: The scheduler continuously retrieves the top differential data δ from queue Q. top Send, δ top =Q.pop(), if the sending channel is available, then transmit; otherwise, wait and retry. At the same time, the queue priority can be dynamically adjusted to ensure that data that has not been sent for a long time will not starve.
9. A communication method for multi-terminal synchronous collaboration according to claim 5, characterized in that, In step S4, when performing local area network (LAN) detection, the local subnet IP address range is used to determine whether they are on the same LAN. The determination condition is as follows: LAN_same=(subnet(IP local )=subnet(IP peer )); Near-field environmental detection uses local area network broadcast or multicast protocols to detect nearby terminals. If the conditions are met, local direct connection transmission can be attempted; The switching conditions for automatically switching to the cloud coordination module are as follows: The switching steps are as follows: S401: Encapsulate the cached differential data Δ into a message packet that can be recognized by the cloud: P cloud = (Δ, VC, metadata); S402: Send send_cloud(P) via the cloud coordination module cloud →targetterminal, the cloud relay is responsible for forwarding the data to the target terminal after receiving it.
10. A communication method for multi-terminal synchronous collaboration according to claim 5, characterized in that, The specific logical steps of S5 are as follows: S501: Read the data set to be merged from the local cache: D = {P1, P2, ..., P...} m }, and perform a partial order comparison of the vector clock for each data packet; if VC i <VC j That is, all components v i [k]≤v j [k] and at least one is strictly less than, indicating that P i The operation occurs in P j Previously, P was applied first. i If VC i ||VC j This indicates the existence of concurrent operations, and conflict handling should be initiated. S502: Perform a definition conflict determination, the condition for which is: Conflict(P i ,P j ) = (VC i ||VC j )∧(Target(P i ) = Target(P j If two concurrent operations operate on the same data object, a conflict is determined. S5 03: A conflict resolution function is defined using a vector clock conflict resolution algorithm to generate a consistent result. The formula used is: Resolve(P) i ,P j → P * ; Result=(D\{P i ,P j })∪{P * }; S504: Apply differential data according to timing and conflict resolution results, State new =Apply(State old ,Result), update the cache and synchronize the vector clock,VC local [ID] = VC local [ID]+1, converges all terminals to the same consistent state within a finite time.
Citation Information
Patent Citations
Cloud drawing collaborative annotation method for multi-terminal mobile equipment
CN119151491A
Multi-person teaching cooperation system
CN120543128A
Transaction-based file synchronization method and system
WO2025092579A1
