Data sending method and device, computer equipment, storage medium and program product

By acquiring signal strength and negotiation rate in wireless communication networks, the congestion window value is dynamically adjusted to solve the problem that TCP cannot detect congestion in time. This reduces the transmission latency and packet loss rate of wireless communication networks, and effectively reduces playback stuttering, especially when sending video over WiFi networks.

CN121193685APending Publication Date: 2025-12-23ZHEJIANG DAHUA TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511479393.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-10-15
Publication Date
2025-12-23

AI Technical Summary

Technical Problem

In wireless communication networks, existing TCP congestion control methods cannot detect network congestion in a timely manner, leading to increased network transmission latency and a sudden increase in packet loss rate.

Method used

By acquiring wireless signal strength and wireless negotiation rate, the interference status and congestion window value of the wireless communication network are determined. Combined with the congestion status of the second communication network, the target window value is dynamically adjusted to send data packets.

Benefits of technology

It enables timely detection of congestion in wireless communication networks, reducing network transmission latency and packet loss rate, and effectively reducing playback stuttering, especially when sending video over WiFi networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121193685A_ABST
    Figure CN121193685A_ABST
Patent Text Reader

Abstract

The invention relates to a data sending method and device, computer equipment, a storage medium and a program product, and particularly relates to the field of communication. The method is applied to a data transmitting end, and comprises the following steps: acquiring wireless signal strength of a first communication network and a wireless negotiation rate with wireless access equipment; determining an interference state of the first communication network and a first window value of a congestion window in the first communication network according to the wireless signal strength and the wireless negotiation rate; acquiring a congestion state of a second communication network and a second window value of a congestion window in the second communication network; determining a target window value according to the interference state, the congestion state, the first window value and the second window value; and sending the target data packet to a data receiving end according to the target window value. By adopting the method, the congestion condition of the wireless communication network can be sensed according to the wireless signal strength and the wireless negotiation rate, and the network congestion problem caused by the fact that the congestion condition of the wireless communication network is not sensed in time is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of communication, and in particular to a data sending method and device, a computer device, a storage medium and a program product. BACKGROUND

[0002] In the technical field of data transmission using a network, there is usually a situation of network congestion. In order to avoid too much data being injected into the network, causing network congestion, an increase in the Round-Trip Time (RTT) of data packets, and other problems, a congestion control method can be used to regulate the congestion window, so as to improve the bandwidth utilization, send as much data as possible, and thus reduce the occurrence of network congestion and other problems.

[0003] The algorithm for avoiding network congestion based on the Transmission Control Protocol (TCP) is a main congestion control method in the field of communication. However, in the above-mentioned congestion control method, the perception of the network congestion situation depends on the feedback based on the transmission protocol, and therefore in the scenario of data transmission using a wireless communication network, the congestion situation in the wireless communication network cannot be perceived in a timely manner, resulting in an increase in network transmission delay, a sudden increase in packet loss rate, and other situations. SUMMARY

[0004] Therefore, it is necessary to provide a data sending method, device, computer device, storage medium and program product capable of perceiving the congestion situation of a wireless communication network in a timely manner, so as to reduce the increase in network transmission delay, the sudden increase in packet loss rate, and other situations.

[0005] In a first aspect, the present application provides a data sending method applied to a data sending end; the data sending end and a data receiving end are communicatively connected through a wireless access device; a first communication network is deployed between the data sending end and the wireless access device; a second communication network is deployed between the data sending end and the data receiving end; the first communication network includes a wireless communication network; and the data sending method includes the following steps:

[0006] obtaining a wireless signal strength of the first communication network and a wireless negotiation rate between the data sending end and the wireless access device;

[0007] determining an interference state of the first communication network and a first window value of a congestion window in the first communication network according to the wireless signal strength and the wireless negotiation rate;

[0008] obtaining a congestion state of the second communication network and a second window value of a congestion window in the second communication network;

[0009] determining a target window value according to the interference state, the congestion state, the first window value and the second window value;

[0010] According to the target window value, a target data packet is sent to a data receiving end.

[0011] In one of the embodiments, the interference state of the first communication network is determined according to the wireless signal strength and the wireless negotiation rate, including: in the case that the wireless signal strength belongs to a preset signal strength range, a transmission rate range to which the wireless negotiation rate belongs is determined according to at least one wireless negotiation rate threshold; and the interference state corresponding to the transmission rate range is determined according to the transmission rate range and a corresponding relationship between each preset transmission rate range and the interference state.

[0012] In one of the embodiments, the first window value of the congestion window in the first communication network is determined, including: the transmission scheduling time slot of the first communication network is determined according to the interference state; and the first window value of the congestion window in the first communication network is determined according to the wireless negotiation rate, the transmission scheduling time slot and the maximum segment length corresponding to the target data packet.

[0013] In one of the embodiments, the transmission scheduling time slot of the first communication network is determined according to the interference state, including: the transmission scheduling time slot corresponding to the interference state is determined according to the interference state and a corresponding relationship between each preset interference state and the transmission scheduling time slot.

[0014] In one of the embodiments, the target window value is determined according to the interference state, the congestion state, the first window value and the second window value, including: in the case that the congestion state and the interference state satisfy a first preset condition, the target window value is determined according to the size relationship between the first window value and the second window value; and the first preset condition includes at least one of the following: the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a no interference state; the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a strong interference state; the congestion state indicates that the second communication network is in a congestion avoidance phase, and the interference state indicates that the first communication network is in a strong interference state; and the congestion state indicates that the second communication network is in a fast recovery phase, and the interference state indicates that the first communication network is in a no interference state.

[0015] In one of the embodiments, the target window value is determined according to the interference state, the congestion state, the first window value and the second window value, comprising: in the case that the congestion state and the interference state satisfy a second preset condition, the target window value is determined according to the sum of the first window value and the second window value; wherein the second preset condition comprises at least one of the following: the congestion state indicates that the second communication network is in a congestion avoidance stage, and the interference state indicates that the first communication network is in a non-interference state; the congestion state indicates that the second communication network is in a congestion avoidance stage, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in a fast recovery stage, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in a fast recovery stage, and the interference state indicates that the first communication network is in a strong interference state; the congestion state indicates that the second communication network is in a fast retransmission stage, and the interference state indicates that the first communication network is in a non-interference state; the congestion state indicates that the second communication network is in a fast retransmission stage, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in a fast retransmission stage, and the interference state indicates that the first communication network is in a strong interference state.

[0016] In one of the embodiments, the congestion state of the second communication network and the second window value of the congestion window in the second communication network are obtained, comprising: in the case that the target data packet is a non-first service data packet in the process of the data sending end sending data to the data receiving end for the first time, the congestion state of the second communication network and the second window value of the congestion window in the second communication network are obtained; correspondingly, in the case that the target data packet is a first service data packet in the process of the data sending end sending data to the data receiving end for the first time, after the interference state of the first communication network is determined according to the wireless signal strength and the wireless negotiation rate, the data sending method further comprises: obtaining an initial window value of the congestion window in the second communication network; determining the target window value according to the initial window value and the interference state; and sending the target data packet to the data receiving end according to the target window value.

[0017] In one of the embodiments, the target window value is determined according to the initial window value and the interference state, comprising: determining a target window adjustment parameter corresponding to the interference state according to the interference state and the window adjustment parameter corresponding to each preset interference state; and adjusting the initial window value by using the target window adjustment parameter to obtain the target window value.

[0018] In a second aspect, the application further provides a data sending device configured in a data sending end; the data sending end and a data receiving end are connected in communication through a wireless access device; a first communication network is deployed between the data sending end and the wireless access device; a second communication network is deployed between the data sending end and the data receiving end; the first communication network comprises a wireless communication network; and the data sending device comprises:

[0019] The first obtaining module is configured to obtain a wireless signal strength of the first communication network and a wireless negotiation rate between the wireless access device and the data sending end;

[0020] The first determining module is configured to determine an interference state of the first communication network and a first window value of a congestion window in the first communication network according to the wireless signal strength and the wireless negotiation rate;

[0021] The second obtaining module is configured to obtain a congestion state of the second communication network and a second window value of a congestion window in the second communication network;

[0022] The second determining module is configured to determine a target window value according to the interference state, the congestion state, the first window value and the second window value;

[0023] The first sending module is configured to send a target data packet to the data receiving end according to the target window value.

[0024] In a third aspect, the present application further provides a computer device configured in the data sending end; the data sending end and the data receiving end are connected in communication through a wireless access device; the data sending end and the wireless access device are deployed with a first communication network; the data sending end and the data receiving end are deployed with a second communication network; the first communication network comprises a wireless communication network; the computer device comprises a memory and a processor, the memory stores a computer program, and the processor implements the following steps when executing the computer program:

[0025] The first obtaining module is configured to obtain a wireless signal strength of the first communication network and a wireless negotiation rate between the wireless access device and the data sending end;

[0026] The first determining module is configured to determine an interference state of the first communication network and a first window value of a congestion window in the first communication network according to the wireless signal strength and the wireless negotiation rate;

[0027] The second obtaining module is configured to obtain a congestion state of the second communication network and a second window value of a congestion window in the second communication network;

[0028] The second determining module is configured to determine a target window value according to the interference state, the congestion state, the first window value and the second window value;

[0029] The first sending module is configured to send a target data packet to the data receiving end according to the target window value.

[0030] In a fourth aspect, the present application provides a computer readable storage medium configured in a data sending end; the data sending end is in communication connection with a data receiving end through a wireless access device; a first communication network is deployed between the data sending end and the wireless access device; a second communication network is deployed between the data sending end and the data receiving end; the first communication network comprises a wireless communication network; the computer readable storage medium stores a computer program, and the computer program is executed by a processor to realize the following steps:

[0031] obtaining a wireless signal strength of the first communication network and a wireless negotiation rate between the data sending end and the wireless access device;

[0032] determining an interference state of the first communication network and a first window value of a congestion window in the first communication network according to the wireless signal strength and the wireless negotiation rate;

[0033] obtaining a congestion state of the second communication network and a second window value of the congestion window in the second communication network;

[0034] determining a target window value according to the interference state, the congestion state, the first window value and the second window value;

[0035] sending a target data packet to the data receiving end according to the target window value.

[0036] In a fifth aspect, the present application provides a computer program product configured in a data sending end; the data sending end is in communication connection with a data receiving end through a wireless access device; a first communication network is deployed between the data sending end and the wireless access device; a second communication network is deployed between the data sending end and the data receiving end; the first communication network comprises a wireless communication network; the computer program product comprises a computer program, and the computer program is executed by a processor to realize the following steps:

[0037] obtaining a wireless signal strength of the first communication network and a wireless negotiation rate between the data sending end and the wireless access device;

[0038] determining an interference state of the first communication network and a first window value of a congestion window in the first communication network according to the wireless signal strength and the wireless negotiation rate;

[0039] obtaining a congestion state of the second communication network and a second window value of the congestion window in the second communication network;

[0040] determining a target window value according to the interference state, the congestion state, the first window value and the second window value;

[0041] sending a target data packet to the data receiving end according to the target window value.

[0042] The data sending method, device, computer device, storage medium and program product can determine the interference state of the first communication network and the first window value of the congestion window in the first communication network according to the wireless signal strength of the first communication network and the wireless negotiation rate between the data sending end and the wireless access device, can perceive the congestion state of the wireless communication network directly according to the wireless signal strength and the wireless negotiation rate in the wireless communication network without relying on the feedback of the transmission protocol such as TCP, and can reduce the increase of network transmission delay and the sudden increase of packet loss rate caused by the inaccuracy of the congestion state perception of the wireless communication network to a certain extent. In addition, the interference state and the first window value corresponding to the first communication network are combined with the congestion state and the second window value of the second communication network to obtain the congestion window value used for sending data finally, which can avoid the inaccuracy of the congestion state caused by one-sided perception and the inaccuracy of the congestion window regulation, and can further reduce the network transmission delay and the packet loss rate, especially in the scene of sending video by using the wireless fidelity (WiFi) network, which can effectively reduce the video playing lag. BRIEF DESCRIPTION OF DRAWINGS

[0043] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related art, the drawings needed to be used in the description of the embodiments of the present application or the related art will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other related drawings can be obtained by those skilled in the art without creative labor.

[0044] Figure 1 The application environment diagram of the data sending method in an embodiment;

[0045] Figure 2 The flowchart of the data sending method in an embodiment;

[0046] Figure 3 The flowchart of the determination step of the interference state of the first communication network in an embodiment;

[0047] Figure 4 The flowchart of the determination step of the first window value in an embodiment;

[0048] Figure 5 The flowchart of the determination step of the target window value in an embodiment;

[0049] Figure 6 The flowchart of the determination step of the target window value in another embodiment;

[0050] Figure 7a flowchart of a data sending method in another embodiment;

[0051] Figure 8 a flowchart of a data sending method in another embodiment;

[0052] Figure 9 a flowchart of a data sending method in another embodiment;

[0053] Figure 10 a flowchart of a data sending method in another embodiment;

[0054] Figure 11 a flowchart of a data sending method in another embodiment;

[0055] Figure 12 a flowchart of a data sending method in another embodiment;

[0056] Figure 13 a flowchart of a data sending method in another embodiment; DETAILED DESCRIPTION

