CN115604755A - Flow control method and device - Google Patents

Flow control method and device Download PDF

Info

Publication number
CN115604755A
CN115604755A CN202111044378.8A CN202111044378A CN115604755A CN 115604755 A CN115604755 A CN 115604755A CN 202111044378 A CN202111044378 A CN 202111044378A CN 115604755 A CN115604755 A CN 115604755A
Authority
CN
China
Prior art keywords
tcp
value
access point
tcp message
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111044378.8A
Other languages
Chinese (zh)
Inventor
申晓曼
张巍
周军
谈弘毅
吴日海
江兴烽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to EP22182950.0A priority Critical patent/EP4117371A1/en
Priority to EP22182958.3A priority patent/EP4117252A1/en
Priority to US17/859,383 priority patent/US20230013093A1/en
Priority to US17/859,431 priority patent/US20230013180A1/en
Publication of CN115604755A publication Critical patent/CN115604755A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0273Traffic management, e.g. flow control or congestion control adapting protocols for flow control or congestion control to wireless environment, e.g. adapting transmission control protocol [TCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • H04W28/12Flow control between communication endpoints using signalling between network elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

A flow control method and a device belong to the technical field of communication. The method comprises the following steps: the access point reduces a value of a Receive Window (RWND) field in a Transmission Control Protocol (TCP) message sent to the target station to obtain a modified TCP message, and sends a downlink frame including the modified TCP message to the target station. Wherein, the TCP message belongs to non-key service. In the application, the access point reduces the value of the RWND field in the TCP message belonging to the downlink direction of the non-critical service and sent to the target station, so that the control of the uplink flow of the non-critical service can be realized, and the quality of service (QoS) of the critical service of the access point can be improved.

Description

Flow control method and device
The present application claims priority from chinese patent application No. 202110774805.1 entitled "flow control in wireless lan" filed on 09.07.2021 and chinese patent application No. 202110772818.5 entitled "flow control in wireless lan" filed on 08.07.2021, the entire contents of which are incorporated herein by reference.
Technical Field
The present application relates to the field of communications technologies, and in particular, to a flow control method and apparatus.
Background
A Wireless Local Area Network (WLAN) includes an Access Point (AP) and a Station (STA), where the AP is configured to provide a network access service for the STA associated with the AP, and the AP and the STA communicate over an air interface. With the increase of network traffic, the situation of traffic burst increases rapidly, which easily causes the air interface congestion of the AP and affects the QoS of the critical service. How to improve the QoS of the critical service is an urgent problem to be solved.
Disclosure of Invention
The application provides a flow control method and a flow control device. The technical scheme of the application is as follows:
in a first aspect, a method for controlling flow is provided, where the method includes: the access point receives a first TCP message sent to a target station, wherein the first TCP message belongs to non-key service, and the target station is associated with the access point; the access point reduces the value of the RWDD field in the first TCP message to obtain a modified first TCP message; the access point sends a first downlink frame to the target station, wherein the first downlink frame comprises the modified first TCP message.
The value of the RWND field in the TCP message is used to represent the size of the traffic (e.g., the number of messages or the amount of data) that the sending end of the TCP message can receive, and the receiving end of the TCP message usually sends the traffic of the service to which the TCP message belongs to the sending end of the TCP message according to the value of the RWND field in the received TCP message.
According to the technical scheme provided by the application, the first TCP message is a TCP message in a downlink direction, the access point reduces the value of the RWDD field in the first TCP message sent to the target site, after the target site receives the modified first TCP message, the target site can send the uplink flow of the non-critical service to which the first TCP message belongs to the sending end of the first TCP message according to the value of the RWDD field in the modified first TCP message, and the size of the uplink flow of the non-critical service sent by the target site is usually not larger than the size of the flow represented by the value of the RWDD field in the modified first TCP message, so that the control of the uplink flow of the non-critical service to which the first TCP message belongs is realized, and the QoS (quality of service) of the critical service of the access point is improved.
Optionally, the first TCP packet is a TCP data packet or a TCP Acknowledgement (ACK) packet. The TCP data message and the TCP ACK message are both referred to as TCP messages in the present application. The first TCP message is a TCP ACK message, and the first TCP message may be a TCP ACK message in a downlink direction.
In one possible scenario, the access point has the capability to identify the TCP ACK message, and after identifying that the first TCP message is a TCP ACK message belonging to the downlink direction of the non-critical traffic, the access point reduces the value of the RWND field in the first TCP message. In another possible case, the access point does not have the capability of identifying the TCP ACK packet, the access point cannot identify that the first TCP packet is the TCP ACK packet, and the access point reduces the value of the RWND field in the TCP packets (including the TCP data packet and the TCP ACK packet) belonging to the downlink direction of the non-critical traffic forwarded by the access point, so as to reduce the value of the RWND field in the TCP ACK packets belonging to the downlink direction of the non-critical traffic, and thus reduce the value of the RWND field in the first TCP packets.
Optionally, the reducing, by the access point, the value of the RWND field in the first TCP message includes: and when the traffic of the non-critical traffic needs to be reduced, the access point reduces the value of the RWDD field in the first TCP message.
According to the technical scheme provided by the application, the value of the RWDD field in the first TCP message is reduced under the condition that the flow of the non-critical service to which the first TCP message belongs needs to be reduced by the access point, so that the uplink flow of the non-critical service to which the first TCP message belongs is controlled according to needs, and the QoS of the critical service of the access point is improved.
Optionally, when it is required to reduce the traffic of the non-critical traffic, the access point reduces the value of the RWND field in the first TCP message, including: when the utilization of the access point's operating channel is greater than a target threshold and the access point's critical traffic is impaired, the access point decreases the value of the RWND field in the first TCP message.
For example, when the utilization rate of the working channel of the access point is greater than the target threshold and critical traffic of the access point is impaired, the access point determines that it is necessary to reduce the traffic of non-critical traffic to which the first TCP packet belongs, and the access point reduces the value of the RWND field in the first TCP packet. That is, the triggering condition for the access point to reduce the traffic of the non-critical service to which the first TCP packet belongs includes: the utilization of the access point's operating channel is greater than a target threshold and the access point's critical traffic is impaired.
According to the technical scheme provided by the application, if the utilization rate of the working channel of the access point is greater than the target threshold value and the key service of the access point is damaged, the access point is considered to have air interface congestion. And when the access point is in air interface congestion, the access point reduces the value of the RWDD field in the first TCP message to control the uplink flow of the non-critical service to which the first TCP message belongs, so that the air interface congestion problem of the access point can be better relieved, and the QoS of the critical service of the access point is improved.
Optionally, when it is required to reduce the traffic of the non-critical traffic, the access point reduces the value of the RWND field in the first TCP message, including: when the access point receives an indication to control flow of the non-critical traffic, the access point decreases the value of the RWND field in the first TCP message.
For example, when the access point receives an indication for controlling the flow of the non-critical traffic, the access point determines that the flow of the non-critical traffic to which the first TCP packet belongs needs to be reduced, and the access point reduces the value of the RWND field in the first TCP packet. That is, the triggering condition for the access point to reduce the traffic of the non-critical service to which the first TCP packet belongs includes: the access point receives an indication to flow control the non-critical traffic.
According to the technical scheme provided by the application, the access point reduces the value of the RWDD field in the first TCP message under the condition that the access point receives the indication for controlling the flow control of the non-critical service, so as to control the uplink flow of the non-critical service, thereby not only relieving the air interface congestion problem of the access point, but also reducing the load of the equipment sending the indication, improving the QoS of the service (such as the critical service) of the equipment sending the indication, and realizing the cooperative work of the access point and the equipment.
Optionally, the indication for performing flow control on the non-critical service is from an intra-frequency neighbor access point of the access point. Therefore, the load of the co-frequency neighbor access point of the access point can be reduced, the QoS of the service of the co-frequency neighbor access point of the access point can be improved, and the cooperative work of the access point and the co-frequency neighbor access point of the access point can be realized.
Optionally, after the access point sends the first downlink frame to the target station, the method further includes: the access point receives a second TCP message sent to the target station, wherein the second TCP message belongs to the non-key service; when the receiving throughput of the access point to the non-critical service is smaller than the target throughput, the access point reduces the value of the RWDD field in the second TCP message to obtain a modified second TCP message, wherein the value of the RWDD field in the modified second TCP message is smaller than the value of the RWDD field in the second TCP message before modification and is larger than the value of the RWDD field in the modified first TCP message; and the access point sends a second downlink frame to the target station, wherein the second downlink frame comprises the modified second TCP message.
And the second TCP message and the first TCP message belong to the same TCP stream. Since the value of the RWND field in the modified second TCP message is smaller than the value of the RWND field in the second TCP message before modification and larger than the value of the RWND field in the modified first TCP message, the decrease of the value of the RWND field in the second TCP message by the access point may be regarded as the increase of the value of the RWND field in the second TCP message by the access point on the basis of the value of the RWND field in the modified first TCP message. Compared with the modified first TCP message, the modified second TCP message can enable the target site to send the upstream traffic of the non-critical service in a relatively larger window.
According to the technical scheme provided by the application, the access point reduces the value of the RWDD field in the second TCP message which belongs to the non-critical service and is sent to the target site under the condition that the receiving throughput of the access point to the non-critical service is smaller than the target throughput, so that the value of the RWDD field in the modified second TCP message is smaller than the value of the RWDD field in the second TCP message before modification and larger than the value of the RWDD field in the modified first TCP message. Therefore, the access point can realize dynamic control on the uplink flow of the non-key service, improve the QoS of the key service of the access point, stabilize the receiving throughput of the access point to the non-key service at a certain level, avoid over-inhibition on the non-key service, and ensure the throughput of the access point to the non-key service as much as possible.
Optionally, the second TCP message is a TCP data message or a TCP ACK message. The application indicates that the second TCP message is a TCP ACK message, and the second TCP message may be a TCP ACK message in a downlink direction.
Optionally, after the access point sends the first downlink frame to the target station, the method further includes: the access point receives a third TCP message sent to the target site, wherein the third TCP message belongs to the non-key service; when the receiving throughput of the access point to the non-critical service is greater than the target throughput, the access point reduces the value of the RWDD field in the third TCP message to obtain a modified third TCP message, wherein the value of the RWDD field in the modified third TCP message is smaller than the value of the RWDD field in the third TCP message before modification and smaller than the value of the RWDD field in the modified first TCP message; and the access point sends a third downlink frame to the target station, wherein the third downlink frame comprises a modified third TCP message.
And the third TCP message and the first TCP message belong to the same TCP stream. Because the value of the RWND field in the modified third TCP message is smaller than the value of the RWND field in the third TCP message before modification and smaller than the value of the RWND field in the modified first TCP message, the value of the RWND field in the third TCP message before modification is set by the sending end of the third TCP message in the third TCP message, and the value of the RWND field in the third TCP message before modification is usually larger, the access point can reduce the value of the RWND field in the third TCP message on the basis of the value of the RWND field in the modified first TCP message. Compared with the modified first TCP message, the modified third TCP message can enable the target station to send the uplink flow of the non-critical service in a smaller window.
According to the technical scheme provided by the application, the access point reduces the value of the RWDD field in the third TCP message which belongs to the non-critical service and is sent to the target site under the condition that the receiving throughput of the access point to the non-critical service is larger than the target throughput, so that the value of the RWDD field in the modified third TCP message is smaller than the value of the RWDD field in the third TCP message before modification and smaller than the value of the RWDD field in the modified first TCP message. Therefore, the access point can realize the dynamic control of the uplink flow of the non-key service, the QoS of the key service of the access point is improved, simultaneously, the receiving throughput of the access point to the non-key service can be stabilized at a certain level, the excessive inhibition of the non-key service is avoided, and the throughput of the access point to the non-key service is ensured as much as possible.
Optionally, the third TCP packet is a TCP data packet or a TCP ACK packet. The third TCP message is a TCP ACK message, and the third TCP message may be a TCP ACK message in the downlink direction.
Optionally, the traffic of the non-critical traffic is greater than a target threshold. That is, the non-critical traffic may be high traffic. The high traffic flow service refers to a service with a large traffic flow, and is generally a service that is continuously or burst-wise packetized.
In a second aspect, there is provided a flow control apparatus comprising means for performing a method as provided in the first aspect above or any alternative form of the first aspect. The modules may be implemented based on software, hardware or a combination of software and hardware, and the modules may be combined or divided arbitrarily based on the specific implementation.
In a third aspect, a flow control device is provided, comprising a processor, a memory, and a transceiver;
the transceiver is configured to perform transceiving actions in a method as provided in the first aspect above or any alternative of the first aspect;
the memory is used for storing a computer program;
the processor is adapted to execute a computer program stored in the memory to perform the processing actions in the method as provided in the first aspect above or any alternative of the first aspect.
In a fourth aspect, there is provided a computer readable storage medium having stored thereon a computer program which, when executed, performs the method as provided in the first aspect above or any alternative form of the first aspect.
In a fifth aspect, there is provided a computer program product comprising a program or code which, when executed, implements a method as provided in the first aspect above or any alternative form of the first aspect.
A sixth aspect provides a chip comprising programmable logic and/or program instructions, the chip when run being configured to implement a method as provided in the first aspect or any alternative form of the first aspect.
In a seventh aspect, a flow control system is provided, including: an access point for performing a method as provided in the first aspect or any alternative form of the first aspect above, and a target station associated with the access point.
Optionally, the access point comprises a flow control device as provided in the second or third aspects above.
Optionally, the flow control system includes at least two access points, where the at least two access points are neighbors of each other, working channels of the at least two access points are overlapped, and any one of the at least two access points may instruct other access points to perform flow control on non-critical services.
Optionally, the at least two access points include a first access point and a second access point, and the at least two access points are neighboring to each other and include: the distance between the first access point and the second access point is less than a distance threshold.
Optionally, the at least two access points include a first access point and a second access point, and the working channels of the at least two access points overlap, including: at least one sub-channel in the operating channel of the first access point is the same as at least one sub-channel in the operating channel of the second access point. For example, the working channel of the first access point is all the same as the working channel of the second access point, or a part of the working channel of the first access point is the same as a part of the working channel of the second access point.
The beneficial effect that technical scheme that this application provided brought is:
according to the flow control method and the flow control device, after receiving a TCP message which belongs to non-key services and is sent to a target site, an access point reduces the value of a RWND field in the TCP message to obtain a modified TCP message, and sends a downlink frame comprising the modified TCP message to the target site. The value of the RWDD field in the TCP message is used for representing the flow size which can be received by the sending end of the TCP message. After receiving the modified TCP message, the target station may send the uplink traffic of the non-critical service to the sending end of the TCP message according to the value of the RWND field in the modified TCP message, and the uplink traffic of the non-critical service, which is sent to the sending end of the TCP message by the target station, is forwarded to the sending end of the TCP message through the access point. Because the access point reduces the value of the RWDD field in the downlink TCP message which belongs to the non-critical service and is sent to the target station, the target station reduces the uplink flow of the non-critical service, realizes the control of the uplink flow of the non-critical service and is beneficial to improving the QoS of the critical service of the access point.
Drawings
Fig. 1 is a schematic structural diagram of a communication system according to an embodiment of the present application;
fig. 2 is a flowchart of a flow control method according to an embodiment of the present application;
fig. 3 is a flowchart of another flow control method provided in an embodiment of the present application;
fig. 4 is a flowchart of another flow control method provided in an embodiment of the present application;
fig. 5 is a schematic structural diagram of a congestion control apparatus according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of another congestion control apparatus provided in an embodiment of the present application;
fig. 7 is a schematic structural diagram of another congestion control apparatus according to an embodiment of the present application.
Detailed Description
Embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
In a wireless network (for example, a WLAN), with the increase of network devices and the emergence of emerging services such as video conferencing and cloud backup, network traffic is increased, the situation of traffic burst is increased, the load of an AP is increased, and air interface congestion of the AP is easily caused.
And limited by wireless spectrum resources, the APs closer to each other inevitably need co-frequency deployment (the APs closer to each other are neighbors, and the APs closer to each other and co-frequency deployment are co-frequency neighbors). Since the neighbor APs deployed with the same frequency share the air interface resource, the air interface congestion of a certain AP will also cause the air interface congestion of the neighbor APs with the same frequency.
The air interface congestion easily causes the problems of packet loss, increased transmission delay, reduced throughput and the like of a wireless network, affects the QoS of the key service, and even causes the key service to be damaged. Therefore, under the situation that the network traffic is increased and the traffic burst situation is increased, how to improve the QoS of the key service is an urgent problem to be solved.
The embodiment of the application provides a flow control method and device. The AP controls the flow of the non-critical service by reducing the value of the RWDD field in the TCP message which belongs to the non-critical service and is sent to the target STA, and the QoS of the critical service of the access point is improved. For example, the AP reduces the value of the RWND field in the downlink TCP message belonging to the non-critical service and sent to the target STA to control the uplink traffic of the non-critical service, so that the QoS of the critical service of the access point can be more effectively improved. Especially, the QoS of the key service is improved under the situation that the network flow is increased and the flow burst situation is increased rapidly.
The following describes a technical solution of an embodiment of the present application. An environment for implementing embodiments of the present application is first described.
The technical scheme provided by the embodiment of the application can be applied to any communication system (or called as a communication network) based on TCP. For example, the method is suitable for the following communication systems based on the TCP protocol: internet of things (IoT) system, WLAN system, long Term Evolution (LTE) system, fifth generation mobile communication (5 th generation mobile networks or 5th generation wireless systems, 5G) New Radio (NR) system or communication system after 5G, such as 6G system, device to device (D2D) communication system, car networking system, etc.
The embodiment of the application does not limit the specific application scenario of the technical scheme provided by the embodiment of the application. For example, the technical solution provided by the embodiment of the present application may be applied to the communication system shown in fig. 1. The communication system shown in fig. 1 may be an enterprise campus network or a Data Center (DC) network, which is not limited in the embodiments of the present application.
As shown in fig. 1, the communication system includes a server 101, network devices 102 to 104, APs 1 to AP2, and STAs 1 to STA4. The server 101 and the network devices 102 to 104 are all deployed in a wired network. The AP1 to AP2 and the STA1 to STA4 are disposed in a wireless network (e.g., WLAN). AP1 and AP2 are used to provide a bridging function between a wireless network and a wired network.
Where network device 102 may be an aggregation switch, network device 103 and network device 104 may each be an access switch. The server 101 is connected to the network device 102. Network device 102 is connected to network device 103 and network device 104, respectively. The network device 103 is connected to the AP 1. The network device 104 is connected to AP2. The connection between the server 101 and the network device 102 is a direct connection or an indirect connection. For example, server 101 and network device 102 are connected through a core switch (not shown in fig. 1). In the embodiment of the present application, it is defined that a direction from the server to the STA is a downlink direction, and a direction from the STA to the server is an uplink direction. As shown in fig. 1, the downstream port of the aggregation switch for communicating with the access switch is a 10GE port, and the downstream port of the access switch for communicating with the AP (i.e., AP1 and AP 2) is a 1GE port.
As shown in fig. 1, STA1 and STA2 are associated with AP1, and STA3 and STA4 are associated with AP2, respectively. In a WLAN network, an AP communicates with STAs associated to the AP over the air and shares air resources. Therefore, the AP1 communicates with the STA1 and the STA2 through the air interface and shares air interface resources. The AP2 communicates with the STAs 3 and 4 via an air interface and shares air interface resources. The AP1 and the AP2 are deployed at the same frequency, and the AP1 and the AP2 share air interface resources. Namely, the AP1 to AP2 and the STA1 to STA4 share air interface resources.
In the embodiment of the present application, co-frequency deployment of multiple APs means that working channels of the multiple APs are overlapped. The working channels of the APs may include at least one sub-channel, and the overlapping of the working channels of the APs includes that at least one sub-channel exists in the working channels of the APs and is the same, the working channels of the APs may be completely the same, or the working channels of the APs are partially the same. For example, the operating channel of AP1 and the operating channel of AP2 are both channels <36,40>. Channel <36,40> is a 40MHz bandwidth channel, and includes two 20MHz bandwidth channels, channel 36 and channel 40, and the two 20MHz bandwidth channels, channel 36 and channel 40, are sub-channels in a 40MHz bandwidth channel, channel <36,40>. The operating channel of AP1 overlaps with the operating channel of AP2, and the operating channel of AP1 is identical to the operating channel of AP2. For another example, the working channel of AP1 is channel <32,36>, and the working channel of AP2 is channel <36,40>. The operating channel of AP1 overlaps with the operating channel of AP2, and the operating channel of AP1 is partially the same as the operating channel of AP2. For another example, the operating channel of AP1 is channel <36,40>, and the operating channel of AP2 is channel <36,40,44,48>. The operating channel of AP1 overlaps with the operating channel of AP2, and the operating channel of AP1 is partially the same as the operating channel of AP2. In addition, the APs with the closer distance are neighbors of each other, and for two APs with the closer distance, one of the APs may be referred to as a neighbor AP of the other AP. If two APs are deployed with the same frequency and are neighbors of each other, one of the APs may be referred to as an intra-frequency neighbor AP of the other AP.
The AP may be a switch, a router, a virtual switch or a virtual router, etc., the AP is used in a broadband home, inside a building, inside a garden, etc., and signals of the AP may cover a range from tens of meters to hundreds of meters. The STAs may be desktop, laptop, handheld, wearable, smart home, computing, and in-vehicle devices, among others, with wireless connectivity. For example, the STA may be a mobile phone, a netbook, a notebook, a tablet, a smart watch, a supercomputer, an ultra-mobile personal computer (UMPC), a smart camera, a Personal Digital Assistant (PDA), a Portable Multimedia Player (PMP), an Augmented Reality (AR) device, a Virtual Reality (VR), a wireless device on an aircraft, a wireless device on a robot, a wireless device in industrial control, a wireless device in telemedicine, a wireless device in a smart grid, a wireless device in a smart city (smart city), etc., a wireless device in a Narrowband (NB) system, a wireless device in an IoT system, e.g., a sensor or a camera, etc. Alternatively, the STA may be an industrial Automatic Optical Inspection (AOI) device or the like. The access switch is used to connect the AP to the wired network. The portion of a wired network that directly faces a user's connection or access network is called the access stratum. An access switch is generally used to directly connect a terminal device such as a computer. Access switches are therefore typically characterized by low cost and high port density. An aggregation switch is a point of aggregation of multiple access switches that is capable of handling all traffic from access layer devices (e.g., access switches) and providing uplinks to core layer devices (e.g., core switches). Aggregation layer switches generally have higher performance, fewer interfaces, and higher switching rates than access layer switches. In an enterprise campus network, aggregation switches are typically used between buildings and act as a local or critical transfer station. The core switches are used to provide high-speed transport and optimization for the aggregation layer devices (e.g., aggregation switches), which may be referred to as an egress or aggregation. The core switches support and aggregate all transport traffic, and therefore, the core switches generally have higher reliability and throughput. For example, a two-tier switch or a three-tier switch, which is throughput-intensive, may be used as a core switch. The servers include, for example, a server farm, e.g., a DC, a computer room, or a private cloud, inside the enterprise campus. The server is used to provide remote services (e.g., computing services, storage services, and network services) for the STAs.
It should be noted that the communication system shown in fig. 1 is only for example and is not used to limit the technical solution of the present application. In the implementation process, the number of servers, the number of switches in each layer, the number of APs, the number of STAs, and the networking architecture formed by these devices may be configured as required. And other devices or networks may also be configured in the communication system, such as a controller, an egress router, an operator network, a private network, a public cloud, or the like. Furthermore, the AP may be any device providing network access services for the STA other than the above list, and the STA may be any wireless device having wireless network access functions other than the above list, for example, the STA may be any device having WLAN connection functions.
In the embodiment of the present application, the direction from the server to the STA is a downlink direction, and the direction from the STA to the server is an uplink direction. The sending end of the uplink flow is the STA, and the receiving end may be the server. The sending end of the downlink traffic may be a server, and the receiving end is an STA. Take the communication system shown in fig. 1 as an example. For a certain service a (e.g., an uplink service), a transmission process of uplink traffic belonging to the service a includes: the STA (e.g., STA 1) transmits a TCP data packet belonging to the service a to the server 101, and the TCP data packet sequentially passes through the AP1, the network device 103, and the network device 102 to reach the server 101. Correspondingly, the transmission process of the downlink traffic belonging to the service a includes: the server 101 sends a TCP ACK packet belonging to the service a to the STA1, and the TCP ACK packet sequentially passes through the network device 102, the network device 103, and the AP1 to be forwarded to the STA1. For another service B (e.g., downlink service B), the transmission process of the downlink traffic belonging to the service B includes: the server 101 sends a TCP data packet belonging to the service B to the STA (for example, STA 1), and the TCP data packet sequentially passes through the network device 102, the network device 103, and the forwarding of the AP1 to reach the STA1. Correspondingly, the transmission process of the uplink flow belonging to the service B is as follows: the STA1 sends a TCP ACK packet belonging to the service B to the server 101, and the TCP ACK packet sequentially forwards to the server 101 through the AP1, the network device 103, and the network device 102. The TCP ACK packet corresponds to a TCP data packet, and the TCP ACK packet and the TCP data packet corresponding to the TCP ACK packet belong to the same TCP flow, and the difference is that the packet direction of the TCP data packet is opposite to the packet direction of the corresponding TCP ACK packet.
As can be seen from the above description, the AP plays a crucial role in the transmission of traffic (including uplink traffic and downlink traffic). If the AP is congested on the air interface, it may cause the key traffic of the AP (e.g., the traffic of the AP needs to be forwarded by the AP) to be damaged, and QoS of the key traffic of the AP is difficult to guarantee. In addition, compared with the downlink traffic, the uplink traffic has a many-to-one characteristic (for example, a plurality of STAs transmit the uplink traffic to the same server, and the uplink traffic is forwarded through the same AP), so that the contention of the uplink traffic on the air interface resource is large, the impact of the uplink traffic on the key service is large, and especially the impact of the uplink traffic on the key service is more obvious. The high traffic flow refers to a traffic flow with a large traffic flow, and is usually a continuous packet or a burst packet, for example, a traffic flow with a flow rate greater than a target threshold value.
For convenience of description, the TCP data message and the TCP ACK message are both referred to as TCP messages in this application. The value of the RWND field in the TCP packet is used to represent the size of the traffic that a sending end (e.g., a server) of the TCP packet can receive, and a receiving end (e.g., an STA) of the TCP packet usually sends the traffic of the service to which the TCP packet belongs to the sending end of the TCP packet according to the value of the RWND field in the TCP packet. In view of this, in the process of forwarding the TCP packet, the AP may modify the value of the RWND field in the TCP packet, so as to implement traffic regulation on the service to which the TCP packet belongs. For example, the AP reduces the value of the RWND field in the TCP message for non-critical traffic to achieve throttling of the non-critical traffic. That is, the QoS of the critical traffic of the AP is thereby improved. Optionally, the AP reduces the value of the RWND field in the TCP ACK message belonging to the downlink direction of the non-critical service, so as to implement control on the uplink traffic of the non-critical service, thereby better improving the QoS of the critical service of the AP.
The downlink traffic of the non-critical service is sent from the AP to the terminal, and the AP can directly reduce the message traffic sent to the terminal to control the downlink traffic of the non-critical service. The uplink traffic of the non-critical service is sent by the terminal, and the AP cannot directly control the message traffic sent by the terminal. In the embodiment of the present application, when an AP needs to perform flow control on a non-critical service, a value of a RWND field in a TCP message belonging to the non-critical service is reduced to perform flow control on the non-critical service. The AP may reduce the value of the RWND field in the TCP message belonging to the downlink direction of the non-critical traffic to control the uplink traffic of the non-critical traffic.
In the application, the AP reduces the value of the RWND field in the TCP message belonging to the downlink direction of the non-critical traffic to control the uplink traffic of the non-critical traffic. The AP may reduce the value of the RWND field in the TCP ACK message in the downlink direction belonging to the non-critical service to control the uplink traffic of the non-critical service.
In one possible scenario, the AP has the capability to identify a TCP ACK packet, and the value of the RWND field in the TCP ACK packet is reduced after the AP identifies a TCP ACK packet belonging to the downlink direction of the non-critical traffic. In another possible case, the AP does not have the capability of recognizing the TCP ACK packet, and the AP reduces the value of the RWND field in the TCP packets (including the TCP data packet and the TCP ACK packet) belonging to the downlink direction of the non-critical traffic forwarded by the AP so as to reduce the value of the RWND field in the TCP ACK packets belonging to the downlink direction of the non-critical traffic.
In the present application, whether a service is a key service may be classified according to an Access Category (AC). For example, the access categories include Voice (VO), video (VI), best Effort (BE), and Background (BK). For example, the critical service is a service that requires priority to guarantee QoS, such as a VO service (i.e., a service whose access category is VO), a VI service (i.e., a service whose access category is VI), and the non-critical service corresponds to a service that requires lower QoS, such as a BK service (i.e., a service whose access category is BK), a BE service (i.e., a service whose access category is BE). The present application distinguishes between critical traffic and non-critical traffic by access category is merely an example, and in some embodiments, critical traffic and non-critical traffic may be distinguished by application type. For example, the application types include live broadcast, video, voice, backup and the like, the key services include live broadcast, video, voice and the like, and the non-key services correspond to backup services.
Method embodiments of the present application are described below. The method embodiment of the application is applied to the AP. In the process of forwarding the TCP packet in the downlink direction, the AP reduces the value of the RWND field of the TCP packet in the downlink direction belonging to the non-critical service, so as to control the uplink traffic of the non-critical service. Wherein the AP may be AP1 or AP2 in fig. 1. For convenience of description, the following method embodiments exemplify the application of the flow control method to the AP 1. The following embodiments can be referred to as a flow control method applied to the AP2.
Referring to fig. 2, a flowchart of a flow control method according to an embodiment of the present application is shown. As shown in fig. 2, the flow control method includes the following steps S201 to S203.
S201, the AP1 receives a first TCP message sent to a target STA, wherein the first TCP message belongs to non-key services, and the target STA is associated with the AP 1.
The target STA is any STA associated with the AP1, for example, the target STA is STA1 or STA2 in fig. 1. Non-critical traffic refers to traffic with lower QoS requirements. The non-critical traffic may BE traffic or BK traffic, e.g., classified by access category. The flow of the non-critical service to which the first TCP packet belongs is greater than the target threshold, that is, the flow of the non-critical service is greater, and the non-critical service is a large-flow service. For example, the non-critical traffic to which the first TCP packet belongs is a large-traffic BE traffic or BK traffic.
The AP1 may receive the first TCP packet addressed to the target STA from the previous hop of the AP1 on the transmission path of the first TCP packet. The first TCP message may be a TCP data message or a TCP ack message, and the first TCP message may be a TCP message in a downlink direction. Take the first TCP packet as the TCP ack packet in the downlink direction as an example. For example, as shown in fig. 1, the direction from the server to the STA is a downlink direction, the first TCP packet may be a TCP packet message sent from the server 101 to the STA1 (i.e., a TCP packet message in the downlink direction), and the AP1 receives the first TCP packet from the network device 103.
S202, AP1 reduces the value of the RWDD field in the first TCP message to obtain the modified first TCP message.
The value of the RWND field in the TCP message is used to represent the size of the traffic that can be received by the sending end of the TCP message, and the size of the traffic may be the number of messages or the amount of data. The larger the value of the RWND field in the TCP message is, the larger the traffic that the sending end of the TCP message can receive is, and the larger the window that the receiving end of the TCP message can send the traffic of the service to which the TCP message belongs to the sending end of the TCP message. The smaller the value of the RWND field in the TCP message is, the smaller the traffic that the sending end of the TCP message can receive is, and the smaller the window is required for the receiving end of the TCP message to send the traffic of the service to which the TCP message belongs to the sending end of the TCP message.
In this embodiment of the present application, the first TCP packet sent to the target STA is a TCP packet in a downlink direction, and after receiving the first TCP packet, the AP1 reduces the value of the RWND field in the first TCP packet, so that the traffic represented by the value of the RWND field in the first TCP packet is reduced. In this way, after receiving the first TCP packet (referred to as the modified first TCP packet), the target STA sends the uplink traffic of the non-critical service to which the first TCP packet belongs to the sending end of the first TCP packet through a smaller window according to the value of the RWND field in the modified first TCP packet, thereby implementing control of the uplink traffic of the non-critical service.
In an alternative embodiment, the AP1 reducing the value of the RWND field in the first TCP message comprises: when the traffic of the non-critical traffic to which the first TCP packet belongs needs to be reduced (i.e. when the traffic of the non-critical traffic to which the first TCP packet belongs needs to be controlled), the AP1 reduces the value of the RWND field in the first TCP packet. Thereby, on-demand control of the traffic of the non-critical traffic can be achieved. The AP1 needs to reduce the traffic of the non-critical service to which the first TCP packet belongs, which may be that the traffic of the non-critical service needs to be reduced due to the AP1 itself (for example, the AP1 is congested), or that the AP1 is instructed by another device to reduce the traffic of the non-critical service. Two cases will be described below.
Case (1): the AP1 needs to reduce the traffic of the non-critical traffic to which the first TCP packet belongs, due to the AP1 itself.
For example, when the AP1 has wired congestion or air interface congestion, the AP1 determines that it is necessary to reduce the traffic of the non-critical service to which the first TCP packet belongs. In the embodiment of the present application, the occurrence of the air interface congestion in the AP1 is described as an example. That is, when the AP1 is congested at the air interface, the AP1 determines that it is necessary to reduce the traffic of the non-critical service to which the first TCP packet belongs. In this embodiment of the present application, for this case (1), the triggering condition for the AP1 to reduce the flow of the non-critical service to which the first TCP packet belongs is as follows: the AP1 has an air interface congestion.
The occurrence of air interface congestion in the AP1 includes: the utilization (CU) of the working channel of AP1 is greater than the target threshold and the critical traffic of AP1 is impaired. That is, when the AP1 determines that the utilization rate of the working channel of the AP1 is greater than the target threshold and the critical traffic of the AP1 is damaged, the AP1 determines that the traffic of the non-critical traffic to which the first TCP packet belongs needs to be reduced. The target threshold may be set according to practical situations, for example, the target threshold is 80%.
Wherein, the key traffic of the AP1 refers to the key traffic that needs to be forwarded via the AP 1. The key traffic of AP1 may be VO traffic or VI traffic, e.g., classified by access category. The impairment of the critical traffic of AP1 means that the QoS of the critical traffic of AP1 is lower than the QoS requirement of the critical traffic. The QoS includes one or more of: average delay, maximum delay, jitter, and throughput. Accordingly, the QoS requirements include one or more of: an average delay threshold, a maximum delay threshold, a jitter threshold, and a throughput threshold. The QoS of the critical traffic being lower than the QoS requirement of the critical traffic comprises one or more of: the average delay of the key service is greater than the average delay threshold in the QoS requirement of the key service, the maximum delay of the key service is greater than the maximum delay threshold in the QoS requirement of the key service, the jitter of the key service is greater than the jitter threshold in the QoS requirement of the key service, and the throughput of the key service is less than the throughput threshold in the QoS requirement of the key service.
In one implementation, if at least one QoS metric (e.g., average delay, maximum delay, jitter, throughput, etc.) of a critical traffic of AP1 does not meet the QoS requirement of the critical traffic, AP1 determines that the critical traffic is impaired. In another implementation, if the number of the indexes which do not meet the QoS requirement of the critical service in the QoS indexes of the critical service of the AP1 is greater than or equal to a specified number, the AP1 determines that the critical service is damaged. For example, the specified number is 2. In yet another implementation, if a particular QoS index of a critical service of AP1 does not meet the QoS requirement of the critical service, AP1 determines that the critical service is impaired. The particular QoS metric includes one or more of an average delay, a maximum delay, a jitter, and a throughput.
In this embodiment, the AP1 may monitor, in real time or periodically, the utilization rate of the working channel of the AP1 and the QoS of the key service of the AP1, determine whether the utilization rate of the working channel of the AP1 is greater than a target threshold, and determine whether the QoS of the key service of the AP1 is lower than the QoS requirement of the key service. If the utilization rate of the working channel of the AP1 is greater than the target threshold and the QoS of the key service of the AP1 is lower than the QoS requirement of the key service, the AP1 determines that air interface congestion occurs in the AP1, and the AP1 determines that the traffic of the non-key service to which the first TCP packet belongs needs to be reduced. If the utilization rate of the working channel of the AP1 is not greater than the target threshold and/or the QoS of the key service of the AP1 is not lower than the QoS requirement of the key service, the AP1 determines that the air interface congestion does not occur in the AP1, and the AP1 determines that the traffic of the non-key service to which the first TCP message belongs does not need to be reduced. A Medium Access Control (MAC) layer unit is included in the AP1, and a process of monitoring QoS of the key traffic of the AP1 by the AP1 may be implemented by the MAC layer unit. The MAC layer unit may be a separate chip or a processing circuit integrated with other units on the same chip.
In an optional embodiment, the AP1 is used for forwarding services, the services forwarded by the AP1 include one or more types of VO services, VI services, BE services, and BK services, and the cache of the AP1 includes a queue corresponding to each type of service (for example, a VO queue corresponding to the VO service, a VI queue corresponding to the VI service, a BE queue corresponding to the BE service, and a BK queue corresponding to the BK services). When receiving the messages of each type of service, the AP1 first caches the messages in the queues of the corresponding services, and then forwards the messages in the queues according to the order of the messages in the queues. Taking the example that the key service of the AP1 is the VO service, the AP1 monitors an enqueue timestamp of each VO message (for simplicity, a message of the VO service is referred to as a VO message) entering the VO queue and a dequeue timestamp of each VO message (for example, a transmission timestamp of the VO message by the AP 1) leaving the VO queue, and determines a time difference between the dequeue timestamp and the enqueue timestamp of the VO message as a time delay of the VO message in the VO queue, so that the AP1 can determine the time delay of each VO message in the VO queue. Then, the AP1 determines an average value of the time delays of all VO messages successfully sent within a specified time duration (e.g., 1 second) in the VO queue, and determines the average value as the average time delay of the VO service. And the AP1 determines the maximum value of the time delay of all VO messages successfully sent within the specified time length in the VO queue, and determines the maximum value as the maximum time delay of the VO service. The AP1 determines the maximum value and the minimum value of the time delay of all VO messages successfully sent within the specified time length in the VO queue, and determines the difference value between the maximum value and the minimum value as the jitter of the VO service. And determining, by the AP1, a total data size of all VO messages successfully sent within the specified duration (i.e., a sum of the number of bytes of all VO messages), and determining the total data size as the throughput of the VO service. Therefore, the QoS of the VO service is monitored.
Case (2): the AP1 is indicated by other equipment that the flow of the non-critical service to which the first TCP message belongs needs to be reduced.
In an optional embodiment, when the AP1 receives an indication for controlling the flow of the non-critical traffic to which the first TCP packet belongs, the AP1 determines that the flow of the non-critical traffic to which the first TCP packet belongs needs to be reduced. That is, for the case (2), the triggering condition for the AP1 to reduce the traffic of the non-critical service to which the first TCP packet belongs is as follows: the AP1 receives an indication for performing flow control on the non-critical traffic to which the first TCP packet belongs.
The indication for controlling the flow of the non-critical service to which the first TCP packet belongs may be that an intra-frequency neighbor AP (for example, AP2 in fig. 1) of AP1 sends to AP1, or that other devices send to AP 1. In the embodiment of the present application, an example that the instruction for performing flow control on the non-critical service to which the first TCP packet belongs is sent by the AP2 to the AP1 is described. The AP2 may send, to the AP1, an indication for controlling the flow of the non-critical traffic to which the first TCP packet belongs when the AP2 has wired congestion or air interface congestion. The occurrence of air interface congestion in the AP2 includes: the utilization of the operating channel of AP2 is greater than the target threshold and the critical traffic of AP2 is impaired. The process of determining that the key service of the AP2 is damaged by the AP2 may refer to the process of determining that the key service of the AP2 is damaged by the AP1, and details of the embodiment of the present application are not described herein again.
In this embodiment of the application, when receiving an instruction sent by the AP2 to control flow of a non-critical service to which a first TCP packet belongs, the AP1 determines that it is necessary to reduce the flow of the non-critical service to which the first TCP packet belongs, and further reduces the value of the RWND field in the first TCP packet belonging to the non-critical service and sent to a target station to control flow of the non-critical service, so that not only the QoS of the critical service of the AP1 can be improved, but also the QoS of a service (for example, a critical service) of the AP2 can be improved, and cooperative work of the AP1 and the AP2 is realized.
The above two cases describe the trigger condition for the AP1 to perform flow control on the non-critical service to which the first TCP packet belongs. The two trigger conditions may be used independently or in combination, and the AP1 may also perform flow control on the non-critical service to which the first TCP packet belongs under other trigger conditions, which is not limited in this embodiment of the present application. The following describes an implementation procedure of AP1 to reduce the value of the RWND field in the first TCP message.
In this embodiment of the application, a value of the RWND field in the modified first TCP packet is smaller than a value of the RWND field in the first TCP packet before modification and smaller than a RWND value currently maintained by the AP1 and corresponding to a first TCP flow, where the first TCP flow is a TCP flow to which the first TCP packet belongs, and the first TCP flow belongs to the non-critical service. The RWND value currently maintained by AP1 corresponding to the first TCP flow is the value of the RWND field in the TCP message belonging to the first TCP flow that AP1 forwarded last time and addressed to the target STA. The value of the RWND field in the first TCP message before modification is set in the first TCP message by the sending end of the first TCP message, and the value of the RWND field in the first TCP message before modification is usually not less than the RWND value currently maintained by the AP1 and corresponding to the first TCP flow, so that the AP1 can reduce the value of the RWND field in the first TCP message on the basis of the RWND value currently maintained by the AP1 and corresponding to the first TCP flow.
In an alternative embodiment, AP1 decrements the value of the RWND field in the first TCP packet according to the first formula w = w '-1+1/w'. In this first equation, w is a value reduced from the value of the RWND field, and w' is the RWND value currently maintained by AP1 corresponding to the first TCP flow. The first TCP packet may be a TCP ACK packet, where "1" in the first formula indicates the number of bytes acknowledged by the first TCP packet, "1/w '" is a parameter set for maintaining the inter-stream fairness of different TCP streams, and a symbol "/" in "1/w'" indicates a division number.
S203, the AP1 sends a first downlink frame to the target STA, wherein the first downlink frame comprises the modified first TCP message.
The AP1 generates a first downlink frame according to the modified first TCP message, and sends the first downlink frame to the target STA through a working channel of the AP 1.
After receiving the first downlink frame, the target STA may obtain the modified first TCP packet from the first downlink frame, determine the RWND according to the value of the RWND field in the modified first TCP packet, and send the traffic of the non-critical service to which the first TCP packet belongs to the sending end of the first TCP packet according to the RWND. For example, the target STA sends the traffic of the first TCP flow to the sending end of the first TCP packet according to the RWND. The target STA maintains a Congestion Window (CWND), and according to the RWND, the CWND, and the data amount of the packet belonging to the first TCP flow in the cache of the target STA, the target STA may send the traffic belonging to the first TCP flow, that is, send the traffic of the non-critical service, to the sending end of the first TCP packet. For example, the target STA determines a first data volume corresponding to the RWND and a second data volume corresponding to the CWND, and sends a flow belonging to the first TCP flow to the sending end of the first TCP packet according to the minimum value of the first data volume, the second data volume, and the data volume of the packet belonging to the first TCP flow in the cache of the target STA. The target STA sends the flow belonging to the first TCP stream to the sending end of the first TCP message, and the flow can reach the sending end of the first TCP message after being forwarded by the AP 1.
To sum up, in the flow control method provided in this embodiment of the present application, after receiving a first TCP packet that belongs to a non-critical service and is sent to a target STA, an AP1 reduces a value of a RWND field in the first TCP packet to obtain a modified first TCP packet, and sends a first downlink frame including the modified first TCP packet to the target STA. After receiving the modified first TCP message, the target STA sends uplink traffic of a non-critical service to the sending end of the first TCP message according to the value of the RWND field in the modified first TCP message, and the uplink traffic of the non-critical service sent by the target STA to the sending end of the first TCP message is forwarded by the AP1 to reach the sending end of the first TCP message. Because the value of the RWND field in the first TCP message is reduced by the AP1, the target STA reduces the uplink traffic of the non-critical service, realizes control of the uplink traffic of the non-critical service, and is helpful to improve the QoS of the critical service of the AP 1.
In this embodiment of the present application, when at least one trigger condition in S202 is satisfied, AP1 triggers a flow control process for a non-critical service to which a first TCP packet belongs. In the flow control process, the AP1 may dynamically reduce the value of the RWND field in the TCP message belonging to the non-critical traffic and sent to the target STA, so as to improve the QoS of the critical traffic of the AP1, and simultaneously maintain the receiving throughput of the AP1 on the non-critical traffic at a certain level, thereby avoiding excessive suppression of the non-critical traffic. For example, the AP1 dynamically decreases the value of the RWND field in the TCP message of the first TCP flow belonging to the non-critical traffic to the target STA, so that the receiving throughput of the AP1 for the non-critical traffic is stabilized at the target throughput.
As an alternative implementation manner of the embodiment of the present application, as shown in fig. 3, after S203, the flow control method further includes the following steps S204a to S206a.
S204a, the AP1 receives a second TCP message sent to the target STA, wherein the second TCP message belongs to the non-critical service.
The second TCP message and the first TCP message belong to the same non-critical service and belong to the same TCP stream. For example, the second TCP packet and the first TCP packet both belong to BK traffic and both belong to the first TCP flow.
The AP1 may receive the second TCP packet addressed to the target STA from the previous hop of the AP1 on the transmission path of the second TCP packet. The second TCP message may be a TCP data message or a TCP ack message, and the second TCP message may be a TCP message in the downlink direction. The second TCP packet is a TCP ack packet in the downlink direction. For example, as shown in fig. 1, the direction from the server to the STA is a downlink direction, the second TCP packet may be a TCP ack packet sent from the server 101 to the STA1 (i.e., a TCP ack packet in the downlink direction), and the AP1 receives the second TCP packet from the network device 103.
S205a, when the receiving throughput of the AP1 to the non-critical service is smaller than the target throughput, the AP1 reduces the value of the RWDD field in the second TCP message to obtain a modified second TCP message, wherein the value of the RWDD field in the modified second TCP message is smaller than the value of the RWDD field in the second TCP message before modification and larger than the value of the RWDD field in the modified first TCP message.
The AP1 reduces the value of the RWND field in the first TCP packet, so that the upstream traffic of the non-critical service to which the first TCP packet belongs can be suppressed. After the uplink traffic of the non-critical traffic is suppressed, the receiving throughput of the AP1 for the non-critical traffic may be smaller than the target throughput. Therefore, after S203, the AP1 may determine, in real time or periodically, the reception throughput of the non-critical traffic by the AP1, and determine whether the reception throughput of the non-critical traffic by the AP1 is less than the target throughput. If the receiving throughput of the AP1 to the non-critical service is less than the target throughput, when the AP1 receives a second TCP packet of a first TCP flow belonging to the non-critical service and sent to the target STA, the AP1 reduces the value of the RWND field in the second TCP packet to obtain a modified second TCP packet, so that the value of the RWND field in the modified second TCP packet is less than the value of the RWND field in the second TCP packet before modification and greater than the value of the RWND field in the modified first TCP packet, thereby enabling the receiving throughput of the AP1 to the non-critical service to be stabilized at the target throughput. In an optional embodiment, if the receiving throughput of the AP1 for the non-critical traffic is greater than the target throughput, when the AP1 receives the second TCP packet, the AP1 may continuously decrease the value of the RWND field in the second TCP packet based on the value of the RWND field in the first TCP packet, so that the value of the RWND field in the modified second TCP packet is smaller than the value of the RWND field in the second TCP packet before modification and smaller than the value of the RWND field in the modified first TCP packet, so as to suppress the uplink traffic of the non-critical traffic.
S205a takes an example that the receiving throughput of the AP1 to the non-critical service is smaller than the target throughput, then the AP1 reduces the value of the RWND field in the second TCP message to obtain a modified second TCP message, and the value of the RWND field in the modified second TCP message is smaller than the value of the RWND field in the second TCP message before modification and is larger than the value of the RWND field in the modified first TCP message. In an alternative embodiment, AP1 increases the RWND value based on the RWND value currently maintained by AP1 for the first TCP flow corresponding to the non-critical traffic, and decreases the value of the RWND field in the second TCP message to be equal to the increased RWND value. After S202, the RWND value maintained by AP1 corresponding to the first TCP flow is updated to the value of the RWND field in the modified first TCP packet, so for S205a, the RWND value currently maintained by AP1 corresponding to the first TCP flow is the value of the RWND field in the modified first TCP packet.
In an alternative embodiment, AP1 reduces the value of the RWND field in the second TCP message according to the second formula w = w '+ 1+1/w'. In the second formula, w is a value obtained by reducing the value of the RWND field, and w' is the RWND value currently maintained by AP1 for the first TCP flow corresponding to the non-critical traffic (for S205a, the RWND value currently maintained by AP1 for the first TCP flow is the value of the RWND field in the modified first TCP packet). The second TCP packet may be a TCP ACK packet, where "1" in the second formula indicates the number of bytes acknowledged by the second TCP packet, "1/w '" is a parameter set for maintaining the inter-stream fairness of different TCP streams, and a symbol "/" in "1/w'" indicates a division number.
In an optional embodiment, the second TCP packet is a TCP ACK packet, and before the AP1 reduces the value of the RWND field in the second TCP packet, it is determined whether the second TCP packet and the first TCP packet are two adjacent TCP ACK packets in the first TCP flow. If the second TCP packet and the first TCP packet are not two adjacent TCP ACK packets in the first TCP flow, the AP1 reduces the value of the RWND field in the second TCP packet according to the second formula, so that the target STA increases the uplink flow of the first TCP flow of the non-critical service. If the second TCP packet and the first TCP packet are two adjacent TCP ACK packets in the first TCP flow, the AP1 modifies the value of the RWND field in the second TCP packet according to the maintenance window formula w = w', so that the target STA maintains the RWND currently used by the target STA for transmitting the first TCP flow of the non-critical traffic (i.e., the RWND indicated by the value of the RWND field in the modified first TCP packet).
It should be noted that the receiving throughput of the AP1 for the non-critical traffic may include traffic of the non-critical traffic received by the AP1 from the target STA, and may also include traffic of the non-critical traffic received by the AP1 from other STAs associated to the AP 1. Taking the non-critical traffic as BK traffic as an example, the AP1 determines the receiving throughput of the AP1 to the BK traffic according to the number of packets or the data amount in the BK queue of the AP1, and the packets in the BK queue of the AP1 may include a packet belonging to the BK traffic, which is received by the AP1 from a target STA, and may also include a packet belonging to the BK traffic, which is received by the AP1 from other STAs except the target STA, so that the receiving throughput of the non-critical traffic by the AP1 includes traffic of the non-critical traffic, which is received by the AP1 from all STAs associated to the AP 1.
S206a, AP1 sends a second downlink frame to the target STA, wherein the second downlink frame comprises the modified second TCP message.
And the AP1 generates a second downlink frame according to the modified second TCP message, and sends the second downlink frame to the target STA through a working channel of the AP 1.
After receiving the second downlink frame, the target STA may obtain the modified second TCP packet from the second downlink frame, determine RWND according to the value of the RWND field in the modified second TCP packet, and send the traffic of the non-critical service to which the second TCP packet belongs to the sending end of the second TCP packet according to the RWND. For example, the target STA transmits the traffic of the first TCP flow to the transmitting end of the second TCP packet (the transmitting end of the second TCP packet is the same as the transmitting end of the first TCP packet) according to the RWND. The target STA sends the flow belonging to the first TCP stream to the sending end of the second TCP message, and the flow can reach the sending end of the second TCP message after being forwarded by the AP 1.
To sum up, in the flow control method provided in the embodiment of the present application, after the AP1 reduces the value of the RWND field in the first TCP packet belonging to the non-critical service and sent to the target STA, the target STA reduces the uplink flow of the non-critical service, and realizes control of the uplink flow of the non-critical service. After that, when the receiving throughput of the AP1 to the non-critical traffic is smaller than the target throughput, the AP1 reduces the value of the RWND field in the second TCP message belonging to the non-critical traffic sent to the target STA to obtain the modified second TCP message, the value of the RWND field in the modified second TCP message is smaller than the value of the RWND field in the second TCP message before modification and larger than the value of the RWND field in the modified first TCP message, and after the AP1 reduces the value of the RWND field in the second TCP message, the target STA may increase the uplink traffic of the non-critical traffic, thereby increasing the uplink traffic of the non-critical traffic. Therefore, the embodiment of the application realizes the dynamic control of the flow of the non-key business, improves the QoS of the key business of the AP1, and can stabilize the receiving throughput of the AP1 to the non-key business at a certain level at the same time, thereby avoiding the excessive inhibition of the non-key business.
As described above, the AP1 may dynamically decrease the value of the RWND field in the TCP message belonging to the non-critical traffic and sent to the target STA, so as to maintain the receiving throughput of the AP1 on the non-critical traffic at a certain level while improving the QoS of the critical traffic of the AP 1. As an alternative implementation manner of the embodiment of the present application, as shown in fig. 4, after S203, the flow control method may further include the following steps S204b to S206b.
S204b, the AP1 receives a third TCP message sent to the target STA, wherein the third TCP message belongs to the non-critical service.
And the third TCP message and the first TCP message belong to the same non-critical service and belong to the same TCP stream. For example, the third TCP packet and the first TCP packet both belong to BK traffic and both belong to the first TCP flow.
The AP1 may receive the third TCP packet addressed to the target STA from the previous hop of the AP1 on the transmission path of the third TCP packet. The third TCP message may be a TCP data message or a TCP ack message, and the third TCP message may be a TCP message in the downlink direction. Take the third TCP packet as the TCP ack packet in the downlink direction as an example. For example, as shown in fig. 1, the direction from the server to the STA is a downlink direction, the third TCP packet may be a TCP packet message sent from the server 101 to the STA1 (i.e., a TCP packet message in the downlink direction), and the AP1 receives the third TCP packet from the network device 103.
And S205b, when the receiving throughput of the AP1 to the non-critical service is greater than the target throughput, reducing the value of the RWDD field in the third TCP message by the AP1 to obtain a modified third TCP message, wherein the value of the RWDD field in the modified third TCP message is smaller than the value of the RWDD field in the third TCP message before modification and smaller than the value of the RWDD field in the modified first TCP message.
The AP1 reduces the value of the RWND field in the first TCP packet, so that the upstream traffic of the non-critical service to which the first TCP packet belongs can be suppressed. After the uplink traffic of the non-critical traffic is suppressed, the receiving throughput of the AP1 for the non-critical traffic may still be greater than the target throughput. Therefore, after S203, the AP1 may determine, in real time or periodically, the reception throughput of the non-critical traffic by the AP1, and determine whether the reception throughput of the non-critical traffic by the AP1 is greater than the target throughput. If the receiving throughput of the AP1 to the non-critical service is greater than the target throughput, when the AP1 receives a third TCP packet of a first TCP flow belonging to the non-critical service and sent to the target STA, the AP1 reduces the value of the RWND field in the third TCP packet to obtain a modified third TCP packet, so that the value of the RWND field in the modified third TCP packet is smaller than the value of the RWND field in the third TCP packet before modification and smaller than the value of the RWND field in the modified first TCP packet. Therefore, the receiving throughput of the non-critical service by the AP1 can be stabilized at the target throughput. In an optional embodiment, if the receiving throughput of the AP1 to the non-critical traffic is less than the target throughput, when the AP1 receives the third TCP packet, the AP1 may increase the value of the RWND field in the third TCP packet based on the value of the RWND field in the first TCP packet, so that the value of the RWND field in the modified third TCP packet is less than the value of the RWND field in the third TCP packet before modification and is greater than the value of the RWND field in the modified first TCP packet.
S205b takes an example that the receiving throughput of the AP1 to the non-critical service is greater than the target throughput, then the AP1 decreases the value of the RWND field in the third TCP message to obtain a modified third TCP message, where the value of the RWND field in the modified third TCP message is smaller than the value of the RWND field in the third TCP message before modification and smaller than the value of the RWND field in the modified first TCP message. The value of the RWND field in the third TCP message before modification is set in the third TCP message by the sending end of the third TCP message, and the value of the RWND field in the third TCP message before modification is usually not less than the RWND value of the first TCP flow corresponding to the non-critical service currently maintained by the AP 1. After S202, AP1 updates the RWND value corresponding to the first TCP flow maintained by AP1 to the value of the RWND field in the modified first TCP packet, so that for S205b, the RWND value corresponding to the first TCP flow currently maintained by AP1 is the value of the RWND field in the modified first TCP packet. That is, the value of the RWND field in the third TCP packet before modification is usually not smaller than the value of the RWND field in the first TCP packet after modification. Therefore, in S205b, the AP1 may decrease the value of the RWND field in the third TCP message based on the value of the RWND field in the modified first TCP message, so that the value of the RWND field in the modified third TCP message is smaller than the value of the RWND field in the third TCP message before modification and smaller than the value of the RWND field in the modified first TCP message.
In an alternative embodiment, AP1 reduces the value of the RWND field in the third TCP message according to the first formula described in S202. That is, the AP1 reduces the value of the RWND field in the third TCP packet based on the value of the RWND field in the modified first TCP packet according to the first formula.
In an optional embodiment, the third TCP packet is a TCP ACK packet, and before the AP1 reduces the value of the RWND field in the third TCP packet, it is determined whether the third TCP packet and the first TCP packet are two adjacent TCP ACK packets in the first TCP flow. If the third TCP packet and the first TCP packet are not two adjacent TCP ACK packets in the first TCP flow, the AP1 reduces the value of the RWND field in the third TCP packet according to the first formula, so that the target STA reduces the uplink flow of the first TCP flow of the non-critical service. If the third TCP packet and the first TCP packet are two adjacent TCP ACK packets in the first TCP flow, the AP1 modifies the value of the RWND field in the third TCP packet according to the maintenance window formula w = w', so that the target STA maintains the RWND currently used by the target STA for transmitting the first TCP flow of the non-critical traffic (i.e., the RWND indicated by the value of the RWND field in the modified first TCP packet).
S206b, the AP1 sends a third downlink frame to the target STA, and the third downlink frame comprises a modified third TCP message.
And the AP1 generates a third downlink frame according to the modified third TCP message, and sends the third downlink frame to the target STA through the working channel of the AP 1.
After receiving the third downlink frame, the target STA may obtain the modified third TCP packet from the third downlink frame, determine RWND according to the value of the RWND field in the modified third TCP packet, and send the traffic of the non-critical service to which the third TCP packet belongs to the sending end of the third TCP packet according to the RWND. For example, the target STA transmits the traffic of the first TCP flow to the transmitting end of the third TCP packet (the transmitting end of the third TCP packet is the same end as the transmitting end of the first TCP packet) according to the RWND. The target STA sends the flow belonging to the first TCP stream to the sending end of the third TCP message, and the flow can reach the sending end of the third TCP message after being forwarded by the AP 1.
To sum up, in the flow control method provided in the embodiment of the present application, after the AP1 reduces the value of the RWND field in the first TCP packet belonging to the non-critical service and sent to the target STA, the target STA reduces the uplink flow of the non-critical service, and realizes control of the uplink flow of the non-critical service. After that, when the receiving throughput of the AP1 to the non-critical traffic is greater than the target throughput, the AP1 reduces the value of the RWND field in the third TCP message that belongs to the non-critical traffic and is sent to the target STA to obtain the modified third TCP message, the value of the RWND field in the modified third TCP message is smaller than the value of the RWND field in the third TCP message before modification and smaller than the value of the RWND field in the modified first TCP message, and after the AP1 reduces the value of the RWND field in the third TCP message, the target STA continues to reduce the uplink traffic of the non-critical traffic, thereby realizing control of the uplink traffic of the non-critical traffic. Therefore, the embodiment of the application realizes the dynamic control of the flow of the non-key business, improves the QoS of the key business of the AP1, and can stabilize the receiving throughput of the AP1 to the non-key business at a certain level at the same time, thereby avoiding the excessive inhibition of the non-key business.
In this embodiment of the present application, the first TCP packet, the second TCP packet, and the third TCP packet are TCP ACK packets in the same TCP stream, and the second TCP packet and the third TCP packet are both located after the first TCP packet, and are both TCP packets that need to reduce the value of the RWND field according to the difference of the receiving throughput of the AP1 on the non-critical service. The second TCP packet may be located before the third TCP packet, or may be located after the third TCP packet, or even the second TCP packet and the third TCP packet may be the same TCP ACK packet. If the second TCP packet and the third TCP packet are the same TCP ACK packet, S205a in the embodiment shown in fig. 3 and S205b in the embodiment shown in fig. 4 may be regarded as different processing modes for the same TCP ACK packet, and in this embodiment of the present application, for convenience of description, the differences are referred to. The embodiment shown in fig. 3 and the embodiment shown in fig. 4 described above may be two parallel embodiments.
As described above, the AP1 triggers the flow control procedure for the non-critical traffic when the at least one trigger condition of S202 is satisfied. The above-mentioned S201 to S203, S204a to S206a, and S204b to S206b all belong to the dynamic adjustment process in the flow control process. In the flow control process, the AP1 modifies the value of the RWND field in the TCP ACK message belonging to the downlink direction of the non-critical traffic. A forwarding layer element may be included in AP1, and the process of modifying the value of the RWND field in the TCP message may be performed by the forwarding layer element. The forwarding layer unit may be a separate chip or processing circuitry integrated on the same chip as the other units. In an optional embodiment, if the AP1 determines that any trigger condition described in S202 is not satisfied, the AP1 does not trigger the flow control process for the non-critical traffic, and when receiving a TCP packet belonging to the non-critical traffic, the AP1 does not generally modify the value of the RWND field in the TCP packet.
In addition, the QoS of the critical traffic of the AP1 can be improved by executing the flow control procedure, and the receiving throughput of the non-critical traffic by the AP1 is stabilized at a certain level. After the QoS of the critical traffic of the AP1 is improved and the reception throughput of the non-critical traffic by the AP1 is stabilized at a certain level, or after the AP1 receives an instruction to release the flow control for the non-critical traffic, the AP1 may end the flow control process. After the AP1 finishes the flow control process, when the AP1 receives the TCP packet belonging to the non-critical service, the AP1 does not modify the value of the RWND field in the TCP packet.
In the technical solution provided in the embodiment of the present application, the AP implements regulation and control of the data volume of a non-critical service sent by a target STA by reducing the value of the RWND field in a TCP message that belongs to the non-critical service and is sent to the target STA. The flow control method can regulate and control the flow of the services of the appointed STA and the appointed AC, can relieve the air interface congestion problem of the AP, and improves the QoS of the key services. The foregoing embodiments are described as examples only, and do not limit the technical solution of the present application, and the flow control method provided in the embodiments of the present application may be extended to any communication system supporting a TCP protocol, for example, a communication system formed by a Base Station (BS) and a terminal equipment (UE), a communication system formed by a core switch and a convergence switch, a communication system formed by a convergence switch and an access switch, a communication system formed by an access switch and an AP, and a communication system formed by an access switch and a base station. The device for executing the flow control method in the present application is not limited to the AP, but may also be a BS, a core switch, an aggregation switch, an access switch, and the like, which is not limited in this application.
As can be seen from the foregoing description of the embodiment, the triggering condition for the AP1 to trigger the flow control procedure for the non-critical traffic includes: and the AP1 generates air interface congestion, and/or the AP1 receives an instruction for controlling the flow of the non-critical service. For facilitating understanding of the technical solution of the present application, with reference to fig. 1, content of the AP1 performing flow control on the non-critical service is described below by taking an example that the AP1 generates an air interface congestion in a process that the STA1 sends the non-critical service to the server 101. The AP1 includes a physical layer (PHY) unit, an MAC layer unit, and a forwarding layer unit, and the AP1 mainly implements flow control on the non-critical service through the PHY unit, the MAC layer unit, and the forwarding layer unit. The following description refers to MAC layer elements and forwarding layer elements in AP 1.
And S301, the MAC layer unit in the AP1 monitors whether the AP1 has air interface congestion in real time or periodically. If no air interface congestion occurs in the AP1, the AP1 does not trigger the flow control procedure, and S301 to S309 are performed. If the AP1 has an empty port congestion, the AP1 triggers a flow control procedure, and executes S310 to S320.
For example, whether the utilization of the working channel of AP1 is greater than the target threshold, and whether the QoS of the critical traffic of AP1 is lower than the QoS requirement of the critical traffic, in real time or periodically, by the MAC layer unit in AP 1. If the utilization rate of the working channel of the AP1 is greater than the target threshold and the QoS of the critical service of the AP1 is lower than the QoS requirement of the critical service, the AP1 has air interface congestion. If the utilization rate of the working channel of the AP1 is not greater than the target threshold, and/or the QoS of the key service of the AP1 is not lower than the QoS requirement of the key service, no air interface congestion occurs in the AP 1.
And S302, a PHY unit in the AP1 receives a TCP data message which is sent by the STA1 to the server 101 and belongs to the non-critical service.
S303, the PHY unit in AP1 sends the TCP data packet to the MAC layer unit in AP 1.
S304, the MAC layer unit in AP1 sets a status bit NO _ LIMIT in the TCP data packet (i.e. sets the value of the status bit in the TCP data packet to NO _ LIMIT), indicating that the flow control is not performed on the non-critical traffic.
S305, the MAC layer unit in AP1 sends the TCP data packet to the forwarding layer unit in AP 1.
S306, the forwarding layer unit in AP1 updates the value of the status bit in the flow table of the first TCP flow of the non-critical service to NO _ LIMIT according to the value of the status bit in the TCP data packet. The flow table of the first TCP flow further records a RWND value, a message direction, and a sequence number (sequence number) of a TCP ACK message, where the RWND value recorded in the flow table of the first TCP flow is the RWND value corresponding to the first TCP flow currently maintained by the AP 1.
S307, the forwarding layer unit in AP1 forwards the TCP data packet to the server 101. The TCP data packet is forwarded to the server 101 through the network device 103 and the network device 102 in sequence.
S308 and a forwarding layer unit in the AP1 receive a TCP ACK packet which is sent to the STA1 by the server 101 and belongs to the non-critical service, where the TCP ACK packet and the TCP data packet described in S302 to S307 belong to the same TCP flow.
S309, the forwarding layer unit in the AP1 does not modify the value of the RWND field in the TCP ACK packet according to the value of the status bit (i.e. NO _ LIMIT) in the flow table of the first TCP flow, and sends the downlink frame including the TCP ACK packet to the STA1.
And S310, the MAC layer unit in the AP1 monitors the receiving throughput of the AP1 to the non-critical service in real time.
S311, the PHY unit in the AP1 receives the TCP data packet belonging to the non-critical service and sent by the STA1 to the server 101.
S312, the PHY unit in AP1 sends the TCP data packet to the MAC layer unit in AP 1.
S313, if the receiving throughput of the AP1 to the non-critical traffic is greater than the target throughput, the MAC layer unit in the AP1 sets a status bit BRAKE in the TCP data packet (i.e., sets the value of the status bit in the TCP data packet to be BRAKE), which indicates to decrease the RWND for sending the non-critical traffic. If the receiving throughput of the AP1 to the non-critical traffic is less than the target throughput, the MAC layer unit in the AP1 sets a status bit ACC in the TCP data packet (i.e., sets the value of the status bit in the TCP data packet to ACC), which indicates to increase the RWND for transmitting the non-critical traffic. If the receiving throughput of the AP1 to the non-critical traffic is equal to the target throughput, the MAC layer unit in the AP1 sets a state bit KEEP in the TCP data packet (i.e., sets the value of the state bit in the TCP data packet to KEEP), and indicates to maintain the RWND for sending the non-critical traffic.
S314, the MAC layer unit in AP1 sends the TCP data packet to the forwarding layer unit in AP 1.
And S315, the forwarding layer unit in the AP1 updates the value of the state bit in the flow table of the first TCP flow of the non-critical service according to the value of the state bit in the TCP data message. If the value of the status bit in the TCP data packet is BRAKE, the forwarding layer unit in AP1 updates the value of the status bit in the flow table of the first TCP flow to BRAKE. If the value of the status bit in the TCP data packet is ACC, the forwarding layer unit in AP1 updates the value of the status bit in the flow table of the first TCP flow to ACC. If the status bit in the TCP data packet is KEEP, the forwarding layer unit in AP1 updates the value of the status bit in the flow table of the first TCP flow to KEEP. The flow table of the first TCP flow further records a RWND value, a message direction, and a sequence number of the TCP ACK message, and the RWND value recorded in the flow table of the first TCP flow is the RWND value currently maintained by the AP1 and corresponding to the first TCP flow.
S316, the forwarding layer unit in AP1 forwards the TCP data packet to the server 101. The TCP data packet is forwarded to the server 101 through the network device 103 and the network device 102 in sequence.
S317, the forwarding layer unit in AP1 receives the TCP ACK packet belonging to the non-critical service and sent to STA1 by server 101, where the TCP ACK packet belongs to the same TCP flow as the TCP data packet described in S311 to S316.
And S318, the forwarding layer unit in the AP1 modifies the value of the RWND field in the TCP ACK message according to the value of the state bit in the flow table of the first TCP flow and the RWND value recorded in the flow table of the first TCP flow, so as to obtain the modified TCP ACK message. If the value of the status bit in the flow table of the first TCP flow is BRAKE, the forwarding layer unit in AP1 reduces the value of the RWND field in the TCP ACK packet according to the first formula w = w '-1+1/w'. If the value of the status bit in the flow table of the first TCP flow is ACC, the forwarding layer unit in AP1 reduces the value of the RWND field in the TCP ACK packet according to the second formula w = w '+ 1+1/w'. If the value of the status bit in the flow table of the first TCP flow is KEEP, the forwarding layer unit in AP1 modifies the value of the RWND field in the TCP ACK packet according to the maintenance window formula w = w'.
And the forwarding layer unit in the S319 and the AP1 updates the RWND value recorded in the flow table of the first TCP flow according to the value of the RWND field in the modified TCP ACK message. That is, the forwarding layer unit in AP1 updates the RWND value recorded in the flow table of the first TCP flow to the value of the RWND field in the modified TCP ACK message. It should be noted that if the forwarding layer unit in AP1 determines that the value of the status bit in the flow table of the first TCP flow is KEEP in S318, S319 may not be executed.
S320, the forwarding layer unit in the AP1 sends the downlink frame comprising the modified TCP ACK message to the STA1.
Next time STA1 may send uplink traffic belonging to the non-critical traffic to server 101 according to the value of the RWND field in the modified TCP ACK message, thereby implementing control of the uplink traffic of the non-critical traffic.
It should be noted that the TCP data packet sent by the STA1 to the server 101 is actually a physical layer protocol data unit (PPDU), and what the PHY unit in the AP1 receives, what the PHY unit in the AP1 sends to the MAC layer unit in the AP1, and what the MAC layer unit in the AP1 actually receives is a PPDU. The MAC layer unit in the AP1 decapsulates the PPDU to remove a PHY header in the PPDU to obtain a MAC layer protocol data unit (MPDU). The MAC layer unit in AP1 sends the MPDU to the forwarding layer unit in AP1 after the status bit is set in the MPDU. The forwarding layer unit in AP1 decapsulates the MPDU to remove the MAC header in the MPDU, thereby obtaining an MAC layer service data unit (MSDU). The forwarding layer unit in AP1 actually forwards the MSDU to server 101. For convenience of description, in S302 to S307 and S311 to S316, the PPDU, the MPDU, and the MSDU are all referred to as a TCP data packet in the embodiment of the present application.
In addition, the TCP ACK packet sent by the server 101 to STA1 is actually an MSDU, so the forwarding layer unit in AP1 actually receives the MSDU. After receiving the MSDU, the forwarding layer unit in AP1 sends the MSDU to the MAC layer unit in AP 1. The MAC layer unit in AP1 encapsulates the MAC header in the MSDU to obtain an MPDU, and transmits the MPDU to the PHY unit in AP 1. The PHY unit in AP1 encapsulates the PHY header in the MPDU to obtain a PPDU, and transmits the PPDU to STA1. For convenience of description, in the embodiments of the present application, PPDUs, MPDUs and MSDUs are referred to as TCP ACK packets in S308 to S309 and S317 to S320.
TCP packets are typically identified at the forwarding layer unit, and PHY and MAC layer units typically do not identify TCP packets.
It should be further noted that the status bit described in the embodiment of the present application is a status bit used inside the AP, and the AP does not actually modify any content and header of the TCP packet. The status bit may be 2 bits, and as an example, the NO _ LIMIT corresponds to a bit 00, the keep corresponds to a bit 01, the brake corresponds to a bit 10, and the acc corresponds to a bit 11, which is not limited in this embodiment of the present application.
Embodiments of the apparatus of the present application are described below, which may be used to perform the flow control methods of the present application. For details which are not disclosed in the device embodiments of the present application, reference is made to the method embodiments of the present application.
Referring to fig. 5, a schematic structural diagram of a flow control device 500 according to an embodiment of the present disclosure is shown. The flow control apparatus 500 is applied to an access point, for example, the flow control apparatus 500 is the access point or a functional component in the access point. The access point may be AP1 or AP2 in the communication system shown in fig. 1. Referring to fig. 5, the flow control apparatus 500 includes a receiving module 510, a processing module 520, and a transmitting module 530.
A receiving module 510, configured to receive a first TCP packet sent to a target station, where the first TCP packet belongs to a non-critical service, and the target station is associated with an access point. The functional implementation of the receiving module 510 can refer to the related description in S201 above.
The processing module 520 is configured to reduce the value of the RWND field in the first TCP packet to obtain a modified first TCP packet. The functional implementation of the processing module 520 may refer to the related description in S202 above.
A sending module 530, configured to send a first downlink frame to the target station, where the first downlink frame includes the modified first TCP packet. The functional implementation of the sending module 530 may refer to the related description in S203 above.
Optionally, the first TCP packet is a TCP ack packet.
Optionally, the processing module 520 is configured to reduce a value of the RWND field in the first TCP message when the traffic of the non-critical traffic needs to be reduced.
Optionally, the processing module 520 is configured to decrease the value of the RWND field in the first TCP message when the utilization rate of the working channel of the access point is greater than the target threshold and the critical traffic of the access point is impaired.
Optionally, the processing module 520 is configured to reduce a value of the RWND field in the first TCP message when the access point receives an indication for performing flow control on the non-critical traffic.
Optionally, the indication for performing flow control on the non-critical service is from an intra-frequency neighbor access point of the access point.
Optionally, the receiving module 510 is further configured to receive a second TCP packet sent to the destination station, where the second TCP packet belongs to the non-critical service. The functional implementation of the receiving module 510 may also refer to the related description in S204a above.
The processing module 520 is further configured to, when the receiving throughput of the access point to the non-critical service is smaller than the target throughput, decrease the value of the RWND field in the second TCP message to obtain a modified second TCP message, where the value of the RWND field in the modified second TCP message is smaller than the value of the RWND field in the second TCP message before modification and is larger than the value of the RWND field in the modified first TCP message. The functional implementation of the processing module 520 may also refer to the related description in S205a above.
The sending module 530 is further configured to send a second downlink frame to the target station, where the second downlink frame includes the modified second TCP packet. The functional implementation of the sending module 530 may also refer to the related description in S206a above.
Optionally, the second TCP packet is a TCP ack packet.
Optionally, the receiving module 510 is further configured to receive a third TCP packet sent to the destination station, where the third TCP packet belongs to the non-critical service. The function of the receiving module 510 can also refer to the related description in S204 b.
The processing module 520 is further configured to, when the receiving throughput of the access point for the non-critical service is greater than the target throughput, decrease the value of the RWND field in the third TCP message to obtain a modified third TCP message, where the value of the RWND field in the modified third TCP message is smaller than the value of the RWND field in the third TCP message before modification and smaller than the value of the RWND field in the modified first TCP message. The functional implementation of the processing module 520 may also refer to the related description in S205b above.
The sending module 530 is further configured to send a third downlink frame to the target station, where the third downlink frame includes the modified third TCP packet. The functional implementation of the sending module 530 may also refer to the related description in S206b above.
Optionally, the third TCP message is a TCP ack message.
Optionally, the traffic of the non-critical traffic is greater than a target threshold.
To sum up, in the flow control apparatus provided in this embodiment of the present application, after receiving a first TCP packet that belongs to a non-critical service and is sent to a target station, an access point reduces a value of a RWND field in the first TCP packet to obtain a modified first TCP packet, and sends a first downlink frame including the modified first TCP packet to the target station. The value of the RWND field in the first TCP message is used to represent the size of the flow that can be received by the sending end of the first TCP message, after the modified first TCP message is received by the target station, the uplink flow of the non-critical service to which the first TCP message belongs is sent to the sending end of the first TCP message according to the value of the RWND field in the modified first TCP message, and the uplink flow of the non-critical service sent by the target station to the sending end of the first TCP message is forwarded by the access point to reach the sending end of the first TCP message. Because the access point reduces the value of the RWND field in the first TCP message, the target station reduces the uplink traffic of the non-critical service, realizes the control of the uplink traffic of the non-critical service, and is helpful to improve the QoS of the critical service of the access point.
The flow control device provided by the embodiment of the application can be an AP or a functional component in the AP. The flow control device includes a processor, a memory, and a transceiver.
The transceiver is used for performing transceiving actions in the flow control method provided by the above embodiment.
The memory is for storing a computer program.
The processor is configured to execute the computer program stored in the memory to perform the processing actions in the flow control method provided by the foregoing embodiments.
As an example, please refer to fig. 6, which illustrates a schematic structural diagram of a flow control device 600 according to an embodiment of the present application. Flow control device 600 includes a processor 602, a memory 604, a communication interface 606, a transceiver 608, and a bus 610, with processor 602, memory 604, communication interface 606, and transceiver 608 communicatively coupled to each other via bus 610. The connections between the processor 602, the memory 604, the communication interface 606, and the transceiver 608 shown in fig. 6 are merely exemplary, and in an implementation, the processor 602, the memory 604, the communication interface 606, and the transceiver 608 may be communicatively connected to each other by connections other than the bus 610.
The memory 604 may be used to store, among other things, a computer program 6042 (or referred to as program code). The computer program 6042 includes instructions and data. The Memory 604 may be various types of storage media, such as Random Access Memory (RAM), read-only Memory (ROM), non-volatile RAM (NVRAM), programmable ROM (PROM), erasable PROM (EPROM), electrically Erasable PROM (EEPROM), flash Memory, registers, compact disc read-only Memory (CD-ROM) or other optical disc storage, optical disc storage (including compact disc, laser disc, optical disc, digital versatile disc, blu-ray disc, etc.), magnetic disk or other magnetic storage devices, and so forth.
Where the processor 602 may be a general-purpose processor, which may be a processor that performs certain steps and/or operations by reading and executing a computer program (e.g., the computer program 6042) stored in a memory (e.g., the memory 604), which may be used by the general-purpose processor in performing the above-described steps and/or operations. The stored computer program may be executed, for example, to implement the functionality associated with the processing module 520 described previously. A general purpose processor may be, for example but not limited to, a Central Processing Unit (CPU). The processor 602 may also be a special purpose processor, which may be a specially designed processor for performing certain steps and/or operations, such as, but not limited to, a Digital Signal Processor (DSP), a Network Processor (NP), an application-specific integrated circuit (ASIC), a Complex Programmable Logic Device (CPLD), a field-programmable gate array (FPGA), a General Array Logic (GAL), etc. Further, the processor 602 may also be a combination of multiple processors, i.e., a multi-core processor. The processor 602 may include at least one circuit, and the processor 602 may execute a computer program stored in the memory 604 to perform all or part of the processing steps of the flow control method provided by the above-described embodiments.
The communication interface 606 may include an input/output (I/O) interface, a physical interface, a logical interface, and the like for realizing interconnection of devices inside the flow control apparatus 600, and an interface for realizing interconnection of the flow control apparatus 600 and other devices (e.g., network devices). A logical interface is an interface within the flow control apparatus 600 that may be used to implement device interconnections within the flow control apparatus 600. The physical interface may be a Gigabit Ethernet (GE) interface, which may be used to interconnect the flow control apparatus 600 with other devices. The physical interface is used for communication between the flow control apparatus 600 and other devices, for example, for transmission and reception of information between the flow control apparatus 600 and other devices, and the physical interface may implement the related functions of the receiving module 510 and the transmitting module 530.
Transceiver 608 may be a radio frequency transceiver, transceiver 608 may include a radio frequency unit and an antenna, and transceiver 608 may also be used for flow control apparatus 600 to communicate with other devices or communication networks to enable the transmission and reception of information between flow control apparatus 600 and other devices. The transceiver 608 may also implement the related functions of the receiving module 510 and the transmitting module 530 described above. In some embodiments, the transceiver 608 may be integrated into the physical interface, i.e., the transceiver 608 may fall within the domain of the physical interface.
The bus 610 may be any type of communication bus, such as a system bus, used to interconnect the processor 602, the memory 604, the communication interface 606, and the transceiver 608.
The above devices may be respectively disposed on separate chips, or at least a part or all of the devices may be disposed on the same chip. Whether each device is separately located on a different chip or integrated on one or more chips is often dependent on the needs of the product design. The embodiment of the present application does not limit the specific implementation form of the above device.
The flow control device 600 shown in fig. 6 is merely exemplary, and in implementation, the flow control device 600 may further include other components, which are not listed here. The flow control apparatus 600 shown in fig. 6 performs flow control on non-critical traffic by performing all or part of the steps of the flow control method provided in the above-described embodiment.
As another example, please refer to fig. 7, which illustrates a schematic structural diagram of a flow control device 700 according to an embodiment of the present application. Fig. 7 depicts the structure of the flow control device 700 from a layered perspective.
As shown in fig. 7, the flow control device 700 includes: a radio frequency unit from a bottom layer to a top layer, a PHY unit, a MAC layer unit, a Logical Link Control (LLC) unit, an Internet Protocol (IP) processing unit, a Transmission Control Protocol (TCP)/User Datagram Protocol (UDP) processing unit, and an application layer unit. The LLC unit and the IP processing unit communicate through an upper layer interface. The IP processing unit, the TCP/UDP processing unit and the application layer unit are also referred to as forwarding layer units.
The flow control device 700 further comprises an antenna, which is connected to the radio frequency unit. The radio frequency unit is used for processing radio frequency signals received by the antenna, and thus in some embodiments is also referred to as a wireless (radio) unit.
Each of the radio frequency unit, the PHY unit, the MAC layer unit, and the LLC unit may be an independent chip. Alternatively, several of the radio frequency unit, the PHY unit, the MAC layer unit and the LLC unit may be integrated on the same chip, so that each unit may be a part of the processing circuitry in the chip. The IP processing unit, the TCP/UDP processing unit, and the application layer unit may be software modules or processing circuits in a processing chip.
The flow control method provided by the embodiment of the application can be executed by matching the radio frequency unit, the MAC layer unit, the TCP/UDP processing unit and the like. For example, in the above method embodiment, the step of counting QoS of the critical traffic may be performed by the MAC layer unit. The relevant steps of receiving a TCP message may be performed by a TCP/UDP processing unit. The step of correlating the downlink frame may be performed by the radio unit in cooperation with the antenna. The relevant steps of flow control for non-critical traffic may be performed by the MAC layer element in cooperation with the TCP/UDP processing element. The PHY unit, the LLC unit, the IP processing unit, the application layer unit, and the like may cooperate with the radio frequency unit, the MAC layer unit, and the TCP/UDP processing unit to execute the flow control method according to the embodiment of the present application.
Embodiments of the present application provide a flow control system, including an access point and a target station associated with the access point, where the access point includes a flow control device as described in any one of fig. 5 to 7.
Optionally, the flow control system includes at least two access points, where the at least two access points are neighbors of each other, working channels of the at least two access points are overlapped, and any one of the at least two access points may instruct other access points to perform flow control on non-critical services.
Optionally, the at least two access points include a first access point and a second access point, and the working channels of the at least two access points overlap, including: at least one sub-channel in the operating channel of the first access point is the same as at least one sub-channel in the operating channel of the second access point. For example, the working channel of the first access point is all the same as the working channel of the second access point, or a part of the working channel of the first access point is the same as a part of the working channel of the second access point.
Optionally, the at least two access points include a first access point and a second access point, and the at least two access points are neighboring to each other and include: the distance between the first access point and the second access point is less than a distance threshold.
Optionally, the flow control system is a communication system as shown in fig. 1.
Embodiments of the present application provide a computer-readable storage medium, where a computer program is stored, and when the computer program is executed (for example, by an AP, one or more processors, and the like), the computer program implements all or part of the steps of the flow control method provided by the above method embodiments.
Embodiments of the present application provide a computer program product including a program or code, which, when executed (e.g., by an AP, one or more processors, etc.), implements all or part of the steps of the flow control method provided by the above-described method embodiments.
Embodiments of the present application provide a chip, which includes a programmable logic circuit and/or a program instruction, and when the chip is executed, the chip is configured to implement all or part of the steps of the flow control method provided in the foregoing method embodiments.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product comprising one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wire (e.g., coaxial cable, fiber optic, digital subscriber line) or wirelessly (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or can comprise one or more data storage devices, such as a server, a data center, etc., integrated with the available medium. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium, or a semiconductor medium (e.g., solid state disk), among others.
In the present application, the term "at least one" means one or more, and "a plurality" means two or more. The term "at least two" refers to two or more. In this application, the symbol "/" generally means "or" unless otherwise stated, for example, A/B may mean A or B. The term "and/or" merely describes an associative relationship of associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, in the present application, the words "first", "second", "third", and the like are used for distinguishing the same items or similar items having substantially the same functions and actions for the sake of clarity. Those skilled in the art will appreciate that the words "first," "second," "third," and the like do not denote any order or quantity, but rather the order of execution.
Different types of embodiments such as the method embodiment and the apparatus embodiment provided by the embodiment of the present application can be mutually referred to, and the embodiment of the present application does not limit this. The sequence of operations in the method embodiments provided in the present application can be appropriately adjusted, and the operations can also be increased or decreased according to the situation, and any method that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present application shall be covered by the protection scope of the present application, and therefore, the details are not repeated.
In the corresponding embodiments provided in the present application, it should be understood that the disclosed apparatus and the like may be implemented by other configuration modes. For example, the above-described apparatus embodiments are merely illustrative, and for example, a division of a unit is only a logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection of some interfaces, devices or units, and may be an electric or other form.
The units described as separate parts may or may not be physically separate, and parts described as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network devices (for example, terminal devices). Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
The above description is only an exemplary embodiment of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive various equivalent modifications or substitutions within the technical scope of the present application, and these modifications or substitutions should be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (20)

1. A method of flow control, the method comprising:
an access point receives a first Transmission Control Protocol (TCP) message sent to a target station, wherein the first TCP message belongs to non-key services, and the target station is associated with the access point;
the access point reduces the value of a receiving window RWDD field in the first TCP message to obtain a modified first TCP message;
and the access point sends a first downlink frame to the target station, wherein the first downlink frame comprises the modified first TCP message.
2. The method of claim 1,
the first TCP message is a TCP acknowledgement ACK message.
3. The method according to claim 1 or 2,
the access point reducing the value of the RWND field in the first TCP message, including: when the traffic of the non-critical traffic needs to be reduced, the access point reduces the value of the RWDD field in the first TCP message.
4. The method of claim 3,
when the traffic of the non-critical traffic needs to be reduced, the access point reduces the value of the RWND field in the first TCP message, including: when the utilization rate of the operating channel of the access point is greater than a target threshold and critical traffic of the access point is impaired, the access point decreases the value of the RWDD field in the first TCP message.
5. The method of claim 3,
when the traffic of the non-critical traffic needs to be reduced, the access point reduces the value of the RWND field in the first TCP message, including: when the access point receives an indication for traffic control of the non-critical traffic, the access point decrements the value of the RWDD field in the first TCP message.
6. The method of claim 5,
the indication for flow control of the non-critical traffic is from an intra-frequency neighbor access point of the access point.
7. The method according to any one of claims 1 to 6, further comprising:
the access point receives a second TCP message sent to the target station, wherein the second TCP message belongs to the non-key service;
when the receiving throughput of the access point to the non-critical service is smaller than the target throughput, the access point reduces the value of the RWDD field in the second TCP message to obtain a modified second TCP message, wherein the value of the RWDD field in the modified second TCP message is smaller than the value of the RWDD field in the second TCP message before modification and larger than the value of the RWDD field in the modified first TCP message;
and the access point sends a second downlink frame to the target station, wherein the second downlink frame comprises the modified second TCP message.
8. The method according to any one of claims 1 to 6, further comprising:
the access point receives a third TCP message sent to the target station, wherein the third TCP message belongs to the non-key service;
when the receiving throughput of the access point to the non-critical service is greater than a target throughput, the access point reduces the value of the RWDD field in the third TCP message to obtain a modified third TCP message, wherein the value of the RWDD field in the modified third TCP message is smaller than the value of the RWDD field in the third TCP message before modification and smaller than the value of the RWDD field in the modified first TCP message;
and the access point sends a third downlink frame to the target station, wherein the third downlink frame comprises the modified third TCP message.
9. The method according to any one of claims 1 to 8,
the flow rate of the non-critical traffic is greater than a target threshold.
10. A flow control apparatus, for use in an access point, the apparatus comprising:
a receiving module, configured to receive a first transmission control protocol TCP packet sent to a target station, where the first TCP packet belongs to a non-critical service, and the target station is associated with the access point;
the processing module is used for reducing the value of a receiving window RWDD field in the first TCP message to obtain a modified first TCP message;
a sending module, configured to send a first downlink frame to the target station, where the first downlink frame includes the modified first TCP packet.
11. The apparatus of claim 10,
the first TCP message is a TCP acknowledgement ACK message.
12. The apparatus of claim 10 or 11,
and the processing module is used for reducing the value of the RWDD field in the first TCP message when the traffic of the non-critical service needs to be reduced.
13. The apparatus of claim 12,
the processing module is configured to reduce a value of the RWND field in the first TCP message when a utilization rate of a working channel of the access point is greater than a target threshold and critical traffic of the access point is impaired.
14. The apparatus of claim 12,
the processing module is configured to reduce a value of the RWND field in the first TCP message when the access point receives an indication for controlling the flow of the non-critical traffic.
15. The apparatus of claim 14,
the indication for flow control of the non-critical traffic is from an intra-frequency neighbor access point of the access point.
16. The apparatus of any one of claims 10 to 15,
the receiving module is further configured to receive a second TCP packet sent to the target site, where the second TCP packet belongs to the non-critical service;
the processing module is further configured to reduce a value of a RWND field in the second TCP message to obtain a modified second TCP message when the receiving throughput of the non-critical service by the access point is smaller than the target throughput, where the value of the RWND field in the modified second TCP message is smaller than the value of the RWND field in the second TCP message before modification and larger than the value of the RWND field in the modified first TCP message;
the sending module is further configured to send a second downlink frame to the target site, where the second downlink frame includes the modified second TCP packet.
17. The apparatus of any one of claims 10 to 15,
the receiving module is further configured to receive a third TCP packet sent to the target site, where the third TCP packet belongs to the non-critical service;
the processing module is further configured to reduce, when the receiving throughput of the non-critical service by the access point is greater than a target throughput, a value of a RWND field in the third TCP message to obtain a modified third TCP message, where the value of the RWND field in the modified third TCP message is smaller than a value of the RWND field in the third TCP message before modification and smaller than a value of the RWND field in the modified first TCP message;
the sending module is further configured to send a third downlink frame to the target site, where the third downlink frame includes the modified third TCP packet.
18. The apparatus of any one of claims 10 to 17,
the flow of the non-critical traffic is greater than a target threshold.
19. A flow control device comprising a processor, a memory and a transceiver;
the transceiver is used for executing transceiving actions in the flow control method according to any one of claims 1 to 9;
the memory is used for storing a computer program;
the processor is configured to execute a computer program stored in the memory to perform processing actions in the flow control method according to any one of claims 1 to 9.
20. A computer-readable storage medium, in which a computer program is stored, which computer program, when executed, implements the flow control method according to any one of claims 1 to 9.
CN202111044378.8A 2021-07-08 2021-09-07 Flow control method and device Pending CN115604755A (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP22182950.0A EP4117371A1 (en) 2021-07-08 2022-07-05 Congestion control method, apparatus, and system
EP22182958.3A EP4117252A1 (en) 2021-07-08 2022-07-05 Traffic control method and apparatus
US17/859,383 US20230013093A1 (en) 2021-07-08 2022-07-07 Traffic Control Method and Apparatus
US17/859,431 US20230013180A1 (en) 2021-07-08 2022-07-07 Congestion Control Method, Apparatus, and System

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202110772818 2021-07-08
CN2021107728185 2021-07-08
CN2021107748051 2021-07-09
CN202110774805 2021-07-09

Publications (1)

Publication Number Publication Date
CN115604755A true CN115604755A (en) 2023-01-13

Family

ID=84841715

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202111044378.8A Pending CN115604755A (en) 2021-07-08 2021-09-07 Flow control method and device
CN202111044369.9A Pending CN115604754A (en) 2021-07-08 2021-09-07 Congestion control method, device and system

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202111044369.9A Pending CN115604754A (en) 2021-07-08 2021-09-07 Congestion control method, device and system

Country Status (1)

Country Link
CN (2) CN115604755A (en)

Also Published As

Publication number Publication date
CN115604754A (en) 2023-01-13

Similar Documents

Publication Publication Date Title
EP3637706B1 (en) Apparatus and method for controlling congestion in wireless communication system
US9438496B2 (en) Monitoring link quality between network devices
US8351331B2 (en) Resource allocation framework for wireless/wired networks
US20170230860A1 (en) Buffer status report for high priority transmission
CN110944358B (en) Data transmission method and device
US20230090622A1 (en) Network Congestion Control Method and Network Device
CN109842556A (en) Bandwidth determining method, router and terminal device
TWI531186B (en) Multiple-interface network device and selection method for transmitting network packets
US11617187B2 (en) Systems and methods for prioritizing bi-directional traffic flows
WO2019054112A1 (en) Communication apparatus, wireless communication system and data flow control method
CN115604755A (en) Flow control method and device
EP4117252A1 (en) Traffic control method and apparatus
CN113950099B (en) Network congestion control method and device
KR101708977B1 (en) Packet processing apparatus of wireless lan and the method thereof
CN112714072B (en) Method and device for adjusting sending rate
Singh et al. Optimising TCP over cognitive radio networks for trains
US10834784B2 (en) Data transmission process of heterogeneous LWA network and associated base station for mobile communication
US20230397038A1 (en) Traffic engineering for real-time applications
US10165598B2 (en) Wireless medium clearing
WO2024032211A1 (en) Congestion control method and apparatus
Wang et al. {SMUFF}: Towards Line Rate {Wi-Fi} Direct Transport with Orchestrated On-device Buffer Management
CN117440443A (en) Data packet distribution method, device, storage medium, equipment and program product
Sivakumar et al. Convex Optimized Lagrange Multiplier Based Algebraic Congestion Likelihood for Improved TCP Performance in MANET
CN117978877A (en) Communication request processing method and device, electronic equipment and storage medium
Rambim et al. Cross-layer enhancement to support TCP-based traffics in WLANs

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination