Data transmission optimization method and system for network platform service
By performing Raptor code forward error correction coding and dynamic weight scheduling at the sending end, combined with out-of-order reordering and online repair at the receiving end, the problem of data transmission interruption and delay in heterogeneous network environments is solved, achieving efficient multi-path data transmission optimization and improving the stability and real-time performance of network platform services.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- CHENGDU DAJIACHANG INFORMATION TECHNOLOGY CONSULTING CO LTD
- Filing Date
- 2026-03-24
- Publication Date
- 2026-05-15
AI Technical Summary
Existing technologies lack fine-grained perception of link quality in heterogeneous network environments, which makes data transmission prone to interruptions, latency fluctuations, and line blockages, and cannot achieve efficient multi-path data transmission optimization.
The Raptor code algorithm is used for forward error correction coding to generate coded data packet streams, which are transmitted through multiple parallel physical links. Link quality parameters are obtained in real time, and transmission capacity weights are dynamically calculated. The receiving end performs out-of-order reordering and online repair, and cross-layer congestion control is combined to optimize data distribution.
It enables real-time packet recovery in highly dynamic network environments, reduces transmission latency and out-of-order delivery, improves the throughput of multipath transmission and network bandwidth utilization, and ensures the continuity and real-time performance of services.
Smart Images

