Transmission Control Method, Device, Electronic Device and Storage Medium

By dynamically adjusting the maximum number of retransmissions of the physical layer of Wi-Fi packets, the problems of lag and delay in Wi-Fi data transmission are solved, and the user experience is improved.

CN115426083BActive Publication Date: 2025-07-18VIVO MOBILE COMM CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211065847.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-31
Publication Date
2025-07-18
Estimated Expiration
2042-08-31

AI Technical Summary

Technical Problem

The existing Wi-Fi data transmission control methods can easily lead to stuttering and delayed data transmission, affecting users' online experience.

Method used

By dynamically adjusting the maximum number of retransmissions of the transport layer protocol to TCP or UDP, the maximum number of retransmissions of the physical layer is optimized to meet the needs of different application scenarios and reduce latency and lag.

Benefits of technology

It improves users' Internet experience, ensures the stability and real-time of data transmission, and reduces the delay and lag of applications such as videos and games.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115426083B_ABST
    Figure CN115426083B_ABST
Patent Text Reader

Abstract

The present application discloses a transmission control method, apparatus, electronic device and storage medium, belonging to the field of communication technologies. Wherein, the method includes: determining the maximum number of retransmissions of the physical layer of the first data packet based on the transport layer protocol adopted by the first data packet; sending the first data packet based on the Wi-Fi protocol and the maximum number of retransmissions; wherein, when the transport layer protocol is the Transmission Control Protocol, the adjustment range of the maximum number of retransmissions is a first adjustment range; when the transport layer protocol is the User Datagram Protocol, the adjustment range of the maximum number of retransmissions is a second adjustment range; the lower limit of the first adjustment range is higher than the lower limit of the second adjustment range; the upper limit of the first adjustment range is higher than the upper limit of the second adjustment range.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of communication technologies, and particularly relates to a transmission control method, apparatus, electronic device, and storage medium. Background Art

[0002] In the prior art, the process of a terminal sending data based on the Wi-Fi technology may include: the transport layer encapsulates the data generated by an application (APP) based on TCP (Transmission Control Protocol) / UDP (User Datagram Protocol) and sends it to the physical layer; the physical layer encapsulates and sends the data based on the Wi-Fi protocol.

[0003] However, the existing transmission control method is prone to causing lags and delays in data transmission, affecting the user's Internet experience. Summary of the Invention

[0004] The objective of the embodiments of this application is to provide a transmission control method, apparatus, electronic device, and storage medium, which can solve the problems of lags and delays in sending data packets based on the Wi-Fi protocol.

[0005] In a first aspect, the embodiments of this application provide a transmission control method, which includes:

[0006] Determine the maximum retransmission times of the physical layer of the first data packet based on the transport layer protocol adopted by the first data packet;

[0007] Send the first data packet based on the Wi-Fi protocol and the maximum retransmission times;

[0008] Wherein, when the transport layer protocol is the Transmission Control Protocol, the adjustment range of the maximum retransmission times is a first adjustment range; when the transport layer protocol is the User Datagram Protocol, the adjustment range of the maximum retransmission times is a second adjustment range; the lower limit of the first adjustment range is higher than the lower limit of the second adjustment range; the upper limit of the first adjustment range is higher than the upper limit of the second adjustment range.

[0009] In a second aspect, the embodiments of this application provide a transmission control apparatus, which includes:

[0010] A first determination module, configured to determine the maximum retransmission times of the physical layer of the first data packet based on the transport layer protocol adopted by the first data packet;

[0011] A sending module, configured to send the first data packet based on the Wi-Fi protocol and the maximum retransmission times;

[0012] Wherein, when the transport layer protocol is the Transmission Control Protocol (TCP), the adjustment range of the maximum retransmission times is the first adjustment range; when the transport layer protocol is the User Datagram Protocol (UDP), the adjustment range of the maximum retransmission times is the second adjustment range; the lower limit of the first adjustment range is higher than the lower limit of the second adjustment range; and the upper limit of the first adjustment range is higher than the upper limit of the second adjustment range.

[0013] In a third aspect, an embodiment of the present application provides an electronic device, which includes a processor, a memory, and a program or instruction stored on the memory and executable on the processor. When the program or instruction is executed by the processor, the steps of the method described in the first aspect are implemented.

[0014] In a fourth aspect, an embodiment of the present application provides a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, the steps of the method described in the first aspect are implemented.

[0015] In a fifth aspect, an embodiment of the present application provides a chip, which includes a processor and a communication interface. The communication interface is coupled to the processor, and the processor is configured to run a program or instruction to implement the method described in the first aspect.

[0016] In the embodiment of the present application, based on the transport layer protocol adopted by the first data packet, the maximum retransmission times of the physical layer of the first data packet are determined. Based on the Wi-Fi protocol and the maximum retransmission times, the first data packet is sent. Based on the transport layer protocol adopted for sending the first data packet, the maximum retransmission times are dynamically adjusted. It can reduce latency and stuttering of videos, etc. by using a larger and appropriate maximum retransmission times of the physical layer when the transport layer protocol adopted by the first data packet is the Transmission Control Protocol. When the transport layer protocol adopted by the first data packet is the User Datagram Protocol, the next data packet can be sent earlier by using a smaller and appropriate maximum retransmission times of the physical layer to ensure the real-time nature of data transmission, reduce latency and stuttering of games, etc., thereby improving the user's Internet experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 is one of the flow diagrams of the transmission control method provided by the embodiment of the present application;

[0018] Figure 2 is another flow diagram of the transmission control method provided by the embodiment of the present application;

[0019] Figure 3 is yet another flow diagram of the transmission control method provided by the embodiment of the present application;

[0020] Figure 4It is a schematic structural diagram of a transmission control device provided by an embodiment of the present application;

[0021] Figure 5 It is a schematic structural diagram of an electronic device provided by an embodiment of the present application;

[0022] Figure 6 It is a schematic hardware structure diagram of an electronic device provided by an embodiment of the present application. Detailed implementation manners

[0023] Next, the technical solutions in the embodiments of the present application will be clearly described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art belong to the scope protected by the present application.

[0024] The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, rather than to describe a specific order or sequence. It should be understood that such used data can be interchanged under appropriate circumstances so that the embodiments of the present application can be implemented in an order other than those illustrated or described herein, and the objects distinguished by "first", "second", etc. are generally of the same type, and the number of objects is not limited. For example, the first object can be one or multiple. In addition, "and / or" in the specification and claims means at least one of the connected objects, and the character " / " generally represents an "or" relationship between the associated objects before and after.

[0025] Next, in conjunction with the accompanying drawings, the transmission control method, device, electronic device, and storage medium provided by the embodiments of the present application will be described in detail through specific embodiments and their application scenarios.

[0026] Figure 1 One of the flow diagrams of the transmission control method provided by the embodiments of the present application. Next, in conjunction with Figure 1 Describe the transmission control method provided by the embodiments of the present application. As Figure 1 shown, the method includes: step 101 and step 102.

[0027] Optionally, the execution subject of the transmission control method provided by the embodiments of the present application can be a transmission control device. The transmission control method provided by the embodiments of the present application can be used for the transmission control device to send data packets based on the Wi-Fi network after connecting to the Wi-Fi network.

[0028] The transmission control device can be implemented in various forms. For example, the transmission control device described in the embodiments of the present application may include mobile terminals such as mobile phones, smart phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (tablet computers), PMPs (portable multimedia players), navigation devices, smart bracelets, smart watches, digital cameras, etc., and fixed terminals such as desktop computers, televisions, etc. Hereinafter, it is assumed that the transmission control device is a mobile terminal. However, those skilled in the art will understand that the configuration according to the embodiments of the present application can also be applied to fixed-type terminals.

[0029] Step 101: Determine the maximum number of retransmissions at the physical layer of the first data packet based on the transport layer protocol adopted by the first data packet; wherein, when the transport layer protocol is the Transmission Control Protocol, the adjustment range of the maximum number of retransmissions is the first adjustment range; when the transport layer protocol is the User Datagram Protocol, the adjustment range of the maximum number of retransmissions is the second adjustment range; the lower limit of the first adjustment range is higher than the lower limit of the second adjustment range; the upper limit of the first adjustment range is higher than the upper limit of the second adjustment range.

[0030] Optionally, the first data packet is a data packet that needs to be sent to the Internet based on the Wi-Fi protocol, and this data packet can be generated by a certain application program.

[0031] Optionally, the application program can be any game application, any video application, any voice application, or any data transmission (uploading and / or downloading) application, etc.

[0032] Optionally, the application program that generates the first data packet can be determined; after determining the application program that generates the first data packet, the transport layer protocol can be determined based on this application program.

[0033] Optionally, the transport layer protocol can be determined based on the type of this application program.

[0034] Optionally, when the type of this application program is a game type or a voice type, it can be determined that the transport layer protocol adopted by the first data packet is the User Datagram Protocol (UDP); when the type of this application program is a video type or a data transmission (uploading and / or downloading) type, it can be determined that the transport layer protocol adopted by the first data packet is the Transmission Control Protocol (TCP).

[0035] Optionally, after determining the transport layer protocol adopted by the first data packet, the maximum number of retransmissions at the physical layer of the first data packet can be determined based on this transport layer protocol.

[0036] Optionally, for the transport layer protocol adopted for data packets sent based on the Wi-Fi protocol, whether it is TCP or UDP, the maximum number of retransmissions of the physical layer corresponding to TCP and the maximum number of retransmissions of the physical layer corresponding to UDP can be set respectively.

[0037] Optionally, the maximum number of retransmissions of the physical layer corresponding to TCP can be preset by the user in advance or obtained based on artificial intelligence technology, etc.

[0038] Optionally, the maximum number of retransmissions of the physical layer corresponding to UDP can be preset by the user in advance or obtained based on artificial intelligence technology, etc.

[0039] Optionally, the maximum number of retransmissions of the physical layer corresponding to UDP can be dynamically set based on the difference between the current packet loss rate and the target packet loss rate affecting the user experience.

[0040] It can be understood that the maximum number of retransmissions of the physical layer of data packets using TCP is within the first adjustment range; the maximum number of retransmissions of the physical layer of data packets using UDP is within the second adjustment range.

[0041] The first adjustment range and the second adjustment range satisfy the following relationship: the upper limit of the first adjustment range is higher than the upper limit of the second adjustment range, and the lower limit of the first adjustment range is higher than the lower limit of the second adjustment range.

[0042] Optionally, the lower limit of the first adjustment range is higher than the upper limit of the second adjustment range.

[0043] By setting the first adjustment range and the second adjustment range, it can be achieved that the maximum number of retransmissions of the physical layer of the first data packet using TCP is relatively large, while the maximum number of retransmissions of the physical layer of the first data packet using UDP is relatively small.

[0044] Optionally, when the transport layer protocol adopted by the first data packet is TCP, the maximum number of retransmissions of the physical layer corresponding to TCP can be determined as the maximum number of retransmissions of the physical layer of the first data packet.

[0045] Optionally, when the transport layer protocol adopted by the first data packet is UDP, the maximum number of retransmissions of the physical layer corresponding to UDP can be determined as the maximum number of retransmissions of the physical layer of the first data packet.

[0046] Optionally, when the maximum number of retransmissions of the physical layer corresponding to the transport layer protocol adopts a dynamic adjustment method, the maximum number of retransmissions of the physical layer of the second data packet can also be determined as the maximum number of retransmissions of the physical layer of the first data packet. The second data packet is the previous data packet whose adopted transport layer protocol is the same as that of the first data packet.

[0047] Optionally, the maximum number of retransmissions of the physical layer corresponding to the transport layer protocol is adjusted in a dynamic adjustment manner, which may include: for TCP packets, when the number of consecutive transmission failures of the physical layer based on the Wi-Fi protocol reaches the first number (i.e., the first consecutive number of TCP packets all fail to be transmitted at the physical layer based on the Wi-Fi protocol), the maximum number of retransmissions of the physical layer corresponding to TCP can be increased within the first adjustment range; when the number of consecutive transmission successes reaches the second number (i.e., the second consecutive number of TCP packets all succeed in being transmitted at the physical layer based on the Wi-Fi protocol), the maximum number of retransmissions of the physical layer corresponding to TCP can be decreased within the first adjustment range.

[0048] Optionally, the maximum number of retransmissions of the physical layer corresponding to the transport layer protocol is adjusted in a dynamic adjustment manner, which may include: for UDP packets, when the number of consecutive transmission failures of the physical layer based on the Wi-Fi protocol reaches the third number (i.e., the third consecutive number of UDP packets all fail to be transmitted at the physical layer based on the Wi-Fi protocol), the maximum number of retransmissions of the physical layer corresponding to UDP can be increased within the second adjustment range; when the number of consecutive transmission successes reaches the fourth number (i.e., the fourth consecutive number of UDP packets all succeed in being transmitted at the physical layer based on the Wi-Fi protocol), the maximum number of retransmissions of the physical layer corresponding to UDP can be decreased within the second adjustment range.

[0049] The first number, the second number, the third number, and the fourth number can all be preset according to the actual situation. For the specific values of the first number, the second number, the third number, and the fourth number, the embodiments of the present application do not make specific limitations.

[0050] Optionally, any two of the first number, the second number, the third number, and the fourth number can be the same or different.

[0051] Optionally, the method of increasing the maximum number of retransmissions of the physical layer corresponding to TCP within the first adjustment range may include, but is not limited to, any one of the following: adding the original maximum number of retransmissions by a first preset value, or multiplying the original maximum number of retransmissions by a second preset value.

[0052] The first preset value is a positive number and can be set according to the actual situation. For the specific value of the first preset value, the embodiments of the present application do not make specific limitations. Exemplarily, the first preset value can be 3, or the original maximum number of retransmissions multiplied by a first percentage.

[0053] The first percentage is a positive number and can be set according to the actual situation. For the specific value of the first percentage, the embodiments of the present application do not make specific limitations. Exemplarily, the first percentage can be 20%.

[0054] The second preset value is greater than 1 and can be set according to the actual situation. The specific value of the second preset value is not specifically limited in the embodiments of the present application. Exemplarily, the second preset value can be 1.5 or 2, etc.

[0055] Optionally, reducing the maximum number of retransmissions of the physical layer corresponding to TCP within the first adjustment range may include, but is not limited to, any one of the following: subtracting a third preset value from the original maximum number of retransmissions, or multiplying the original maximum number of retransmissions by a fourth preset value.

[0056] The third preset value is a positive number and can be set according to the actual situation. The specific value of the third preset value is not specifically limited in the embodiments of the present application. Exemplarily, the third preset value can be 5, or the original maximum number of retransmissions multiplied by a second percentage.

[0057] The second percentage is a positive number and can be set according to the actual situation. The specific value of the second percentage is not specifically limited in the embodiments of the present application. Exemplarily, the second percentage can be 15%.

[0058] The fourth preset value is less than 1 and can be set according to the actual situation. The specific value of the fourth preset value is not specifically limited in the embodiments of the present application. Exemplarily, the fourth preset value can be 0.5 or 0.8, etc.

[0059] Optionally, the method of increasing the maximum number of retransmissions of the physical layer corresponding to UDP within the second adjustment range may include, but is not limited to, any one of the following: adding a fifth preset value to the original maximum number of retransmissions, or multiplying the original maximum number of retransmissions by a sixth preset value.

[0060] The fifth preset value is a positive number and can be set according to the actual situation. The specific value of the fifth preset value is not specifically limited in the embodiments of the present application. Exemplarily, the fifth preset value can be 2, or the original maximum number of retransmissions multiplied by a third percentage.

[0061] The third percentage is a positive number and can be set according to the actual situation. The specific value of the first percentage is not specifically limited in the embodiments of the present application. Exemplarily, the first percentage can be 10%.

[0062] The sixth preset value is greater than 1 and can be set according to the actual situation. The specific value of the sixth preset value is not specifically limited in the embodiments of the present application. Exemplarily, the sixth preset value can be 2 or 2.5, etc.

[0063] Optionally, reducing the maximum number of retransmissions of the physical layer corresponding to UDP within the second adjustment range may include, but is not limited to, any one of the following: subtracting a seventh preset value from the original maximum number of retransmissions, or multiplying the original maximum number of retransmissions by an eighth preset value.

[0064] The seventh preset value is a positive number and can be set according to actual situations. For the specific value of the seventh preset value, the embodiments of the present application do not make specific limitations. Exemplarily, the seventh preset value can be 1, or the original maximum number of retransmissions multiplied by the fourth percentage.

[0065] The fourth percentage is a positive number and can be set according to actual situations. For the specific value of the fourth percentage, the embodiments of the present application do not make specific limitations. Exemplarily, the second percentage can be 12%.

[0066] The eighth preset value is less than 1 and can be set according to actual situations. For the specific value of the fourth preset value, the embodiments of the present application do not make specific limitations. Exemplarily, the eighth preset value can be 0.5 or 0.75, etc.

[0067] Optionally, in the case where the multiplication by the second preset value, the fourth preset value, the sixth preset value, the eighth preset value, the first percentage, the second percentage, the third percentage, or the fourth percentage is not an integer, the value obtained by the multiplication can be rounded.

[0068] Optionally, for rounding, any rounding method can be adopted, such as rounding up, rounding down, or rounding to the nearest integer, etc.

[0069] Step 102: Send the first data packet based on the Wi-Fi protocol and the maximum number of retransmissions.

[0070] Optionally, after determining the maximum number of retransmissions at the physical layer of the first data packet, based on this starting value, the sending of the first data packet based on the Wi-Fi protocol at the physical layer can be controlled, so as to realize sending the first data packet to a wireless access point (Access Point, AP) through a wireless manner via a transmission medium such as air (Air); the AP sends the first data packet to the Internet (Internet).

[0071] Optionally, in the case where the sending of the first data packet based on the Wi-Fi protocol at the physical layer fails and the number of retransmissions does not reach this starting value, the operation of retransmitting the first data packet based on the Wi-Fi protocol at the physical layer can be executed.

[0072] In the case where data transmission fails based on the Wi-Fi protocol at the physical layer, data retransmission will be performed based on the retransmission mechanism. The maximum number of retransmissions can be preset to 8, 16, or 32 times, and the retransmission interval is T1. In the case where the transport layer protocol adopted by the data packet is the reliable transport protocol TCP and the physical layer still fails to successfully transmit the data packet after reaching the maximum number of retransmissions, it will cause timeout retransmission at the transport layer and continue to send the data packet to the physical layer until the physical layer successfully transmits the data packet. In the case where the transport layer protocol adopted by the data packet is the unreliable transport protocol UDP and the physical layer still fails to successfully transmit the data after reaching the maximum number of retransmissions, the transport layer does not perform timeout retransmission, but sends the next data packet to the physical layer.

[0073] In the timeout retransmission mechanism of the transport layer, the retransmission time interval will gradually increase, which can be 1s, 2s, 4s, 8s, 16s, …… As the number of retransmissions at the transport layer increases, the increase in time consumption becomes larger and larger.

[0074] In traditional transmission control methods, the maximum number of retransmissions at the physical layer is a preset fixed value. In the case where the maximum number of retransmissions at the physical layer is small, the probability of transmission failure is high after the actual number of retransmissions reaches the maximum number of retransmissions. For data packets using the TCP protocol, it is easy to trigger timeout retransmission at the transport layer multiple times. Since the time consumption for transmitting the data packet at the transport layer is large, the total time consumption for transmitting the data packet is large, resulting in easy packet loss and causing stuttering and delay in the transmission of data packets based on the TCP protocol such as videos. In the case where the maximum number of retransmissions at the physical layer is large, for data packets using the UDP protocol, since the time consumption for transmitting the data packet at the physical layer is large, the total time consumption for transmitting the data packet is large, causing stuttering and delay in the transmission of data packets based on the UDP protocol such as games.

[0075] TCP is a reliable transport protocol. If the physical layer keeps retransmitting unsuccessfully and still fails to successfully transmit the data packet even after the physical layer exceeds the maximum number of retransmissions, it will cause the transport layer to keep retransmitting, resulting in a large delay.

[0076] TCP connection scenarios have relatively high requirements for rate but relatively low requirements for latency experience. TCP is a reliable transport protocol. If the physical layer keeps retransmission failing, and after the physical layer exceeds the maximum retransmission count and still fails to successfully send the data packet, it will cause the transport layer to keep retransmitting, resulting in a large latency. Even for TCP connection scenarios with relatively low requirements for latency experience, the latency also exceeds the acceptable range, and the user's Internet experience is poor. The latency caused by the physical layer retransmitting data packets based on the Wi-Fi protocol has much less impact on the transmission rate than the latency of the transport layer TCP protocol. For data packets using TCP, by increasing the maximum retransmission count of the physical layer, the stability of data transmission can be ensured, so as to reduce the retransmission of the transport layer, thereby reducing the time-consuming of sending data packets by the transport layer and reducing the total time-consuming of sending data packets.

[0077] UDP is an unreliable transport protocol. UDP connection scenarios have high requirements for latency. However, after the physical layer transmission fails, the transport layer will not retransmit, and the loss of fewer data packets will not have an obvious impact on the user's Internet experience. For data packets using UDP, setting a relatively small maximum retransmission count for the physical layer has less impact on the latency, thereby reducing the time-consuming of the physical layer sending data packets and reducing the total time-consuming of sending data packets.

[0078] In an embodiment of this application, based on the transport layer protocol used by the first data packet, the maximum retransmission count of the physical layer of the first data packet is determined. Based on the Wi-Fi protocol and the maximum retransmission count, the first data packet is sent. Based on the transport layer protocol used for sending the first data packet, the maximum retransmission count is dynamically adjusted. It can be realized that when the transport layer protocol used by the first data packet is the Transmission Control Protocol, the latency and stuttering of videos, etc. can be reduced by a larger and appropriate maximum retransmission count of the physical layer. When the transport layer protocol used by the first data packet is the User Datagram Protocol, the next data packet can be sent earlier by a smaller and appropriate maximum retransmission count of the physical layer to ensure the real-time nature of data sending, reduce latency and stuttering of games, etc., thereby improving the user's Internet experience.

[0079] Optionally, before determining the maximum retransmission count of the physical layer of the first data packet based on the transport layer protocol used by the first data packet, the method further includes: for the data packets successfully sent within the target time period, obtaining the actual retransmission count corresponding to each data packet; the number of data packets is multiple.

[0080] Optionally, within the target time period, it can be a time period with a preset target duration, or a time period when the cumulative transmitted data traffic reaches the second target traffic from the first target traffic.

[0081] The target duration can be preset according to the actual situation. The specific value of the target duration is not specifically limited in the embodiments of the present application. Exemplarily, the target duration can be 3 minutes, 5 minutes, etc.

[0082] The first target traffic and the second target traffic can be preset according to the actual situation. The specific values of the first target traffic and the second target traffic are not specifically limited in the embodiments of the present application. Exemplarily, the first target traffic can be 0, the second target traffic can be 3M, 10M, etc., or the first target traffic can be 2M, the second target traffic can be 5M, etc.

[0083] Optionally, within the target time period, for each of the multiple data packets successfully sent based on the Wi-Fi protocol at the physical layer, the actual retransmission times corresponding to the data packet can be counted.

[0084] The actual retransmission times corresponding to the data packet refer to the actual number of times of data retransmission based on the retransmission mechanism at the physical layer during the process of successfully sending the data packet.

[0085] Optionally, within the target time period, for the data packets that fail to be sent based on the Wi-Fi protocol at the physical layer, the actual retransmission times of the data packets are not counted.

[0086] Based on the actual retransmission times, determine the first adjustment range, the second adjustment range, the first initial value, and the second initial value; wherein, when the transport layer protocol is the Transmission Control Protocol, the initial value of the maximum retransmission times is the first initial value; when the transport layer protocol is the User Datagram Protocol, the initial value of the maximum retransmission times is the second initial value.

[0087] Optionally, within the target time period, the actual retransmission times of successfully sent data packets can reflect the network environment within the target time period. Therefore, the first adjustment range, the second adjustment range, the first initial value, and the second initial value can be determined based on the actual retransmission times.

[0088] Optionally, the mathematical statistical value of the actual retransmission times can be obtained; after obtaining the mathematical statistical value, the first adjustment range, the second adjustment range, the first initial value, and the second initial value are determined based on the mathematical statistical value.

[0089] Optionally, the mathematical statistical value can include at least one of the minimum value, the average value, the maximum value, the mode, the median, the weighted average value, and the quantile, etc.

[0090] Exemplarily, the minimum value of the actual retransmission times can be determined as the second initial value and the lower limit of the second adjustment range, and the average value of the actual retransmission times can be determined as the upper limit of the second adjustment range; the third quartile of the actual retransmission times can be determined as the first initial value and the lower limit of the first adjustment range, and 1.5 times the maximum value of the actual retransmission times can be determined as the upper limit of the first adjustment range.

[0091] Optionally, when the transport layer protocol adopted by the first data packet is TCP, the first initial value can be determined as the maximum retransmission times of the physical layer of the first data packet; when the transport layer protocol adopted by the first data packet is UDP, the second initial value can be determined as the maximum retransmission times of the physical layer of the first data packet.

[0092] In the embodiments of the present application, by obtaining the actual retransmission times of successfully sent data packets within a target time period, and based on the actual retransmission times, determining the first adjustment range, the second adjustment range, the first initial value, and the second initial value, more appropriate first adjustment range, second adjustment range, first initial value, and second initial value can be determined. When the transport layer protocol adopted by the first data packet is the Transmission Control Protocol, the maximum retransmission times of the physical layer that is larger and appropriate can be used to reduce latency and stuttering of videos, etc. When the transport layer protocol adopted by the first data packet is the User Datagram Protocol, the maximum retransmission times of the physical layer that is smaller and appropriate can be used to send the next data packet as early as possible to ensure the real-time nature of data transmission, reduce latency and stuttering of games, etc., thereby improving the user's Internet experience.

[0093] Optionally, determining the first initial value based on the actual retransmission times includes: obtaining the maximum value of the actual retransmission times.

[0094] Optionally, the maximum value of the actual retransmission times of successfully sent data packets within a target time period can be obtained.

[0095] Based on the maximum value, determine the first initial value.