[0057] In order to make the purposes, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and should not be used to limit the present application.

[0058] The data sending method provided by the embodiments of the present application can be applied to a scenario in which a wireless terminal sends data to a user terminal. Exemplarily, the wireless terminal can include a wireless Internet Protocol Camera (IPC) and the like. The user terminal can include, but is not limited to, a personal computer, a notebook computer, a smart phone, a tablet computer, an Internet of Things device and a portable wearable device, the Internet of Things device can be a smart speaker, a smart television, a smart air conditioner, a smart vehicle-mounted device, a projection device and the like. The portable wearable device can be a smart watch, a smart bracelet, a head-mounted device and the like. The head-mounted device can be a Virtual Reality (VR) device, an Augmented Reality (AR) device, smart glasses and the like.

[0059] Exemplarily, in the data sending method, the wireless terminal can send data to the user terminal in a wireless manner. Figure 1In the application scenario shown, the wireless network camera and the user terminal can be deployed with a wireless access device. The wireless network camera can be connected to the wireless access device through a WiFi network. The wireless access device can be connected to a public cloud platform. The user terminal can access the public cloud platform through a WiFi network or a wired network. The wireless network camera can send real-time video, video recording and other data in the camera range to the public cloud platform through the wireless access device. The user terminal can view the real-time video, video recording and other data through the public cloud platform.

[0060] In one embodiment, as shown, a data sending method is provided. This embodiment illustrates the method applied to a data sending end. In this embodiment, the data sending end and the data receiving end are connected through a wireless access device; the data sending end and the wireless access device are deployed with a first communication network; the data sending end and the data receiving end are deployed with a second communication network; and the first communication network includes a wireless communication network. Figure 2

[0061] Here, it can be understood that the second communication network can include the first communication network and a third communication network between the wireless access device and the data receiving end. Optionally, the third communication network can include a communication network between the wireless access device and the public cloud platform and a communication network between the public cloud platform and the data receiving end. Optionally, the communication network between the public cloud platform and the data receiving end can include a WiFi network or a wired network. Optionally, the wireless communication network can include a WiFi network.

[0062] In this embodiment, the method includes the following steps:

[0063] S210, obtaining a wireless signal strength of the first communication network and a wireless negotiation rate between the data sending end and the wireless access device.

[0064] Here, the wireless signal strength can be understood as a received signal strength indication (RSSI) when the data sending end and the wireless access device communicate wirelessly through the first communication network.

[0065] Here, the wireless negotiation rate can be understood as a transmission rate determined by negotiation between the data sending end and the wireless access device, which can be represented as RATE.

[0066] In an optional embodiment, in the case where the first communication network is a WiFi network, the data sending end can obtain the wireless signal strength and the wireless negotiation rate through a WiFi driver device.

[0067] ​S220, determining an interference state of the first communication network and a first window value of a congestion window in the first communication network according to the wireless signal strength and the wireless negotiation rate.

[0068] Optionally, the interference state can include at least one of a strong interference state, a weak interference state and a no interference state.

[0069] The congestion window can be understood as a congestion control window (CWND) maintained by a data sending end, indicating an amount of data that can be sent by the data sending end before receiving an acknowledgment packet (ACK) fed back by a data receiving end. The congestion window is in units of message segments. The message segment can be understood as a maximum segment size (MSS), i.e., a maximum segment length for dividing data packets. For example, when the MSS is set to 1300 bytes, a data packet with a maximum of 1300 bytes can be obtained. After dividing data, if the remaining data is less than 1300 bytes, the remaining data can be taken as a data packet.

[0070] In an optional embodiment, the interference state of the first communication network can be determined according to a correspondence between a signal strength range, a transmission rate range and each preset interference state, a signal strength range to which the wireless signal strength belongs and a transmission rate range to which the wireless negotiation rate belongs.

[0071] In an optional embodiment, the first window value of the congestion window in the first communication network can be determined according to the interference state of the first communication network, the wireless negotiation rate and a size of the target data packet.

[0072] S230, obtaining a congestion state of the second communication network and a second window value of a congestion window in the second communication network.

[0073] The congestion state can be understood as a state in which data traffic in the second communication network exceeds processing capacity, resulting in a decline in transmission performance. Optionally, the congestion state can include at least one of a slow start (Slow Start) phase, a congestion avoidance (Conggestion Avoidance) phase, a fast retransmit (Fast Retransmit) phase and a fast recovery (Fast Recovery) phase.

[0074] The slow start phase can be understood as a slow growth phase of data transmission speed after starting the network connection. Specifically, when establishing a network connection, the data sending end can initialize the value of the congestion window CWND as m. After that, the data sending end doubles the value of CWND every RTT (Round Trip Time) after receiving an ACK data packet. Until the value of CWND reaches the slow start threshold ssthresh. Then it can enter the congestion avoidance phase. In the case that the value of CWND has not reached the slow start threshold ssthresh and packet loss occurs, it can enter the fast retransmission phase and the like. In the case of good network conditions, the RTT time can be very short, and at this time the slow start phase can quickly reach a high data transmission rate. In addition, when entering the slow start phase, the slow start threshold ssthresh can be adjusted according to the CWND corresponding to the last packet loss. In some embodiments, the slow start threshold ssthresh can be adjusted to 1 / 2 of the CWND corresponding to the last packet loss.

[0075] The congestion avoidance phase can be understood as a linear increase phase of CWND after the value of CWND reaches the slow start threshold ssthresh. In the congestion avoidance phase, the data sending end increases the value of CWND by 1 for each received ACK data packet, and increases the value of CWND by 1 for each RTT.

[0076] The fast retransmission phase can be understood as a fast retransmission phase within a preset time after the data sending end confirms packet loss. The data sending end can confirm packet loss in at least one of the following ways: the data sending end feeds back packet loss information according to the data receiving packet, and does not receive an ACK data packet within a preset time period after sending the data packet.

[0077] The fast recovery phase can be understood as a fast recovery phase after the fast retransmission phase. In the fast recovery phase, the value of CWND can be set to 1 / 2 of the CWND at the last congestion, and then the value of CWND can be linearly increased for recovery.

[0078] In an optional embodiment, after obtaining the congestion state of the second communication network, the second window value of the congestion window can be determined according to the congestion state of the second communication network.

[0079] S240, determining a target window value according to the interference state, the congestion state, the first window value and the second window value.

[0080] In an optional embodiment, a target mode for obtaining the target window value can be determined according to preset conditions met by the interference state and the congestion state. Then, the target window value can be obtained according to the target mode, the first window value and the second window value.

[0081] The preset conditions can be understood as a combination of at least one of a first condition based on the interference state and a second condition based on the congestion state.

