A data timeout retransmission method, device, equipment, storage medium and product

By predicting packet loss probability and coefficient under network connectivity and formulating data timeout retransmission strategies, the problem of unnecessary retransmission in weak network environments in existing technologies is solved, achieving more efficient data retransmission and more stable audio and video calls.

CN119030671BActive Publication Date: 2026-07-07SHANGHAI LUOTA INFORMATION TECHNOLOGY CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHANGHAI LUOTA INFORMATION TECHNOLOGY CO LTD
Filing Date
2024-08-06
Publication Date
2026-07-07

AI Technical Summary

Technical Problem

Existing data timeout retransmission solutions are prone to triggering unnecessary data retransmissions multiple times in weak network environments, resulting in increased latency in real-time audio and video calls and poor data timeout retransmission performance.

Method used

By determining the forward packet loss prediction probability from the sender to the receiver and the reverse packet loss prediction probability from the receiver to the sender under network connectivity conditions, and combining the packet loss coefficient at the receiver, the predicted probability of data packet loss is determined. Based on these probabilities and coefficients, a data timeout retransmission strategy is formulated to accurately determine whether to execute data timeout retransmission.

Benefits of technology

It effectively reduces unnecessary data retransmissions, improves the efficiency of data timeout retransmissions, reduces the amount of retransmitted data, and enhances the network stability and user experience of real-time audio and video calls.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119030671B_ABST
    Figure CN119030671B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a data timeout retransmission method, device, equipment, storage medium and product. The technical scheme provided by the embodiment of the present application determines the forward packet loss prediction probability from the sending end to the receiving end and the reverse packet loss prediction probability from the receiving end to the sending end in the case of network connection, determines the packet loss coefficient of the receiving end sending the confirmation information, and determines the data packet loss prediction probability according to the packet loss coefficient and the reverse packet loss prediction probability. The data timeout retransmission strategy can be determined according to the forward packet loss prediction probability and the data packet loss prediction probability, and the data timeout retransmission processing is performed based on the data timeout retransmission strategy. The data timeout retransmission processing is accurately determined whether to be performed in combination with the network condition and the forward and backward packet loss prediction condition, unnecessary data retransmission can be effectively reduced, the data retransmission amount is effectively reduced while the function of the timeout active retransmission is realized, the data retransmission efficiency is improved, and the data timeout retransmission effect is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data transmission technology, and in particular to a data timeout retransmission method, apparatus, device, storage medium, and product. Background Technology

[0002] In real-time audio and video calls, to ensure correct data transmission, a data timeout retransmission scheme based on Automatic Repeat Request (ARQ) is typically used. In this scheme, after sending data to the receiver, the sending end starts a timeout timer. If no acknowledgment is received from the receiver within the specified timeout threshold, the sending end assumes the data packet is lost and retransmits it.

[0003] Because real-time audio and video calls are highly sensitive to latency, existing data timeout retransmission schemes determine whether to retransmit data packets directly based on the timeout threshold. In weak network environments, this can easily trigger unnecessary data retransmissions multiple times, leading to increased latency in real-time audio and video calls and poor data timeout retransmission performance. Summary of the Invention

[0004] This application provides a data timeout retransmission method, apparatus, device, storage medium, and product to solve the technical problem in related technologies where directly determining whether to retransmit data packets based on a timeout threshold easily triggers unnecessary data retransmissions multiple times, resulting in poor data timeout retransmission performance. This method can effectively reduce unnecessary data retransmissions and improve the data timeout retransmission effect.

[0005] In a first aspect, embodiments of this application provide a data timeout retransmission method, comprising:

[0006] With network connectivity, determine the forward packet loss prediction probability from the sender to the receiver, and the reverse packet loss prediction probability from the receiver to the sender.

[0007] Determine the packet loss coefficient of the acknowledgment information sent by the receiving end, and determine the packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability;

[0008] A data timeout retransmission strategy is determined based on the forward packet loss prediction probability and the data packet loss prediction probability. The data timeout retransmission strategy includes performing data timeout retransmission processing and not performing data timeout retransmission processing.

[0009] Data timeout retransmission is performed based on the aforementioned data timeout retransmission strategy.

[0010] In a second aspect, embodiments of this application provide a data timeout retransmission device, including a first prediction module, a second prediction module, a strategy determination module, and a retransmission processing module, wherein:

[0011] The first prediction module is configured to determine the forward packet loss prediction probability from the sending end to the receiving end and the reverse packet loss prediction probability from the receiving end to the sending end when the network is connected.

[0012] The second prediction module is configured to determine the packet loss coefficient of the acknowledgment information sent by the receiving end, and to determine the packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability.

[0013] The strategy determination module is configured to determine a data timeout retransmission strategy based on the forward packet loss prediction probability and the data packet loss prediction probability. The data timeout retransmission strategy includes performing data timeout retransmission processing and not performing data timeout retransmission processing.

[0014] The retransmission processing module is configured to perform data timeout retransmission processing based on the data timeout retransmission strategy.

[0015] In a third aspect, embodiments of this application provide a data timeout retransmission device, including: a memory and one or more processors;

[0016] The memory is used to store one or more programs;

[0017] When the one or more programs are executed by the one or more processors, the one or more processors implement the data timeout retransmission method as described in the first aspect.

[0018] In a fourth aspect, embodiments of this application provide a non-volatile storage medium for storing computer-executable instructions, which, when executed by a computer processor, are used to perform the data timeout retransmission method as described in the first aspect.

