Method, device and storage medium for controlling downlink TCP service flow of base station
By determining whether the downlink TCP data packet exceeds the air interface transmission capacity after the base station receives the uplink TCP confirmation packet from the terminal, and controlling the traffic sending of the TCP server, the problem of abnormal TCP connection interruption in TCP proxy technology is solved, and the stable transmission of downlink TCP services and the full utilization of the base station air interface capacity are achieved.
Patent Information
- Application Number
- CN202110411294.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-16
- Publication Date
- 2025-09-26
- Estimated Expiration
- 2041-04-16
AI Technical Summary
In 5G mobile communication systems, TCP proxy technology cannot fully utilize the base station air interface transmission capacity due to the risk of abnormal TCP connection interruption, resulting in downlink data packet loss and insufficient data volume.
After receiving the uplink TCP confirmation packet from the terminal through the base station, it determines whether the confirmed downlink TCP data packet in the current subframe exceeds the air interface transmission capacity, and controls the flow of downlink TCP data packets sent by the TCP server to the terminal through the base station based on the judgment result, to avoid packet loss caused by a sudden large amount of data exceeding the cache of the transmission link.
It reduces the probability of packet loss in the transmission link between the TCP server and the base station, ensures the smooth operation of downlink TCP services, and fully utilizes the base station air interface transmission capacity.
Smart Images

Figure CN115226149B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a method, device, and storage medium for controlling downlink TCP service flow of a base station. Background Art
[0002] The TCP protocol was originally designed for wired networks, which have a low bit error rate. Therefore, the TCP protocol considers packet loss during transmission to be caused by congestion. However, wireless communication networks are different from wired networks. The air interface channel of wireless communication always fluctuates, so transmission errors often occur. The downlink air interface capacity of 5G base stations has been greatly improved compared to LTE, and the peak rate of a single user can reach over 1.6Gbps. If a data block in a certain time slot is transmitted incorrectly, the subsequent correct data blocks cannot be delivered to the application layer to ensure sequential delivery. They cannot be delivered to the upper layer until the incorrect data block is retransmitted and corrected. As a result, a large number of downlink TCP data packets are suddenly delivered to the application layer at a certain moment. At this time, the TCP layer will activate the congestion avoidance mechanism, resulting in insufficient data packets in the downlink direction.
[0003] TCP proxy technology was developed to mitigate downlink data shortages caused by congestion avoidance mechanisms activated by the TCP (Transmission Control Protocol) layer due to mobile communication air interface transmission errors and delays. TCP proxy technology allows the base station to immediately acknowledge downlink data packets received from the TCP server, rather than waiting for the terminal to acknowledge the data packets after they are received. This mitigates the impact of air interface transmission errors and delays between the base station and the terminal on TCP services.
[0004] TCP proxy technology, on the other hand, sends an acknowledgment packet to the TCP server before the terminal receives the downlink data packet. If, for some reason, the terminal is unable to receive the data, the TCP connection will be abnormally terminated. However, due to the risk of abnormal TCP connection termination, the practical application of TCP proxy technology in 5G mobile communication systems is very limited. It cannot guarantee zero packet loss and cannot fully utilize the air interface transmission capabilities of 5G base stations. Summary of the Invention
[0005] The present application provides a method, device and storage medium for controlling downlink TCP service flow of a base station to ensure that TCP service does not lose packets and fully utilize the air interface transmission capacity of the base station.
[0006] In a first aspect, the present application provides a method for controlling downlink TCP service flow of a base station, the method comprising:
[0007] After receiving an uplink TCP acknowledgment packet sent by a terminal, determining whether the amount of downlink TCP data packets confirmed in a current subframe of a target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell; wherein the uplink TCP acknowledgment packet is a response message of the terminal to the received downlink TCP data packet;
[0008] The flow of downlink TCP data packets sent by the TCP server to the terminal through the base station is controlled according to the judgment result.
[0009] In one possible design, controlling the flow of downlink TCP data packets sent by the TCP server to the terminal through the base station according to the determination result includes:
[0010] If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell does not exceed the current air interface transmission capacity, the uplink TCP confirmation packet is sent to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the uplink TCP confirmation packet; or
[0011] If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell exceeds the current air interface transmission capacity, the sending of the uplink TCP confirmation packet to the TCP server is stopped.
[0012] In one possible design, before sending the uplink TCP acknowledgment packet to the TCP server, the method further includes:
[0013] Determine, according to the uplink TCP acknowledgment packet, a maximum acknowledgment byte sequence number and a sent acknowledgment byte sequence number of the first TCP connection corresponding to the uplink TCP acknowledgment packet;
[0014] Obtaining a first difference between the maximum confirmation byte sequence number and the sent confirmation byte sequence number, and a second difference between the current air interface transmission capability and the amount of data of the confirmed downlink TCP data packet in the current subframe of the target cell;
[0015] The confirmation byte sequence number is obtained according to the first difference and the second difference, and the confirmation byte sequence number is carried in the uplink TCP confirmation packet, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the confirmation byte sequence number in the uplink TCP confirmation packet.
[0016] In one possible design, obtaining a confirmation byte sequence number according to the first difference and the second difference includes:
[0017] Obtaining the smallest of the first difference and the second difference, and determining the smallest as the confirmed data amount;
[0018] A first sum of the sent confirmation byte sequence number and the confirmation data amount is obtained, and the first sum is determined as the confirmation byte sequence number.
[0019] In one possible design, the method further includes:
[0020] Updating the sent confirmation byte sequence number to the confirmation byte sequence number;
[0021] Obtain the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell and a second sum of the confirmed data volumes, and update the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell to the second sum.
[0022] In one possible design, the method further includes:
[0023] At the beginning of the second subframe, the data volume of the confirmed downlink TCP data packets in the current subframe is cleared; the second subframe is the next subframe of the current subframe.
[0024] In one possible design, the method further includes:
[0025] After the second subframe begins, traverse each TCP connection in the target cell in sequence, and determine whether a sent confirmation byte sequence number of the current TCP connection is less than a maximum confirmation byte sequence number during the traversal process; the current TCP connection is any connection among the TCP connections;
[0026] If it is determined that the sent confirmation byte sequence number of the current TCP connection is less than the maximum confirmation byte sequence number, determining whether the data volume of the downlink TCP data packet confirmed in the second subframe exceeds the air interface transmission capacity of the second subframe of the target cell;
[0027] If not, the TCP server corresponding to the current TCP connection is controlled to continue sending downlink TCP data packets to the terminal through the base station.
[0028] In one possible design, controlling the TCP server corresponding to the current TCP connection to continue sending downlink TCP data packets to the terminal through the base station includes:
[0029] resending the unsent acknowledgment packet corresponding to the current TCP connection in the current subframe to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station; or
[0030] Generate an uplink TCP acknowledgment packet based on the sent acknowledgment byte sequence number of the current TCP connection, the maximum acknowledgment byte sequence number of the current TCP connection, the amount of downlink TCP data packets confirmed in the second subframe, and the air interface transmission capability of the second subframe of the target cell, and send the packet to the TCP server corresponding to the current TCP connection, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station;
[0031] The data volume of the unsent confirmation packets corresponding to the current TCP connection or the generated uplink TCP confirmation packets is less than or equal to the difference between the air interface transmission capacity of the second subframe of the target cell and the confirmed downlink TCP data volume of the second subframe.
[0032] In one possible design, the method further includes:
[0033] Obtaining a preset data volume threshold, where the preset data volume threshold is the data volume corresponding to the maximum air interface transmission capacity of the current subframe of the target cell;
[0034] The preset data volume threshold is determined as the current air interface transmission capability of the base station in the target cell.
[0035] In one possible design, the method further includes:
[0036] Obtaining the remaining amount of downlink buffer space of the base station;
[0037] If the remaining amount of the downlink buffer space of the base station is less than the preset data amount threshold, the preset data amount threshold is adjusted according to the remaining amount of the downlink buffer space of the base station.
[0038] In one possible design, adjusting the preset data amount threshold according to the remaining amount of downlink buffer space of the base station includes:
[0039] The preset data volume threshold is adjusted to the remaining amount of downlink buffer space of the base station. In a second aspect, the present application provides a downlink TCP service flow control device of a base station, comprising a memory, a transceiver, and a processor:
[0040] A memory for storing a computer program; a transceiver for transmitting and receiving data under the control of the processor; and a processor for reading the computer program in the memory and performing the following operations:
[0041] After receiving an uplink TCP acknowledgment packet sent by a terminal, determining whether the amount of downlink TCP data packets confirmed in a current subframe of a target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell; wherein the uplink TCP acknowledgment packet is a response message of the terminal to the received downlink TCP data packet;
[0042] The flow of downlink TCP data packets sent by the TCP server to the terminal through the base station is controlled according to the judgment result.
[0043] In one possible design, when the processor controls the TCP server to send a flow of downlink TCP data packets to the terminal through the base station according to the judgment result, it is configured to:
[0044] If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell does not exceed the current air interface transmission capacity, the uplink TCP confirmation packet is sent to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the uplink TCP confirmation packet; or
[0045] If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell exceeds the current air interface transmission capacity, the sending of the uplink TCP confirmation packet to the TCP server is stopped.
[0046] In one possible design, before sending the uplink TCP acknowledgment packet to the TCP server, the processor is further configured to:
[0047] Determine, according to the uplink TCP acknowledgment packet, a maximum acknowledgment byte sequence number and a sent acknowledgment byte sequence number of the first TCP connection corresponding to the uplink TCP acknowledgment packet;
[0048] Obtaining a first difference between the maximum confirmation byte sequence number and the sent confirmation byte sequence number, and a second difference between the current air interface transmission capability and the amount of data of the confirmed downlink TCP data packet in the current subframe of the target cell;
[0049] The confirmation byte sequence number is obtained according to the first difference and the second difference, and the confirmation byte sequence number is carried in the uplink TCP confirmation packet, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the confirmation byte sequence number in the uplink TCP confirmation packet.
[0050] In one possible design, when the processor obtains the confirmation byte sequence number according to the first difference and the second difference, it is configured to:
[0051] Obtaining the smallest of the first difference and the second difference, and determining the smallest as the confirmed data amount;
[0052] A first sum of the sent confirmation byte sequence number and the confirmation data amount is obtained, and the first sum is determined as the confirmation byte sequence number.
[0053] In one possible design, the processor is further configured to:
[0054] Updating the sent confirmation byte sequence number to the confirmation byte sequence number;
[0055] Obtain the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell and a second sum of the confirmed data volumes, and update the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell to the second sum.
[0056] In one possible design, the processor is further configured to:
[0057] At the beginning of the second subframe, the data volume of the confirmed downlink TCP data packets in the current subframe is cleared; the second subframe is the next subframe of the current subframe.
[0058] In one possible design, the processor is further configured to:
[0059] After the second subframe begins, traverse each TCP connection in the target cell in sequence, and determine whether a sent confirmation byte sequence number of the current TCP connection is less than a maximum confirmation byte sequence number during the traversal process; the current TCP connection is any connection among the TCP connections;
[0060] If it is determined that the sent confirmation byte sequence number of the current TCP connection is less than the maximum confirmation byte sequence number, determining whether the data amount of the downlink TCP data packet confirmed in the second subframe exceeds the current air interface transmission capacity;
[0061] If not, the TCP server corresponding to the current TCP connection is controlled to continue sending downlink TCP data packets to the terminal through the base station.
[0062] In one possible design, when controlling the TCP server corresponding to the current TCP connection to continue sending downlink TCP data packets to the terminal through the base station, the processor is configured to:
[0063] resending the unsent acknowledgment packet corresponding to the current TCP connection in the current subframe to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station; or
[0064] Generate an uplink TCP acknowledgment packet based on the sent acknowledgment byte sequence number of the current TCP connection, the maximum acknowledgment byte sequence number of the current TCP connection, the amount of downlink TCP data packets confirmed in the second subframe, and the current air interface transmission capability, and send the packet to a TCP server corresponding to the current TCP connection, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station;
[0065] The data volume of the unsent confirmation packets corresponding to the current TCP connection or the generated uplink TCP confirmation packets is less than or equal to the difference between the air interface transmission capacity of the second subframe of the target cell and the confirmed downlink TCP data volume of the second subframe.
[0066] In one possible design, the processor is further configured to:
[0067] Obtaining a preset data volume threshold, where the preset data volume threshold is the data volume corresponding to the maximum air interface transmission capacity of the current subframe of the target cell;
[0068] The preset data volume threshold is determined as the current air interface transmission capability of the base station in the target cell.
[0069] In one possible design, the processor is further configured to:
[0070] Obtaining the remaining amount of downlink buffer space of the base station;
[0071] If the remaining amount of the downlink buffer space of the base station is less than the preset data amount threshold, the preset data amount threshold is adjusted according to the remaining amount of the downlink buffer space of the base station.
[0072] In one possible design, when adjusting the preset data amount threshold according to the remaining amount of downlink buffer space of the base station, the processor is configured to:
[0073] The preset data volume threshold is adjusted to the remaining amount of the base station downlink buffer space.
[0074] In a third aspect, the present application provides a downlink TCP service flow control device of a base station, comprising:
[0075] A receiving unit, configured to receive an uplink TCP confirmation packet sent by a terminal, wherein the uplink TCP confirmation packet is a response message of the terminal to the received downlink TCP data packet;
[0076] a judgment unit, configured to, after receiving an uplink TCP confirmation packet sent by a terminal, judge whether the amount of downlink TCP data packets confirmed in a current subframe of a target cell where the terminal is located exceeds a current air interface transmission capacity of the base station in the target cell;
[0077] A control unit is used to control the flow of downlink TCP data packets sent by the TCP server to the terminal through the base station according to the judgment result.
[0078] In a fourth aspect, the present application provides a processor-readable storage medium, wherein the processor-readable storage medium stores a computer program, and the computer program is used to enable the processor to execute the method described in the first aspect.
[0079] In a fifth aspect, the present application provides a computer program product, comprising a computer program, characterized in that when the computer program is executed by a processor, the method described in the first aspect is implemented.
[0080] The present application provides a method, device, and storage medium for controlling the downlink TCP service flow of a base station. After receiving an uplink TCP confirmation packet sent by a terminal, the base station determines whether the data volume of the confirmed downlink TCP data packet in the current subframe of the target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell; and controls the flow of downlink TCP data packets sent by the TCP server to the terminal through the base station based on the judgment result. After receiving an uplink TCP confirmation packet sent by the terminal, the base station controls the flow of downlink TCP data packets sent by the TCP server to the terminal through the base station based on the air interface transmission capacity of the base station. This can prevent the data volume of the downlink TCP data packet from exceeding the air interface transmission capacity of the base station, reduce the probability of packet loss in the transmission link between the TCP server and the base station, ensure the smooth operation of the downlink TCP service, and fully utilize the air interface transmission capacity of the base station.
[0081] It should be understood that the contents described in the above summary of the invention are not intended to limit the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0082] In order to more clearly illustrate the technical solutions in this application or the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0083] Figure 1 A schematic diagram of an application scenario of a method for controlling downlink TCP service flow of a base station provided by an embodiment of the present invention;
[0084] Figure 2 A flowchart of a method for controlling downlink TCP service flow of a base station provided by one embodiment of the present invention;
[0085] Figure 3 A flowchart of a method for controlling downlink TCP service flow of a base station provided by another embodiment of the present invention;
[0086] Figure 4 A flowchart of a method for controlling downlink TCP service flow of a base station provided by another embodiment of the present invention;
[0087] Figure 5A flowchart of a method for controlling downlink TCP service flow of a base station provided by another embodiment of the present invention;
[0088] Figure 6 A flowchart of a method for controlling downlink TCP service flow of a base station provided by another embodiment of the present invention;
[0089] Figure 7 A block diagram of a downlink TCP service flow control device of a base station provided by one embodiment of the present invention;
[0090] Figure 8 This is a block diagram of a downlink TCP service flow control device of a base station provided by another embodiment of the present invention. DETAILED DESCRIPTION
[0091] In this application, the term "and / or" describes the relationship between associated objects, indicating that three possible relationships exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally indicates that the associated objects are in an "or" relationship.
[0092] In the embodiments of the present application, the term "plurality" refers to two or more than two, and other quantifiers are similar.
[0093] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0094] In the prior art, the TCP protocol was originally designed for wired networks, which have a low bit error rate. Therefore, the TCP protocol considers any packet loss that occurs during transmission to be caused by congestion. However, wireless communication networks are different from wired networks. The air interface channel of wireless communication always fluctuates, so transmission errors often occur. To address air interface transmission errors, wireless communication uses MAC (Medium Access Control Protocol) layer HARQ (Hybrid Automatic Repeat reQuest) retransmission and RLC (Radio Link Control) layer ARQ (Automatic Repeat reQuest) retransmission. Although retransmission solves the air interface packet loss problem, it can lead to uneven data transmission.
[0095] The downlink air interface capability of 5G base stations has been greatly improved compared to LTE, with a single-user peak rate of over 1.6Gbps. If a data block in a certain time slot is transmitted incorrectly, the subsequently transmitted correct data blocks cannot be delivered to the application layer to ensure sequential delivery. They cannot be delivered to the upper layer until the incorrectly transmitted data block is retransmitted correctly. As a result, a large number of downlink TCP data packets are suddenly delivered to the application layer at a certain moment. The application layer bursts out a large number of ACK (Acknowledge character) confirmation packets. After receiving the ACK confirmation packets, the TCP server sends a large amount of new data. When a large number of sudden downlink data packets are transmitted in the transmission network, they are very likely to be lost due to insufficient buffering in a certain link. At this time, the TCP layer will activate the congestion avoidance mechanism, resulting in insufficient data packets in the downlink direction.
[0096] TCP proxy technology was developed to mitigate downlink data shortages caused by TCP layer congestion avoidance mechanisms triggered by air interface transmission errors and delays in mobile communications. The basic concept of TCP proxy is that the base station acknowledges downlink data packets immediately after receiving them from the core network, rather than waiting for the terminal to acknowledge them after receiving the data packets. This shields TCP services from the impact of air interface transmission errors and delays between the base station and the terminal.
[0097] However, TCP proxy technology sends an acknowledgment packet to the TCP server before the terminal receives the downlink data packet. If the terminal subsequently fails to receive a certain data packet for some reason, the TCP connection will be abnormally terminated. In 5G mobile communication systems, terminals frequently switch between base stations due to mobility. During this handover, the source base station switches downlink data packets cached by the source station but not yet received by the terminal to the target base station. This packet switching process cannot guarantee packet loss, which will cause the TCP connection to be terminated. Therefore, the practical application of TCP proxy technology in base stations is very limited due to the risk of abnormal TCP connection termination. Packet loss during transmission between the TCP server and the base station will reduce the TCP sending window, resulting in insufficient packet sending and inability to fully utilize the air interface transmission capacity of the 5G base station.
[0098] With respect to the above technical solution, in the embodiment of the present application, the base station does not directly reply to confirm the downlink TCP data packet, but the terminal confirms it after receiving the downlink TCP data packet. There is no risk that a data packet is confirmed by the base station but not received by the terminal. In order to avoid the problem of packet loss in the transmission link caused by a sudden large amount of data exceeding the cache of each transmission link, in the embodiment of the present application, when sending the uplink TCP confirmation packet, the base station ensures that the amount of confirmed data does not exceed a certain threshold. The threshold can be determined according to the air interface transmission capability of the base station. In this way, the flow of downlink TCP data packets sent by the TCP server to the terminal through the base station can be controlled to avoid the occurrence of sudden large amounts of data.
[0099] In this embodiment, the base station can be used as a whole to determine whether the amount of downlink TCP data packets confirmed in the current subframe exceeds the air interface transmission capacity of the base station, and then the TCP server is controlled to send the downlink TCP data packet traffic to the terminal through the base station according to the judgment result; in actual applications, since the base station is divided into different cells, it is also possible to determine whether the amount of downlink TCP data packets confirmed in the current subframe of the target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell at the cell dimension, and then the TCP server is controlled to send the downlink TCP data packet traffic to the terminal through the base station according to the judgment result; of course, if the judgment is made at the cell dimension, when the amount of downlink TCP data packets confirmed in the current subframe of a certain cell exceeds the current air interface transmission capacity of the base station in the target cell, only the TCP server in the cell is controlled to stop sending downlink TCP data packets to the terminal through the base station, without affecting other cells. It should be noted that the air interface transmission capacity of the same cell in different subframes can be the same or different; the air interface transmission capacity between different cells can also be the same or different.
[0100] The embodiments of this application are applicable to Figure 1 The application scenarios shown are as follows: Figure 1 As shown, the application scenario includes a base station 101, a terminal 102 and a TCP server 103. Among them, the terminal 102 and the TCP server 103 are respectively connected to the base station 101 for communication. The TCP server 103 can send a downlink TCP data packet to the terminal 102 through the base station 101. After the terminal 102 receives the downlink TCP data packet, it can send an uplink TCP confirmation packet to the TCP server 103 through the base station 101. In the embodiment of the present application, the base station 101 receives the uplink TCP confirmation packet sent by the terminal 102, wherein the uplink TCP confirmation packet is a response message of the terminal 102 to the received downlink TCP data packet; according to the uplink TCP confirmation packet, it is determined whether the data volume of the downlink TCP data packet confirmed in the current subframe exceeds the air interface transmission capacity of the base station 101; and according to the judgment result, the TCP server 103 is controlled to send the downlink TCP data packet traffic to the terminal 102 through the base station 101. If the judgment is made in the cell dimension, the base station 101 can determine whether the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell where the terminal 102 is located exceeds the current air interface transmission capacity of the base station 101 in the target cell.
[0101] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0102] Among them, the method and device provided in the embodiments of this application are based on the same application concept. Since the principles of solving problems by the method and device are similar, the implementation of the device and method can refer to each other, and the repeated parts will not be repeated.
[0103] Figure 2 This embodiment provides a method for controlling the downlink TCP service flow of a base station, and the execution subject can be a base station, such as Figure 2 As shown, the specific steps of the downlink TCP service flow control method of the base station in this embodiment are as follows:
[0104] S201. After receiving an uplink TCP confirmation packet sent by a terminal, determine whether the amount of downlink TCP data packets confirmed in a current subframe of a target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell;
[0105] The uplink TCP confirmation packet is a response message from the terminal to the received downlink TCP data packet.
[0106] In this embodiment, the TCP server sends a downlink TCP data packet to the terminal through the base station. After receiving the downlink TCP data packet, the terminal can send an uplink TCP confirmation packet to the base station. The uplink TCP confirmation packet is a response message of the terminal to the received downlink TCP data packet, that is, an ACK confirmation packet. When the base station receives the uplink TCP confirmation packet sent by the terminal, it can determine that the terminal has received the downlink TCP data packet. Only after ensuring that the terminal has received the downlink TCP data packet can the subsequent downlink TCP service flow control method be performed.
[0107] The terminal involved in the embodiments of the present application may be a device that provides voice and / or data connectivity to a user, a handheld device with wireless connection function, or other processing devices connected to a wireless modem. In different systems, the name of the terminal may also be different. For example, in a 5G system, the terminal may be called User Equipment (UE). A wireless terminal device can communicate with one or more core networks (CN) via a radio access network (RAN). The wireless terminal device may be a mobile terminal device, such as a mobile phone (or "cellular" phone) and a computer with a mobile terminal device. For example, it may be a portable, pocket-sized, handheld, computer-built-in or vehicle-mounted mobile device that exchanges voice and / or data with a radio access network. For example, personal communication service (PCS) phones, cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs), and other devices. The wireless terminal device may also be referred to as a system, a subscriber unit, a subscriber station, a mobile station, a mobile station, a remote station, an access point, a remote terminal device, an access terminal device, a user terminal device, a user agent, or a user device, but is not limited in the embodiments of the present application.
[0108] In this embodiment, considering that in the prior art the base station usually directly transparently transmits the uplink TCP acknowledgment packet, that is, after receiving the uplink TCP acknowledgment packet sent by the terminal, the uplink TCP acknowledgment packet is directly sent to the TCP server. If a large number of uplink TCP acknowledgment packets burst out, the uplink TCP acknowledgment packets transparently transmitted to the TCP server are also large, which causes the TCP server to send a large amount of downlink TCP data to the terminal through the base station after receiving the uplink TCP acknowledgment packet. In order to avoid a large amount of downlink TCP data bursting out in the current subframe, the air interface transmission capacity of the base station is predetermined in this embodiment. The judgment is made based on the cell dimension, and the air interface transmission capacity of the base station is the current air interface transmission capacity of the target cell, that is, the air interface transmission capacity of the current subframe of the target cell. The current air interface transmission capacity of the target cell can be the number of bytes corresponding to the maximum air interface transmission capacity of the current subframe of a single cell of the base station. Each subframe can be 1 millisecond or other duration. In addition, the current air interface transmission capacity of the target cell of the base station can also consider the remaining amount of cache space in each transmission link to avoid packet loss caused by insufficient remaining amount of cache space in each transmission link. It should be noted that the air interface transmission capabilities of the same cell in different subframes may be the same or different; the air interface transmission capabilities of different cells may also be the same or different.
[0109] Furthermore, after receiving the uplink TCP confirmation packet sent by the terminal, the base station can determine whether the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell. For example, the data volume of the downlink TCP data packet confirmed in the current subframe can be the data volume of the downlink TCP data packet confirmed in the current millisecond of the cell where the terminal is located. If it does not exceed the number of bytes corresponding to the current millisecond air interface maximum transmission capacity of the cell, it is determined that the data volume of the downlink TCP data packet confirmed in the current subframe of the cell does not exceed the current air interface transmission capacity of the base station in the target cell.
[0110] S202: Control the TCP server to send a flow rate of downlink TCP data packets to the terminal through the base station according to the judgment result.
[0111] In this embodiment, after the base station determines whether the amount of data of the confirmed downlink TCP data packets in the current subframe of the target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell, it can further control the traffic of the downlink TCP data packets sent by the TCP server to the terminal through the base station according to the judgment result, so as to avoid a burst of a large amount of downlink TCP data in the current subframe, thereby avoiding the problem of packet loss in the transmission link caused by a burst of a large amount of data exceeding the cache of each transmission link, reducing the probability of packet loss in the transmission link between the TCP server and the base station, ensuring the smooth operation of the downlink TCP service, and the occasional fluctuation of the air interface quality will not cause a decrease in the service rate.
[0112] More specifically, if it is determined that the data volume of the confirmed downlink TCP data packets in the current subframe of the target cell does not exceed the current air interface transmission capacity, the uplink TCP confirmation packet is sent to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station based on the uplink TCP confirmation packet. In this embodiment, if the data volume of the confirmed downlink TCP data packets in the current subframe of the target cell does not exceed the current air interface transmission capacity of the base station in the target cell, the TCP server can be controlled to continue sending downlink TCP data packets to the terminal through the base station, so as to fully utilize the air interface transmission capacity of the base station.
[0113] If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell exceeds the current air interface transmission capacity of the base station in the target cell, the uplink TCP confirmation packet will be suspended from being sent to the TCP server, thereby avoiding a large amount of downlink TCP data burst in the current subframe, and further avoiding the problem of packet loss in the transmission link caused by a large amount of data burst exceeding the buffer of each transmission link. The uplink TCP confirmation packet can be sent to the TCP server in a subsequent subframe of the current subframe. When sending the uplink TCP confirmation packet, it is also necessary that the amount of downlink TCP data packets confirmed by the target cell in the subframe in which the uplink TCP confirmation packet is sent does not exceed the air interface transmission capacity of the base station in the target cell in that subframe.
[0114] The method for controlling the downlink TCP service flow of a base station provided in this embodiment is as follows: after receiving an uplink TCP confirmation packet sent by a terminal, the base station determines whether the data volume of the confirmed downlink TCP data packet in the current subframe of the target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell; and controls the flow rate of the downlink TCP data packet sent by the TCP server to the terminal through the base station based on the judgment result. After receiving the uplink TCP confirmation packet sent by the terminal, the base station controls the flow rate of the downlink TCP data packet sent by the TCP server to the terminal through the base station based on the air interface transmission capacity of the base station. This can prevent the data volume of the downlink TCP data packet from exceeding the air interface transmission capacity of the base station, reduce the probability of packet loss in the transmission link between the TCP server and the base station, ensure the smooth operation of the downlink TCP service, and fully utilize the air interface transmission capacity of the base station.
[0115] Based on any of the above embodiments, Figure 3 As shown, the step S201 of determining whether the amount of downlink TCP data packets confirmed in the current subframe of the target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell includes:
[0116] S301. Obtain the amount of confirmed downlink TCP data packets in the current subframe of the target cell where the terminal is located;
[0117] S302: Determine whether the amount of downlink TCP data packets confirmed in the current subframe of the target cell exceeds a preset data amount threshold;
[0118] The preset data volume threshold is the data volume corresponding to the maximum air interface transmission capability of the current subframe of the target cell.
[0119] In this embodiment, since each base station has different cells, and the terminal is located within a certain cell range of the base station (referred to as the target cell), in order to avoid a large amount of downlink TCP data burst in the current subframe of the target cell, in this embodiment, the data volume corresponding to the maximum air interface transmission capacity of each subframe of the target cell can be used as a preset data volume threshold, and the preset data volume threshold is determined as the current air interface transmission capacity of the base station in the target cell to measure the current air interface transmission capacity of the base station in the target cell, and then determine whether the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell exceeds the current air interface transmission capacity of the base station in the target cell. Specifically, if it is determined that the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell exceeds the preset data volume threshold, then the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell exceeds the current air interface transmission capacity of the base station in the target cell; if it is determined that the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell does not exceed the preset data volume threshold, then the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell does not exceed the current air interface transmission capacity of the base station in the target cell.
[0120] In this embodiment, after receiving the uplink TCP confirmation packet sent by the terminal, the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell where the terminal is located can be obtained, and then the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell can be compared with the preset data volume threshold. If the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell exceeds the preset data volume threshold, it is determined that the current air interface transmission capacity of the base station in the target cell is exceeded, and the TCP server can be controlled to suspend sending downlink TCP data packets to the terminal through the base station; if the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell does not exceed the preset data volume threshold, it is determined that the current air interface transmission capacity of the base station in the target cell is not exceeded, and the TCP server can be controlled to continue sending downlink TCP data packets to the terminal through the base station.
[0121] It should be noted that the data volume corresponding to the maximum air interface transmission capacity of each subframe of each cell of the base station may be the same or different, and can be set according to actual conditions.
[0122] Based on any of the above embodiments, Figure 4As shown, after determining that the data amount of the confirmed downlink TCP data packet in the current subframe of the target cell does not exceed the current air interface transmission capacity of the base station in the target cell, before sending the uplink TCP confirmation packet to the TCP server, it may also include:
[0123] S401. Determine, based on the uplink TCP acknowledgment packet, the maximum acknowledgment byte sequence number and the sent acknowledgment byte sequence number of the first TCP connection corresponding to the uplink TCP acknowledgment packet;
[0124] S402. Obtain a first difference between the maximum confirmation byte sequence number and the sent confirmation byte sequence number, and a second difference between the current air interface transmission capability and the amount of data of the confirmed downlink TCP data packet in the current subframe of the target cell;
[0125] S403. Obtain a confirmation byte sequence number based on the first difference and the second difference, and carry the confirmation byte sequence number in the uplink TCP confirmation packet, so that the TCP server continues to send a downlink TCP data packet to the terminal through the base station according to the confirmation byte sequence number in the uplink TCP confirmation packet.
[0126] In this embodiment, the base station can maintain the source IP address (Internet Protocol Address), destination IP address, source port, destination port, maximum confirmation byte number and sent confirmation byte number of each TCP service connection in each cell, where the confirmation byte number is the data position and the unit can be bytes, that is, the maximum confirmation byte number is the number of bytes of all data that need to be sent, and the sent confirmation byte number is the number of bytes of data that have been sent, the amount of data of the downlink TCP data packet confirmed in the current subframe of the cell (denoted as TotalSentAck), that is, the amount of data of the downlink TCP data packet confirmed in the current subframe of a cell is the amount of data of the downlink TCP data packet confirmed in the current subframe of all TCP service connections of the cell.
[0127] After determining that the data volume of the confirmed downlink TCP data packets in the current subframe of the target cell does not exceed the current air interface transmission capacity of the base station in the target cell, it can be determined which TCP service connection it is based on the uplink TCP confirmation packet (recorded as the first TCP connection, represented by i), and then the base station can obtain the maximum confirmation byte sequence number of the first TCP connection (recorded as AckSeq_i) and the sent confirmation byte sequence number (recorded as SentAckSeq_i). When an uplink TCP confirmation packet is received in the first TCP connection, the maximum confirmation byte sequence number needs to be updated.
[0128] Then, a first difference between the maximum confirmation byte sequence number and the sent confirmation byte sequence number is obtained, that is, AckSeq_i-SentAckSeq_i, the unit of which can be bytes, and a second difference between the preset data volume threshold (denoted as M) and the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell, that is, M-TotalSentAck, the unit of which can be bytes. Furthermore, the confirmation byte sequence number can be obtained based on the first difference and the second difference, and the confirmation byte sequence number is carried in the uplink TCP confirmation packet, so that the TCP server continues to send the downlink TCP data packet to the terminal through the base station according to the confirmation byte sequence number in the uplink TCP confirmation packet, and after sending the downlink TCP data packet, the sent confirmation byte sequence number does not exceed the maximum confirmation byte sequence number, and the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell does not exceed the preset data volume threshold.
[0129] Furthermore, obtaining the confirmation byte sequence number according to the first difference and the second difference in S403 specifically includes:
[0130] Obtain the minimum of the first difference and the second difference, and determine the minimum as the confirmation data amount, that is, the confirmation data amount is min(AckSeq_i-SentAckSeq_i, M-TotalSentAck);
[0131] Obtain a first sum of the sent confirmation byte sequence number and the confirmation data amount, and determine the first sum as the confirmation byte sequence number, that is, the confirmation byte sequence number is SentAckSeq_i+min(AckSeq_i-SentAckSeq_i, M-TotalSentAck).
[0132] Based on the above embodiment, the base station updates the sent confirmation byte sequence number to the confirmation byte sequence number, that is, the sent confirmation byte sequence number of the first TCP connection is SentAckSeq_i=SentAckSeq_i+min(AckSeq_i-SentAckSeq_i, M-TotalSentAck);
[0133] In addition, the base station can also obtain the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell and the second sum of the confirmed data volume, and update the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell to the second sum value, that is, the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell is TotalSentAck=TotalSentAck+min(AckSeq_i-SentAckSeq_i, M-TotalSentAck). Through the above process, the traffic of the downlink TCP data packets can be better monitored and controlled to ensure the smooth operation of the downlink TCP service.
[0134] Based on any of the above embodiments, at the beginning of the next subframe, the amount of data of the confirmed downlink TCP data packet in the current subframe is cleared. Wherein, the second subframe is the next subframe of the current subframe. Figure 5 As shown, the method may further include:
[0135] S501. After the second subframe starts, traverse each TCP connection in the target cell in sequence, and determine whether the sent confirmation byte sequence number of the current TCP connection is less than the maximum confirmation byte sequence number during the traversal process;
[0136] The purpose of this step is to find the TCP connection whose sent confirmation byte sequence number is less than the maximum confirmation byte sequence number.
[0137] At the beginning of the second subframe, the amount of data of the confirmed downlink TCP data packet has been cleared. If a new confirmation packet is received, before processing the newly received confirmation packet, the TCP connection in the current cell whose confirmation byte sequence number is less than the maximum confirmation byte sequence number is processed first, including receiving a confirmation packet in the current subframe, but the amount of data of the downlink TCP data packet confirmed in the current subframe exceeds the current air interface transmission capacity, and the confirmation packet is not sent to the server, and receiving a confirmation packet in the current subframe and sending the confirmation packet to the server, but due to the limitation of the air interface capacity, the amount of data corresponding to the confirmation packet sent to the server is small, so that the TCP connection corresponding to the confirmation packet does not reach the maximum confirmation byte sequence number, and the server still needs to continue to send data packets. Alternatively, after the start of the second subframe, for the TCP connection in the current cell whose confirmation byte sequence number is less than the maximum confirmation byte sequence number, no new confirmation packet is received. In order to ensure the continued sending of the downlink TCP data packet, it is still necessary to first process the TCP connection in the current cell whose confirmation byte sequence number is less than the maximum confirmation byte sequence number, so that its corresponding TCP server continues to send downlink TCP data packets to the terminal through the base station. The processing of the received new confirmation packet in the second subframe may refer to the description of S201 - S202 , S301 - S302 , and S401 - S403 , which will not be repeated here.
[0138] S502: If it is determined that the sent confirmation byte sequence number of the current TCP connection is less than the maximum confirmation byte sequence number, determine whether the amount of data of the downlink TCP data packet confirmed in the second subframe exceeds the current air interface transmission capacity;
[0139] Wherein, the current TCP connection is any one of the TCP connections. If the amount of data of the confirmed downlink TCP data packet in the second subframe exceeds the air interface transmission capacity of the second subframe of the target cell, then stop sending the confirmation packet to the server. Otherwise, proceed to step S503.
[0140] S503: If not, control the TCP server corresponding to the current TCP connection to continue sending downlink TCP data packets to the terminal through the base station.
[0141] In this embodiment, since the control of the flow of downlink TCP data packets in the above embodiment is based on the data volume corresponding to the maximum air interface transmission capacity of the target cell, when the data volume of the downlink TCP data packets confirmed in the current subframe reaches the current air interface transmission capacity of the base station in the target cell, there may be some downlink TCP data packets that are not continued to be sent to the terminal through the base station. At this time, the confirmation byte sequence number sent by some TCP connections may be less than the maximum confirmation byte sequence number, that is, the downlink TCP data packet has not been fully transmitted. Therefore, at the end of the current subframe and the beginning of a new subframe (that is, the second subframe), for example, at the end of the current millisecond and the beginning of the next millisecond, the data volume of the downlink TCP data packets confirmed in the current subframe of each cell can be cleared, and the data volume of the downlink TCP data packets confirmed in the current subframe of each cell can be recounted.
[0142] The base station can traverse each TCP connection in the target cell, and during the traversal process, determine in turn whether the downlink TCP data packet of the current TCP connection has not been transmitted, that is, determine whether the sent confirmation byte sequence number of the current TCP connection is less than the maximum confirmation byte sequence number. If the sent confirmation byte sequence number of the current TCP connection is less than the maximum confirmation byte sequence number, the TCP server corresponding to the current TCP connection is controlled to continue transmitting the downlink TCP data packet, that is, the uplink TCP confirmation packet sent by the terminal can continue to be sent to the TCP server of the current TCP connection. If there is an uplink TCP confirmation packet corresponding to the current TCP connection that has not been sent to the TCP server in the current subframe, it will be sent to the TCP server first. In addition, it is possible that the confirmation byte sequence number sent by the current TCP connection may be less than the maximum confirmation byte sequence number, but there is no uplink TCP confirmation packet corresponding to the current TCP connection that has not been sent to the TCP server in the current subframe. At this time, the base station can generate a new uplink TCP confirmation packet based on the confirmation byte sequence number sent by the current TCP connection, the maximum confirmation byte sequence number of the current TCP connection, the data volume of the downlink TCP data packet confirmed in the second subframe, and the air interface transmission capability of the second subframe of the target cell, determine the appropriate data volume of the downlink TCP data packet, and send the new uplink TCP confirmation packet to the TCP server.
[0143] In another optional embodiment, when the confirmation byte sequence number sent by the current TCP connection is less than the maximum confirmation byte sequence number, a new uplink TCP confirmation packet can be generated regardless of whether there is an uplink TCP confirmation packet corresponding to the current TCP connection that has not been sent to the TCP server in the current subframe. In the case where there is an uplink TCP confirmation packet corresponding to the current TCP connection that has not been sent to the TCP server in the current subframe, optionally, if the data volume corresponding to the unsent confirmation packet is greater than the difference between the air interface transmission capacity of the second subframe of the target cell and the amount of downlink TCP data confirmed in the second subframe, a new uplink TCP confirmation packet can be generated so that the data volume corresponding to the newly generated uplink TCP confirmation packet is less than or equal to the difference between the air interface transmission capacity of the second subframe of the target cell and the amount of downlink TCP data confirmed in the second subframe. During the traversal process, when the current TCP connection whose sent confirmation byte sequence number is less than the maximum confirmation byte sequence number is traversed, the corresponding TCP server can be controlled to continue sending downlink TCP data packets to the terminal through the base station. Similarly, at the beginning of the second subframe, when the TCP server of the current TCP connection is controlled to continue transmitting downlink TCP data packets, it is still necessary to monitor whether the data volume of the downlink TCP data packets confirmed in the second subframe of the cell where the current TCP connection is located exceeds the air interface transmission capability of the base station in the second subframe of the target cell, where the cell where the current TCP connection is located may be the cell where the terminal in the current TCP connection is located. If it is determined that the data volume of the downlink TCP data packets confirmed in the second subframe of the cell where the current TCP connection is located does not exceed the air interface transmission capability of the base station in the second subframe of the target cell, the TCP server in the current TCP connection is controlled to continue sending downlink TCP data packets to the terminal through the base station; if it is determined that the data volume of the downlink TCP data packets confirmed in the second subframe of the cell where the current TCP connection is located exceeds the air interface transmission capability of the base station in the second subframe of the target cell, the TCP server in the current TCP connection is controlled to stop continuing to send downlink TCP data packets to the terminal through the base station.
[0144] Based on the above embodiment, regardless of which of the above situations occurs (including whether there is an unsent confirmation packet in the current subframe or not), the confirmation packet sent to the server in the second subframe meets the preset condition, which is similar to the condition for processing the uplink TCP confirmation packet in the current subframe, that is, the amount of data corresponding to the unsent confirmation packet or the generated uplink TCP confirmation packet corresponding to the current TCP connection must be less than or equal to the difference between the air interface transmission capacity of the second subframe of the target cell and the amount of downlink TCP data confirmed in the second subframe. The specific judgment and implementation process includes:
[0145] For the current TCP connection whose sent acknowledgment byte sequence number is less than the maximum acknowledgment byte sequence number, the air interface transmission capability of the second subframe of the target cell is represented by a preset data volume threshold M, obtaining a third difference between the maximum acknowledgment byte sequence number (AckSeq_j) of the current TCP connection (represented by j) and the sent acknowledgment byte sequence number (SentAckSeq_j), that is, AckSeq_j-SentAckSeq_j, and a fourth difference between the preset data volume threshold (M) and the data volume (TotalSentAck) of the confirmed downlink TCP data packet in the second subframe of the cell where the current TCP connection is located, that is, M-TotalSentAck;
[0146] Obtain the smallest of the third difference and the fourth difference, and determine the smallest as the amount of confirmed data of the current TCP connection, that is, the amount of confirmed data is min(AckSeq_j-SentAckSeq_j, M-TotalSentAck);
[0147] Obtain a third sum of the sent acknowledgment byte sequence number of the current TCP connection and the amount of acknowledgment data of the current TCP connection, and update the sent acknowledgment byte sequence number of the current TCP connection to the third sum, that is, the sent acknowledgment byte sequence number of the current TCP connection is SentAckSeq_j+min(AckSeq_j-SentAckSeq_j, M-TotalSentAck);
[0148] Obtain the fourth sum of the data volume of the downlink TCP data packets confirmed in the second subframe of the cell where the current TCP connection is located and the confirmed data volume of the current TCP connection, and update the data volume of the downlink TCP data packets confirmed in the second subframe of the cell where the current TCP connection is located to the fourth sum, that is, the data volume of the downlink TCP data packets confirmed in the second subframe of the cell where the current TCP connection is located TotalSentAck = TotalSentAck + min(AckSeq_j - SentAckSeq_j, M-TotalSentAck).
[0149] It should be noted that when the TCP server of the current TCP connection is controlled to continue transmitting downlink TCP data packets at the beginning of the second subframe, if the uplink TCP confirmation packet sent by the terminal is not received, there is no need to update the maximum confirmation byte sequence number. If the uplink TCP confirmation packet sent by the terminal is received, the maximum confirmation byte sequence number is updated. Apart from this, the processing procedures for the two situations are similar.
[0150] In another optional embodiment, for the first TCP connection, at the beginning of the second subframe, the data volume of the confirmed downlink TCP data packets in the current subframe is cleared. Furthermore, after the beginning of the second subframe, a determination is made as to whether the sent confirmation byte sequence number is less than the maximum confirmation byte sequence number. If it is determined that the sent confirmation byte sequence number is less than the maximum confirmation byte sequence number, a determination is made as to whether the data volume of the confirmed downlink TCP data packets in the second subframe exceeds the current air interface transmission capacity. If not, the TCP server of the first TCP connection is controlled to continue sending downlink TCP data packets to the terminal via the base station. This process is similar to that of the above embodiment and will not be further described here.
[0151] Through the above process, the flow of downlink TCP data packets can be better monitored and controlled at the beginning of a new subframe, ensuring the smooth operation of downlink TCP services. It should be noted that the process of this embodiment can be combined with the above embodiment without conflict.
[0152] Based on any of the above embodiments, Figure 6 As shown, the method further includes:
[0153] S601: Obtain the remaining amount of downlink buffer space of the base station;
[0154] S602: If the remaining amount of the downlink buffer space of the base station is less than the preset data amount threshold, adjust the preset data amount threshold according to the remaining amount of the downlink buffer space of the base station.
[0155] In this embodiment, the remaining amount of downlink buffer space in the base station may also be considered when setting the data volume threshold. The data volume threshold is adjusted based on the remaining amount of downlink buffer space in the base station to avoid packet loss caused by insufficient remaining buffer space in each transmission link. Specifically, if the remaining amount of downlink buffer space in the base station is less than the preset data volume threshold, the preset data volume threshold may be lowered based on the remaining amount of downlink buffer space in the base station.
[0156] In an optional embodiment, when adjusting the preset data volume threshold based on the remaining amount of downlink buffer space in the base station, the preset data volume threshold can be adjusted to the remaining amount of downlink buffer space in the base station. This can prevent the data volume of the downlink TCP data packet from exceeding the remaining amount of downlink buffer space in the base station, thereby avoiding packet loss due to insufficient remaining amount of downlink buffer space in the base station. Of course, the preset data volume threshold can also be adjusted to be less than the remaining amount of downlink buffer space in the base station, and can be set according to actual circumstances.
[0157] It should be noted that, for the process of determining the air interface transmission capability of the second subframe of the target cell or determining the air interface transmission capability of other subframes of the target cell in this embodiment, reference may be made to the process of determining the current air interface transmission capability of the target cell in the above embodiment.
[0158] Figure 7 This is a structural diagram of a downlink TCP service flow control device for a base station provided in an embodiment of the present application. The downlink TCP service flow control device for a base station provided in this embodiment can execute the processing flow provided in the embodiment of the downlink TCP service flow control method for a base station. The downlink TCP service flow control device 700 of the base station includes: a memory 701, a transceiver 702, and a processor 703:
[0159] The memory 701 is used to store computer programs; the transceiver 702 is used to send and receive data under the control of the processor 703; the processor 703 is used to read the computer program in the memory 701 and perform the following operations:
[0160] After receiving an uplink TCP acknowledgment packet sent by a terminal, determining whether the amount of downlink TCP data packets confirmed in a current subframe of a target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell; wherein the uplink TCP acknowledgment packet is a response message of the terminal to the received downlink TCP data packet;
[0161] The flow of downlink TCP data packets sent by the TCP server to the terminal through the base station is controlled according to the judgment result.
[0162] Based on any of the foregoing embodiments, when the processor 703 controls the TCP server to send the flow of downlink TCP data packets to the terminal through the base station according to the judgment result, it is configured to:
[0163] If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell does not exceed the current air interface transmission capacity, the uplink TCP confirmation packet is sent to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the uplink TCP confirmation packet; or
[0164] If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell exceeds the current air interface transmission capacity, the sending of the uplink TCP confirmation packet to the TCP server is stopped.
[0165] Based on any of the foregoing embodiments, before sending the uplink TCP acknowledgment packet to the TCP server, the processor 703 is further configured to:
[0166] Determine, according to the uplink TCP acknowledgment packet, a maximum acknowledgment byte sequence number and a sent acknowledgment byte sequence number of the first TCP connection corresponding to the uplink TCP acknowledgment packet;
[0167] Obtaining a first difference between the maximum confirmation byte sequence number and the sent confirmation byte sequence number, and a second difference between the current air interface transmission capability and the amount of data of the confirmed downlink TCP data packet in the current subframe of the target cell;
[0168] The confirmation byte sequence number is obtained according to the first difference and the second difference, and the confirmation byte sequence number is carried in the uplink TCP confirmation packet, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the confirmation byte sequence number in the uplink TCP confirmation packet.
[0169] Based on any of the foregoing embodiments, when obtaining the confirmation byte sequence number according to the first difference and the second difference, the processor 703 is configured to:
[0170] Obtaining the smallest of the first difference and the second difference, and determining the smallest as the confirmed data amount;
[0171] A first sum of the sent confirmation byte sequence number and the confirmation data amount is obtained, and the first sum is determined as the confirmation byte sequence number.
[0172] Based on any of the foregoing embodiments, the processor 703 is further configured to:
[0173] Updating the sent confirmation byte sequence number to the confirmation byte sequence number;
[0174] Obtain the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell and a second sum of the confirmed data volumes, and update the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell to the second sum.
[0175] Based on any of the foregoing embodiments, the processor 703 is further configured to:
[0176] At the beginning of the second subframe, the data volume of the confirmed downlink TCP data packets in the current subframe is cleared; the second subframe is the next subframe of the current subframe.
[0177] Based on any of the foregoing embodiments, the processor 703 is further configured to:
[0178] After the second subframe begins, traverse each TCP connection in the target cell in sequence, and determine whether a sent confirmation byte sequence number of the current TCP connection is less than a maximum confirmation byte sequence number during the traversal process; the current TCP connection is any connection among the TCP connections;
[0179] If it is determined that the sent confirmation byte sequence number of the current TCP connection is less than the maximum confirmation byte sequence number, determining whether the data amount of the downlink TCP data packet confirmed in the second subframe exceeds the air interface transmission capacity of the second subframe of the target cell;
[0180] If not, the TCP server corresponding to the current TCP connection is controlled to continue sending downlink TCP data packets to the terminal through the base station.
[0181] Based on any of the foregoing embodiments, the processor 703, when controlling the TCP server corresponding to the current TCP connection to continue sending downlink TCP data packets to the terminal through the base station, is configured to:
[0182] resending the unsent acknowledgment packet corresponding to the current TCP connection in the current subframe to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station; or
[0183] Generate an uplink TCP acknowledgment packet based on the sent acknowledgment byte sequence number of the current TCP connection, the maximum acknowledgment byte sequence number of the current TCP connection, the amount of downlink TCP data packets confirmed in the second subframe, and the air interface transmission capability of the second subframe of the target cell, and send the packet to the TCP server corresponding to the current TCP connection, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station;
[0184] The data volume of the unsent confirmation packets corresponding to the current TCP connection or the generated uplink TCP confirmation packets is less than or equal to the difference between the air interface transmission capacity of the second subframe of the target cell and the confirmed downlink TCP data volume of the second subframe.
[0185] Based on any of the foregoing embodiments, the processor 703 is further configured to:
[0186] Obtaining a preset data volume threshold, where the preset data volume threshold is the data volume corresponding to the maximum air interface transmission capacity of the current subframe of the target cell;
[0187] The preset data volume threshold is determined as the current air interface transmission capability of the base station in the target cell.
[0188] Based on any of the foregoing embodiments, the processor 703 is further configured to:
[0189] Obtaining the remaining amount of downlink buffer space of the base station;
[0190] If the remaining amount of the downlink buffer space of the base station is less than the preset data amount threshold, the preset data amount threshold is adjusted according to the remaining amount of the downlink buffer space of the base station.
[0191] Based on any of the foregoing embodiments, when adjusting the preset data amount threshold according to the remaining amount of the downlink buffer space of the base station, the processor 703 is configured to:
[0192] The preset data volume threshold is adjusted to the remaining amount of the base station downlink buffer space.
[0193] It should be noted here that the downlink TCP service flow control device of the above-mentioned base station provided in this application can implement all the method steps implemented in the above-mentioned method embodiment, and can achieve the same technical effect. The parts and beneficial effects of this embodiment that are the same as the method embodiment will not be described in detail here.
[0194] It should be noted that in Figure 7 In the embodiment, the bus architecture may include any number of interconnected buses and bridges, specifically linking together various circuits of one or more processors represented by the processor 703 and the memory represented by the memory. The bus architecture may also link together various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are all well known in the art and therefore will not be described further herein. The bus interface provides an interface. The transceiver 702 may be a plurality of components, i.e., a transmitter and a receiver, providing a unit for communicating with various other devices on a transmission medium, such as a wireless channel, a wired channel, an optical cable, and the like. The processor 703 is responsible for managing the bus architecture and general processing, and the memory 701 may store data used by the processor 703 when performing operations.
[0195] The processor 703 may be a central processing unit (CPU), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or a complex programmable logic device (CPLD). The processor 703 may also adopt a multi-core architecture.
[0196] Figure 8 This is a structural diagram of a downlink TCP service flow control device for a base station provided in an embodiment of the present application. The downlink TCP service flow control device for a base station provided in this embodiment can execute the processing flow provided in the embodiment of the downlink TCP service flow control method for a base station. The downlink TCP service flow control device 800 for a base station includes: a receiving unit 801, a judging unit 802, and a control unit 803.
[0197] The receiving unit 801 is configured to receive an uplink TCP confirmation packet sent by a terminal, wherein the uplink TCP confirmation packet is a response message from the terminal to a received downlink TCP data packet;
[0198] The judging unit 802 is configured to, after receiving an uplink TCP confirmation packet sent by the terminal, determine whether the amount of downlink TCP data packets confirmed in the current subframe of the target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell;
[0199] The control unit 803 is configured to control the flow of downlink TCP data packets sent by the TCP server to the terminal through the base station according to the judgment result.
[0200] Based on any of the above embodiments, when the control unit 803 controls the TCP server to send the flow of downlink TCP data packets to the terminal through the base station according to the judgment result, it is configured to:
[0201] If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell does not exceed the current air interface transmission capacity, the uplink TCP confirmation packet is sent to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the uplink TCP confirmation packet; or
[0202] If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell exceeds the current air interface transmission capacity, the sending of the uplink TCP confirmation packet to the TCP server is stopped.
[0203] Based on any of the above embodiments, the control unit 803 is further configured to:
[0204] Determine, according to the uplink TCP acknowledgment packet, a maximum acknowledgment byte sequence number and a sent acknowledgment byte sequence number of the first TCP connection corresponding to the uplink TCP acknowledgment packet;
[0205] Obtaining a first difference between the maximum confirmation byte sequence number and the sent confirmation byte sequence number, and a second difference between the current air interface transmission capability and the amount of data of the confirmed downlink TCP data packet in the current subframe of the target cell;
[0206] The confirmation byte sequence number is obtained according to the first difference and the second difference, and the confirmation byte sequence number is carried in the uplink TCP confirmation packet, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the confirmation byte sequence number in the uplink TCP confirmation packet.
[0207] Based on any of the foregoing embodiments, when obtaining the confirmation byte sequence number according to the first difference and the second difference, the control unit 803 is configured to:
[0208] Obtaining the smallest of the first difference and the second difference, and determining the smallest as the confirmed data amount;
[0209] A first sum of the sent confirmation byte sequence number and the confirmation data amount is obtained, and the first sum is determined as the confirmation byte sequence number.
[0210] Based on any of the above embodiments, the control unit 803 is further configured to:
[0211] Updating the sent confirmation byte sequence number to the confirmation byte sequence number;
[0212] Obtain the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell and a second sum of the confirmed data volumes, and update the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell to the second sum.
[0213] Based on any of the above embodiments, the control unit 803 is further configured to:
[0214] At the beginning of the second subframe, the data volume of the confirmed downlink TCP data packets in the current subframe of each cell is cleared; the second subframe is the next subframe of the current subframe.
[0215] Based on any of the above embodiments, the determining unit 802 is further configured to:
[0216] After the second subframe begins, traverse each TCP connection in the target cell in sequence, and determine whether a sent confirmation byte sequence number of the current TCP connection is less than a maximum confirmation byte sequence number during the traversal process; the current TCP connection is any connection among the TCP connections;
[0217] If it is determined that the sent confirmation byte sequence number of the current TCP connection is less than the maximum confirmation byte sequence number, determining whether the data amount of the downlink TCP data packet confirmed in the second subframe exceeds the air interface transmission capacity of the second subframe of the target cell;
[0218] The control unit 803 is further configured to control the TCP server corresponding to the current TCP connection to continue sending downlink TCP data packets to the terminal through the base station if the air interface transmission capacity of the second subframe of the target cell is not exceeded.
[0219] Based on any of the foregoing embodiments, the control unit 803, when controlling the TCP server corresponding to the current TCP connection to continue sending downlink TCP data packets to the terminal through the base station, is configured to:
[0220] resending the unsent acknowledgment packet corresponding to the current TCP connection in the current subframe to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station; or
[0221] Generate an uplink TCP acknowledgment packet based on the sent acknowledgment byte sequence number of the current TCP connection, the maximum acknowledgment byte sequence number of the current TCP connection, the amount of downlink TCP data packets confirmed in the second subframe, and the air interface transmission capability of the second subframe of the target cell, and send the packet to the TCP server corresponding to the current TCP connection, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station;
[0222] The data volume of the unsent confirmation packets corresponding to the current TCP connection or the generated uplink TCP confirmation packets is less than or equal to the difference between the air interface transmission capacity of the second subframe of the target cell and the confirmed downlink TCP data volume of the second subframe.
[0223] Based on any of the above embodiments, the determining unit 802 is further configured to:
[0224] Obtaining a preset data volume threshold, where the preset data volume threshold is the data volume corresponding to the maximum air interface transmission capacity of the current subframe of the target cell;
[0225] The preset data volume threshold is determined as the current air interface transmission capability of the base station in the target cell.
[0226] Based on any of the above embodiments, the determining unit 802 is further configured to:
[0227] Obtaining the remaining amount of downlink buffer space of the base station;
[0228] If the remaining amount of the downlink buffer space of the base station is less than the preset data amount threshold, the preset data amount threshold is adjusted according to the remaining amount of the downlink buffer space of the base station.
[0229] Based on any of the foregoing embodiments, when adjusting the preset data amount threshold according to the remaining amount of the downlink buffer space of the base station, the determining unit 802 is configured to:
[0230] The preset data volume threshold is adjusted to the remaining amount of the base station downlink buffer space.
[0231] It should be noted here that the downlink TCP service flow control device of the above-mentioned base station provided in this application can implement all the method steps implemented in the above-mentioned method embodiment, and can achieve the same technical effect. The parts and beneficial effects of this embodiment that are the same as the method embodiment will not be described in detail here.
[0232] In addition, it should be noted that the division of units in the embodiments of the present application is schematic and is only a logical functional division. In actual implementation, there may be other division methods. In addition, the functional units in the various embodiments of the present application can be integrated into a processing unit, or each unit can exist physically separately, or two or more units can be integrated into a single unit. The above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.
[0233] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a processor-readable storage medium. Based on this understanding, the technical solution of the present application is essentially 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, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) or a processor to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0234] Another embodiment of the present application further provides a processor, including the downlink TCP service flow control device of the base station provided in the above embodiment.
[0235] Another embodiment of the present application further provides a board, comprising: a memory device, an interface device, a control device, and a processor as provided in the above embodiment; wherein the processor is connected to the memory device, the control device, and the interface device, respectively;
[0236] The storage device is used to store data;
[0237] The interface device is used to realize data transmission between the processor and the terminal;
[0238] The control device is used to monitor the status of the processor.
[0239] Another embodiment of the present application also provides a network device including the board provided in the above embodiment. The network device involved in the embodiment of the present application may be a base station, which may include multiple cells providing services for terminals. Depending on the specific application scenario, the base station may also be called an access point, or may be a device in the access network that communicates with a wireless terminal device through one or more sectors on the air interface, or other names. The network device can be used to interchange received air frames with Internet Protocol (IP) packets, acting as a router between the wireless terminal device and the rest of the access network, wherein the rest of the access network may include an Internet Protocol (IP) communication network. The network device can also coordinate the attribute management of the air interface. For example, the network device involved in the embodiments of the present application may be a network device (Base Transceiver Station, BTS) in the Global System for Mobile communications (GSM) or Code Division Multiple Access (CDMA), or a network device (NodeB) in Wide-band Code Division Multiple Access (WCDMA), or an evolutionary network device (eNB or e-NodeB) in the Long Term Evolution (LTE) system, a 5G base station (gNB) in the 5G network architecture (next generation system), or a home evolved Node B (HeNB), a relay node, a femto, a pico, etc., which is not limited in the embodiments of the present application. In some network structures, the network device may include a centralized unit (CU) node and a distributed unit (DU) node, and the centralized unit and the distributed unit may also be geographically separated.
[0240] Another embodiment of the present application further provides a processor-readable storage medium, on which a computer program is stored; when the computer program is executed, the method for controlling downlink TCP service flow of the base station provided in the above embodiment is implemented. The processor-readable storage medium can be any available medium or data storage device that can be accessed by the processor, including but not limited to magnetic storage (such as floppy disk, hard disk, magnetic tape, magneto-optical disk (MO), etc.), optical storage (such as CD, DVD, BD, HVD, etc.), and semiconductor storage (such as ROM, EPROM, EEPROM, non-volatile memory (NAND FLASH), solid-state drive (SSD)), etc.
[0241] It should be noted here that the processor, board, network device, and processor-readable storage medium provided in this application can all implement all the method steps implemented in the above-mentioned method embodiment and can achieve the same technical effects. The parts and beneficial effects of this embodiment that are the same as those in the method embodiment will not be described in detail here.
[0242] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage and optical storage, etc.) that contain computer-usable program code.
[0243] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer-executable instructions. These computer-executable instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the steps in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0244] These processor-executable instructions may also be stored in a processor-readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the processor-readable memory produce an article of manufacture comprising an instruction device that implements the process Figure 1 a process or multiple processes and / or boxes Figure 1The function specified in one or more boxes.
[0245] These processor-executable instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are performed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for executing on the computer or other programmable device to implement the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0246] Obviously, those skilled in the art may make various changes and modifications to this application without departing from the spirit and scope of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application is intended to include these modifications and variations.
Claims
1. A method for controlling downlink TCP service flow of a base station, characterized in that: The method includes: After receiving an uplink TCP acknowledgment packet sent by a terminal, determining whether the amount of downlink TCP data packets confirmed in a current subframe of a target cell where the terminal is located exceeds the current air interface transmission capacity of the base station in the target cell; wherein the uplink TCP acknowledgment packet is a response message of the terminal to the received downlink TCP data packet; If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell does not exceed the current air interface transmission capacity, the uplink TCP confirmation packet is sent to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the uplink TCP confirmation packet; or If it is determined that the amount of downlink TCP data packets confirmed in the current subframe of the target cell exceeds the current air interface transmission capacity, the sending of the uplink TCP confirmation packet to the TCP server is stopped.
2. The method according to claim 1, characterized in that Before sending the uplink TCP confirmation packet to the TCP server, the method further includes: Determine, according to the uplink TCP acknowledgment packet, a maximum acknowledgment byte sequence number and a sent acknowledgment byte sequence number of the first TCP connection corresponding to the uplink TCP acknowledgment packet; Obtaining a first difference between the maximum confirmation byte sequence number and the sent confirmation byte sequence number, and a second difference between the current air interface transmission capability and the amount of data of the confirmed downlink TCP data packet in the current subframe of the target cell; The confirmation byte sequence number is obtained according to the first difference and the second difference, and the confirmation byte sequence number is carried in the uplink TCP confirmation packet, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station according to the confirmation byte sequence number in the uplink TCP confirmation packet.
3. The method according to claim 2, characterized in that The obtaining the confirmation byte sequence number according to the first difference and the second difference includes: Obtaining the smallest of the first difference and the second difference, and determining the smallest as the confirmed data amount; A first sum of the sent confirmation byte sequence number and the confirmation data amount is obtained, and the first sum is determined as the confirmation byte sequence number.
4. The method according to claim 3, characterized in that The method further comprises: Updating the sent confirmation byte sequence number to the confirmation byte sequence number; Obtain the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell and a second sum of the confirmed data volumes, and update the data volume of the downlink TCP data packets confirmed in the current subframe of the target cell to the second sum.
5. The method according to any one of claims 2 to 4, characterized in that: The method further comprises: At the beginning of the second subframe, the data volume of the confirmed downlink TCP data packets in the current subframe is cleared; the second subframe is the next subframe of the current subframe.
6. The method according to claim 5, characterized in that The method further comprises: After the second subframe begins, traverse each TCP connection in the target cell in sequence, and determine whether a sent confirmation byte sequence number of the current TCP connection is less than a maximum confirmation byte sequence number during the traversal process; the current TCP connection is any connection among the TCP connections; If it is determined that the sent confirmation byte sequence number of the current TCP connection is less than the maximum confirmation byte sequence number, determining whether the data amount of the downlink TCP data packet confirmed in the second subframe exceeds the air interface transmission capacity of the second subframe of the target cell; If not, the TCP server corresponding to the current TCP connection is controlled to continue sending downlink TCP data packets to the terminal through the base station.
7. The method according to claim 6, characterized in that The controlling the TCP server corresponding to the current TCP connection to continue sending downlink TCP data packets to the terminal through the base station includes: resending the unsent acknowledgment packet corresponding to the current TCP connection in the current subframe to the TCP server, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station; or Generate an uplink TCP acknowledgment packet based on the sent acknowledgment byte sequence number of the current TCP connection, the maximum acknowledgment byte sequence number of the current TCP connection, the amount of downlink TCP data packets confirmed in the second subframe, and the air interface transmission capability of the second subframe of the target cell, and send the packet to the TCP server corresponding to the current TCP connection, so that the TCP server continues to send downlink TCP data packets to the terminal through the base station; The data volume of the unsent confirmation packets corresponding to the current TCP connection or the generated uplink TCP confirmation packets is less than or equal to the difference between the air interface transmission capacity of the second subframe of the target cell and the confirmed downlink TCP data volume of the second subframe.
8. The method according to any one of claims 1 to 4, characterized in that The method further comprises: Obtaining a preset data volume threshold, where the preset data volume threshold is the data volume corresponding to the maximum air interface transmission capacity of the current subframe of the target cell; The preset data volume threshold is determined as the current air interface transmission capability of the base station in the target cell.
9. The method according to claim 8, characterized in that The method further comprises: Obtaining the remaining amount of downlink buffer space of the base station; If the remaining amount of the downlink buffer space of the base station is less than the preset data amount threshold, the preset data amount threshold is adjusted according to the remaining amount of the downlink buffer space of the base station.
10. The method according to claim 9, characterized in that The adjusting the preset data amount threshold according to the remaining amount of downlink buffer space of the base station includes: The preset data volume threshold is adjusted to the remaining amount of the base station downlink buffer space.
11. A downlink TCP service flow control device of a base station, characterized in that: Including memory, transceiver, processor: a memory for storing computer programs; a transceiver for transmitting and receiving data under the control of the processor; A processor, configured to read the computer program in the memory and execute the method according to any one of claims 1 to 10.
12. A downlink TCP service flow control device of a base station, characterized in that: include: A receiving unit, configured to receive an uplink TCP confirmation packet sent by a terminal, wherein the uplink TCP confirmation packet is a response message of the terminal to the received downlink TCP data packet; a judgment unit, configured to, after receiving an uplink TCP confirmation packet sent by a terminal, judge whether the amount of downlink TCP data packets confirmed in a current subframe of a target cell where the terminal is located exceeds a current air interface transmission capacity of the base station in the target cell; A control unit is configured to send the uplink TCP confirmation packet to the TCP server if it is determined that the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell does not exceed the current air interface transmission capacity, so that the TCP server continues to send the downlink TCP data packet to the terminal through the base station according to the uplink TCP confirmation packet; or stop sending the uplink TCP confirmation packet to the TCP server if it is determined that the data volume of the downlink TCP data packet confirmed in the current subframe of the target cell exceeds the current air interface transmission capacity.
13. A processor-readable storage medium, characterized in that: The processor-readable storage medium stores a computer program, and the computer program is configured to cause the processor to execute the method according to any one of claims 1 to 10.
Citation Information
Patent Citations
Data transmission control method and apparatus, terminal and readable storage medium
CN108540400A
Flow control method, device and computer device based on air interface quality
CN109104745A