[0082] The target mode for obtaining the target window value can include at least one of obtaining the target window value according to a size relationship between the first window value and the second window value, and obtaining the target window value according to a sum value of the first window value and the second window value.

[0083] S250, sending the target data packet to a data receiving end according to the target window value.

[0084] The target data packet can be understood as a service data packet. For example, the target data packet can be a video data packet.

[0085] In an optional embodiment, in a case where the target data packet is a video data packet, the target data packet can be obtained according to the following mode: obtaining video data corresponding to a current video frame; splitting the video data according to a preset MSS to obtain at least one video data packet with a size of MSS; and in a case where remaining video data after obtaining the at least one video data packet is less than MSS, taking the remaining video data as a video data packet.

[0086] In the above data sending method, the interference state of the first communication network and the first window value of the congestion window in the first communication network are determined according to the wireless signal strength of the first communication network and the wireless negotiation rate between the data sending end and the wireless access device, so that the congestion condition of the wireless communication network can be perceived directly according to the wireless signal strength and the wireless negotiation rate in the wireless communication network without relying on the feedback of a transmission protocol such as TCP, thereby reducing the increase of network transmission delay and the sudden increase of packet loss rate caused by the inaccuracy of the perceived congestion condition of the wireless communication network to a certain extent. In addition, the interference state and the first window value corresponding to the first communication network are combined with the congestion state and the second window value of the second communication network to obtain the congestion window value for sending data, so that the inaccuracy of the congestion condition perceived on one side can be avoided to a certain extent, and the precision of the congestion window control can be improved, thereby further reducing the network transmission delay and the packet loss rate, and effectively reducing the video playing lag in the scenario of sending video by using a WiFi network.

[0087] On the basis of the technical solutions of the above embodiments, the application further provides another optional embodiment, in which the interference state determination step of the first communication network S220 is refined.

[0088] Referring to Figure 3 The determination step of the interference state of the first communication network shown includes:

[0089] S310, in the case where the wireless signal strength belongs to the preset signal strength range, determining the transmission rate range to which the wireless negotiation rate belongs according to at least one wireless negotiation rate threshold.

[0090] The preset signal strength range can include at least one. For example, the preset signal strength range can include at least one of the following: RSSI is less than -60dBm and greater than or equal to - (60+3) dBm, RSSI is less than - (60+3*2) dBm and greater than or equal to - (60+3) dBm, and RSSI is less than - (60+3*N) dBm. Wherein, N is a positive integer greater than or equal to 1. It should be understood here that the above each preset signal strength range is obtained by dividing the signal strength range with RSSI less than -60dBm by a signal strength interval of 3dBm. In some embodiments, each preset signal strength range can also be obtained by dividing other signal strength intervals (such as 2dBm).

[0091] The wireless negotiation rate threshold and the preset signal strength range to which the wireless signal strength belongs can be corresponding. For example, in the case where the preset signal strength range to which the wireless signal strength belongs is: RSSI is less than -60dBm and greater than or equal to - (60+3) dBm, the wireless negotiation rate threshold can include γ0 and δ0, wherein γ0 is less than δ0. In the case where the preset signal strength range to which the wireless signal strength belongs is: RSSI is less than - (60+3*2) dBm and greater than or equal to - (60+3) dBm, the wireless negotiation rate threshold can include γ1 and δ1, wherein γ1 is less than δ1. In the case where the preset signal strength range to which the wireless signal strength belongs is: RSSI is less than - (60+3*N) dBm, the wireless negotiation rate threshold can include γN and δN, wherein γN is less than δN. n and δ n , wherein γ n is less than δ n . Wherein γ0 is less than γ1, γ1 is less than γ n ; δ0 is less than δ1, δ1 is less than δ n .

[0092] S320, according to the transmission rate range, and the corresponding relationship between each preset transmission rate range and the interference state, determining the interference state corresponding to the transmission rate range.

[0093] In an alternative embodiment, the interference state corresponding to the transmission rate range can be found from the correspondence between each preset transmission rate range and the interference state according to the transmission rate range.

[0094] In an alternative embodiment, on the basis of the above example, the correspondence between each preset transmission rate range and the interference state can be expressed as:

[0095]

[0096] In this embodiment, by determining that the wireless signal strength belongs to the preset signal strength range, the interference state of the first communication network can be quickly determined according to the correspondence between the transmission rate range to which the wireless negotiation rate belongs and each preset interference state.

[0097] On the basis of the technical solutions of the above embodiments, the present application further provides another alternative embodiment, in which the first window value determination step of S220 is refined.

[0098] Referring to Figure 4 the determination step of the first window value includes:

[0099] S410, determining the transmission scheduling time slot of the first communication network according to the interference state.

[0100] The transmission scheduling time slot can be understood as a scheduling delay, which can be expressed as timeslot. The transmission scheduling time slots corresponding to different interference states can be different.

[0101] In an alternative embodiment, the transmission scheduling time slot corresponding to the interference state can be determined according to the interference state and the correspondence between each preset interference state and the transmission scheduling time slot.

[0102] In an alternative embodiment, the correspondence between each preset interference state and the transmission scheduling time slot can be expressed as:

[0103]

[0104] wherein, represents the transmission scheduling time slot under the strong interference state; represents the transmission scheduling time slot under the weak interference state; represents the transmission scheduling time slot under the no interference state. , and may be preset values. Alternatively, , and The first window value of the congestion window in the first communication network can be obtained according to an empirical value.

[0105] S420, determining the first window value of the congestion window in the first communication network according to the wireless negotiation rate, the transmission scheduling time slot and the maximum segment length corresponding to the target data packet.

[0106] In an optional embodiment, the first window value can be obtained according to the following formula:

[0107]

[0108]

[0109] wherein, the first window value of the congestion window in the first communication network; a weight coefficient of the wireless negotiation rate, in a strong interference state, equal to , in a weak interference state, equal to ; in a non-interference state, equal to , , and may be preset values, optionally, , and may be obtained according to an empirical value; the maximum segment length corresponding to the target data packet.

[0110] In the embodiment, the wireless negotiation rate, the transmission scheduling time slot and the maximum segment length corresponding to the target data packet can reflect the congestion condition of the first communication network, so that the first window value of the congestion window in the first communication network is determined more accurately by combining the wireless negotiation rate, the transmission scheduling time slot and the maximum segment length corresponding to the target data packet.

[0111] On the basis of the technical solutions of the above embodiments, the present application further provides another optional embodiment, in which the target window value determination step of S240 is refined.

[0112] Referring to the target window value determination step shown in Figure 5 , the target window value determination step comprises:

[0113] S510, in a case where the congestion state and the interference state satisfy a first preset condition, determining the target window value according to the size relationship between the first window value and the second window value.