[0096] Optionally, the first initial value can be determined based on the maximum value of the actual retransmission times.

[0097] Optionally, determining the first initial value based on the maximum value may include, but is not limited to, the following methods:

[0098] The product of the maximum value of the actual retransmission times and the first multiple is determined as the first initial value.

[0099] The first multiple can be preset according to the actual situation. For the specific value of the first multiple, the embodiments of the present application do not make specific limitations.

[0100] Exemplarily, the first multiple can be 0.75 to 1.25, etc.

[0101] Based on the maximum value of the actual retransmission times, the embodiment of the present application determines the first initial value, which can determine a more appropriate first initial value, and can achieve that when the transport layer protocol adopted by the first data packet is the Transmission Control Protocol (TCP), the maximum retransmission times of the appropriate physical layer are used to reduce latency and video stuttering, thereby improving the user's Internet experience.

[0102] Optionally, determining the second initial value based on the actual retransmission times includes: obtaining the average value of the actual retransmission times.

[0103] Optionally, the maximum value of the actual retransmission times of successfully sent data packets within a target time period can be obtained.

[0104] Determine the second initial value based on the average value.

[0105] Optionally, the second initial value can be determined based on the average value of the actual retransmission times.

[0106] Optionally, determining the second initial value based on the average value can include, but is not limited to, the following methods:

[0107] Determine the product of the average value of the actual retransmission times and the second multiple as the second initial value.

[0108] The second multiple can be preset according to the actual situation. The specific value of the second multiple is not specifically limited in the embodiment of the present application.

[0109] Exemplarily, the second multiple can be 0.4 to 0.6, etc.

[0110] Based on the average value of the actual retransmission times, the embodiment of the present application determines the second initial value, which can determine a more appropriate second initial value, and can achieve that when the transport layer protocol adopted by the first data packet is the User Datagram Protocol (UDP), the maximum retransmission times of the appropriate physical layer are used to send the next data packet as early as possible to ensure data transmission real-time performance, thereby improving the user's Internet experience.

[0111] To facilitate the understanding of the above embodiments of the present application, the following uses a mobile phone as an example of the transmission control device to illustrate the implementation process of the transmission control method through two examples.

[0112] Figure 2 It is the second flowchart of the transmission control method provided by the embodiment of the present application. As Figure 2 shown, the implementation process of a transmission control method can include the following steps:

[0113] Step 201: Turn on and connect to the Wi-Fi network.

[0114] The mobile phone enables the Wi-Fi connection function and successfully connects to the Wi-Fi network. After step 201, step 202-1 or step 202-2 can be executed.

[0115] Step 202-1, UDP connection.

[0116] The transport layer uses UDP connection, that is, the transport layer protocol used for the first data packet is UDP.

[0117] Step 203-1, initialize the benchmark retransmission number N0.

[0118] The maximum retransmission number of the default physical layer can be preset. Initialize N0 as the benchmark retransmission number. N0 is a positive integer.

[0119] Step 204-1, the initial value of the maximum retransmission number is N0 / 8, and the adjustment range is N0 / 8 to N0.

[0120] Based on the benchmark retransmission number N0, determine the second initial value as N0 / 8, and determine the second adjustment range as N0 / 8 to N0.

[0121] Based on the second initial value and the second adjustment range, send the first data packet at the physical layer based on the Wi-Fi network.

[0122] Step 205-1, if 10 consecutive packets are sent failed, the maximum retransmission number increases in the way of *2 (multiplied by 2); if 10 consecutive packets are sent successfully, the maximum retransmission number decreases in the way of / 2 (divided by 2).

[0123] If 10 consecutive first data packets using UDP are sent failed, determine the new maximum retransmission number as 2 times the current maximum (not greater than N0); if 10 consecutive first data packets using UDP are sent successfully, determine the new maximum retransmission number as 1 / 2 of the current maximum (not less than N0 / 8).

[0124] Step 202-2, TCP connection.

[0125] The transport layer uses TCP connection, that is, the transport layer protocol used for the first data packet is TCP.

[0126] Step 203-2, initialize the benchmark retransmission number N0.

[0127] The maximum retransmission number of the default physical layer can be preset. Initialize N0 as the benchmark retransmission number. N0 is a positive integer.

[0128] Step 204-2, the initial value of the maximum retransmission number is 2*N0, and the adjustment range is 2*N0 to 8*N0.

[0129] Based on the benchmark retransmission number N0, determine the first initial value as 2*N0, and determine the first adjustment range as 2*N0 to 8*N0.

[0130] Based on the first initial value and the first adjustment range, send the first data packet over the Wi-Fi network at the physical layer.

[0131] Step 205-2: If 10 consecutive packets are sent and failed, the maximum retransmission number increases in the way of *2 (multiplied by 2); if 10 consecutive packets are sent and succeed, the maximum retransmission number decreases in the way of / 2 (divided by 2).

[0132] If 10 consecutive packets of the first data packet sent using TCP fail, determine the new maximum retransmission number as 2 times the current maximum (not greater than 8*N0); if 10 consecutive packets of the first data packet sent using TCP succeed, determine the new maximum retransmission number as 1 / 2 of the current maximum (not less than 2*N0).

[0133] It can be understood that the first initial value is 2*N0, the first adjustment range is 2*N0 to 8*N0, the second initial value is N0 / 8, the second adjustment range is N0 / 8 to N0, the maximum retransmission number increases in the way of *2 (multiplied by 2), and the maximum retransmission number decreases in the way of / 2 (divided by 2) are only exemplary examples. For the specific values of the first initial value, the first adjustment range, the second initial value, the second adjustment range, and the amplitude of each adjustment of the maximum retransmission number (which may include the increasing amplitude and the decreasing amplitude), the embodiments of the present application do not make specific limitations.

[0134] Figure 3 It is the third flow diagram of the transmission control method provided by the embodiments of the present application. As Figure 3 shown, the implementation process of a transmission control method may include the following steps:

[0135] Step 301: Turn on and connect to the Wi-Fi network.

[0136] The mobile phone turns on the Wi-Fi connection function and successfully connects to the Wi-Fi network.

[0137] Step 302: Monitor and count the Internet access situation for 3 minutes of Wi-Fi connection or 3M traffic.

[0138] Monitor and count the Internet access situation during the target time period. The target time period is the time period when the Wi-Fi is connected for 3 minutes or the traffic reaches 3M.

[0139] Step 303: Count the average value Nv and the maximum value Nm of the retransmission times when the data packet is sent successfully.

[0140] Count the retransmission times when the data packet is sent successfully during the target time period, and count the average value Nv and the maximum value Nm of the retransmission times.

[0141] Step 304: Reset the adjustment ranges of the reference retransmission count and the maximum retransmission count.

[0142] Based on the average value Nv and the maximum value Nm of the retransmission counts, reset the adjustment ranges of the reference retransmission count and the maximum retransmission count.

[0143] After step 304, step 305-1 or step 305-2 can be executed.

[0144] Step 305-1: UDP connection.

[0145] The transport layer uses a UDP connection, that is, the transport layer protocol used for the first data packet is UDP.

[0146] Step 306-1: The initial value and the minimum value of the maximum retransmission count are Nv / 2.

[0147] Based on the average value Nv of the retransmission counts, determine the second initial value as Nv / 2, and determine the lower limit of the second adjustment range as Nv / 2.

[0148] Based on the second initial value and the second adjustment range, send the first data packet on the physical layer based on the Wi-Fi network.

[0149] Step 307-1: If 10 consecutive packets are sent and fail, the maximum retransmission count increases in the way of *2; if 10 consecutive packets are sent and succeed, the maximum retransmission count decreases in the way of / 2.

[0150] If 10 consecutive packets of the first data packet using UDP are sent and fail, determine the new maximum retransmission count as 2 times the current maximum (not greater than the upper limit of the second adjustment range); if 10 consecutive packets of the first data packet using UDP are sent and succeed, determine the new maximum retransmission count as 1 / 2 of the current maximum (not less than Nv / 2).

[0151] Step 305-2: TCP connection.

[0152] The transport layer uses a TCP connection, that is, the transport layer protocol used for the first data packet is TCP.

[0153] Step 306-2: The initial value and the minimum value of the maximum retransmission count are Nm.

[0154] Based on the maximum value Nm of the retransmission counts, determine the first initial value as Nm, and determine the lower limit of the first adjustment range as Nm.

[0155] Based on the first initial value and the first adjustment range, send the first data packet on the physical layer based on the Wi-Fi network.

[0156] Step 307-2: If 10 consecutive packets are sent and failed, the maximum retransmission count is increased in the way of *2; if 10 consecutive packets are sent and succeed, the maximum retransmission count is decreased in the way of / 2.

[0157] If 10 consecutive first data packets sent using UDP fail, the new maximum retransmission count is determined to be 2 times the current maximum (not greater than the upper limit of the second adjustment range); if 10 consecutive first data packets sent using UDP succeed, the new maximum retransmission count is determined to be 1 / 2 of the current maximum (not less than Nm).

[0158] It can be understood that the first initial value is Nm, the lower limit of the first adjustment range is Nm, the second initial value is Nv / 2, the lower limit of the second adjustment range is Nv / 2, the maximum retransmission count is increased in the way of *2 (multiplied by 2), and the maximum retransmission count is decreased in the way of / 2 (divided by 2) are only exemplary examples. For the specific values of the first initial value, the first adjustment range, the second initial value, the second adjustment range, and the amplitude of each adjustment of the maximum retransmission count (which can include the increasing amplitude and the decreasing amplitude), the embodiments of the present application do not make specific limitations.

[0159] For the UDP connection scenario, the initial value and the adjustment range of the maximum retransmission times are relatively low, which can ensure the stability of Internet access, better real-time performance of Internet access, and smoother games; for the TCP connection scenario, the initial value and the adjustment range of the maximum retransmission times are relatively high, which can better ensure the successful transmission of the physical layer, minimize the retransmission of the transport layer with a longer retransmission trigger time, and provide a faster Internet access experience.

[0160] Through the above process, whether it is a TCP connection scenario or a UDP connection scenario, a more stable and best Internet access experience can be provided for users.

[0161] In the transmission control method provided by the embodiments of the present application, the execution subject can be a transmission control device. In the embodiments of the present application, taking the transmission control device executing the transmission control method as an example, the transmission control device provided by the embodiments of the present application is described.

[0162] Figure 4 It is a schematic structural diagram of the transmission control device provided by the embodiments of the present application. Optionally, as Figure 4 shown, the device includes a first determination module 401 and a sending module 402, where:

[0163] The first determination module 401 is configured to determine the maximum retransmission count of the physical layer of the first data packet based on the transport layer protocol adopted by the first data packet;

[0164] The sending module 402 is configured to send the first data packet based on the Wi-Fi protocol and the maximum retransmission count;

[0165] Wherein, when the transport layer protocol is the Transmission Control Protocol, the adjustment range of the maximum retransmission times is the first adjustment range; when the transport layer protocol is the User Datagram Protocol, the adjustment range of the maximum retransmission times is the second adjustment range; the lower limit of the first adjustment range is higher than the lower limit of the second adjustment range; the upper limit of the first adjustment range is higher than the upper limit of the second adjustment range.

[0166] Optionally, the first determination module 401 and the sending module 402 may be electrically connected.

[0167] After determining the transport layer protocol adopted by the first data packet, the first determination module 401 may determine the maximum retransmission times of the physical layer of the first data packet based on the transport layer protocol.

[0168] After determining the maximum retransmission times of the physical layer of the first data packet, the sending module 402 may control the sending of the first data packet based on the Wi-Fi protocol at the physical layer based on the starting value.

[0169] Optionally, the transmission control device may further include:

[0170] An acquisition module, configured to acquire the actual retransmission times corresponding to each data packet for the data packets successfully sent during the target time period; the number of data packets is multiple;

[0171] A second determination module, configured to determine the first adjustment range, the second adjustment range, the first initial value, and the second initial value based on the actual retransmission times;

[0172] Wherein, when the transport layer protocol is the Transmission Control Protocol, the initial value of the maximum retransmission times is the first initial value; when the transport layer protocol is the User Datagram Protocol, the initial value of the maximum retransmission times is the second initial value.

[0173] Optionally, the second determination module includes:

[0174] A first acquisition unit, configured to acquire the maximum value of the actual retransmission times;

[0175] A first determination unit, configured to determine the first initial value based on the maximum value.

[0176] Optionally, the second determination module includes:

[0177] A second acquisition unit, configured to acquire the average value of the actual retransmission times;

[0178] A second determination unit, configured to determine the second initial value based on the average value.

[0179] Based on the transport layer protocol adopted by the first data packet, the embodiment of the present application determines the maximum number of retransmissions at the physical layer of the first data packet. Based on the Wi-Fi protocol and the maximum number of retransmissions, the first data packet is sent. Based on the transport layer protocol adopted for sending the first data packet, the maximum number of retransmissions is dynamically adjusted. It can achieve that when the transport layer protocol adopted by the first data packet is the Transmission Control Protocol, the delay and stuttering of video, etc. are reduced through a larger and appropriate maximum number of retransmissions at the physical layer. When the transport layer protocol adopted by the first data packet is the User Datagram Protocol, the next data packet is sent as early as possible through a smaller and appropriate maximum number of retransmissions at the physical layer to ensure the real-time nature of data transmission, reduce the delay and stuttering of games, etc., thereby improving the user's Internet experience.

