Network transmission control method, terminal device and network transmission control system
By acquiring downlink control information configured by the base station and combining it with the congestion window status of the link layer and transport layer, the target congestion window is dynamically adjusted, which solves the problem of low network transmission control accuracy, improves data transmission efficiency, and reduces the probability of network congestion.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ZHEJIANG DAHUA TECH CO LTD
- Filing Date
- 2023-01-17
- Publication Date
- 2026-04-24
AI Technical Summary
In existing technologies, the precision of network transmission control is not high, resulting in low data transmission efficiency and an increased probability of network congestion, and it is impossible to make fine adjustments based on the real-time network conditions.
By acquiring downlink control information configured by the base station, the congestion window and status of the link layer are determined. Combined with the congestion control stage of the transport layer, the target congestion window is dynamically adjusted to achieve more refined network transmission control.
It improves data transmission efficiency, reduces the probability of network congestion, and enables more precise network transmission control.
Smart Images

Figure CN116156552B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data transmission technology, and in particular to a network transmission control method, terminal equipment, and network transmission control system. Background Technology
[0002] With the advent of the data era, massive amounts of data need to be transmitted. Therefore, how to perform congestion control between base stations and terminal devices to improve bandwidth utilization while reducing the probability of network congestion has become increasingly important. Current technologies typically adjust congestion in fixed ways at different stages, failing to provide finer adjustments based on real-time network conditions. This results in low precision in network transmission control, leading to low data transmission efficiency and a correspondingly higher probability of network congestion. Therefore, improving the precision of network transmission control has become an urgent problem to be solved. Summary of the Invention
[0003] The main technical problem addressed by this application is to provide a network transmission control method, terminal equipment, and network transmission control system that can improve the accuracy of network transmission control.
[0004] To address the aforementioned technical problems, this application provides a network transmission control method in a first aspect. The method includes: responding to the transmission of historical uplink data from the previous period to a base station; obtaining downlink control information configured by the base station for the current period; determining a first congestion window and a first state corresponding to the link layer within the current period based on the downlink control information; wherein the downlink control information is bandwidth-related, and the first state includes at least congestion and normal; determining the congestion control stage of the transport layer within the current period, and a second congestion window matching the congestion control stage of the current period; wherein the congestion control stage includes at least a slow start stage and a congestion avoidance stage; determining a target congestion window corresponding to the transport layer within the current period based on the first congestion window, the second congestion window, and the first state of the current period; and transmitting currently uploaded data within the current period to the base station using the target congestion window of the current period.
[0005] To address the aforementioned technical problems, a second aspect of this application provides a terminal device comprising: a communication module, a detection module, a control module, and a transmission module. The communication module is configured to, when historical uplink data from the previous period is transmitted to a base station, acquire downlink control information configured by the base station for the current period, and determine a first congestion window and a first state corresponding to the link layer within the current period based on the downlink control information; wherein the downlink control information is bandwidth-related. The detection module is configured to determine the congestion control stage of the transport layer within the current period, and a second congestion window matching the congestion control stage of the current period; wherein the congestion control stage includes a slow start stage and a congestion avoidance stage. The control module is configured to determine a target congestion window corresponding to the transport layer within the current period based on the first congestion window, the second congestion window, and the first state of the current period. The transmission module is configured to transmit currently uploaded data within the current period to the base station using the target congestion window of the current period.
[0006] To address the aforementioned technical problems, a third aspect of this application provides a network transmission control system, comprising a memory and a processor coupled to each other, wherein the memory stores program data, and the processor invokes the program data to execute the method described in the first aspect.
[0007] The above scheme, after the historical uplink data of the previous cycle is sent to the base station, obtains the downlink control information configured by the base station for the current cycle, parses the downlink control information, and obtains the first congestion window and first state corresponding to the link layer in the current cycle. The downlink control information configured by the base station is bandwidth-related, and the first state includes at least congestion and normal states. The congestion control stage of the transport layer in the current cycle is determined, and a second congestion window matching the congestion control stage of the current cycle is obtained. The congestion control stage includes at least a slow start stage and a congestion avoidance stage. Using the first congestion window, second congestion window, and first state of the current cycle, the target congestion window corresponding to the transport layer in the current cycle is comprehensively determined. Thus, the first congestion window and first state corresponding to the link layer are combined in the calculation process of the target congestion window of the transport layer, so that the target congestion window can be adjusted more finely based on the real-time network status, resulting in a more accurate target congestion window for the transport layer in the current cycle. Using the target congestion window of the current cycle, the amount of current uplink data is determined, and the currently uploaded data in the current cycle is sent to the base station, improving data transmission efficiency and reducing the probability of network congestion. Attached Figure Description
[0008] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. Wherein:
[0009] Figure 1 This is a flowchart illustrating one embodiment of the network transmission control method of this application;
[0010] Figure 2 This is a flowchart illustrating another embodiment of the network transmission control method of this application;
[0011] Figure 3 This is a schematic diagram of the structure of one embodiment of the terminal device of this application;
[0012] Figure 4 This is a schematic diagram of the structure of one embodiment of the electronic device of this application;
[0013] Figure 5 This is a schematic diagram of one embodiment of the computer-readable storage medium of this application. Detailed Implementation
[0014] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0015] In this paper, the terms "system" and "network" are often used interchangeably. The term "and / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. Additionally, the character " / " generally indicates that the preceding and following related objects have an "or" relationship. Furthermore, "many" in this paper means two or more.
[0016] The network transmission control method provided in this application is used to adjust the congestion window when data is transmitted between the base station and the terminal equipment. In this application, the execution subject of the network transmission control method is the processor on the terminal equipment that can call data.
[0017] Please see Figure 1 , Figure 1 This is a flowchart illustrating one embodiment of the network transmission control method of this application, which includes:
[0018] S101: In response to the historical uplink data of the previous period being sent to the base station, obtain the downlink control information configured by the base station for the current period, and determine the first congestion window and the first state corresponding to the link layer in the current period based on the downlink control information. The downlink control information is related to bandwidth, and the first state includes at least congestion and normal.
[0019] Specifically, after the historical uplink data of the previous cycle is sent to the base station, the downlink control information related to bandwidth configured by the base station for the current cycle is obtained. The downlink control information is parsed to obtain the first congestion window and the first state corresponding to the link layer in the current cycle. The first state indicates congestion and normal.
[0020] Furthermore, the first congestion window and the first state are related to the modulation and coding scheme and transport block size included in the downlink control information, which are related to bandwidth.
[0021] In one application mode, after the terminal device sends the historical uplink data of the previous cycle to the base station, it obtains the downlink control information related to bandwidth configured by the base station for the current cycle of the terminal device. The historical uplink data includes the cache status report of the terminal device. Based on the cache status report, the number of terminal devices connected to the base station and the priority of the terminal device, the base station determines the bandwidth corresponding to the terminal device and generates downlink control information. The downlink control information is parsed to obtain the first congestion window and the first state corresponding to the link layer in the current cycle.
[0022] In another application, after the terminal device sends the historical uplink data of the previous cycle to the base station through the Physical Uplink Shared Channel, it obtains the downlink control information related to bandwidth configured by the base station for the current cycle. The base station determines the bandwidth corresponding to the terminal device and generates downlink control information based on the signal-to-noise ratio, signal strength and power margin of the Physical Uplink Shared Channel. The downlink control information is parsed to obtain the first congestion window and the first state corresponding to the link layer in the current cycle.
[0023] S102: Determine the congestion control phase of the transport layer in the current period, and the second congestion window that matches the congestion control phase of the current period, wherein the congestion control phase includes at least a slow start phase and a congestion avoidance phase.
[0024] Specifically, it determines whether the congestion control phase of the transport layer in the current period is the slow start phase or the congestion avoidance phase, and obtains a second congestion window that matches the congestion control phase of the current period.
[0025] In one application mode, the congestion control stage of the transport layer in the current cycle is determined based on the congestion control stage of the previous cycle and the acknowledgment character of the previous cycle. The acknowledgment character includes information on whether historical uplink data was lost in the previous cycle. Based on the acknowledgment character and the congestion control stage of the current cycle, a second congestion window that matches the congestion control stage of the current cycle is determined.
[0026] In another application, the length of received bytes of data in the previous cycle is obtained from the base station feedback. Based on the length of received bytes and the window length of the target congestion window in the previous cycle, confirmation information on whether data loss occurred in the previous cycle is determined. Based on the congestion control phase of the previous cycle and the confirmation information of the previous cycle, the congestion control phase of the transport layer in the current cycle is determined. Based on the confirmation information and the congestion control phase of the current cycle, a second congestion window matching the congestion control phase of the current cycle is determined.
[0027] Furthermore, the congestion control phase includes at least a slow start phase and a congestion avoidance phase. When the previous cycle was in the slow start phase, if the target congestion window of the previous cycle was smaller than the window length threshold, the current cycle remains in the slow start phase, and the second congestion window of the current cycle grows exponentially in length compared to the target congestion window of the previous cycle. If the target congestion window of the previous cycle exceeded the window length threshold, the current cycle enters the congestion avoidance phase, where the second congestion window corresponding to the congestion avoidance phase grows linearly in length compared to the target congestion window of the previous cycle. When the previous cycle was in the congestion avoidance phase, if no data loss occurred, the second congestion window grows linearly in length compared to the target congestion window of the previous cycle. If data loss occurred, the target congestion window length of the previous cycle is reduced by a preset ratio to obtain the second congestion window.
[0028] S103: Based on the first congestion window, the second congestion window, and the first state of the current period, determine the target congestion window corresponding to the transport layer in the current period.
[0029] Specifically, by utilizing the first congestion window, the second congestion window, and the first state of the current period, the target congestion window corresponding to the transport layer in the current period is determined comprehensively. This combines the first congestion window and the first state corresponding to the link layer into the calculation process of the target congestion window of the transport layer, so that the target congestion window can be adjusted more precisely based on the real-time network status, resulting in a more accurate target congestion window of the transport layer in the current period.
[0030] In one application mode, a first adjustment direction is determined based on the first state corresponding to the link layer and the congestion control stage of the current period. The second congestion window is modified according to the first adjustment direction using the first congestion window of the current period to obtain the target congestion window corresponding to the transport layer in the current period. The first adjustment direction includes increasing, decreasing, and remaining unchanged. If the current period is in the slow start stage or in the target congestion stage and no data loss has occurred, the efficiency of increasing the target congestion window is improved. If the current period is in the target congestion stage and data loss has occurred, the step size of the target congestion window is adaptively decreased.
[0031] In another application, in response to the current period's congestion control phase being in the slow start phase, or the current period's congestion control phase being in the congestion avoidance phase and no data loss has occurred, the second congestion window is modified using the first congestion window of the current period to keep the window length of the second congestion window unchanged or increased. This improves the efficiency of increasing the target congestion window when the current period is in the slow start phase or the target congestion phase and no data loss has occurred. In response to the current period's congestion control phase being in the congestion avoidance phase and data loss has occurred, the second congestion window is modified using the first congestion window of the current period according to the second adjustment direction to obtain the target congestion window corresponding to the transport layer in the current period. The second adjustment direction is to keep it unchanged or decrease it. This adaptively adjusts and decreases the step size of the target congestion window when the current period is in the target congestion phase and data loss has occurred.
[0032] S104: Use the target congestion window of the current period to send the currently uploaded data of the current period to the base station.
[0033] Specifically, the target congestion window of the current period is used to determine the amount of data in the current uplink data, and the current uplink data in the current period is sent to the base station.
[0034] Furthermore, when determining the target congestion window, the first congestion window and the first state, which are related to the real-time network status, are combined, thereby improving the efficiency of data transmission and reducing the probability of network congestion when using the target congestion window for data transmission.
[0035] The above scheme, after the historical uplink data of the previous cycle is sent to the base station, obtains the downlink control information configured by the base station for the current cycle, parses the downlink control information, and obtains the first congestion window and first state corresponding to the link layer in the current cycle. The downlink control information configured by the base station is bandwidth-related, and the first state includes at least congestion and normal states. The congestion control stage of the transport layer in the current cycle is determined, and a second congestion window matching the congestion control stage of the current cycle is obtained. The congestion control stage includes at least a slow start stage and a congestion avoidance stage. Using the first congestion window, second congestion window, and first state of the current cycle, the target congestion window corresponding to the transport layer in the current cycle is comprehensively determined. Thus, the first congestion window and first state corresponding to the link layer are combined in the calculation process of the target congestion window of the transport layer, so that the target congestion window can be adjusted more finely based on the real-time network status, resulting in a more accurate target congestion window for the transport layer in the current cycle. Using the target congestion window of the current cycle, the amount of current uplink data is determined, and the currently uploaded data in the current cycle is sent to the base station, improving data transmission efficiency and reducing the probability of network congestion.
[0036] Please see Figure 2 , Figure 2 This is a flowchart illustrating another embodiment of the network transmission control method of this application, the method comprising:
[0037] S201: In response to the historical uplink data of the previous period being sent to the base station, obtain the downlink control information configured by the base station for the current period, and determine the first congestion window and the first state corresponding to the link layer in the current period based on the downlink control information. The downlink control information is related to bandwidth, and the first state includes at least congestion and normal.
[0038] Specifically, after the historical uplink data of the previous cycle is sent to the base station, the base station sends downlink control information configured for the current cycle to the terminal device. The terminal device receives the downlink control information and parses it, and determines the first congestion window and the first state corresponding to the link layer in the current cycle based on the parsing result.
[0039] In one application mode, the downlink control information configured by the base station for the current period is obtained, and the downlink control information is parsed to obtain the modulation and coding strategy and the transport block size; wherein, the modulation and coding strategy and the transport block size are related to the bandwidth of the current period; the maximum segment length is obtained, and based on the maximum segment length and the transport block size, the first congestion window corresponding to the link layer in the current period is determined; based on the modulation and coding strategy and the transport block size, the first state corresponding to the link layer in the current period is determined.
[0040] Specifically, after the base station configures downlink control information for the current period, it obtains and parses the downlink control information to obtain the adjustment and coding strategy and transport block size within the current period, obtains the maximum segment size corresponding to the terminal device, and determines the window length of the first congestion window corresponding to the link layer within the current period based on the ratio of the maximum segment size to the transport block size, thereby obtaining the first congestion window of the current period. This allows for a comprehensive parsing of the downlink control information and improves the accuracy of the first congestion window.
[0041] Furthermore, based on the modulation and coding strategy and the change information of data in the transport block size, the first state corresponding to the link layer in the current cycle is determined to improve the accuracy of the first state.
[0042] In one application scenario, a terminal device transmits historical uplink data to the base station via a physical uplink shared channel. Simultaneously, it requests resources for subsequent transmissions from the base station. The base station comprehensively evaluates the data based on the uplink channel's signal-to-noise ratio, signal strength, power margin, and the buffer status report, the number of access terminals, and service priorities reported by the terminal device. It then allocates resources to the terminal, determines the bandwidth for the current period, and improves bandwidth accuracy. The base station notifies the terminal device of downlink control information carried by the physical downlink control channel. The terminal device maps the transport block size based on the decoded modulation and coding strategy and the number of resource blocks. It then determines the first congestion window corresponding to the link layer for the current period based on the ratio of the transport block size to the maximum segment length.
[0043] Furthermore, based on the modulation and coding strategy and the transport block size, the first state corresponding to the link layer in the current period is determined, including: based on the variance and descent rate of the modulation and coding strategy, and the variance and descent rate of the transport block size, the first state corresponding to the link layer in the current period is determined.
[0044] Specifically, when the variance of the modulation and coding scheme (MCS) is less than the first modulation variance threshold, and the decrease in the transport block size (TBSize) exceeds the first size amplitude threshold, it is considered that radio resource contention has occurred at the link layer, and the first state is congestion. When the decrease in the MCS exceeds the first modulation amplitude threshold, and the decrease in the transport block size exceeds the second size amplitude threshold, it is considered that network quality has deteriorated and random packet loss has occurred at the link layer, and the first state is network loss. When the variance of the MCS is less than the second modulation variance threshold, and the variance of the transport block size is less than the first size variance threshold, it is considered that the transmission at the link layer is normal. The above process is expressed by the following formula:
[0045]
[0046] Wherein, the first modulation variance threshold is γ, the first size amplitude threshold is η, the first modulation amplitude threshold is δ, the second size amplitude threshold is ε, the second modulation variance threshold is φ, and the first size variance threshold is... .
[0047] Furthermore, the first state includes congestion, network loss, and normal. By utilizing adjustment and coding strategies, as well as the variance and descent rate corresponding to the transport block size, and setting thresholds corresponding to different states, the accuracy of the first state is improved.
[0048] S202: Based on the congestion control stage of the transport layer in the previous cycle and the data transmission results of the transport layer in the previous cycle, determine the congestion control stage of the transport layer in the current cycle.
[0049] Specifically, the data transmission results include whether data loss has occurred or not. Based on the congestion control stage of the transport layer in the previous cycle and the data transmission results of the transport layer in the previous cycle, the congestion control stage of the transport layer in the current cycle is determined.
[0050] It should be noted that, before determining the congestion control stage of the transport layer in the current period based on the congestion control stage of the transport layer in the previous period and the data transmission results of the transport layer in the previous period, the process includes: in response to not obtaining the congestion control stage of the transport layer in the previous period, obtaining an initial congestion window, using the window with the larger window length between the first congestion window and the initial congestion window as the target congestion window corresponding to the transport layer in the current period, and proceeding to the step of sending the currently uploaded data in the current period to the base station using the target congestion window of the current period.
[0051] Specifically, if the congestion control stage of the transport layer in the previous cycle is not obtained, it indicates that the transport layer is sending data for the first time in the current cycle. The initial congestion window is obtained, and the window lengths of the initial congestion window and the first congestion window are compared. The window with the larger window length is taken as the target congestion window for the current cycle, and the process directly proceeds to step S207 to send data for the first time. This increases the window length of the target congestion window when sending data for the first time, thereby improving the efficiency of data transmission.
[0052] S203: Obtain the second congestion window that matches the congestion control phase of the current cycle.
[0053] Specifically, the second congestion window corresponding to the slow start phase grows exponentially in length compared to the target congestion window of the previous period, while the second congestion window corresponding to the congestion avoidance phase grows linearly in length compared to the target congestion window of the previous period, until data loss occurs and the length of the target congestion window of the previous period is reduced by a preset ratio.
[0054] Furthermore, when the previous cycle is in the slow start phase, if the target congestion window of the previous cycle is smaller than the window length threshold and no data loss occurs, the current cycle is still in the slow start phase. The second congestion window grows exponentially in length compared to the target congestion window of the previous cycle. If data loss occurs in the previous cycle, the current cycle enters the congestion avoidance phase, and the window length of the target congestion window of the previous cycle is reduced by a preset ratio to obtain the second congestion window.
[0055] Understandably, if no data loss occurred in the previous period when the congestion avoidance phase was in effect, the current period will also be in the congestion avoidance phase. The second congestion window will increase linearly in length compared to the target congestion window of the previous period. If data loss occurred in the previous period, the current period will be in the congestion avoidance phase. The length of the target congestion window of the previous period will be reduced by a preset ratio to obtain the second congestion window. This will accurately obtain the second congestion window that matches the target congestion window and improve the accuracy of the final target congestion window.
[0056] In one application scenario, the exponential growth phase corresponds to doubling the target congestion window of the previous period each time, while the linear growth phase corresponds to increasing the target congestion window of the previous period by a maximum segment length each time, and reducing the window length of the target congestion window of the previous period by a preset ratio, which corresponds to reducing the target congestion window of the previous period to at least half. In other application scenarios, the exponential growth, linear growth, and preset ratio can be customized based on the corresponding scenario, and this application does not impose specific restrictions on them.
[0057] S204: In response to the current period's congestion control phase being a slow start phase and no data loss occurring, the first congestion window and the target congestion window of the previous period are concatenated to obtain a candidate congestion window. The window with the larger window length between the candidate congestion window and the second congestion window is taken as the target congestion window corresponding to the transport layer in the current period.
[0058] Specifically, if the congestion control phase of the current period is the slow start phase and no data loss occurs, the second congestion window grows exponentially compared to the target congestion window of the previous period. The first congestion window and the target congestion window of the previous period are concatenated to obtain a candidate congestion window, wherein the window length of the candidate congestion window is the sum of the window lengths of the first congestion window and the target congestion window of the previous period.
[0059] Furthermore, by comparing the window lengths of the candidate congestion window and the second congestion window, the window with the larger window length among the candidate congestion window and the second congestion window is selected as the target congestion window for the transport layer in the current period. This maximizes the rate at which the window length increases during the slow start phase, thereby improving the efficiency of data transmission.
[0060] Optionally, before comparing the window lengths of the candidate congestion window and the second congestion window, the method further includes: correcting the second congestion window based on the target congestion window of the previous period and the number of bytes received by the base station in the previous period to obtain an updated second congestion window.
[0061] Specifically, the number of bytes received by the base station in the previous cycle is denoted as recv, the target congestion window in the previous cycle is denoted as cwnd_p, and the first congestion window is denoted as cwnd_1. The updated second congestion window is cwnd_p + recv. When the base station successfully receives all the data in the previous cycle, the second congestion window is doubled compared to the target congestion window in the previous cycle. The candidate congestion window is cwnd_p + cwnd_1. Therefore, when comparing the window lengths of the candidate congestion window and the second congestion window, the larger value between the number of bytes recv and the first congestion window cwnd_1 is used as the increment value Δcwnd, and cwnd_p + Δcwnd is used as the window length of the target congestion window. This improves the accuracy of the target congestion window and makes the target congestion window adjust according to the maximization trend during the slow start phase, thereby improving bandwidth utilization.
[0062] S205: In response to the current period's congestion control phase being the congestion avoidance phase and data loss occurring, determine the second state corresponding to the transport layer based on the first state, and determine the target congestion window corresponding to the transport layer within the current period based on the second state, the first congestion window, and the second congestion window.
[0063] Specifically, if the congestion control phase of the current period is the congestion avoidance phase and data loss occurs, the second state of the transport layer is determined according to the first state of the link layer. The second state is the opposite of the first state. Thus, when data loss occurs, the target congestion window of the transport layer in the current period is determined directly based on the second state of the transport layer, the first congestion window, and the second congestion window, thereby improving the accuracy of the target congestion window in the current period when data loss occurs in the congestion avoidance phase.
[0064] In one application scenario, in response to the first state being congested, the second state corresponding to the transport layer is determined to be normal. The window lengths of the first congestion window and the second congestion window are weighted and summed to obtain the target congestion window corresponding to the transport layer in the current period. In response to the first state being normal, the second state corresponding to the transport layer is determined to be congested. The window with the smaller window length between the first congestion window and the second congestion window is taken as the target congestion window corresponding to the transport layer in the current period.
[0065] Specifically, when the first state is congestion and data loss occurs, it is determined that the data loss is caused by link layer congestion, and the second state of the transport layer is normal. Since data loss has occurred, the window length of the second congestion window compared to the target congestion window of the previous period decreases by a preset ratio, denoted as cwnd_2. The first congestion window is denoted as cwnd_1. A weighted sum of the first congestion window cwnd_1 and the second congestion window cwnd_2 is then obtained to obtain the target congestion window corresponding to the transport layer in the current period. The above process is expressed by the following formula:
[0066] cwnd_c=α*cwnd_1+(1-α)cwnd_2, α∈[0,1] (2)
[0067] The target congestion window is cwnd_c. When data loss occurs in the current period and the second state of the transport layer is normal, the first congestion window corresponding to the link layer is combined with the target congestion window in the calculation process by weighted summation. This reduces the degree of decrease in the target congestion window of the current period compared to the target congestion window of the previous period, thereby improving bandwidth utilization.
[0068] Specifically, when the first state is normal and data loss occurs, it is determined that the data loss is caused by transport layer congestion, and the second state of the transport layer is congestion. Since data loss has occurred, the window length of the second congestion window compared to the target congestion window of the previous period decreases by a preset ratio, denoted as cwnd_3. The first congestion window is denoted as cwnd_1. The window with the smaller window length between the first congestion window cwnd_1 and the second congestion window cwnd_3 is taken as the target congestion window for the current period, cwnd_c = min(cwnd_1, cwnd_3). Therefore, when data loss occurs in the current period and the second state of the transport layer is congestion, the window length of the target congestion window is reduced as quickly as possible to reduce the probability of network congestion.
[0069] S206: In response to the current period's congestion control phase being the congestion avoidance phase and no data loss occurring, the window lengths of the first congestion window and the second congestion window are weighted and summed to obtain the target congestion window corresponding to the transport layer in the current period.
[0070] Specifically, if the congestion control phase of the current period is the congestion avoidance phase and no data loss occurs, the second congestion window, denoted as cwnd_4, grows linearly in length compared to the target congestion window of the previous period. The first congestion window is denoted as cwnd_1. A weighted sum of the first congestion window cwnd_1 and the second congestion window cwnd_4 is then performed to obtain the target congestion window corresponding to the transport layer in the current period. The above process is expressed by the following formula:
[0071] cwnd_c=β*cwnd_1+(1-β)cwnd_4,β∈[0,1] (3)
[0072] The target congestion window is cwnd_c. When the current period is in the congestion avoidance phase and no data loss occurs, the first congestion window corresponding to the link layer is combined with the target congestion window in the calculation process by weighted summation. This increases the growth rate of the target congestion window in the current period compared to the target congestion window in the previous period, thereby improving bandwidth utilization.
[0073] Optionally, the congestion control phase further includes a congestion recovery phase, and the first state further includes network loss. In response to the current period's congestion control phase being a congestion avoidance phase and no data loss occurring, after weighted summation of the window lengths of the first congestion window and the second congestion window to obtain the target congestion window corresponding to the transport layer in the current period, the following steps are taken: in response to the current period's congestion control phase being a congestion recovery phase, or the current period's congestion control phase being a congestion avoidance phase and the first state being network loss, the target congestion window of the previous period is taken as the target congestion window of the current period.
[0074] Specifically, if the current period's congestion control phase is in the congestion recovery phase, the target congestion window of the previous period remains unchanged. Before entering the congestion recovery phase from the congestion avoidance phase, the window length of the target congestion window corresponding to the congestion recovery phase is reduced to at least half of the target congestion window corresponding to the congestion avoidance phase in the previous period. This is so that when the transport layer is in the congestion recovery phase, the target congestion window is not adjusted temporarily. After the transport layer returns from the congestion recovery phase to the congestion avoidance phase, it returns to any of the steps S204-S206 above, reducing the probability of continuous network congestion.
[0075] Furthermore, if the current period's congestion control phase is in the congestion avoidance phase and the first state of the link layer is network loss, then the target congestion window of the previous period remains unchanged, thereby waiting for the link layer network to recover, and then returning to any of the steps S204-S206 above to reduce the probability of continuous network congestion.
[0076] S207: Use the target congestion window of the current period to send the currently uploaded data of the current period to the base station.
[0077] Specifically, the target congestion window of the current period is used to determine the amount of data in the current uplink data, and the current uplink data in the current period is sent to the base station.
[0078] In this embodiment, when calculating the target congestion window for the current period, the first congestion window and the first state corresponding to the link layer are combined with the calculation process of the target congestion window for the transport layer. This allows the target congestion window to be adjusted more precisely based on the real-time network status, enabling it to adjust towards maximization during the slow start phase and improving bandwidth utilization. When data loss occurs in the current period and the second state of the transport layer is normal, a weighted summation method is used to combine the first congestion window corresponding to the link layer with the calculation process of the target congestion window, reducing the decrease in the target congestion window of the current period compared to the target congestion window of the previous period and improving bandwidth utilization. When data loss occurs in the current period and the second state of the transport layer is congested, the window length of the target congestion window is reduced as quickly as possible to reduce the probability of network congestion. When the current period is in the congestion avoidance phase and no data loss occurs, a weighted summation method is used to combine the first congestion window corresponding to the link layer with the calculation process of the target congestion window, increasing the increase in the target congestion window of the current period compared to the target congestion window of the previous period and improving bandwidth utilization.
[0079] Please see Figure 3 , Figure 3 This is a schematic diagram of the structure of a terminal device according to an embodiment of the present application. The terminal device 30 includes a communication module 301, a detection module 302, a control module 303, and a transmission module 304. The communication module 301 is used to obtain downlink control information configured by the base station for the current period when the historical uplink data of the previous period is sent to the base station, and determine the first congestion window and the first state corresponding to the link layer in the current period based on the downlink control information; wherein, the downlink control information is related to bandwidth. The detection module 302 is used to determine the congestion control stage of the transport layer in the current period, and the second congestion window that matches the congestion control stage of the current period; wherein, the congestion control stage includes a slow start stage and a congestion avoidance stage. The control module 303 is used to determine the target congestion window corresponding to the transport layer in the current period based on the first congestion window, the second congestion window, and the first state of the current period. The transmission module 304 is used to send the currently uploaded data in the current period to the base station using the target congestion window of the current period.
[0080] Furthermore, the terminal device 30 provided in this embodiment may specifically be a camera device or other data generating device, and the terminal device 30 provided in this embodiment can implement the network transmission control method in any of the above embodiments. For related explanations, please refer to the detailed description of the above method embodiments, which will not be repeated here.
[0081] Please see Figure 4 , Figure 4 This is a schematic diagram of the structure of an embodiment of the electronic device of this application. The electronic device 40 includes a memory 401 and a processor 402 coupled to each other. The memory 401 stores program data (not shown in the figure), and the processor 402 calls the program data to implement the method in any of the above embodiments. For the description of the relevant content, please refer to the detailed description of the above method embodiments, which will not be repeated here.
[0082] Please see Figure 5 , Figure 5 This is a schematic diagram of a computer-readable storage medium according to an embodiment of the present application. The computer-readable storage medium 50 stores program data 500. When the program data 500 is executed by a processor, it implements the method in any of the above embodiments. For related descriptions, please refer to the detailed description of the above method embodiments, which will not be repeated here.
[0083] It should be noted that the units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0084] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0085] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods of various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0086] The above description is merely an embodiment of this application and does not limit the patent scope of this application. Any equivalent structural or procedural transformations made using the content of this application's specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the patent protection scope of this application.
Claims
1. A network transmission control method, characterized in that, The method includes: In response to the historical uplink data of the previous period being sent to the base station, the downlink control information configured by the base station for the current period is obtained, and the first congestion window and the first state corresponding to the link layer in the current period are determined based on the downlink control information; wherein, the downlink control information is related to bandwidth, and the first state includes at least congestion and normal. Determine the congestion control phase of the transport layer in the current period, and a second congestion window that matches the congestion control phase of the current period; wherein the congestion control phase includes at least a slow start phase and a congestion avoidance phase; Based on the first congestion window, the second congestion window, and the first state of the current period, determine the target congestion window corresponding to the transport layer in the current period; The currently uploaded data within the current period is sent to the base station using the target congestion window of the current period.
2. The network transmission control method according to claim 1, characterized in that, The step of obtaining the downlink control information configured by the base station for the current period, and determining the first congestion window and first state corresponding to the link layer in the current period based on the downlink control information, includes: The downlink control information configured by the base station for the current period is obtained, and the downlink control information is parsed to obtain the modulation and coding strategy and the transport block size; wherein, the modulation and coding strategy and the transport block size are related to the bandwidth of the current period; Obtain the maximum segment length, and based on the maximum segment length and the transport block size, determine the first congestion window corresponding to the link layer in the current period; Based on the modulation and coding strategy and the transport block size, the first state corresponding to the link layer in the current period is determined.
3. The network transmission control method according to claim 2, characterized in that, Determining the first state of the link layer within the current period based on the modulation and coding strategy and the transport block size includes: Based on the variance and descent magnitude of the modulation and coding strategy, and the variance and descent magnitude of the transport block size, the first state corresponding to the link layer in the current period is determined.
4. The network transmission control method according to claim 1, characterized in that, Determining the congestion control phase of the transport layer in the current period, and the second congestion window matching the congestion control phase of the current period, includes: Based on the congestion control stage of the transport layer in the previous cycle and the data transmission results of the transport layer in the previous cycle, the congestion control stage of the transport layer in the current cycle is determined; wherein, the data transmission results include data loss and no data loss. Obtain a second congestion window that matches the congestion control phase of the current period; wherein, the second congestion window corresponding to the slow start phase has an exponentially larger window length than the target congestion window of the previous period, and the second congestion window corresponding to the congestion avoidance phase has a linearly larger window length than the target congestion window of the previous period, until data loss occurs and the window length of the target congestion window of the previous period is reduced by a preset ratio.
5. The network transmission control method according to claim 4, characterized in that, Before determining the congestion control stage of the transport layer in the current period based on the congestion control stage of the transport layer in the previous period and the data transmission results of the transport layer in the previous period, the process includes: In response to the failure to obtain the congestion control phase of the transport layer in the previous cycle, an initial congestion window is obtained, and the window with the larger window length between the first congestion window and the initial congestion window is used as the target congestion window corresponding to the transport layer in the current cycle. Then, the process proceeds to the step of sending the currently uploaded data in the current cycle to the base station using the target congestion window of the current cycle.
6. The network transmission control method according to claim 4, characterized in that, The step of determining the target congestion window corresponding to the transport layer within the current period based on the first congestion window, the second congestion window, and the first state of the current period includes: In response to the current period's congestion control phase being the slow start phase and no data loss occurring, the first congestion window and the target congestion window of the previous period are concatenated to obtain a candidate congestion window. The window with the larger window length between the candidate congestion window and the second congestion window is used as the target congestion window corresponding to the transport layer in the current period. In response to the current period's congestion control phase being the congestion avoidance phase and data loss occurring, a second state corresponding to the transport layer is determined based on the first state, and a target congestion window corresponding to the transport layer within the current period is determined based on the second state, the first congestion window, and the second congestion window; wherein, the second state is the opposite of the first state; In response to the current period's congestion control phase being the congestion avoidance phase and no data loss occurring, the window lengths of the first congestion window and the second congestion window are weighted and summed to obtain the target congestion window corresponding to the transport layer in the current period.
7. The network transmission control method according to claim 6, characterized in that, The step of determining the second state corresponding to the transport layer based on the first state, and determining the target congestion window corresponding to the transport layer in the current period based on the second state, the first congestion window, and the second congestion window, includes: In response to the first state being congested, the second state corresponding to the transport layer is determined to be normal. The window lengths of the first congestion window and the second congestion window are weighted and summed to obtain the target congestion window corresponding to the transport layer in the current period. In response to the first state being normal, the second state corresponding to the transport layer is determined to be congested, and the window with the smaller window length between the first congestion window and the second congestion window is taken as the target congestion window corresponding to the transport layer in the current period.
8. The network transmission control method according to claim 6, characterized in that, The congestion control phase further includes a congestion recovery phase. The first state also includes network loss. The congestion control phase in response to the current period is the congestion avoidance phase and no data loss has occurred. After weighted summation of the window lengths of the first congestion window and the second congestion window to obtain the target congestion window corresponding to the transport layer in the current period, the process includes: In response to the current period's congestion control phase being the congestion recovery phase, or the current period's congestion control phase being the congestion avoidance phase and the first state being network loss, the target congestion window of the previous period is used as the target congestion window of the current period.
9. A terminal device, characterized in that, The terminal device includes: The communication module is used to obtain downlink control information configured by the base station for the current period when the historical uplink data of the previous period is sent to the base station, and determine the first congestion window and the first state corresponding to the link layer in the current period based on the downlink control information; wherein, the downlink control information is related to bandwidth; The detection module is used to determine the congestion control phase of the transport layer in the current period, and a second congestion window that matches the congestion control phase of the current period; wherein the congestion control phase includes a slow start phase and a congestion avoidance phase; The control module is used to determine the target congestion window corresponding to the transport layer in the current period based on the first congestion window, the second congestion window, and the first state in the current period. The sending module is used to send the currently uploaded data within the current period to the base station using the target congestion window of the current period.
10. A network transmission control system, characterized in that, include: A memory and a processor are coupled to each other, wherein the memory stores program data, and the processor invokes the program data to perform the method as described in any one of claims 1-8.
Citation Information
Patent Citations
A TCP congestion control method and device
CN109698797A
Method, device and network system for controlling network congestion
WO2013123903A1