[0114] The first preset condition comprises at least one of the following: the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a no interference state; the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a strong interference state; the congestion state indicates that the second communication network is in a congestion avoidance phase, and the interference state indicates that the first communication network is in a strong interference state; and the congestion state indicates that the second communication network is in a fast recovery phase, and the interference state indicates that the first communication network is in a no interference state.

[0115] In an optional embodiment, when the first preset condition comprises at least one of the following: the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a no interference state; the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a strong interference state; and the congestion state indicates that the second communication network is in a congestion avoidance phase, and the interference state indicates that the first communication network is in a strong interference state, the smaller of the first window value and the second window value can be taken as the target window value.

[0116] It should be understood that when the second communication network is in a slow start phase, data needs to be sent with a smaller congestion window value to avoid sudden injection of data causing congestion collapse and fairness of bandwidth allocation, and therefore the smaller of the first window value and the second window value can be taken as the target window value when the first communication network is in any interference state.

[0117] In an optional embodiment, when the first preset condition comprises at least one of the following: the congestion state indicates that the second communication network is in a fast recovery phase, and the interference state indicates that the first communication network is in a no interference state, the larger of the first window value and the second window value can be taken as the target window value.

[0118] It should be understood that when the second communication network is in a fast recovery phase, data needs to be sent with a larger congestion window value to quickly recover lost packets and avoid excessive speed reduction, and when the first communication network is in a no interference state, sending data packets with a larger congestion window value can also be supported, and therefore the larger of the first window value and the second window value can be taken as the target window value.

[0119] In this embodiment, by determining the target window value according to the size relationship between the first window value and the second window value when the congestion state and the interference state satisfy the first preset condition, the utilization of bandwidth can be maximized without causing congestion of the communication network, and the data sending efficiency is improved.

[0120] On the basis of the technical solutions of the above embodiments, the application further provides another optional embodiment, in which the target window value determination step S240 is refined.

[0121] Referring to Figure 6 The target window value determination step shown in the figure comprises:

[0122] S610, in the case where the congestion state and the interference state satisfy the second preset condition, determining the target window value according to the sum of the first window value and the second window value.

[0123] The second preset condition comprises at least one of the following: the congestion state indicates that the second communication network is in the congestion avoidance phase, and the interference state indicates that the first communication network is in the no-interference state; the congestion state indicates that the second communication network is in the congestion avoidance phase, and the interference state indicates that the first communication network is in the weak-interference state; the congestion state indicates that the second communication network is in the fast recovery phase, and the interference state indicates that the first communication network is in the weak-interference state; the congestion state indicates that the second communication network is in the fast recovery phase, and the interference state indicates that the first communication network is in the strong-interference state; the congestion state indicates that the second communication network is in the fast retransmission phase, and the interference state indicates that the first communication network is in the no-interference state; the congestion state indicates that the second communication network is in the fast retransmission phase, and the interference state indicates that the first communication network is in the weak-interference state; the congestion state indicates that the second communication network is in the fast retransmission phase, and the interference state indicates that the first communication network is in the strong-interference state.

[0124] Here it can be understood that the second preset condition is at least one of other conditions in addition to the first preset condition.

[0125] In an optional embodiment, in the case where the congestion state and the interference state satisfy the second preset condition, the first window value and the second window value can be weighted and summed to obtain the target window value.

[0126] In an optional embodiment, the target window value can be obtained according to the following formula:

[0127]

[0128] Wherein, The target window value is represented by T; The second window value of the congestion window in the second communication network is represented by S2; The weight coefficient is represented by a; The size of a can be set according to the weight requirement of the first window value and the second window value.

[0129] ​In the embodiment, the target window value is determined according to the sum of the first window value and the second window value in the case that the congestion state and the interference state satisfy the second preset condition, so that the first window value and the second window value can be balanced without causing congestion of the communication network, the utilization rate of the bandwidth is maximized, and the data sending efficiency is improved.

[0130] On the basis of the technical solutions in the above embodiments, the application further provides another optional embodiment, in which S230 can be refined to, in the case that the target data packet is a non-first service data packet in the process that the data sending end sends data to the data receiving end for the first time, acquire the congestion state of the second communication network and the second window value of the congestion window in the second communication network.

[0131] It should be understood here that, in the case that the target data packet is a non-first service data packet in the process that the data sending end sends data to the data receiving end for the first time, at least one service data packet has been sent between the data sending end and the data receiving end in the process that the data sending end sends data to the data receiving end for the first time, so the congestion state of the second communication network and the second window value of the congestion window in the second communication network can be acquired, and then the target window value can be determined according to the interference state, the congestion state, the first window value and the second window value.

[0132] It should be explained here that, in the case that the target data packet is a non-first service data packet in the process that the data sending end sends data to the data receiving end for the first time, the execution order of S210 and S230 can not be limited.

[0133] Correspondingly, in the optional embodiment, the target data packet is refined to be a first service data packet.

[0134] Referring to the data sending method shown in Figure 7 The data sending method comprises the following steps of:

[0135] S710, after determining the interference state of the first communication network according to the wireless signal strength and the wireless negotiation rate, acquiring an initial window value of a congestion window in the second communication network.

[0136] In the case that the target data packet is a first service data packet in the process that the data sending end sends data to the data receiving end for the first time, the data sending end has not sent a service data packet to the data receiving end, that is, the congestion window of the second communication network has not been initialized, so the congestion state of the second communication network and the second window value of the congestion window in the second communication network cannot be acquired.

[0137] The initial window value can be understood as an initial window value preset for initializing the congestion window of the second communication network.

[0138] S720, determining a target window value according to the initial window value and the interference state.

[0139] In an optional embodiment, a target window adjustment parameter corresponding to the interference state can be determined according to the interference state and the window adjustment parameter corresponding to each preset interference state. The initial window value is adjusted by using the target window adjustment parameter to obtain the target window value.

[0140] In an optional embodiment, the window adjustment parameter corresponding to each preset interference state can be obtained according to the following correspondence relationship:

[0141]

[0142] wherein, the window adjustment parameter, in the strong interference state, is equal to , in the weak interference state, is equal to ; in the no interference state, is equal to , , and may be preset values, optionally, , and may be obtained according to empirical values.

[0143] In an optional embodiment, the initial window value can be multiplied by to obtain the target window value.

[0144] S730, sending the target data packet to the data receiving end according to the target window value.

[0145] It can be understood here that after the target data packet is sent to the data receiving end according to the target window value, the data sending process has been performed between the data sending end and the data receiving end, and the target data packet to be sent subsequently is the non-first service data packet.