[0019] In a fifth aspect, embodiments of this application provide a computer program product comprising a computer program stored in a computer-readable storage medium, wherein at least one processor of the device reads from the computer-readable storage medium and executes the computer program, causing the device to perform the data timeout retransmission method as described in the first aspect.

[0020] This application embodiment determines the forward packet loss prediction probability from the sender to the receiver and the reverse packet loss prediction probability from the receiver to the sender when the network is connected. It then determines the packet loss coefficient for the receiver to send acknowledgment information and determines the data packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability. Based on the forward packet loss prediction probability and the data packet loss prediction probability, a data timeout retransmission strategy can be determined, and data timeout retransmission processing can be performed based on the data timeout retransmission strategy. By combining network conditions and forward and reverse packet loss prediction, it can accurately determine whether to perform data timeout retransmission processing, which can effectively reduce unnecessary data retransmissions. While realizing the function of active timeout retransmission, it can effectively reduce the amount of retransmitted data, improve data retransmission efficiency, and improve the data timeout retransmission effect. Attached Figure Description

[0021] Figure 1 This is a flowchart of a data timeout retransmission method provided in an embodiment of this application;

[0022] Figure 2 This is a flowchart of another data timeout retransmission method provided in an embodiment of this application;

[0023] Figure 3 This is a schematic diagram of the structure of a data timeout retransmission device provided in an embodiment of this application;

[0024] Figure 4 This is a schematic diagram of a data timeout retransmission device provided in an embodiment of this application. Detailed Implementation

[0025] To make the objectives, technical solutions, and advantages of this application clearer, specific embodiments of this application will be described in further detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are merely for explaining this application and not for limiting it. It should also be noted that, for ease of description, only the parts relevant to this application are shown in the drawings, not all of them. Before discussing exemplary embodiments in more detail, it should be mentioned that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts describe operations (or steps) as sequential processes, many of these operations can be performed in parallel, concurrently, or simultaneously. Furthermore, the order of the operations can be rearranged. The process can be terminated when its operation is completed, but additional steps not included in the drawings may also be present. The above processes can correspond to methods, functions, procedures, subroutines, subroutines, etc.

[0026] The data timeout retransmission method provided in this application can be applied to data timeout retransmission processing in communication processes (such as video and voice calls). It aims to accurately determine whether to perform data timeout retransmission processing by combining network conditions and forward and backward packet loss prediction. It can effectively reduce unnecessary data retransmission, effectively reduce the amount of retransmitted data while realizing the function of active retransmission after timeout, improve data retransmission efficiency, and improve the effect of data timeout retransmission.

[0027] Existing data timeout retransmission schemes typically rely on a fixed timeout threshold. This means that if the waiting time for the receiver to return an acknowledgment of the data packet exceeds the timeout threshold, the data packet is proactively retransmitted. However, in real-time audio and video calls, which are highly sensitive to latency, this method of directly determining retransmission based on a timeout threshold is prone to triggering unnecessary retransmissions multiple times in weak network environments, leading to increased latency and poor retransmission performance. Therefore, this application provides a data timeout retransmission method to address the technical problem of existing retransmission schemes easily triggering unnecessary retransmissions and resulting in poor retransmission performance.

[0028] Figure 1 A flowchart of a data timeout retransmission method provided in an embodiment of this application is given. The data timeout retransmission method provided in this embodiment of the application can be executed by a data timeout retransmission device, which can be implemented by hardware and / or software and integrated into a data timeout retransmission device.

[0029] The following description uses a data timeout retransmission device as an example to illustrate the data timeout retransmission method. (Reference) Figure 1 The data timeout retransmission methods include:

[0030] S110: Under network connectivity, determine the forward packet loss prediction probability from the sender to the receiver, and the reverse packet loss prediction probability from the receiver to the sender.

[0031] In one embodiment, the sending end provided by this solution can be a data timeout retransmission device, wherein the sending end can be a terminal device providing audio and video data in an audio and video call scenario, and the receiving end can be a terminal device receiving audio and video data. Optionally, a terminal device can act as both a sending end and a receiving end simultaneously. For example, while sending audio and video data to another terminal device, the terminal device can also receive and play audio and video data sent by the other terminal device, thereby realizing two-way audio and video calls.

[0032] Optionally, data transmission between the sender and receiver can be based on an Automatic Repeat Quest (ARQ) strategy. For example, with an ARQ strategy, the sender introduces redundant information when sending data to allow the receiver to detect and correct errors during transmission. If it is confirmed that the data packet was not received or that the received data packet is incorrect, the sender will retransmit the data. Alternatively, data transmission between the sender and receiver can also be based on an ARQ timeout retransmission strategy. After sending data, the sender starts a timer (timeout timer). If no acknowledgment is received from the receiver within a preset timeout threshold, the sender will assume the data packet is lost and retransmit the corresponding data packet to ensure reliable data transmission.

[0033] In this protocol, the receiving end can send acknowledgment information back to the sending end based on the received data packets. This acknowledgment information can include a first acknowledgment (ACK) and a second acknowledgment (NACK), both serving as confirmation of received data during communication. The first acknowledgment indicates that the receiving end has successfully received the data packet sent by the sending end. For example, when the receiving end correctly receives data, it sends a first acknowledgment signal to the sending end to notify that the data transmission was successful and the sending end can continue sending the next data packet. The second acknowledgment indicates that the receiving end has failed to receive the data packet sent by the sending end. For example, when the receiving end detects a lost or erroneous data packet, it sends a second acknowledgment to the sending end to request retransmission of the data to ensure data reliability. In the automatic retransmission protocol, the sending end waits for acknowledgment information from the receiving end to confirm successful data packet transmission. If no acknowledgment information is received within a specified timeout threshold, a timeout retransmission mechanism is triggered, allowing the sending end to retransmit the data packet directly without waiting for acknowledgment information from the receiving end. Optionally, the second acknowledgment signal can also be used to request the retransmission of lost or corrupted data packets to ensure data integrity and correctness. For example, if the second acknowledgment signal is received before the timeout threshold is reached, the corresponding data packet can be retransmitted to the receiving end based on the second acknowledgment signal.