[0180] The transmission control device in the embodiment of the present application can be an electronic device or a component in the electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal or other devices other than the terminal. Exemplarily, the electronic device can be a mobile phone, a tablet computer, a laptop computer, a handheld computer, an in-vehicle electronic device, a Mobile Internet Device (MID), an augmented reality (AR) / virtual reality (VR) device, a robot, a wearable device, an ultra-mobile personal computer (UMPC), a netbook, or a personal digital assistant (PDA), etc. It can also be a server, a Network Attached Storage (NAS), a personal computer (PC), a television (TV), a teller machine, or a self-service machine, etc. The embodiment of the present application does not make specific limitations.

[0181] The transmission control device in the embodiment of the present application can be a device with an operating system. The operating system can be the Android operating system, the iOS operating system, or other possible operating systems. The embodiment of the present application does not make specific limitations.

[0182] The transmission control device in the embodiments of the present application may be a device, or a component, an integrated circuit, or a chip in a terminal. The device may be a mobile electronic device or a non-mobile electronic device. Exemplarily, the mobile electronic device may be a mobile phone, a tablet computer, a laptop computer, a handheld computer, a vehicle-mounted electronic device, a wearable device, an ultra-mobile personal computer (UMPC), a netbook, or a personal digital assistant (PDA), etc., and the non-mobile electronic device may be a server, a Network Attached Storage (NAS), a personal computer (PC), a television (TV), a teller machine, or a self-service machine, etc. The embodiments of the present application do not make specific limitations.

[0183] The transmission control device in the embodiments of the present application may be a device with an operating system. The operating system may be an Android operating system, an iOS operating system, or other possible operating systems. The embodiments of the present application do not make specific limitations.

[0184] The transmission control device provided in the embodiments of the present application can implement Figures 1 to 3 each process implemented by the method embodiments. To avoid repetition, it will not be described in detail here.

[0185] Optionally, as Figure 5 shown, the embodiments of the present application further provide an electronic device 500, including a processor 501 and a memory 502. A program or instruction that can run on the processor 501 is stored on the memory 502. When the program or instruction is executed by the processor 501, each step of the above-mentioned transmission control method embodiment is implemented, and the same technical effect can be achieved. To avoid repetition, it will not be described in detail here.

[0186] It should be noted that the electronic devices in the embodiments of the present application include the above-mentioned mobile electronic devices and non-mobile electronic devices.

[0187] Figure 6 is a schematic diagram of the hardware structure of the electronic device provided in the embodiments of the present application.

[0188] The electronic device 600 includes but is not limited to: a radio frequency unit 601, a network module 602, an audio output unit 603, an input unit 604, a sensor 605, a display unit 606, a user input unit 607, an interface unit 608, a memory 609, and a processor 610, etc.

[0189] Those skilled in the art can understand that the electronic device 600 may further include a power source (such as a battery) for supplying power to each component. The power source can be logically connected to the processor 610 through a power management system, so as to realize functions such as management of charging, discharging, and power consumption management through the power management system. Figure 6 The structure of the electronic device shown in Figure 6 does not limit the electronic device. The electronic device may include more or fewer components than shown in the figure, or combine some components, or have different component arrangements, which will not be elaborated here.

[0190] Among them, the processor 610 can be used to determine the maximum retransmission times of the physical layer of the first data packet based on the transport layer protocol adopted by the first data packet;

[0191] The processor 610 can also be used to send the first data packet based on the Wi-Fi protocol and the maximum retransmission times;

[0192] Among them, when the transport layer protocol is the Transmission Control Protocol, the adjustment range of the maximum retransmission times is the first adjustment range; when the transport layer protocol is the User Datagram Protocol, the adjustment range of the maximum retransmission times is the second adjustment range; the lower limit of the first adjustment range is higher than the lower limit of the second adjustment range; the upper limit of the first adjustment range is higher than the upper limit of the second adjustment range.

[0193] Based on the transport layer protocol adopted by the first data packet, this application embodiment determines the maximum retransmission times of the physical layer of the first data packet, sends the first data packet based on the Wi-Fi protocol and the maximum retransmission times, and dynamically adjusts the maximum retransmission times based on the transport layer protocol adopted for sending the first data packet. It can reduce latency and stuttering of videos, etc. by using a larger and appropriate maximum retransmission times of the physical layer when the transport layer protocol adopted by the first data packet is the Transmission Control Protocol. When the transport layer protocol adopted by the first data packet is the User Datagram Protocol, it can send the next data packet as early as possible by using a smaller and appropriate maximum retransmission times of the physical layer to ensure the real-time nature of data transmission, reduce latency and stuttering of games, etc., thereby improving the user's Internet experience.

[0194] Optionally, the processor 610 can also be used to obtain the actual retransmission times corresponding to each data packet for the data packets successfully sent within the target time period; the number of data packets is multiple;

[0195] The processor 610 can also be used to determine the first adjustment range, the second adjustment range, the first initial value, and the second initial value based on the actual retransmission times;

[0196] Wherein, when the transport layer protocol is the Transmission Control Protocol, the initial value of the maximum number of retransmissions is the first initial value; when the transport layer protocol is the User Datagram Protocol, the initial value of the maximum number of retransmissions is the second initial value.

[0197] Optionally, the processor 610 may also be configured to obtain the maximum value of the actual number of retransmissions;

[0198] The processor 610 may also be configured to determine the first initial value based on the maximum value.

[0199] Optionally, the processor 610 may also be configured to obtain the average value of the actual number of retransmissions;

[0200] The processor 610 may also be configured to determine the second initial value based on the average value.

[0201] It should be understood that in the embodiments of the present application, the input unit 604 may include a Graphics Processing Unit (GPU) 6041 and a microphone 6042. The graphics processor 6041 processes the image data of static pictures or videos obtained by an image capturing device (such as a camera) in a video capture mode or an image capture mode. The display unit 606 may include a display panel 6061, and the display panel 6061 may be configured in the form of a liquid crystal display, an organic light emitting diode, or the like. The user input unit 607 includes at least one of a touch panel 6071 and other input devices 6072. The touch panel 6071 is also referred to as a touch screen. The touch panel 6071 may include two parts: a touch detection device and a touch controller. The other input devices 6072 may include, but are not limited to, a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick, which will not be elaborated herein.