[0146] In this embodiment, different target window value determination methods are adopted for the case of whether the target data packet is the first service data packet in the process of the data sending end sending data to the data receiving end for the first time, which can guarantee that each target data packet can be successfully sent, thereby improving the data transmission success rate.

[0147] On the basis of the technical solutions of the above embodiments, the application further provides another optional embodiment which details the data sending method. The optional embodiment can be applied to a data sending end; the data sending end and a data receiving end are in communication connection through a wireless access device; a WiFi network is deployed between the data sending end and the wireless access device; and a target communication network is deployed between the data sending end and the data receiving end. The target communication network can include the WiFi network deployed between the data sending end and the wireless access device, a wireless communication network or a wired network deployed between the wireless access device and the data receiving end.

[0148] Referring to Figure 8 the data sending method shown in the figure, the method comprises:

[0149] S801, obtaining a target data packet to be sent.

[0150] The target data packet can be understood as a service data packet. For example, the target data packet can be a video data packet.

[0151] In an optional embodiment, in the case that the target data packet is a video data packet, the target data packet can be obtained in the following manner: obtaining video data corresponding to a current video frame; splitting the video data according to a preset MSS to obtain at least one video data packet with a size of MSS; and in the case that the remaining video data after obtaining the at least one video data packet is less than MSS, taking the remaining video data as one video data packet.

[0152] S802, obtaining a congestion window value W-CWND and an interference state W-STATE in the WiFi network.

[0153] As shown in Figure 9 and Figure 10 , the step of obtaining the congestion window value W-CWND and the interference state W-STATE in the WiFi network can include: the data sending end obtaining a wireless signal strength RSSI of the WiFi network and a wireless negotiation rate RATE between the data sending end and the wireless access device by using a WiFi driver; determining the interference state W-STATE of the WiFi network according to a signal strength range to which the wireless signal strength RSSI belongs and a wireless negotiation rate range to which the wireless negotiation rate RATE belongs; determining a transmission scheduling time slot timeslot corresponding to the interference state W-STATE according to the corresponding relationship between each preset interference state and the transmission scheduling time slot; and determining the congestion window value W-CWND of the WiFi network according to the wireless negotiation rate RATE, the transmission scheduling time slot timeslot and the maximum segment length MSS corresponding to the target data packet.

[0154] The determined congestion window value W-CWND and the interference state W-STATE can be input into a congestion control decision unit of the data sending end to generate a final congestion window value CWND for sending the target data packet, so that the network sending unit sends the target data packet through the wireless access device.

[0155] In S803, it is judged whether the target data packet is the first service data packet in the process of sending data from the data sending end to the data receiving end. If yes, S804 is executed; if not, S806 is executed.

[0156] In S804, an initial window value T-CWND_0 of the congestion window in the target communication network is obtained, and a target congestion window value CWND is obtained according to the interference state W-STATE and the initial window value T-CWND_0. The target data packet is sent to the data receiving end by using the target congestion window value CWND.

[0157] In an optional embodiment, a target window adjustment parameter corresponding to the interference state W-STATE can be selected according to the window adjustment parameters corresponding to each preset interference state. The initial window value T-CWND_0 is adjusted by using the target window adjustment parameter , and T-CWND_0 is taken as the target congestion window value CWND.

[0158] In S805, it is judged whether the data sending process is ended. If yes, the process is ended; if not, S801 is executed.

[0159] In S806, a congestion window value T-CWND and a congestion state T-STATE in the target communication network are obtained. In the case that the congestion state T-STATE is in the fast retransmission stage, S812 is executed.

[0160] In S807, in the case that the congestion state T-STATE is in the slow start stage, a smaller value between the congestion window value W-CWND and the congestion window value T-CWND is selected as the target congestion window value CWND, and S813 is executed.

[0161] In S808, in the case that the congestion state T-STATE is in the congestion avoidance stage, it is judged whether the interference state W-STATE is a strong interference state. If yes, S809 is executed; if not, S812 is executed.

[0162] In S809, a smaller value between the congestion window value W-CWND and the congestion window value T-CWND is selected as the target congestion window value CWND, and S813 is executed.

[0163] ​S810, in the case that the congestion state T-STATE is in the fast recovery phase, judging whether the interference state W-STATE is the non-interference state; if yes, executing S811; if no, executing S812.

[0164] S811, selecting the larger value between the congestion window value W-CWND and the congestion window value T-CWND as the target congestion window value CWND, and executing S813.

[0165] S812, weighted summing the congestion window value W-CWND and the congestion window value T-CWND, taking the result of the weighted summing as the target congestion window value CWND, and executing S813.

[0166] S813, sending the target data packet to the data receiving end by using the target congestion window value CWND.

[0167] S814, judging whether the data sending process is ended; if yes, ending; if no, executing S801.

[0168] On the basis of the technical solutions of the above embodiments, the application further provides another optional embodiment which details the data sending method. The optional embodiment can be applied to the data sending end; the data sending end and the data receiving end are connected in communication through a wireless access device; the data sending end and the wireless access device are deployed with a WiFi network; the data sending end and the data receiving end are deployed with a target communication network. The target communication network can include the WiFi network deployed between the data sending end and the wireless access device, the wireless communication network or the wired network deployed between the wireless access device and the data receiving end.

[0169] The data sending end can include a wireless driving unit, a wireless congestion control unit, a traditional congestion control unit, a congestion window decision unit, a sending queue scheduling unit and a network sending unit.

[0170] Referring to the data sending method shown in Figure 11 The data sending method includes:

[0171] The data sending end cuts the video frame into at least one video data packet according to the maximum segment length MSS.

[0172] The wireless driving unit sends the wireless negotiation rate RATE and the wireless signal strength RSSI in the wireless driving which are sensed in real time to the wireless congestion control unit.

[0173] Next, the wireless congestion control unit can determine the wireless congestion window value W-CWND and the interference state W-STATE in the WiFi network by using the wireless negotiation rate RATE, the wireless signal strength RSSI and the maximum segment length MSS.

[0174] The data sending end can select a target window adjustment parameter corresponding to the interference state W-STATE according to the interference state W-STATE , and use the target window adjustment parameter to adjust an initial window value T-CWND_0 in a traditional congestion control unit to obtain a congestion window value CWND used for sending a first video data packet T-CWND_0.

[0175] The sending queue scheduling unit can send the first video data packet according to the congestion window value CWND T-CWND_0.

[0176] In the process of the data sending end sending data to the data receiving end for the first time, in the case of sending the first video data packet, the network sending unit can receive an ACK data packet fed back by the data receiving end and send the ACK data packet to the traditional congestion control unit.

[0177] Next, the traditional congestion control unit can use a traditional congestion control algorithm to determine a traditional congestion window value T-CWND and a congestion state T-STATE in the target communication network according to the ACK data packet and the transmission state information of the target communication network.