Figure CN122052990A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of communication technology, specifically relating to a data transmission optimization method and system for network platform services. Background Technology
[0002] With the rapid development of mobile internet technology, the application of smart terminals in network platform services is becoming increasingly widespread, placing higher demands on the stability and real-time performance of data transmission. Modern mobile devices typically integrate multiple wireless communication modules, enabling simultaneous access to various heterogeneous network resources such as wireless LANs and cellular networks, providing a physical foundation for improving network service quality. In complex mobile application scenarios, effectively utilizing multiple network interfaces to achieve efficient data exchange has become a key aspect of ensuring business continuity for online video, remote work, and real-time signaling transmission.
[0003] Among them, data transmission technology based on multi-path aggregation is a current research focus in the field of network optimization, aiming to improve the overall throughput and resilience of the system by utilizing multiple physical links in parallel. This technology attempts to overcome the connection interruption problem that easily occurs when single-path transmission encounters signal attenuation or base station switching by splitting the original data stream into multiple sub-streams and distributing them to different network paths for transmission, thereby achieving deep integration of network bandwidth.
[0004] However, traditional solutions based on standard single-path transmission protocols are prone to transmission interruptions or high latency fluctuations when congestion or signal attenuation occurs on a single path, making it difficult to guarantee the continuity of network platform services. Furthermore, existing technologies lack fine-grained perception of link quality in heterogeneous network environments, leading to severe head-end congestion when allocating data between paths with significant bandwidth differences. This causes data packets on high-speed paths to wait for packets from low-speed paths to arrive before reassembling. In addition, packet loss recovery during data transmission mainly relies on retransmission mechanisms, which cannot achieve real-time repair at the receiving end. This limits the effective utilization of multi-network aggregation, resulting in poor data throughput and real-time feedback performance in highly dynamic scenarios. Therefore, a data transmission optimization method and system for network platform services are desired. Summary of the Invention
[0005] The purpose of this invention is to provide a method and system for optimizing data transmission in network platform services, which can effectively solve the problems mentioned in the background art.
[0006] To achieve the above objectives, the technical solution adopted by the present invention is as follows: A method for optimizing data transmission in a network platform service includes the following specific steps: Forward error correction coding is performed on the original data stream to be transmitted to generate an encoded data packet stream. The encoding process adopts the Raptor code algorithm, which specifically includes: using a low-density parity-check code (LDPC) encoder to pre-encode the original data block with Raptor code to generate intermediate symbols, and mapping the intermediate symbols to generate encoded symbols based on the robust soliton distribution. Probe packets are sent through multiple parallel physical links, and the real-time round-trip latency and real-time packet loss rate of each physical link are obtained based on the returned acknowledgment messages. The transmission capacity weight of each link is calculated based on the predicted bandwidth, real-time round-trip latency, and preset service preference ratio coefficient of each link. Based on the transmission capacity weight, the encoded data packet stream is distributed to the corresponding physical link for concurrent transmission; At the receiving end, the concurrently received encoded data packets are stored in the out-of-order reassembly buffer pool, and the sliding window size of the out-of-order reassembly buffer pool is dynamically set according to the difference between the maximum round-trip time and the minimum round-trip time in each link. When a missing data packet is detected and the number of received encoded symbols belonging to the same original data block reaches a preset decoding threshold, the missing data packet is repaired online using the redundant information of the forward error correction coding.
[0007] Furthermore, the step of performing forward error correction coding on the original data stream to be transmitted also includes: Adaptively adjust coding redundancy based on historical network quality; Specifically, a sliding window is maintained to record historical packet loss rates. When the average packet loss rate within the window rises and exceeds a preset threshold, the ratio of the number of encoded symbols to the number of original symbols is dynamically increased based on the average packet loss rate to increase the proportion of redundant information.
[0008] Furthermore, the steps of obtaining the real-time round-trip latency and real-time packet loss rate for each physical link also include: The jitter value of the link is calculated based on the round-trip delay of multiple consecutive detection cycles; The jitter value is calculated using a first-order lag filtering algorithm, which updates the value based on the absolute value of the round-trip delay difference between adjacent cycles obtained from the latest calculation and the historical jitter value.
[0009] Furthermore, the steps for calculating the transmission capacity weight of each link are as follows: According to the formula Calculate the transmission capacity weight of the i-th link. ;in, The predicted bandwidth of the i-th link is estimated in real time based on historical transmission rates using an exponentially weighted moving average algorithm. Let be the real-time round-trip delay of the i-th link; This is the business preference ratio coefficient, which is determined based on the business type.
[0010] Furthermore, the steps for dynamically setting the sliding window size of the out-of-order reassembly buffer pool are as follows: Real-time calculation of maximum round-trip latency across all available links With minimum round-trip delay The difference ; Based on the difference Set the capacity of the sliding window to ensure that the window can accommodate the number of packets expected to arrive within the time difference range.
[0011] Furthermore, the step of online repair of missing data packets at the receiving end also includes: For any missing data packets detected, a preset waiting and observation period is initiated. If the missing data packet still has not arrived during the waiting observation period, and the total number of received encoded symbols belonging to the same original data block has reached or exceeded the number of original symbols, then the forward error correction decoding repair module will be activated for online repair. The duration of the observation period is set based on the maximum round-trip time among all current links.
[0012] Furthermore, the method also includes a rapid switching step: Continuously monitor the received signal strength indicator or jitter value of each physical link; When the received signal strength of a link is lower than the preset signal threshold or its jitter exceeds the preset fluctuation threshold, the transmission capacity weight of that link is reduced, and the data packets originally scheduled to be distributed to that link are redirected to the current best quality backup path.
[0013] Furthermore, the method also includes emergency flow control steps: The receiving end continuously monitors the fill rate of the out-of-order reassembly buffer pool; When the fill rate reaches the preset fill threshold, an emergency flow control command is triggered, notifying the sender to reduce the weight allocation of high-latency paths or slow down the overall data packet transmission rate.
[0014] Furthermore, the method also includes steps for cross-layer congestion control: The real-time round-trip delay and packet loss rate of each physical link are transmitted to the transport layer congestion control algorithm at the sending end through the feedback control module at the receiving end. The congestion window adjustment coefficient is calculated based on the round-trip delay and packet loss rate of each link, and the coefficient is applied to the congestion window and transmission rate of the corresponding path in the transport layer to actively adjust the transmission rate of that path.
[0015] A data transmission optimization system for a network platform service includes a sender and a receiver, wherein: The sending end includes: The forward error correction coding module is used to perform forward error correction coding on the original data stream to be transmitted, generating a coded data packet stream. Specifically, the forward error correction coding module is used to pre-encode the original data block using a low-density parity-check code (LDPC) encoder to generate intermediate symbols, and to map coded symbols from the intermediate symbols based on a robust soliton distribution. The path detection module is used to send probe packets through multiple parallel physical links and obtain the real-time round-trip latency and real-time packet loss rate of each physical link based on the returned acknowledgment messages. The dynamic weight scheduler is used to calculate the transmission capacity weight of each link based on the predicted bandwidth, real-time round-trip latency and preset service preference ratio coefficient of each link, and distribute the encoded data packet stream to the corresponding physical link for concurrent transmission according to the transmission capacity weight. The receiving end includes: The out-of-order reassembly buffer pool is used to store concurrently received encoded data packets, and the sliding window size of the out-of-order reassembly buffer pool is dynamically set according to the difference between the maximum round-trip time and the minimum round-trip time in each link. The forward error correction decoding and repair module is used to repair the missing data packets online by utilizing the redundancy information of the forward error correction encoding when a missing data packet is detected and the number of received encoded symbols belonging to the same original data block reaches a preset decoding threshold.
[0016] In summary, this application includes at least one of the following beneficial technical effects: 1. This invention introduces forward error correction coding based on the Raptor code algorithm at the sending end, enabling the data packet stream to have inherent redundancy recovery capabilities. Compared to traditional transmission control protocols that rely solely on retransmission mechanisms to handle packet loss, this invention can achieve real-time online repair at the receiving end in the face of highly dynamic, high-packet-loss mobile network environments. Even in extreme environments where the packet loss rate reaches a specific threshold, this invention can still maintain a predetermined high data delivery success rate, effectively avoiding transmission interruptions caused by single-path signal attenuation or base station switching, and ensuring the service continuity of the network platform.
[0017] 2. By introducing a dynamic weighted scheduler based on the bandwidth-delay product, this invention achieves refined perception of the quality of heterogeneous links. The system can adjust the distribution ratio of data packets in real time according to the round-trip time, jitter value, and predicted bandwidth of each link. This dynamic load balancing mechanism based on link transmission capacity enables data packets to reach the receiving end in a manner more consistent with link characteristics, significantly reducing the arrival time difference between different paths. Compared with existing technologies, this invention significantly reduces the out-of-order nature of data packets at the receiving end, greatly alleviates the head-end congestion phenomenon of high-speed paths waiting for low-speed paths, and improves the effective throughput of multi-network aggregation.
[0018] 3. This invention utilizes the online repair capabilities of forward error correction coding to reduce round-trip signaling overhead caused by retransmission requests in the network. When network fluctuations occur, the receiving end does not need to wait for the sending end to retransmit data packets, but directly uses redundant information to restore the data. This is crucial for latency-sensitive services such as online video and real-time signaling. Simultaneously, through pre-defined periodic fast path detection and weight updates, the system can quickly avoid high-jitter paths, ensuring that the data stream always runs on the optimal path combination. Test results show that in complex heterogeneous network scenarios, the average end-to-end latency of this invention is significantly reduced compared to traditional single-path transmission.
[0019] 4. This invention overcomes the physical limitations of single-path bandwidth by concurrently utilizing multi-path resources such as wireless LANs and cellular networks. The dynamic weighted scheduling algorithm can flexibly adjust the ratio coefficient according to service requirements, achieving complementary advantages for links with different characteristics. Whether pursuing high-bandwidth download services or low-latency interactive services, this invention can improve network bandwidth utilization through intelligent resource scheduling, providing users with a more stable and faster network platform service experience. Attached Figure Description
[0020] Figure 1 This is a schematic diagram of the overall data transmission optimization method for network platform services; Figure 2 This is a schematic diagram illustrating the core principle of dynamic weighted scheduling based on the link state parameter matrix and the product of bandwidth and delay. Figure 3 It is a logical flowchart of the forward error correction coding process and adaptive redundancy construction of the original data stream to be transmitted; Figure 4 It is a schematic diagram of the multi-level interaction relationship and data flow between the sending end's distribution scheduling and the receiving end's feedback control; Figure 5 This is a flowchart illustrating the logic of out-of-order reassembly buffer pool management and online repair and restoration at the receiving end. Detailed Implementation
[0021] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0022] In the data transmission optimization system of the network platform service, the sending end is equipped with a data fragmentation module, a forward error correction (FEC) coding module, a path detection module, a dynamic weight scheduler, and a feedback control module. The receiving end is equipped with an out-of-order reassembly buffer pool, a forward error correction decoding and repair module, and a receiving status monitoring module.
[0023] This embodiment provides a data transmission optimization method for network platform services, which specifically involves the following steps: The first step, S1, involves forward error correction coding of the original data stream to be transmitted. This step aims to inject redundant information into the data stream at the sending end, enabling data packets to autonomously recover during transmission, thereby reducing reliance on retransmission mechanisms and laying the foundation for subsequent concurrent transmission across heterogeneous links. Its specific implementation includes the following sub-steps.
[0024] Step S101: Perform data fragmentation processing on the raw data stream of the application layer. The data fragmentation module of the sending end first obtains the raw data stream delivered by the application layer of the network platform. This data stream can be a continuous byte stream such as a high-definition video stream or real-time interactive signaling.
[0025] This module is responsible for segmenting these continuous byte streams into multiple raw data blocks of predetermined length, each raw data block serving as an independent forward error correction coding unit. To improve transmission efficiency and avoid unnecessary secondary fragmentation at the physical layer, the length of the raw data block is not fixed but dynamically matched and adjusted based on the maximum transmission unit of the current network layer.
[0026] Specifically, the data fragmentation module obtains the maximum transmission unit (MTU) value of the current network path and subtracts the overhead of each layer of protocol headers required for subsequent encapsulation, including the IP header, UDP header, and possible multipath aggregation headers. The resulting payload length is used as the upper limit of the original data block length, thereby ensuring that each fragmented data block can be precisely adapted to the carrying capacity of the underlying network after being encapsulated into a data packet without triggering IP fragmentation.
[0027] Step S102 involves performing two-level encoding on the original data block using the Raptor Codes algorithm. After obtaining the original data block generated in step S101, the forward error correction coding module encodes it using the Raptor Codes algorithm. This algorithm maps an original data block containing a first preset number of K original symbols to an encoded data packet stream containing a second preset number of N encoded symbols, where N is greater than K. The encoding process is specifically divided into two stages.
[0028] Step S1021, Precoding Stage. The system first processes K original symbols using a high-rate, low-density parity-check (LDPC) encoder. This LDPC encoder uses a predefined parity-check matrix to encode the K original symbols into L intermediate symbols, where L is greater than K, and the specific value of L is determined by the LDPC code rate. In a specific embodiment, if the code rate is set to 0.95, then L is the integer part of K / 0.95, i.e. It should be understood that the bitrate of 0.95 mentioned above is merely illustrative and does not constitute a limitation of the present invention. In practical applications, the bitrate of LDPC codes can be selected and adjusted according to network conditions, service requirements, or other factors, and the specific value of L will vary accordingly, all of which fall within the protection scope of the present invention.
[0029] These intermediate symbols retain all the information of the original data block and provide the basis for the next stage of encoding.
[0030] Step S1022, Robust Soliton Distribution Mapping Stage. The system randomly selects several symbols from the L intermediate symbols generated in step S1021 according to a preset degree distribution function, performs an XOR operation, and thus generates a coded symbol. This degree distribution function adopts the robust soliton distribution defined in the Raptor code standard, which defines the probability of selecting different degrees d. , where d is a positive integer.
[0031] For each coded symbol to be generated, the system first randomly selects a degree d according to the robust soliton distribution, and then uniformly and randomly selects d different intermediate symbols from L intermediate symbols. The system then performs a bit-by-bit XOR operation on these d intermediate symbols to obtain a coded symbol.
[0032] This process is repeated until N encoded symbols are generated, forming the final encoded data packet stream. Each generated encoded data packet embeds key metadata information such as a global sequence number, original data block identifier, encoded symbol index, and timestamp in its header for subsequent transmission and reassembly.
[0033] The encoded symbol index is used by the receiving end to reconstruct the encoded relationship. After receiving the encoded data packet, the receiving end extracts its encoded symbol index and uses this index as the seed for a pseudo-random number generator. Employing the same pseudo-random algorithm as the sending end, it reconstructs the degree 'd' selected by the sending end when generating the encoded symbol, as well as the index sequence of the 'd' intermediate symbols involved in the XOR operation. Based on this, the receiving end can construct the coefficient matrix required for decoding, thereby correctly recovering the original data block during subsequent decoding.
[0034] Step S103: Adaptively adjust coding redundancy based on historical network quality. The forward error correction coding module does not encode with a fixed redundancy, but dynamically adjusts it according to real-time network conditions. The sending end continuously maintains a sliding window for recording historical packet loss rates, which stores the average packet loss rate of each link within the most recent M probe periods.
[0035] When the feedback control module detects the average packet loss rate within the window When the error rate rises and exceeds a preset threshold, such as 5%, the forward error correction coding module will be immediately notified. This module will then automatically increase the proportion of redundant information during the coding process, dynamically adjusting the ratio of the number of encoded symbols N to the original number of symbols K. The specific adjustment rule is as follows: a preset base redundancy level is used. An adjustment factor β is used, along with setting an upper limit for redundancy. Based on the current average packet loss rate Calculate target redundancy And ensure that r does not exceed Then N is set to the smallest integer not less than r×K, i.e. This adaptive mechanism aims to ensure that even in a channel environment with severe packet loss, as long as the receiver receives any number of coded symbols greater than or equal to K, it can completely recover the original K data symbols through the Raptor code decoding algorithm, thereby maintaining the residual packet loss rate of the system at an extremely low preset level, such as below 0.01%.
[0036] In summary, step S1 constitutes the data preprocessing and encoding stage at the sending end. This stage lays a solid foundation for reliable data transmission in heterogeneous networks by performing fine-grained fragmentation of the original data stream, forward error correction coding based on Raptor codes, and introducing a mechanism to adaptively adjust redundancy based on historical packet loss rates. The core purpose of this process is to endow data packets with self-healing capabilities before they are sent, thereby eliminating the excessive reliance on retransmission mechanisms in traditional methods and creating favorable conditions for subsequent dynamic scheduling and real-time recovery at the receiving end.
[0037] For step S2, probe packets are sent through each physical link. This step aims to obtain the transmission quality parameters of each available physical link in real time, providing an accurate data foundation for subsequent dynamic scheduling. Its specific implementation includes the following sub-steps.
[0038] Step S201: Establish multiple parallel physical links. The smart terminal utilizes its integrated network interfaces to establish multiple parallel physical links, including Wi-Fi, 5G cellular network, and Ethernet interfaces, corresponding to WLAN and cellular network paths, respectively. By maintaining multiple links simultaneously, the system possesses the capability for concurrent transmission and detection on multiple paths.
[0039] Step S202: Periodically send probe packets. The path probing module periodically sends probe packets to each physical link established in step S201. The sending period is set to a first preset duration, such as 20 milliseconds. A probe packet is a lightweight control message whose message structure includes the sender sequence number and the sending timestamp for identification and timing.
[0040] In step S203, the receiving end returns an acknowledgment message and calculates the round-trip time. Upon arrival of the probe packet, the receiving end immediately generates and returns an acknowledgment message (ACK). This acknowledgment message carries the timestamp of the original probe packet's transmission and the receiving end's reception time.
[0041] After receiving the acknowledgment message, the sending end calculates the current round-trip time (RTT) value of the path by using the difference between the current time and the sending time recorded in the acknowledgment message.
[0042] Through steps S202 and S203, the system can obtain the real-time round-trip latency of each path, which is the core indicator for measuring link latency characteristics.
[0043] Step S204: Calculate the jitter value of the link. To accurately reflect the transient stability of the link, the system calculates the jitter value based on the round-trip delay of multiple consecutive probe cycles. Specifically, the system records the round-trip delay sequence of M consecutive probe cycles. Then calculate the absolute value of the RTT difference between two adjacent periods. , where i ranges from 2 to M.
[0044] The system applies a first-order lag filtering algorithm to update the current jitter value J, and its calculation formula is as follows: ,in The jitter value from the previous moment. The absolute value of the latest calculated difference between adjacent RTT values is γ, which is a filter factor, typically ranging from 0.1 to 0.3. The initial jitter value can be set to 0 or the ΔRTT obtained from the first measurement.
[0045] Step S205: Calculate the real-time packet loss rate of the link. The path detection module obtains the real-time packet loss rate of each link by statistically analyzing the proportion of probe packets that do not receive acknowledgment messages within a preset observation period. Specifically, a fixed observation period T is set, for example, 1 second. The total number S of probe packets sent to a certain path and the corresponding number A of acknowledgment messages received within that period are recorded. Then, the packet loss rate p of that path is calculated as follows: The packet loss rate reflects the reliability and congestion level of the link.
[0046] Through steps S204 and S205, the system further obtains the link jitter and packet loss rate, which, together with the round-trip delay, constitute a complete dimension for evaluating link quality.
[0047] Step S206: Construct the link state parameter matrix. The system integrates the round-trip time (RTT), jitter value J, and packet loss rate p of each path obtained in steps S203, S204, and S205 to construct a state parameter matrix that reflects the real-time transmission quality of the link.
[0048] Each row of this matrix corresponds to a physical link, and each column stores parameters such as RTT, jitter, and packet loss rate for that link. This matrix serves as the core input to the subsequent dynamic weight scheduler for link capacity assessment and traffic allocation calculation.
[0049] In summary, step S2 constitutes a complete link quality detection and evaluation process. Through periodic detection and real-time parameter calculation, the system can continuously perceive transient quality changes in each heterogeneous link, laying a solid foundation for the next step of dynamically allocating data packets based on link capabilities.
[0050] For step S3, the transmission capacity weight of each link is calculated and the encoded data packet stream is distributed. This step aims to dynamically evaluate the transmission capacity of each path based on the real-time detected link quality parameters, and accordingly allocate the encoded data packets to multiple links for concurrent transmission, so as to make full use of heterogeneous network resources and avoid head-to-head congestion. Its specific implementation includes the following sub-steps.
[0051] Step S301: Extract the link state parameter matrix. The dynamic weight scheduler first obtains the link state parameter matrix constructed in step S206 from the path detection module. This matrix contains the real-time round-trip time (RTT), jitter value J, and packet loss rate p of all currently available physical links. These parameters are the basis for subsequent calculation of link weights.
[0052] Step S302: Calculate the predicted bandwidth for each link. The scheduler needs to know the current available bandwidth of each link, but the bandwidth is not directly measured; instead, it is estimated in real time based on historical transmission rates using a moving average filtering algorithm. Specifically, the system maintains sampled values of the actual transmission rates of each link over a past period and uses an exponentially weighted moving average algorithm to calculate the predicted bandwidth. The calculation formula is: ;in This is the predicted bandwidth for the previous step on this link. The instantaneous transmission rate is measured within the current sampling period, and λ is a smoothing factor, typically ranging from 0.1 to 0.5, which can be dynamically adjusted according to network fluctuations. This algorithm effectively smooths rate fluctuations and reflects the long-term trend of bandwidth.
[0053] Step S303: Determine the proportional coefficient α based on the service type. The proportional coefficient α is introduced in the weight calculation to reflect the preferences of different service types for latency and bandwidth. The system pre-sets a service preference mapping table, constructing a continuous spectrum of preferences from latency-sensitive to bandwidth-priority, where: For real-time voice services, which are extremely latency-sensitive, α is set to 0.3 to penalize high-latency paths to the greatest extent and ensure low-latency transmission of the voice stream. For online video services, which are a type of latency and bandwidth balance, α is set to 0.8 to ensure basic smoothness while taking into account bandwidth utilization. For background download services, which are bandwidth-priority services, α is set to 2.0 to direct traffic toward high-bandwidth paths and maximize throughput.
[0054] The above mapping relationship is merely an illustrative example. In practical applications, the system can predefine more mapping relationships between service types and α values and store them in a configuration table. These relationships can be specified by the upper-layer application when establishing a connection or dynamically adjusted according to service characteristics during transmission. Those skilled in the art can calibrate and optimize the α value through experiments or experience based on service requirements and network environment.
[0055] Step S304: Calculate the transmission capacity weight Wi for each link. This is done after obtaining the predicted bandwidth for each link. Real-time round-trip latency After setting the scaling factor α, the scheduler calculates the transmission capacity weight of the i-th path using the following formula: in Dimensionless, representing the relative transmission capacity of the path; The unit is bits per second, reflecting bandwidth potential; The unit is seconds, reflecting the cost of latency. This formula embodies the core idea of the bandwidth-latency product: high-bandwidth, low-latency paths will receive a higher weight value, thus being allocated more data packets.
[0056] Step S305: The weighted round-robin algorithm is used to distribute the encoded data packet stream. After obtaining the weight Wi of each path, the scheduler uses either the weighted round-robin (WRR) algorithm or the deficit-weighted round-robin (DWRR) algorithm to distribute the encoded data packet stream generated in step S1 to the corresponding physical links.
[0057] Taking WRR as an example, the system maintains a weight counter for each path. During each scheduling, the system selects the path with the largest counter value to send a data packet and subtracts a fixed weight or the total weight of all paths from the counter of that path.
[0058] In practical applications, DWRR (Distance-Wide Redirect) is often used to avoid the shortest packet priority problem. Its core principle is to allocate a deficit counter to each path, deducting a credit value corresponding to the packet length each time a packet is sent, ensuring fairness between long and short flows. In this way, the actual distribution ratio of data packets is proportional to the weight Wi. For example, if the Wi-Fi path weight is 0.7 and the 5G path weight is 0.3, then approximately 70% of the data packets will be sent via Wi-Fi and 30% via 5G in each scheduling cycle.
[0059] Step S306: Execute fast handover logic to address link quality degradation. The system continuously monitors the Received Signal Strength Indicator (RSSI) and jitter value J for each physical link. When the RSSI of a link falls below a preset signal threshold (e.g., -80 dBm), or the jitter value exceeds a preset fluctuation threshold (e.g., 50 milliseconds), the dynamic weight scheduler immediately triggers fast handover.
[0060] At this point, the scheduler quickly reduces the transmission capacity weight Wi of the path to near 0, and redirects the data packets originally planned to be distributed to this path, especially those carrying critical information, such as I-frames in video streams or real-time signaling, to the current best-quality backup path.
[0061] This mechanism effectively avoids transmission interruptions caused by sudden drops in signal strength along a single path, ensuring service continuity.
[0062] In summary, step S3 constitutes the complete link weight calculation and data distribution process. Through refined link quality awareness and dynamic weight scheduling, the system can allocate data packets to the most suitable path in real time, balancing the load and reducing the probability of out-of-order arrival, thus creating favorable conditions for efficient reassembly and online repair at the receiving end.
[0063] The final step, S4, involves reassembling and repairing data packets at the receiving end. Step S4 aims to handle out-of-order data packets arriving concurrently from multiple heterogeneous links. It utilizes the redundancy information from forward error correction coding to directly recover lost data at the receiving end, thereby avoiding retransmission delays and ensuring service continuity and real-time performance. Its specific implementation includes the following sub-steps.
[0064] Step S401: Concurrently receive encoded data packets from different physical links. The receiving end, through its integrated multiple network interfaces, such as Wi-Fi and 5G cellular network interfaces, simultaneously listens for and receives encoded data packets transmitted from the sending end via each physical link.
[0065] Due to differences in latency, jitter, and bandwidth across different links, the order in which these data packets arrive at the receiving end is often inconsistent with the order in which they are sent at the sending end. In some cases, packets sent earlier may arrive later, and packets sent later may arrive earlier.
[0066] Step S402: The received data packets are stored in the out-of-order reassembly buffer pool, and the window size is dynamically set. The receiving end stores each arriving coded data packet in the out-of-order reassembly buffer pool. This buffer pool adopts a sliding window management mechanism, and its window size is not a fixed value, but is dynamically adjusted according to the current transmission quality of each physical link.
[0067] Specifically, the system calculates in real time the difference between the maximum round-trip time (RTTmax) and the minimum round-trip time (RTTmin) among all available links. Then, the capacity of the sliding window is set according to the difference to ensure that the window can accommodate all data packets that may arrive within the maximum delay difference range, thereby avoiding the dropping of out-of-order data packets due to an excessively small window.
[0068] For example, the window size can be set as the product of ΔRTT and the total link bandwidth, or directly as the number of packets expected to arrive within ΔRTT.
[0069] Step S403: Sort the data packets in the buffer pool according to their global sequence numbers and detect any missing packets. Each encoded data packet has a global sequence number (GSN) embedded in its header. This sequence number is assigned by the sender when generating the data packet and uniquely identifies a data packet throughout the entire data stream.
[0070] The receiving end sorts the data packets in the buffer pool in ascending order according to the GSN and continuously checks the continuity of sequence numbers. When a missing GSN is detected, it indicates that the data packet has not yet arrived. The system does not immediately trigger a retransmission, but instead enters a waiting and observation period.
[0071] Step S404: Enter the preset waiting observation period. For detected missing data packets, the system starts a timer to enter the preset waiting observation period. The setting of this waiting period takes into account the maximum latency and jitter of the link. For example, it can be set to 1.5 times the maximum round-trip time (RTTmax) of all current links, or it can be dynamically calculated based on historical jitter values.
[0072] The purpose of this is to give data packets that may arrive late due to long path delays a reasonable waiting time, so as to avoid prematurely triggering unnecessary retransmissions or repair operations.
[0073] In step S405, when the decoding threshold is met, the forward error correction decoding repair module is activated for online repair. If the missing data packet still has not arrived during the waiting observation period in step S404, the system will check the total number of received encoded symbols belonging to the same original data block.
[0074] If the total number reaches or exceeds a preset decoding threshold, it means that even if some data packets are missing, the receiving end can fully recover the original data block using the redundancy information of the Raptor code. The preset decoding threshold is set as follows: K represents the number of original symbols, and ε is the decoding overhead factor, ranging from 0.02 to 0.05, to ensure a decoding success rate of over 99.9%. The forward error correction decoding repair module is activated when the number of received symbols reaches this threshold.
[0075] The decoding and repair process is as follows: First, the module extracts the corresponding coding coefficient vectors from the received coded symbols. These vectors record which intermediate symbols were XORed to generate the coded symbols. Then, based on the Raptor code decoding algorithm, typically using Gaussian elimination or belief propagation, the module combines the received coded symbols and known degree distribution information to solve for the original K data symbols.
[0076] In practical implementation, when the number of received encoded symbols is slightly greater than K, the missing symbols can be directly recovered through XOR operations. The module ultimately reconstructs the missing data packet content in memory and delivers it to the upper-layer application in sequence.
[0077] Step S406: Monitor the buffer pool fill rate and trigger emergency flow control. The receiver continuously monitors the fill rate of the out-of-order reassembly buffer pool, which is the ratio of the currently occupied buffer size to the total buffer capacity. When the fill rate reaches a preset fill threshold, such as 85%, it indicates that the out-of-order packet situation is too severe or the receiver's processing capacity is approaching its bottleneck, which may cause subsequent packets to be dropped due to a full buffer pool.
[0078] At this point, the system triggers an emergency flow control command, sending a notification to the sender via the feedback control module. Upon receiving the notification, the sender will temporarily reduce the weight allocation of high-latency paths or slow down the overall data packet transmission rate to alleviate the processing pressure on the receiver, reduce end-to-end latency, and prevent buffer overflow.
[0079] In summary, step S4 constitutes a complete receiver reassembly and online repair process. Through out-of-order buffering, wait-and-observe, and real-time decoding based on forward error correction, the system can effectively cope with out-of-order and lost data packets in complex network environments, avoiding the additional round-trip delays caused by traditional retransmission mechanisms, and providing continuous, low-latency data delivery services for upper-layer services.
[0080] The system in this embodiment also includes a feedback control module. The receiver periodically feeds back the actual reception success rate, decoding time, and buffer pool status of each path to the transmitter, for example, every 50 milliseconds. The transmitter dynamically adjusts the redundancy of the forward error correction coding based on the deviation between the actual reception success rate and the preset target success rate. For example, when the reception success rate is lower than the target value, the ratio of the number of encoded symbols N to the number of original symbols K is appropriately increased. Simultaneously, based on the decoding time and buffer pool status, the proportional coefficient α in the dynamic weight calculation or the weight update cycle of each path is adjusted to optimize the scheduling strategy and form a closed-loop transmission optimization control system. This method is particularly suitable for mobile terminals in high-mobility scenarios. When a terminal switches between different base stations or access points, the system obtains its link quality parameters by sending probe packets to the target path in advance, and uses a dynamic weight scheduler to gradually forward the data stream to the target path, achieving a smooth transition of the data stream between different physical links and ensuring that the throughput fluctuation of the network platform service is within a preset range.
[0081] Furthermore, the system in this embodiment also possesses a cross-layer congestion control coordination mechanism. The feedback control module periodically transmits the real-time round-trip time (RTT) and packet loss rate (p) of each physical link to the transport layer's congestion control algorithm, which can be BBR or CUBIC. Specifically, the feedback control module calculates a congestion window adjustment coefficient based on the RTT and packet loss rate of each link, for example, a coefficient... Here, α and β are preset weights. These coefficients are then applied to the congestion window (cwnd) and pacing rate of the corresponding path in the transport layer via system calls or socket options. In other words, the actual congestion window used is the algorithm-calculated cwnd multiplied by the coefficient k, and the pacing rate is adjusted accordingly. When the RTT or packet loss rate of a link increases, the coefficient k decreases, thereby proactively reducing the pacing rate of that path to prevent physical link buffer overflow due to excessively fast concurrent transmission across multiple paths. This collaborative mechanism achieves a deep adaptation between application layer requirements and network layer capabilities.
[0082] The values of parameters α and β can be adjusted according to the link characteristics. In a specific embodiment, α is a latency sensitivity factor with a value range of [0.1, 0.5]; β is a packet loss sensitivity factor with a value range of [10, 50]. For cellular links with high bandwidth fluctuations, β can be increased to quickly reduce the congestion window when packet loss occurs; for satellite links with high latency, α can be increased to smooth the transmission rate and avoid drastic window changes due to RTT fluctuations. Those skilled in the art can calibrate and optimize α and β through experiments or experience according to the actual network environment and service requirements.
[0083] This embodiment provides a data transmission optimization system for network platform services, including: The sending end is deployed as follows: The data fragmentation module is responsible for dividing the large blocks of data delivered by the application layer into sub-packets that are adapted to the size of the physical layer transmission unit, and embedding metadata information, including the sending time, link identifier, and global sequence number, in the header of each sub-packet. The FEC encoding module uses the Raptor code algorithm to perform forward error correction encoding on the original data stream to be transmitted, generating an encoded data packet stream containing redundancy check information. The path detection module uses multiple network interfaces integrated in the smart terminal to periodically send detection packets to each physical link, obtain the round-trip delay, jitter value and packet loss rate of each link in real time, and construct a state parameter matrix that reflects the real-time transmission quality of the link. The dynamic weight scheduler extracts each parameter from the state parameter matrix, introduces the bandwidth-delay product as the core reference index, calculates the transmission capacity weight of each link at the current moment, and dynamically distributes the encoded data packet stream to the corresponding physical link for concurrent transmission according to the transmission capacity weight. The feedback control module receives feedback information from the receiver, including the actual reception success rate of each path, decoding time, and buffer pool status. Based on the feedback information, it adjusts the redundancy of the forward error correction coding and the calculation parameters of the dynamic weights.
[0084] The receiving end is deployed as follows: The out-of-order reassembly buffer receives encoded data packets from different physical links, stores the data packets in it according to the global sequence number encapsulated in the packet header and sorts them. The out-of-order reassembly buffer adopts a sliding window management mechanism. The FEC decoding and repair module, when a missing serial number is detected, uses redundant check information in the arrived data packets to perform online repair and restore the missing original data. The receiving status monitoring module periodically collects the actual receiving success rate, decoding time, and out-of-order reassembly buffer status for each path, and sends this information as feedback to the feedback control module at the sending end.
[0085] In the system, the FEC coding module can adaptively adjust the redundancy based on the historical packet loss rate received by the feedback control module; when the RSSI of a physical link is lower than the preset signal threshold or the jitter value exceeds the preset fluctuation threshold, the dynamic weight scheduler executes fast switching logic and reduces the weight of that path; the depth of the out-of-order reassembly buffer at the receiving end is dynamically set according to the difference between the maximum round-trip time and the minimum round-trip time in each path, and triggers an emergency flow control command when the fill rate reaches the preset threshold.
[0086] The foregoing has shown and described the basic principles, main features, and advantages of the present invention. Those skilled in the art should understand that the present invention is not limited to the above embodiments. The embodiments and descriptions in the specification are merely illustrative of the principles of the invention. Various changes and modifications can be made to the invention without departing from its spirit and scope, and all such changes and modifications fall within the scope of the present invention as claimed. The scope of protection of this invention is defined by the appended claims and their equivalents.
[0087] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the present invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the present invention. Therefore, the embodiments should be regarded as exemplary and non-limiting in all respects.
[0088] Furthermore, it should be understood that although this specification describes embodiments, not every embodiment contains only one independent technical solution. This narrative style is merely for clarity. Those skilled in the art should consider the specification as a whole, and the technical solutions in each embodiment can also be appropriately combined to form other embodiments that can be understood by those skilled in the art.
Claims
1. A method for optimizing data transmission in a network platform service, characterized in that, Includes the following steps: Forward error correction coding is performed on the original data stream to be transmitted to generate an encoded data packet stream. The encoding process adopts the Raptor code algorithm, which specifically includes: using a low-density parity-check code (LDPC) encoder to pre-encode the original data block with Raptor code to generate intermediate symbols, and mapping the intermediate symbols to generate encoded symbols based on the robust soliton distribution. Probe packets are sent through multiple parallel physical links, and the real-time round-trip latency and real-time packet loss rate of each physical link are obtained based on the returned acknowledgment messages. The transmission capacity weight of each link is calculated based on the predicted bandwidth, real-time round-trip latency, and preset service preference ratio coefficient of each link. Based on the transmission capacity weight, the encoded data packet stream is distributed to the corresponding physical link for concurrent transmission; At the receiving end, the concurrently received encoded data packets are stored in the out-of-order reassembly buffer pool, and the sliding window size of the out-of-order reassembly buffer pool is dynamically set according to the difference between the maximum round-trip time and the minimum round-trip time in each link. When a missing data packet is detected and the number of received encoded symbols belonging to the same original data block reaches a preset decoding threshold, the missing data packet is repaired online using the redundant information of the forward error correction coding.
2. The data transmission optimization method according to claim 1, characterized in that, The step of performing forward error correction coding on the raw data stream to be transmitted also includes: Adaptively adjust coding redundancy based on historical network quality; Specifically, a sliding window is maintained to record historical packet loss rates. When the average packet loss rate within the window rises and exceeds a preset threshold, the ratio of the number of encoded symbols to the number of original symbols is dynamically increased based on the average packet loss rate to increase the proportion of redundant information.
3. The data transmission optimization method according to claim 1, characterized in that, The steps for obtaining the real-time round-trip latency and real-time packet loss rate for each physical link also include: The jitter value of the link is calculated based on the round-trip delay of multiple consecutive detection cycles; The jitter value is calculated using a first-order lag filtering algorithm, which updates the value based on the absolute value of the round-trip delay difference between adjacent cycles obtained from the latest calculation and the historical jitter value.
4. The data transmission optimization method according to claim 1, characterized in that, The steps for calculating the transmission capacity weight of each link are as follows: According to the formula Calculate the transmission capacity weight of the i-th link. ;in, The predicted bandwidth of the i-th link is estimated in real time based on historical transmission rates using an exponentially weighted moving average algorithm. Let be the real-time round-trip delay of the i-th link; This is the business preference ratio coefficient, which is determined based on the business type.
5. The data transmission optimization method according to claim 1, characterized in that, The steps for dynamically setting the sliding window size of the out-of-order reassembly buffer pool are as follows: Real-time calculation of maximum round-trip latency across all available links With minimum round-trip delay The difference ; Based on the difference Set the capacity of the sliding window to ensure that the window can accommodate the number of packets expected to arrive within the time difference range.
6. The data transmission optimization method according to claim 1, characterized in that, The steps for online repair of missing data packets at the receiving end also include: For any missing data packets detected, a preset waiting and observation period is initiated. If the missing data packet still has not arrived during the waiting observation period, and the total number of received encoded symbols belonging to the same original data block has reached or exceeded the number of original symbols, then the forward error correction decoding repair module will be activated for online repair. The duration of the observation period is set based on the maximum round-trip time among all current links.
7. The data transmission optimization method according to claim 1, characterized in that, The method also includes a quick switching step: Continuously monitor the received signal strength indicator or jitter value of each physical link; When the received signal strength of a link is lower than the preset signal threshold or its jitter exceeds the preset fluctuation threshold, the transmission capacity weight of that link is reduced, and the data packets originally scheduled to be distributed to that link are redirected to the current best quality backup path.
8. The data transmission optimization method according to claim 1, characterized in that, The method also includes emergency flow control steps: The receiving end continuously monitors the fill rate of the out-of-order reassembly buffer pool; When the fill rate reaches the preset fill threshold, an emergency flow control command is triggered, notifying the sender to reduce the weight allocation of high-latency paths or slow down the overall data packet transmission rate.
9. The data transmission optimization method according to claim 1, characterized in that, The method also includes steps for cross-layer congestion control: The real-time round-trip delay and packet loss rate of each physical link are transmitted to the transport layer congestion control algorithm at the sending end through the feedback control module at the receiving end. The congestion window adjustment coefficient is calculated based on the round-trip delay and packet loss rate of each link, and the coefficient is applied to the congestion window and transmission rate of the corresponding path in the transport layer to actively adjust the transmission rate of that path.
10. A data transmission optimization system for a network platform service, characterized in that, Includes the sender and receiver, where: The sending end includes: The forward error correction coding module is used to perform forward error correction coding on the original data stream to be transmitted, generating a coded data packet stream. Specifically, the forward error correction coding module is used to pre-encode the original data block using a low-density parity-check code (LDPC) encoder to generate intermediate symbols, and to map coded symbols from the intermediate symbols based on a robust soliton distribution. The path detection module is used to send probe packets through multiple parallel physical links and obtain the real-time round-trip latency and real-time packet loss rate of each physical link based on the returned acknowledgment messages. The dynamic weight scheduler is used to calculate the transmission capacity weight of each link based on the predicted bandwidth, real-time round-trip latency and preset service preference ratio coefficient of each link, and distribute the encoded data packet stream to the corresponding physical link for concurrent transmission according to the transmission capacity weight. The receiving end includes: The out-of-order reassembly buffer pool is used to store concurrently received encoded data packets, and the sliding window size of the out-of-order reassembly buffer pool is dynamically set according to the difference between the maximum round-trip time and the minimum round-trip time in each link. The forward error correction decoding and repair module is used to repair the missing data packets online by utilizing the redundancy information of the forward error correction encoding when a missing data packet is detected and the number of received encoded symbols belonging to the same original data block reaches a preset decoding threshold.