[0034] For example, the current network connection state is determined, and when the network connection state is determined to be network connected, the forward packet loss prediction probability from the sending end to the receiving end (e.g., the packet loss prediction probability of sending audio and video data packets from the sending end to the receiving end) and the reverse packet loss prediction probability from the receiving end to the sending end (e.g., the packet loss prediction probability of sending acknowledgment information from the receiving end to the sending end) are determined.

[0035] In one possible embodiment, the data timeout retransmission method provided by this solution, before determining the forward packet loss prediction probability from the sender to the receiver and the reverse packet loss prediction probability from the receiver to the sender when the network is connected, can also determine the network connection status based on the time interval between the current time and the information reception time of the latest received live information, and a preset time threshold.

[0036] For example, the system determines the reception time of the latest received keepalive information (keeping information periodically sent from the receiver to the sender), and determines the time interval between the current time and the reception time of that information. The network connection status between the sender and receiver can be determined based on this time interval and a preset time threshold. For instance, if the time interval is less than or equal to the time threshold, the network connection status can be confirmed as network connected; if the time interval is greater than the time threshold, the network connection status can be confirmed as network disconnected.

[0037] Optionally, the network connection status can be determined using a survival information reception time series. This survival information reception time series can be used to record the reception time of received survival information and to test network link connectivity. For example, the time interval can be determined based on the difference between the current time and the latest recorded reception time in the survival information reception time series, and the network connection status can be determined based on a comparison between the time interval and a preset time threshold. Optionally, the network connection status can be determined using the following network connection status determination formula:

[0038]

[0039] Where currentTimeMs is the current time, lastKeepaliveRcvdTimeMs is the message reception time, and timeOutThreshold is the time threshold. This scheme accurately determines the network connection status based on the time interval between the current time and the latest message reception time, as well as the time threshold, and accurately determines when to enable data timeout retransmission, thus ensuring correct data transmission.

[0040] In one possible embodiment, the data timeout retransmission method provided by this solution, after determining the network connection status based on the time interval between the current time and the information reception time of the latest received live information, and a preset time threshold, further includes: disabling the automatic retransmission request strategy in the event of network disconnection.

[0041] For example, when the network connection is down, the automatic retransmission request policy can be disabled, and data will not be actively retransmitted to the receiving end during the network downtime. For instance, the available state of ARQ timeout retransmission can be set to disabled, thus disabling the automatic retransmission request policy until the network connection is restored (when the network connection is restored, the available state of ARQ timeout retransmission can be set to available again).

[0042] It's important to explain that when a network connection is lost, the sending end cannot receive confirmation messages from the receiving end. In existing data timeout retransmission schemes, even with a network connection loss, the system continues to determine whether to actively retransmit data based on a preset timeout threshold. In this situation, even if data is retransmitted, it may fail to successfully retransmit the data to the receiving end or receive the corresponding confirmation message, leading to unnecessary data retransmissions. This type of timeout retransmission due to network unavailability is inaccurate, easily resulting in a large number of retransmitted data in the link, causing network congestion and impacting user experience. This solution, by disabling the automatic retransmission request strategy in the event of a network connection loss, effectively reduces unnecessary data timeout retransmissions, reduces network congestion, and ensures a better user experience.

[0043] S120: Determine the packet loss coefficient of the acknowledgment information sent by the receiving end, and determine the packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability.

[0044] For example, the packet loss coefficient of the acknowledgment information (including first acknowledgment information and second acknowledgment information) sent by the receiving end is determined. The greater the decrease in the frequency of receiving acknowledgment information within a set time period, the greater the corresponding packet loss coefficient.

[0045] In one embodiment, after determining packet loss information, the current packet loss prediction probability is determined based on the packet loss coefficient and the reverse packet loss prediction probability. Specifically, the higher the packet loss coefficient and the reverse packet loss prediction probability, the higher the corresponding packet loss prediction probability. If a packet has not received an acknowledgment after a preset timeout threshold has elapsed since its transmission, the greater the likelihood of packet loss.

[0046] S130: Determine the data timeout retransmission strategy based on the forward packet loss prediction probability and the data packet loss prediction probability. The data timeout retransmission strategy includes performing data timeout retransmission processing and not performing data timeout retransmission processing.

[0047] For example, after determining the forward packet loss prediction probability and the packet loss prediction probability, a data timeout retransmission strategy can be determined based on these probabilities. The data timeout retransmission strategy provided in this solution includes performing data timeout retransmission processing and not performing data timeout retransmission processing. Performing data timeout retransmission processing can be understood as determining whether to perform timeout retransmission processing on packets based on a timeout threshold; not performing data timeout retransmission processing can be understood as no longer determining whether to perform timeout retransmission processing on packets based on a timeout threshold.

[0048] In one embodiment, when the forward packet loss prediction probability is low (less than a set threshold), the current situation can be considered as a timeout caused by lost acknowledgment information. If large-scale retransmissions occur, it may result in a large number of non-packet loss retransmissions, leading to wasted bandwidth. In this case, the data timeout retransmission strategy can be determined to be not to perform data timeout retransmission processing. Outside of the above situations, for example, when the forward packet loss prediction probability is high (greater than a set threshold), the data timeout retransmission strategy can be determined to perform data timeout retransmission processing to ensure timely data retransmission.