[0178] The traditional congestion control algorithm can include control algorithms corresponding to four stages of slow start, congestion avoidance, fast retransmission, and fast recovery.

[0179] After that, the congestion window decision unit can comprehensively calculate a congestion window value CWND used for sending a non-first video data packet according to the wireless congestion window value W-CWND and the interference state W-STATE determined by the wireless congestion control unit, and the traditional congestion window value T-CWND and the congestion state T-STATE determined by the traditional congestion control unit.

[0180] Then, the sending queue scheduling unit can send the non-first video data packet according to the congestion window value CWND. The network sending unit continues to send the received ACK data packet to the traditional congestion control unit, so that the traditional congestion control unit re-adjusts the traditional congestion window value T-CWND and the congestion state T-STATE until all the video data packets are sent.

[0181] It should be understood that although the steps in the flowcharts involved in the embodiments described above are shown in sequence according to the arrows, the steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, the execution of the steps is not strictly limited in sequence, and the steps can be executed in other sequences. Moreover, at least some of the steps in the flowcharts involved in the embodiments described above can include multiple steps or multiple stages, which are not necessarily executed at the same time, but can be executed at different times, and the execution sequence of the steps or stages is not necessarily sequential, but can be executed alternately or alternately with at least part of other steps or steps or stages in other steps.

[0182] Based on the same inventive concept, the embodiments of the present application also provide a data sending device for implementing the above-mentioned data sending method. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme described in the above method, so the specific limitations in one or more data sending device embodiments provided below can refer to the limitations of the data sending method described above, which will not be repeated here.

[0183] In an exemplary embodiment, as shown in Figure 12 A data sending device is provided, configured in a data sending end; the data sending end and a data receiving end are connected in communication through a wireless access device; a first communication network is deployed between the data sending end and the wireless access device; a second communication network is deployed between the data sending end and the data receiving end; the first communication network includes a wireless communication network; the data sending device includes a first acquisition module 1210, a first determination module 1220, a second acquisition module 1230, a second determination module 1240 and a first sending module 1250, wherein:

[0184] The first acquisition module 1210 is configured to acquire the wireless signal strength of the first communication network and the wireless negotiation rate between the wireless access device;

[0185] The first determination module 1220 is configured to determine the interference state of the first communication network and the first window value of the congestion window in the first communication network according to the wireless signal strength and the wireless negotiation rate;

[0186] The second acquisition module 1230 is configured to acquire the congestion state of the second communication network and the second window value of the congestion window in the second communication network;

[0187] The second determination module 1240 is configured to determine the target window value according to the interference state, the congestion state, the first window value and the second window value;

[0188] The first sending module 1250 is configured to send the target data packet to a data receiving end according to the target window value.

[0189] In one of the embodiments, the first determining module 1220 is specifically configured to: in a case where the wireless signal strength belongs to the preset signal strength range, determine a transmission rate range to which the wireless negotiation rate belongs according to the at least one wireless negotiation rate threshold; and determine an interference state corresponding to the transmission rate range according to the transmission rate range and a corresponding relationship between each preset transmission rate range and the interference state.

[0190] In one of the embodiments, the first determining module 1220 is specifically configured to: determine a transmission scheduling time slot of the first communication network according to the interference state; and determine a first window value of a congestion window in the first communication network according to the wireless negotiation rate, the transmission scheduling time slot and a maximum segment length corresponding to the target data packet.

[0191] In one of the embodiments, the first determining module 1220 is specifically configured to: determine the transmission scheduling time slot corresponding to the interference state according to a corresponding relationship between each preset interference state and the transmission scheduling time slot.

[0192] In one of the embodiments, the second determining module 1240 is specifically configured to: in a case where the congestion state and the interference state satisfy a first preset condition, determine the target window value according to a size relationship between the first window value and the second window value; and the first preset condition includes at least one of the following: the congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a no-interference state; the congestion state indicates that the second communication network is in the slow start phase, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in the slow start phase, and the interference state indicates that the first communication network is in a strong interference state; the congestion state indicates that the second communication network is in a congestion avoidance phase, and the interference state indicates that the first communication network is in the strong interference state; the congestion state indicates that the second communication network is in a fast recovery phase, and the interference state indicates that the first communication network is in the no-interference state.

[0193] In one of the embodiments, the second determining module 1240 is specifically configured to: in the case where the congestion state and the interference state satisfy a second preset condition, determine the target window value according to a sum of the first window value and the second window value; wherein the second preset condition comprises at least one of the following: the congestion state indicates that the second communication network is in a congestion avoidance phase, and the interference state indicates that the first communication network is in a non-interference state; the congestion state indicates that the second communication network is in a congestion avoidance phase, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in a fast recovery phase, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in a fast recovery phase, and the interference state indicates that the first communication network is in a strong interference state; the congestion state indicates that the second communication network is in a fast retransmission phase, and the interference state indicates that the first communication network is in a non-interference state; the congestion state indicates that the second communication network is in a fast retransmission phase, and the interference state indicates that the first communication network is in a weak interference state; the congestion state indicates that the second communication network is in a fast retransmission phase, and the interference state indicates that the first communication network is in a strong interference state.

[0194] In one of the embodiments, the second obtaining module 1230 is specifically configured to: in the case where the target data packet is a non-first service data packet in a process in which the data sending end sends data to the data receiving end for the first time, obtain the congestion state of the second communication network and a second window value of the congestion window of the second communication network; accordingly, in the case where the target data packet is a first service data packet in the process in which the data sending end sends data to the data receiving end for the first time, after the interference state of the first communication network is determined according to the wireless signal strength and the wireless negotiation rate, the data sending device further comprises: a third obtaining module configured to obtain an initial window value of the congestion window of the second communication network; a third determining module configured to determine the target window value according to the initial window value and the interference state; and a second sending module configured to send the target data packet to the data receiving end according to the target window value.

[0195] In one of the embodiments, the third determining module is specifically configured to: determine a target window adjustment parameter corresponding to the interference state according to the interference state and the window adjustment parameters corresponding to the preset interference states; and adjust the initial window value by using the target window adjustment parameter to obtain the target window value.

[0196] The modules in the data sending device can be all or partially implemented by software, hardware and combinations thereof. The modules can be embedded in or independent of a processor in a computer device in a hardware form, or stored in a memory in a computer device in a software form, so as to be called and executed by a processor to perform operations corresponding to the modules.

[0197] In one exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 13 As shown, the computer device includes a processor, memory, input / output interfaces, and a communication interface. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When the computer program is executed by the processor, it implements a data transmission method.