[0202] The memory 609 can be used to store software programs and various data. The memory 609 may mainly include a first storage area for storing programs or instructions and a second storage area for storing data. Among them, the first storage area may store an operating system, application programs or instructions required for at least one function (such as a sound playback function, an image playback function, etc.). In addition, the memory 609 may include a volatile memory or a non-volatile memory, or the memory 609 may include both a volatile memory and a non-volatile memory. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), a static random access memory (SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (SDRAM), a double data rate synchronous dynamic random access memory (DDR SDRAM), an enhanced synchronous dynamic random access memory (ESDRAM), a synch link dynamic random access memory (SLDRAM), and a direct rambus random access memory (DRRAM). The memory 609 in the embodiments of the present application includes but is not limited to these and any other suitable types of memories.

[0203] The processor 610 may include one or more processing units; optionally, the processor 610 integrates an application processor and a modem processor. Among them, the application processor mainly processes operations related to the operating system, user interface, and application programs, etc., and the modem processor mainly processes wireless communication signals, such as a baseband processor. It can be understood that the above modem processor may not be integrated into the processor 610 either.

[0204] The embodiments of the present application further provide a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, it implements each process of the above transmission control method embodiment and can achieve the same technical effect. To avoid repetition, it will not be elaborated here.

[0205] Among them, the processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes computer-readable storage media such as computer read-only memory ROM, random access memory RAM, magnetic disks, or optical discs, etc.

[0206] Another embodiment of the present application provides a chip, which includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement each process of the above transmission control method embodiment, and can achieve the same technical effects. To avoid repetition, it will not be elaborated here.

[0207] It should be understood that the chip mentioned in the embodiments of the present application may also be referred to as a system-on-chip, system chip, chip system, or system-on-a-chip, etc.

[0208] The embodiments of the present application provide a computer program product. The program product is stored in a storage medium and is executed by at least one processor to implement each process of the above transmission control method embodiment, and can achieve the same technical effects. To avoid repetition, it will not be elaborated here.

[0209] It should be noted that in this article, the term "including", "comprising", or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article, or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or further includes elements inherent to such process, method, article, or device. Without more limitations, an element defined by the statement "including a..." does not exclude the existence of additional identical elements in the process, method, article, or device including that element. In addition, it should be pointed out that the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in the reverse order according to the functions involved. For example, the described methods may be performed in an order different from that described, and various steps may be added, omitted, or combined. Additionally, the features described with reference to certain examples may be combined in other examples.

[0210] Through the description of the above embodiments, those skilled in the art can clearly understand that the above-described embodiment methods can be implemented by means of software plus a necessary general hardware platform. Of course, they can also be implemented by hardware, but in many cases, the former is a better implementation. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art can be embodied in the form of a computer software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes several instructions for causing a terminal (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of the present application.

[0211] The embodiments of the present application have been described above in conjunction with the accompanying drawings. However, the present application is not limited to the above specific embodiments. The above specific embodiments are merely illustrative and not restrictive. Under the inspiration of the present application, those of ordinary skill in the art can also make many forms without departing from the purpose of the present application and the scope protected by the claims, and all of them belong to the protection scope of the present application.

Claims

1. A transmission control method, characterized in that, Including: Determine the maximum number of retransmissions at the physical layer of the first data packet based on the transport layer protocol adopted by the first data packet; Send the first data packet based on the Wi-Fi protocol and the maximum number of retransmissions; Wherein, when the transport layer protocol is the Transmission Control Protocol, the adjustment range of the maximum number of retransmissions is the first adjustment range; when the transport layer protocol is the User Datagram Protocol, the adjustment range of the maximum number of retransmissions is the second adjustment range; the lower limit of the first adjustment range is higher than the lower limit of the second adjustment range; the upper limit of the first adjustment range is higher than the upper limit of the second adjustment range; Wherein, before determining the maximum number of retransmissions at the physical layer of the first data packet based on the transport layer protocol adopted by the first data packet, the method further includes: For the data packets successfully sent within the target time period, obtain the actual number of retransmissions corresponding to each data packet; the number of data packets is multiple; Determine the first adjustment range, the second adjustment range, the first initial value, and the second initial value based on the actual number of retransmissions; Wherein, when the transport layer protocol is the Transmission Control Protocol, the initial value of the maximum number of retransmissions is the first initial value; when the transport layer protocol is the User Datagram Protocol, the initial value of the maximum number of retransmissions is the second initial value.

2. The transmission control method according to claim 1, wherein Determining the first initial value based on the actual number of retransmissions includes: Obtain the maximum value of the actual number of retransmissions; Determine the first initial value based on the maximum value.

3. The transmission control method according to claim 1, wherein Determining the second initial value based on the actual number of retransmissions includes: Obtain the average value of the actual number of retransmissions; Determine the second initial value based on the average value.

4. A transmission control device, characterized in that, Including: A first determination module, configured to determine the maximum number of retransmissions at the physical layer of the first data packet based on the transport layer protocol adopted by the first data packet; A sending module, configured to send the first data packet based on the Wi-Fi protocol and the maximum number of retransmissions; Wherein, when the transport layer protocol is the Transmission Control Protocol, the adjustment range of the maximum number of retransmissions is the first adjustment range; when the transport layer protocol is the User Datagram Protocol, the adjustment range of the maximum number of retransmissions is the second adjustment range; the lower limit of the first adjustment range is higher than the lower limit of the second adjustment range; the upper limit of the first adjustment range is higher than the upper limit of the second adjustment range; Wherein, further including: An obtaining module, configured to obtain the actual number of retransmissions corresponding to each data packet for the data packets successfully sent within the target time period; the number of data packets is multiple; A second determination module, configured to determine the first adjustment range, the second adjustment range, the first initial value, and the second initial value based on the actual number of retransmissions; Wherein, when the transport layer protocol is the Transmission Control Protocol, the initial value of the maximum number of retransmissions is the first initial value; when the transport layer protocol is the User Datagram Protocol, the initial value of the maximum number of retransmissions is the second initial value.

5. The transmission control device according to claim 4, wherein The second determination module includes: A first obtaining unit, configured to obtain a maximum value of the actual retransmission times; A first determining unit, configured to determine the first initial value based on the maximum value.

6. The transmission control device according to claim 4, wherein The second determining module includes: A second obtaining unit, configured to obtain an average value of the actual retransmission times; A second determining unit, configured to determine the second initial value based on the average value.

7. An electronic device, characterized in that Comprising a processor and a memory, the memory stores a program or instruction that can be run on the processor, and when the program or instruction is executed by the processor, the transmission control method according to any one of claims 1-3 is implemented.

8. A readable storage medium, characterized in that, A program or instruction is stored on the readable storage medium, and when the program or instruction is executed by a processor, the transmission control method according to any one of claims 1-3 is implemented.

Citation Information

Patent Citations

  • Data communication apparatus and data communication method

    JP2007158495A