[0049] S140: Perform data timeout retransmission processing based on the data timeout retransmission strategy.

[0050] For example, when the data timeout retransmission strategy determined above is not to perform data timeout retransmission processing, it can be assumed that if the data packet has not received an acknowledgment information after the transmission time has reached the preset timeout threshold, the timeout is due to the loss of the acknowledgment information. It is possible that the data has been successfully sent to the receiving end, or the acknowledgment information can be successfully received after waiting for a period of time. Therefore, it is no longer necessary to determine whether to retransmit the data packet based on the timeout threshold, thereby reducing unnecessary data retransmission.

[0051] When the data timeout retransmission strategy determined above is to perform data timeout retransmission processing, the decision to retransmit the data packet based on the current time threshold (pre-set time threshold or the latest updated time threshold) can be determined. For example, if the time elapsed between the current time and the transmission time corresponding to the data packet reaches or exceeds the time threshold, the data packet is actively retransmitted to the receiving end to ensure timely and correct transmission of the data packet.

[0052] As described above, by determining the forward packet loss prediction probability from the sender to the receiver and the reverse packet loss prediction probability from the receiver to the sender under network connectivity, the packet loss coefficient for the receiver to send acknowledgment information is determined. Based on the packet loss coefficient and the reverse packet loss prediction probability, the data packet loss prediction probability is determined. A data timeout retransmission strategy can be determined based on the forward packet loss prediction probability and the data packet loss prediction probability. Data timeout retransmission processing is performed based on the data timeout retransmission strategy. Combining network conditions and forward and reverse packet loss predictions, it is possible to accurately determine whether to perform data timeout retransmission processing. This can effectively reduce unnecessary data retransmissions, effectively reduce the amount of retransmitted data while realizing the function of active timeout retransmission, improve data retransmission efficiency, and enhance the effect of data timeout retransmission.

[0053] Based on the above embodiments, Figure 2 A flowchart of another data timeout retransmission method provided in an embodiment of this application is given, which is a specific embodiment of the above-described data timeout retransmission method. (Reference) Figure 2 The data timeout retransmission methods include:

[0054] S210: When the network is connected, determine the forward packet loss prediction probability from the sender to the receiver based on the number of data packets sent and received.

[0055] S220: Determine the reverse packet loss prediction probability from the receiver to the sender based on the maximum received packet sequence number and the number of data packets received.

[0056] For example, when network connectivity is confirmed, the number of data packets sent to the receiving end within a set time period and the number of data packets received by the receiving end are determined. The number of data packets received can be determined based on confirmation information from the receiving end, such as confirmation information received within a set time period. Based on the confirmation information, it is determined whether the receiving end successfully received the corresponding data packet, and the number of data packets received is determined accordingly.

[0057] Optionally, the receiving end can maintain a corresponding data packet reception time series (e.g., media packet reception time series, audio packet reception time series, video packet reception time series, etc., the corresponding time series can be determined according to the content type of the data packet) and an acknowledgment message reception time series for each receiving end. The data packet reception time series can record the time of each data packet sent to the receiving end within a set time range or quantity range, allowing for accurate determination of the number of data packets sent. The acknowledgment message reception time series can record the time of each acknowledgment message received within a set time range or quantity range, allowing for accurate determination of the number of data packets received.

[0058] In one embodiment, the forward packet loss prediction probability for sending data packets from the sender to the receiver is determined based on the number of data packets sent and received as determined above. For example, the forward packet loss prediction probability can be determined based on the ratio of the difference between the number of data packets sent and the number of data packets received to the number of data packets sent. Optionally, the forward packet loss prediction probability can be determined based on the following formula:

[0059]

[0060] Where ForwardLossRate is the forward packet loss prediction probability, sendPacketCnt is the number of data packets sent, and rcvdPacketCnt is the number of data packets received. This scheme improves the accuracy of determining whether to enable data timeout retransmission by accurately determining the forward packet loss prediction probability based on the number of data packets sent and received.