[0198] Those skilled in the art will understand that Figure 13 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0199] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the data transmission method provided in any of the above embodiments.

[0200] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the data transmission method provided in any of the above embodiments.

[0201] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the data transmission method provided in any of the above embodiments.

[0202] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer readable storage medium, and when executed, can include the processes of the above-mentioned embodiment methods. Any reference to memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. The non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical storage, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. The volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration but not limitation, the RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The database involved in the embodiments provided in the present application can include at least one of a relational database and a non-relational database. The non-relational database can include a distributed database based on a block chain, etc., without being limited thereto. The processor involved in the embodiments provided in the present application can be a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., without being limited thereto.

[0203] The technical features of the above embodiments can be combined arbitrarily. In order to make the description simple, all possible combinations of the technical features in the above embodiments are not described, however, as long as the combinations of the technical features do not exist contradictory, they should be considered as the scope of the present application.

[0204] The above-described embodiments are merely illustrative of several embodiments of the present application, and the description is relatively specific and detailed, but should not be understood as a limitation on the scope of the patent. It should be noted that for those skilled in the art, without departing from the concept of the present application, a number of modifications and improvements can be made, which are all within the scope of the present application. Therefore, the scope of protection of the present application should be subject to the appended claims.

Claims

1. A data transmission method, characterized in that, It is applied to a data transmitting end; the data transmitting end and the data receiving end are connected through a wireless access device; a first communication network is deployed between the data transmitting end and the wireless access device; A second communication network is deployed between the data sending end and the data receiving end; the first communication network includes a wireless communication network; the method includes: Obtain the wireless signal strength of the first communication network and the wireless negotiation rate with the wireless access device; Based on the wireless signal strength and the wireless negotiation rate, determine the interference state of the first communication network and the first window value of the congestion window in the first communication network. Obtain the congestion status of the second communication network and the second window value of the congestion window in the second communication network; The target window value is determined based on the interference state, the congestion state, the first window value, and the second window value. Based on the target window value, the target data packet is sent to the data receiving end.

2. The method according to claim 1, characterized in that, Determining the interference state of the first communication network based on the wireless signal strength and the wireless negotiation rate includes: When the wireless signal strength is within a preset signal strength range, the transmission rate range to which the wireless negotiation rate belongs is determined based on at least one wireless negotiation rate threshold. Based on the transmission rate range and the correspondence between each preset transmission rate range and the interference state, the interference state corresponding to the transmission rate range is determined.

3. The method according to claim 1, characterized in that, Determining the first window value of the congestion window in the first communication network includes: Based on the interference state, determine the transmission scheduling time slot of the first communication network; The first window value of the congestion window in the first communication network is determined based on the wireless negotiation rate, the transmission scheduling time slot, and the maximum segment length corresponding to the target data packet.

4. The method according to claim 3, characterized in that, Determining the transmission scheduling time slot of the first communication network based on the interference state includes: Based on the interference state and the correspondence between each preset interference state and the transmission scheduling time slot, the transmission scheduling time slot corresponding to the interference state is determined.

5. The method according to claim 1, characterized in that, Determining the target window value based on the interference state, the congestion state, the first window value, and the second window value includes: When the congestion state and the interference state meet the first preset condition, the target window value is determined according to the size relationship between the first window value and the second window value; The first preset condition includes at least one of the following: The congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in an interference-free state. The congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a weak interference state. The congestion state indicates that the second communication network is in a slow start phase, and the interference state indicates that the first communication network is in a strong interference state. The congestion state indicates that the second communication network is in the congestion avoidance phase, and the interference state indicates that the first communication network is in a strong interference state. The congestion status indicates that the second communication network is in a fast recovery phase, and the interference status indicates that the first communication network is in an interference-free state.

6. The method according to claim 1, characterized in that, Determining the target window value based on the interference state, the congestion state, the first window value, and the second window value includes: When the congestion state and the interference state meet the second preset condition, the target window value is determined based on the sum of the first window value and the second window value; The second preset condition includes at least one of the following: The congestion state indicates that the second communication network is in the congestion avoidance phase, and the interference state indicates that the first communication network is in an interference-free state. The congestion state indicates that the second communication network is in the congestion avoidance phase, and the interference state indicates that the first communication network is in a weak interference state. The congestion status indicates that the second communication network is in a fast recovery phase, and the interference status indicates that the first communication network is in a weak interference state. The congestion state indicates that the second communication network is in a fast recovery phase, and the interference state indicates that the first communication network is in a strong interference state. The congestion state indicates that the second communication network is in the fast retransmission phase, and the interference state indicates that the first communication network is in an interference-free state. The congestion state indicates that the second communication network is in the fast retransmission phase, and the interference state indicates that the first communication network is in a weak interference state. The congestion state indicates that the second communication network is in the fast retransmission phase, and the interference state indicates that the first communication network is in a strong interference state.

7. The method according to any one of claims 1-6, characterized in that, The step of obtaining the congestion status of the second communication network and the second window value of the congestion window in the second communication network includes: In the case where the target data packet is not the first service data packet in the process of the data sending end sending data to the data receiving end, the congestion status of the second communication network and the second window value of the congestion window in the second communication network are obtained; Accordingly, when the target data packet is the first service data packet in the process of the data sender transmitting data to the data receiver, after determining the interference state of the first communication network based on the wireless signal strength and the wireless negotiation rate, the method further includes: Obtain the initial window value of the congestion window in the second communication network; The target window value is determined based on the initial window value and the interference state; The target data packet is sent to the data receiving end according to the target window value.

8. The method according to claim 7, characterized in that, Determining the target window value based on the initial window value and the interference state includes: Based on the interference state and the window adjustment parameters corresponding to each preset interference state, determine the target window adjustment parameters corresponding to the interference state. The initial window value is adjusted using the target window adjustment parameters to obtain the target window value.

9. A data transmission device, characterized in that, The device is configured at the data transmitting end; the data transmitting end and the data receiving end are connected via a wireless access device; a first communication network is deployed between the data transmitting end and the wireless access device. A second communication network is deployed between the data sending end and the data receiving end; The first communication network includes a wireless communication network; the device includes: The first acquisition module is used to acquire the wireless signal strength of the first communication network and the wireless negotiation rate with the wireless access device. The first determining module is used to determine the interference state of the first communication network and the first window value of the congestion window in the first communication network based on the wireless signal strength and the wireless negotiation rate. The second acquisition module is used to acquire the congestion status of the second communication network and the second window value of the congestion window in the second communication network. The second determining module is used to determine a target window value based on the interference state, the congestion state, the first window value, and the second window value. The first sending module is used to send the target data packet to the data receiving end according to the target window value.

10. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 8.

11. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 8.

12. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 8.