[0061] In one embodiment, when network connectivity is determined, the reverse packet loss prediction probability from the receiver to the sender is determined based on the maximum received packet sequence number and the number of data packets received. The maximum received sequence number can be understood as the largest data packet sequence number received by the sender from the receiver within a set time period (in which case the receiver also sends data packets to the sender (i.e., the data timeout retransmission device in this solution; for example, in an audio / video call scenario, the two terminals in the call act as both the sender and receiver, and both terminals can act as data timeout retransmission devices and execute the data timeout retransmission method). The number of data packets received can be understood as the number of data packets received by the sender from the receiver within the set time period.

[0062] Optionally, the ratio of the difference between the maximum received packet sequence number and the number of received packets to the maximum received packet sequence number can be used as the reverse packet loss prediction probability. For example, the reverse packet loss prediction probability can be determined using the following formula:

[0063]

[0064] Wherein, ReverseLossRate is the reverse packet loss prediction probability, MaxRecvSeq is the maximum received packet sequence number, and rcvdPacketCnt is the number of received packets. This scheme improves the accuracy of determining whether to enable data timeout retransmission by accurately determining the reverse packet loss prediction probability based on the maximum received packet sequence number and the number of received packets.

[0065] S230: Determine the packet loss coefficient for the acknowledgment information sent by the receiving end.

[0066] In one possible embodiment, the data timeout retransmission method provided by this solution may determine the packet loss coefficient of the receiving end sending acknowledgment information by using the ratio of the difference between the previous acknowledgment information packet receiving frequency and the current acknowledgment information packet receiving frequency to the previous acknowledgment information packet receiving frequency, and determine the data packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability.

[0067] Optionally, the packet loss coefficient can be determined based on the following packet loss coefficient determination formula:

[0068]

[0069] Wherein, ACKCoefficient is the packet loss coefficient, LastRcvdFrequency is the frequency of receiving the previous acknowledgment message, and CurrentEcvdFrequency is the frequency of receiving the current acknowledgment message.

[0070] In one embodiment, after determining the packet loss coefficient, the packet loss prediction probability can be determined based on the packet loss coefficient and the reverse packet loss prediction probability. The packet loss prediction probability is positively correlated with the packet loss coefficient and the reverse packet loss prediction probability; that is, the larger the packet loss coefficient and the reverse packet loss prediction probability, the greater the corresponding packet loss prediction probability.

[0071] This solution accurately determines the packet loss coefficient based on the packet reception frequency of the previous acknowledgment and the current acknowledgment, and accurately determines the packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability. This enables accurate prediction of reverse packet loss in the network, improves the accuracy of the judgment on whether to enable data timeout retransmission, and effectively reduces unnecessary data timeout retransmission while ensuring the effectiveness of data timeout retransmission, thereby reducing network congestion.

[0072] In one possible embodiment, the data timeout retransmission method provided by this solution determines the predicted probability of data packet loss based on the packet loss coefficient and the reverse packet loss prediction probability. Alternatively, the predicted probability of data packet loss can be determined by multiplying the sum of the packet loss coefficient and the set parameters with the reverse packet loss prediction probability.

[0073] Optionally, the packet loss prediction probability provided by this scheme can be determined using the following packet loss prediction probability determination formula:

[0074] ACKLossProbability=ReverseLossRate*(k+ACKCoefficient)

[0075] Wherein, ACKLossProbability is the predicted probability of packet loss, ReverseLossRate is the predicted probability of reverse packet loss, ACKCoefficient is the packet loss coefficient, and k is a set parameter, for example, k=1. This scheme accurately determines the predicted probability of packet loss based on the packet loss coefficient, the set parameter, and the predicted probability of reverse packet loss, thereby achieving accurate prediction of reverse packet loss in the network. This improves the accuracy of the judgment on whether to enable data timeout retransmission, effectively reducing unnecessary data timeout retransmissions while ensuring the effectiveness of data timeout retransmission, and reducing network congestion.

[0076] S240: Determine the packet status information based on the forward packet loss prediction probability and the packet loss prediction probability, and determine the data timeout retransmission strategy based on the packet status information.

[0077] The data timeout retransmission strategy includes either performing data timeout retransmission processing or not performing data timeout retransmission processing.

[0078] For example, after determining the forward packet loss prediction probability and the packet loss prediction probability, packet status information is determined based on these probabilities. The packet status information reflects the likelihood of packet loss during transmission, and a data timeout retransmission strategy can be determined based on this information.

[0079] For example, when the probability of packet loss during transmission is high, the data timeout retransmission strategy can be determined to execute data timeout retransmission processing; when the probability of packet loss during transmission is low, the data timeout retransmission strategy can be determined not to execute data timeout retransmission processing. This scheme determines the data packet state information based on the predicted probability of forward packet loss and the predicted probability of data packet loss, and accurately determines the data timeout retransmission strategy based on the data packet state information. Combining forward network packet loss prediction and reverse network packet loss prediction, the scheme accurately determines the data timeout retransmission strategy, effectively reducing the amount of retransmitted data while achieving the function of proactive retransmission upon timeout, improving data retransmission efficiency, and enhancing the effectiveness of data timeout retransmission.

[0080] Optionally, if the predicted probability of forward packet loss is high, and the predicted probability of packet loss in reverse prediction is also high, the probability of timeout packet loss can be considered high, and data timeout retransmission can be performed. If the predicted probability of forward packet loss is low, but the predicted probability of packet loss is high, the timeout can be considered to be due to the loss of acknowledgment information. If large-scale retransmission is performed, it will cause a large number of non-packet loss retransmissions, wasting bandwidth. If the predicted probability of forward packet loss is high, but the predicted probability of packet loss is low, the timeout may be due to increased latency jitter during the transmission of acknowledgment information. In this case, the timeout threshold can be increased to provide a longer data transmission waiting time instead of immediately retransmitting data. The timeout threshold can be adaptively adjusted according to network conditions to improve the adaptability of data timeout retransmission in weak network environments, ensuring the effectiveness of data timeout retransmission while reducing unnecessary data retransmissions.

[0081] In one embodiment, the data timeout retransmission method provided by this solution determines the data packet status information based on the forward packet loss prediction probability and the data packet loss prediction probability. This can be as follows: if the forward packet loss prediction probability is less than a first preset threshold, the data packet status is determined to be a first data packet status; if the data packet loss prediction probability is less than a second preset threshold, the data packet status is determined to be a second data packet status; if the sum of the product of the forward packet loss prediction probability and the first preset coefficient and the product of the data packet loss prediction probability and the second preset coefficient is greater than a third preset threshold, the data packet status is determined to be a third data packet status.

[0082] For example, when the predicted probability of forward packet loss is less than a first preset threshold, the data packet state can be determined as the first data packet state, which can be understood as a state where the probability of packet loss is low. When the predicted probability of packet loss is less than a second preset threshold, the data packet state can be determined as the second data packet state, which can be understood as a state where no acknowledgment information is received due to latency jitter, requiring adjustment of the timeout threshold. When the sum of the product of the predicted probability of forward packet loss and the first preset coefficient and the product of the predicted probability of packet loss and the second preset coefficient is greater than a third preset threshold, the data packet state can be determined as the third data packet state, which can be understood as a state where the probability of packet loss is high. Optionally, the data packet state information provided by this solution can be determined using the following data packet state information determination formula:

[0083]

[0084] In this scheme, PackLossProbability represents the packet status information, threshold1 is the first set threshold, threshold2 is the second set threshold, threshold3 is the third set threshold, ForwardLossRate is the forward packet loss prediction probability, ACKLossProbability is the packet loss prediction probability, a1 is the value corresponding to the first packet status (e.g., a1 = 0), a2 is the value corresponding to the second packet status (e.g., a2 = -1), a3 is the value corresponding to the third packet status (e.g., a3 = 1), α is the first set coefficient, and β is the second set coefficient. This scheme accurately determines the packet status information by comparing the forward packet loss prediction probability, the packet loss prediction probability, and the corresponding set thresholds. This allows for accurate determination of the likelihood of packet loss and more precise determination of the data timeout retransmission strategy. Real-time monitoring of network quality enables timely and effective adjustment of the data timeout retransmission strategy, fully leveraging the advantages of proactive timeout retransmission and effectively reducing retransmission volume, thus ensuring the quality of users' audio and video calls.

[0085] In one embodiment, the data timeout retransmission method provided by this solution determines the data timeout retransmission strategy based on the data packet state information. This can be achieved as follows: if the data packet state is a first data packet state, determine that the data timeout retransmission strategy is not to perform data timeout retransmission processing; if the data packet state is a second data packet state, determine that the data timeout retransmission strategy is to increase the timeout threshold and perform data timeout retransmission processing based on the increased timeout threshold; if the data packet state is a third data packet state, determine that the data timeout retransmission strategy is to perform data timeout retransmission processing based on the current timeout threshold.

[0086] For example, when the data packet state is the first data packet state, the data timeout retransmission strategy can be determined to not perform data timeout retransmission processing to reduce unnecessary data retransmissions. When the data packet state is the second data packet state, the data timeout retransmission strategy can be determined to increase the timeout threshold, and data timeout retransmission processing can be performed based on the increased timeout threshold. Data retransmission will only occur when the unacknowledged timeout period of the data packet reaches the increased timeout threshold. Optionally, the increased timeout threshold can be the sum of the set time range and the current timeout threshold, or the increased timeout threshold can be the product of the set increase coefficient and the current timeout threshold. Optionally, the timeout threshold can be reset when the forward packet loss prediction probability is less than the first set probability and / or the data packet loss prediction probability is less than the second set probability.

[0087] When the data packet status is at the third data packet status, the data timeout retransmission strategy can be determined to be based on the current timeout threshold. That is, data retransmission will only occur if the unacknowledged timeout period reaches the current timeout threshold. This solution accurately determines the data timeout retransmission strategy based on the data packet status. It can automatically select from various timeout retransmission strategies, such as no retransmission, adjusting the timeout threshold, and retransmission, based on real-time network conditions. While fully leveraging the proactive timeout retransmission function, it effectively reduces the amount of retransmitted data, minimizes unnecessary retransmissions, improves retransmission efficiency, reduces call stuttering, and enhances user experience.

[0088] S250: Data timeout retransmission processing is performed based on the data timeout retransmission strategy.

[0089] As described above, by determining the forward packet loss prediction probability from the sender to the receiver and the reverse packet loss prediction probability from the receiver to the sender under network connectivity, the packet loss coefficient for the receiver's acknowledgment information is determined. Based on the packet loss coefficient and the reverse packet loss prediction probability, the data packet loss prediction probability is determined. A data timeout retransmission strategy can be determined based on the forward packet loss prediction probability and the data packet loss prediction probability. Data timeout retransmission processing is then performed based on this strategy. By combining network conditions and forward and reverse packet loss predictions, the decision to execute data timeout retransmission is accurately determined, effectively reducing unnecessary data retransmissions. This achieves the function of proactive timeout retransmission while effectively reducing the amount of retransmitted data, improving data retransmission efficiency, and enhancing the effectiveness of data timeout retransmission. Furthermore, by accurately determining the forward packet loss prediction probability based on the number of data packets sent and received, and accurately determining the reverse packet loss prediction probability based on the maximum received packet sequence number and the number of data packets received, the accuracy of the judgment on whether to enable data timeout retransmission is effectively improved, further enhancing the effectiveness of data timeout retransmission. When network packet loss occurs, the system monitors the network status in real time and collects packet loss data in both the sender-to-receiver and receiver-to-sender directions to predict the probability of packet loss for the current timed-out data packet. Finally, it selects whether to retransmit the data packet based on the packet loss probability. This effectively improves the resilience of audio and video calls against weak networks, enhances network robustness and robustness while maintaining basic user functionality, and improves the user's audio and video call experience.

[0090] Figure 3 This is a schematic diagram of a data timeout retransmission device provided in an embodiment of this application. (Reference) Figure 3 The data timeout retransmission device includes a first prediction module 31, a second prediction module 32, a strategy determination module 33, and a retransmission processing module 34.

[0091] The first prediction module 31 is configured to determine the forward packet loss prediction probability from the sending end to the receiving end and the reverse packet loss prediction probability from the receiving end to the sending end when the network is connected.

[0092] The second prediction module 32 is configured to determine the packet loss coefficient of the acknowledgment information sent by the receiving end, and to determine the packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability.

[0093] The strategy determination module 33 is configured to determine the data timeout retransmission strategy based on the forward packet loss prediction probability and the data packet loss prediction probability. The data timeout retransmission strategy includes performing data timeout retransmission processing and not performing data timeout retransmission processing.

[0094] The retransmission processing module 34 is configured to perform data timeout retransmission processing based on the data timeout retransmission strategy.

[0095] As described above, by determining the forward packet loss prediction probability from the sender to the receiver and the reverse packet loss prediction probability from the receiver to the sender under network connectivity, the packet loss coefficient for the receiver to send acknowledgment information is determined. Based on the packet loss coefficient and the reverse packet loss prediction probability, the data packet loss prediction probability is determined. A data timeout retransmission strategy can be determined based on the forward packet loss prediction probability and the data packet loss prediction probability. Data timeout retransmission processing is performed based on the data timeout retransmission strategy. Combining network conditions and forward and reverse packet loss predictions, it is possible to accurately determine whether to perform data timeout retransmission processing. This can effectively reduce unnecessary data retransmissions, effectively reduce the amount of retransmitted data while realizing the function of active timeout retransmission, improve data retransmission efficiency, and enhance the effect of data timeout retransmission.

[0096] In one possible embodiment, the first prediction module 31 determines the forward packet loss prediction probability from the sender to the receiver, and the reverse packet loss prediction probability from the receiver to the sender, configured as follows:

[0097] The forward packet loss prediction probability from the sender to the receiver is determined based on the number of data packets sent and received.

[0098] The reverse packet loss prediction probability from the receiver to the sender is determined based on the maximum received packet sequence number and the number of data packets received.

[0099] In one possible embodiment, the second prediction module 32 determines the packet loss coefficient of the acknowledgment information sent by the receiving end, and is configured as follows:

[0100] The packet loss coefficient is determined by the ratio of the difference between the previous confirmation packet reception frequency and the current confirmation packet reception frequency to the previous confirmation packet reception frequency.

[0101] In one possible embodiment, the second prediction module 32 determines the packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability, and is configured as follows:

[0102] The packet loss prediction probability is determined by multiplying the sum of the packet loss coefficient and the set parameters with the reverse packet loss prediction probability.

[0103] In one possible embodiment, the policy determination module 33 determines the data timeout retransmission policy based on the forward packet loss prediction probability and the data packet loss prediction probability, configured as follows:

[0104] The packet status information is determined based on the forward packet loss prediction probability and the packet loss prediction probability.

[0105] Determine the data timeout retransmission strategy based on the data packet status information.

[0106] In one possible embodiment, the policy determination module 33 determines the packet status information based on the forward packet loss prediction probability and the packet loss prediction probability, configured as follows:

[0107] If the forward packet loss prediction probability is less than a first set threshold, the packet state is determined to be the first packet state.

[0108] If the predicted probability of packet loss is less than the second set threshold, the packet state is determined to be the second packet state.

[0109] If the sum of the product of the forward packet loss prediction probability and the first set coefficient and the product of the packet loss prediction probability and the second set coefficient is greater than the third set threshold, the packet state is determined to be the third packet state.

[0110] In one possible embodiment, the policy determination module 33 determines the data timeout retransmission policy based on the data packet status information, and is configured as follows:

[0111] When the data packet status is the first data packet status, the data timeout retransmission policy is determined to be not to perform data timeout retransmission processing;

[0112] When the data packet status is the second data packet status, the data timeout retransmission strategy is determined to be to increase the timeout threshold, and data timeout retransmission processing is performed based on the increased timeout threshold;

[0113] When the data packet status is the third data packet status, the data timeout retransmission strategy is determined to be to perform data timeout retransmission processing based on the current timeout threshold.

[0114] In one possible embodiment, the data timeout retransmission device further includes a status determination module, which is configured to determine the network connection status based on the time interval between the current time and the information reception time of the latest received live information, and a preset time threshold.

[0115] In one possible embodiment, the data timeout retransmission device further includes a deactivation processing module configured to deactivate the automatic retransmission request strategy in the event of a network disconnection.

[0116] It is worth noting that in the above-mentioned embodiments of the data timeout retransmission device, the various units and modules included are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be achieved; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the protection scope of the embodiments of this application.

[0117] This application also provides a data timeout retransmission device, which can integrate the data timeout retransmission apparatus provided in this application. Figure 4 This is a schematic diagram of a data timeout retransmission device provided in an embodiment of this application. (Reference) Figure 4 The data timeout retransmission device includes: an input device 43, an output device 44, a memory 42, and one or more processors 41; the memory 42 is used to store one or more programs; when one or more programs are executed by one or more processors 41, the one or more processors 41 implement the data timeout retransmission method provided in the above embodiments. The data timeout retransmission device, equipment, and computer provided above can be used to execute the data timeout retransmission method provided in any of the above embodiments, and have corresponding functions and beneficial effects.

[0118] This application also provides a non-volatile storage medium for storing computer-executable instructions, which, when executed by a computer processor, are used to perform the data timeout retransmission method provided in the above embodiments. Of course, the computer-executable instructions provided in this application are not limited to the data timeout retransmission method provided above; they can also perform related operations in the data timeout retransmission method provided in any embodiment of this application. The data timeout retransmission apparatus, device, and storage medium provided in the above embodiments can execute the data timeout retransmission method provided in any embodiment of this application. Technical details not described in detail in the above embodiments can be found in the data timeout retransmission method provided in any embodiment of this application.

[0119] Based on the above embodiments, this application also provides a computer program product. The technical solution of this application, in essence or in other words, the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. The computer program product is stored in a storage medium and includes several instructions to cause a computer device, mobile terminal, or processor therein to execute all or part of the steps of the data timeout retransmission method provided in the various embodiments of this application.

Claims

1. A data timeout retransmission method, characterized in that, include: With network connectivity, the forward packet loss prediction probability from the sender to the receiver and the reverse packet loss prediction probability from the receiver to the sender are determined. The reverse packet loss prediction probability is the packet loss prediction probability of sending acknowledgment information from the receiver to the sender. The forward packet loss prediction probability is determined based on the ratio of the difference between the number of data packets sent and the number of data packets received to the number of data packets sent. The reverse packet loss prediction probability is determined based on the ratio of the difference between the maximum received packet sequence number and the number of data packets received to the maximum received packet sequence number. The packet loss coefficient is determined by the ratio of the difference between the previous confirmation packet reception frequency and the current confirmation packet reception frequency to the previous confirmation packet reception frequency. The packet loss prediction probability is then determined based on the packet loss coefficient and the reverse packet loss prediction probability. If the predicted probability of packet loss is less than a second set threshold, the packet state is determined to be the second packet state; if the packet state is the second packet state, the data timeout retransmission strategy is determined to be to increase the timeout threshold, and data timeout retransmission processing is performed based on the increased timeout threshold. The data timeout retransmission strategy includes performing data timeout retransmission processing and not performing data timeout retransmission processing. Data timeout retransmission is performed based on the aforementioned data timeout retransmission strategy.

2. The data timeout retransmission method according to claim 1, characterized in that, Determining the forward packet loss prediction probability from the sender to the receiver, and the reverse packet loss prediction probability from the receiver to the sender, includes: The forward packet loss prediction probability from the sender to the receiver is determined based on the number of data packets sent and received. The reverse packet loss prediction probability from the receiving end to the sending end is determined based on the maximum received packet sequence number and the number of data packets received.

3. The data timeout retransmission method according to claim 1, characterized in that, The step of determining the packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability includes: The packet loss prediction probability is determined by multiplying the sum of the packet loss coefficient and the set parameters with the reverse packet loss prediction probability.

4. The data timeout retransmission method according to claim 1, characterized in that, After determining the packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability, the method further includes: If the forward packet loss prediction probability is less than a first set threshold, the data packet state is determined to be the first data packet state; If the sum of the product of the forward packet loss prediction probability and the first set coefficient and the product of the packet loss prediction probability and the second set coefficient is greater than a third set threshold, the packet state is determined to be the third packet state.

5. The data timeout retransmission method according to claim 4, characterized in that, After determining the packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability, the method further includes: When the data packet status is the first data packet status, the data timeout retransmission policy is determined to be not to perform data timeout retransmission processing; When the data packet status is the third data packet status, the data timeout retransmission strategy is determined to be to perform data timeout retransmission processing based on the current timeout threshold.

6. The data timeout retransmission method according to claim 1, characterized in that, Before determining the forward packet loss prediction probability from the sender to the receiver and the reverse packet loss prediction probability from the receiver to the sender, under the condition of network connectivity, the method further includes: The network connection status is determined based on the time interval between the current time and the time of receiving the latest received survival information, as well as a preset time threshold.

7. The data timeout retransmission method according to claim 6, characterized in that, After determining the network connection status based on the time interval between the current time and the information reception time of the latest received survival information, and a preset time threshold, the method further includes: In the event of a network outage, disable the automatic retransmission request policy.

8. A data timeout retransmission device, characterized in that, It includes a first prediction module, a second prediction module, a strategy determination module, and a retransmission processing module, wherein: The first prediction module is configured to determine, under network connectivity, the forward packet loss prediction probability from the sending end to the receiving end, and the reverse packet loss prediction probability from the receiving end to the sending end; the reverse packet loss prediction probability is the packet loss prediction probability of sending acknowledgment information from the receiving end to the sending end; wherein, the forward packet loss prediction probability is determined based on the ratio of the difference between the number of data packets sent and the number of data packets received to the number of data packets sent, and the reverse packet loss prediction probability is determined based on the ratio of the difference between the maximum received packet sequence number and the number of data packets received to the maximum received packet sequence number; The second prediction module is configured to determine a packet loss coefficient based on the ratio of the difference between the previous confirmation information packet reception frequency and the current confirmation information packet reception frequency to the previous confirmation information packet reception frequency, and to determine a data packet loss prediction probability based on the packet loss coefficient and the reverse packet loss prediction probability. The strategy determination module is configured to determine the data packet state as the second data packet state when the predicted probability of data packet loss is less than the second set threshold; and to determine the data timeout retransmission strategy as increasing the timeout threshold when the data packet state is the second data packet state, and to perform data timeout retransmission processing based on the increased timeout threshold. The data timeout retransmission strategy includes performing data timeout retransmission processing and not performing data timeout retransmission processing. The retransmission processing module is configured to perform data timeout retransmission processing based on the data timeout retransmission strategy.

9. A data timeout retransmission device, characterized in that, include: Memory and one or more processors; The memory is used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the data timeout retransmission method as described in any one of claims 1-7.

10. A non-volatile storage medium for storing computer-executable instructions, characterized in that, The computer-executable instructions, when executed by a computer processor, are used to perform the data timeout retransmission method as described in any one of claims 1-7.

11. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the data timeout retransmission method according to any one of claims 1-7.