Communication methods, apparatuses, and devices
Patent Information
- Application Number
- CN202511831840.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-05
- Publication Date
- 2026-10-13
AI Technical Summary
[0005]本申请提供了一种通信方法、装置以及设备,能够解决L4S中显式拥塞通知ECN反馈丢失的问题,保障L4S的闭环拥塞控制
[0034]第十二方面,提供了一种通信系统,包括接入点设备和终端设备,上述接入点设备用于执行上述第一方面或第二方面或其各实现方式中的方法,上述站点设备用于执行上述第三方面或其各实现方式中的方法。
Smart Images

Figure CN122909608A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wireless communication, and more specifically, to a communication method, apparatus, and device. Background Technology
[0002] Low latency, low loss, scalable throughput (L4S) is a key technology for achieving ultra-high reliability (UHR) transmission. Low latency and high reliability data transmission are achieved through explicit congestion notification (ECN) tagging and a fast feedback mechanism.
[0003] In a wireless local area network (WLAN), L4S-enabled access points establish a dedicated transmission channel with stations before data transmission. During data transmission, L4S traffic is isolated into a dedicated queue. When an L4S-enabled access point detects congestion in this queue, it marks the relevant fields of Internet Protocol (IP) packets in the congestion queue as congested, such as marking the ECN field with code "11" to indicate congestion experienced (CE). The STA can then use a Transmission Control Protocol (TCP) ACK packet to report the congestion status to the data sender, triggering a smooth rate reduction and forming a closed-loop control.
[0004] However, the uncertainty of the wireless channel may lead to the loss of downlink L4S packets or the loss of uplink TCP ACK messages, which in turn will cause the congestion feedback to be interrupted. This will prevent the sender from detecting congestion in a timely manner, disrupt the congestion control logic of L4S, and cause increased latency and degraded communication performance. Summary of the Invention
[0005] This application provides a communication method, apparatus, and device that can solve the problem of lost feedback of explicit congestion notification (ECN) in L4S and ensure closed-loop congestion control in L4S.
[0006] In a first aspect, a communication method is provided, applied to a first access point, the method comprising: generating a TCP acknowledgment message for a first data packet, the TCP acknowledgment message including a first field for indicating a CE; and sending the TCP acknowledgment message to a data sender.
[0007] Based on the first aspect, in its first implementation, before generating the TCP acknowledgment message of the first data packet, the method further includes: receiving a first request frame sent by a first site, wherein the first request frame is used to request the establishment of a network connection with the first access point, and includes a second field for indicating whether the proxy function of the TCP acknowledgment message is supported; sending a response frame of the first request frame to the first site, wherein the response frame of the first request frame includes: a third field for indicating whether the proxy function of the TCP acknowledgment message is supported and a fourth field for indicating whether the proxy function is enabled.
[0008] Based on the first implementation of the first aspect, in its second implementation, the response frame of the first request frame further includes a fifth field for indicating the trigger condition information for enabling the proxy function.
[0009] Based on the first or second implementation of the first aspect, in its third implementation, the aforementioned first request frame includes an associated request frame or a re-associated request frame; The second field is carried in the first element of the first request frame, and the first element is used to declare UHR capability; the third field is carried in the second element of the response frame of the first request frame, and the second element is used to declare UHR capability; the fourth and fifth fields are carried in the third element of the response frame of the first request frame, and the third element is used to indicate UHR operation parameters.
[0010] Based on the first aspect and any one of its first to third implementations, in its fourth implementation, before generating the TCP acknowledgment message for the first data packet, the method further includes: broadcasting a first frame, the first frame including a sixth field indicating whether the proxy function of the TCP acknowledgment message is supported; receiving a second request frame sent by a first site, wherein the second request frame includes: a seventh field indicating whether the proxy function of the TCP acknowledgment message is supported, an eighth field indicating whether the proxy function is enabled, and a ninth field indicating that the action of the second request frame is to request the first access point to enable or disable the proxy function; sending a response frame of the second request frame to the first site, wherein the response frame of the second request frame includes: a tenth field indicating whether the proxy function of the TCP acknowledgment message is supported, an eleventh field indicating whether the proxy function is enabled, and a twelfth field indicating that the action of the response frame of the second request frame is to respond to the ninth field to enable or disable the proxy function.
[0011] Based on the fourth implementation of the first aspect, in its fifth implementation, the second request frame further includes a thirteenth field for indicating trigger condition information for enabling the proxy function; the response frame of the second request frame further includes a fourteenth field for indicating trigger condition information for enabling the proxy function; the value of the fourteenth field is determined based on the trigger condition information indicated by the thirteenth field, or is a default value.
[0012] Based on the fourth or fifth implementation of the first aspect, in its sixth implementation, the first frame is a beacon frame, the sixth field is carried in the fourth element of the first frame, and the fourth element is used for UHR capability declaration; the second request frame is an action frame; the seventh, eighth, and thirteenth fields are carried in the fifth element of the second request frame, and the fifth element is used to indicate the proxy operation parameters of TCP ACK; the response frame of the second request frame is an action frame; the tenth, eleventh, and fourteenth fields are carried in the sixth element of the response frame of the second request frame, and the sixth element is used to indicate the proxy operation parameters of TCP ACK.
[0013] Based on the first aspect and any one of the first to sixth implementations, the seventh implementation further includes: before sending the first data packet to the first site, storing the TCP connection state information of the first data packet at the MAC layer; transmitting the TCP connection state information of the first data packet to the IP layer of the first access point through the first MAC layer management entity primitive; after the first access point generates a TCP acknowledgment message for the first data packet, or after receiving the TCP acknowledgment message for the first data packet, the method further includes: releasing the TCP connection state information of the first data packet at the MAC layer.
[0014] Based on the seventh implementation of the first aspect, in its eighth implementation, the aforementioned TCP connection state information includes: source IP address, destination IP address, TCP destination port, TCP source port, TCP sequence number, and TCP acknowledgment. The first access point generates a TCP acknowledgment message for the first data packet, including: at the IP layer, determining the destination IP address and source IP address of the IP header of the TCP acknowledgment message based on the source IP address and destination IP address of the first data packet; at the IP layer, setting the value of the first field of the TCP acknowledgment message to indicate CE; at the IP layer, determining the source port and destination port of the TCP header of the TCP acknowledgment message based on the TCP destination port and TCP source port of the first data packet; and at the IP layer, determining the sequence number and acknowledgment number of the TCP header of the TCP acknowledgment message based on the TCP sequence number and TCP acknowledgment number of the first data packet.
[0015] Based on the first aspect and any one of its first to eighth implementations, in its ninth implementation, before generating the TCP acknowledgment message for the first data packet, the method further includes: determining that a first preset condition for the aforementioned first data packet is satisfied, wherein the first preset condition includes at least one of the following: It is determined that the duration of the first data packet's residence in the MAC layer queue of the first access point is greater than a first threshold. It is determined that the length of the MAC layer queue containing the first data packet is greater than the second threshold; After sending the first data packet to the first site, it is determined that the number of times the TCP acknowledgment message for the first data packet is not received exceeds the third threshold. The predicted blocking probability of the current link output by the first AI model is greater than the fourth threshold. The first AI model is trained using historical data of the current link. The first field mentioned above includes the ECN field carried in the IP header; The first access point determines whether the first preset condition is met based on the trigger condition information in the fifth field or the fourteenth instruction.
[0016] Secondly, a communication method is provided, applied to a first access point, the method comprising: transferring data from the MAC layer queue of a first link where a first data packet is located to the MAC layer queue of a second link, wherein the first data packet includes a first field used to indicate a CE; and sending the first data packet to a first site through the second link.
[0017] Based on the second aspect, in its first implementation, before transferring the data in the MAC layer queue of the first link where the first data packet is located to the MAC layer queue of the second link, it further includes: determining that the first access point and the first site belong to MLD; sending a second frame to the first site, the second frame including a fifteenth field for indicating a link that supports low latency, low packet loss, scalable throughput (L4S); wherein the first link and the second link are links that support L4S.
[0018] Based on the first implementation of the second aspect, in its second implementation, the aforementioned second frame is any one of the following: a beacon frame, a probe response frame, an association response frame, and a reassociation response frame.
[0019] Based on the first or second implementation of the second aspect, in its third implementation, the aforementioned fifteenth field is carried in the seventh element of the aforementioned second frame, and the aforementioned seventh element is used for extended capability declaration.
[0020] Based on the second aspect and any one of its first to third implementations, in its fourth implementation, before transferring the data in the MAC layer queue of the first link where the first data packet is located to the MAC layer queue of the second link, the method further includes: determining that a first preset condition regarding the first data packet is met, wherein the first preset condition includes at least one of the following: It is determined that the duration of the first data packet's residence in the MAC layer queue of the first access point is greater than a first threshold. It is determined that the length of the MAC layer queue containing the first data packet is greater than the second threshold; After sending the first data packet to the first site, it is determined that the number of times the TCP acknowledgment message for the first data packet is not received exceeds the third threshold. The predicted blocking probability of the current link output by the first AI model is greater than the fourth threshold. The first AI model is trained using historical data of the current link. The first field mentioned above includes the ECN field carried in the IP header.
[0021] Thirdly, a communication method is provided, applied to a first site, the method comprising: receiving a first data packet sent by a first access point through a second link, wherein the transmission link of the first data packet is the link through which the first access point switches from the first link to the second link; wherein the first data packet includes a first field, the first field being used to indicate a CE.
[0022] Based on the third aspect, in its first implementation, before receiving the first data packet sent by the first access point through the second link, it further includes: receiving the second frame sent by the first access point; parsing the second frame, the second frame including a fifteenth field for indicating a link supporting low latency, low packet loss, scalable throughput (L4S); and receiving the first data packet based on the link indicated by the fifteenth field; wherein the first link and the second link are links supporting L4S. The second frame mentioned above is any one of the following: a beacon frame, a probe response frame, an association response frame, and a reassociation response frame; the fifteenth field mentioned above is carried in the seventh element of the second frame mentioned above, and the seventh element is used for extended capability declaration.
[0023] Based on the third aspect, in its second implementation, the above method also includes: Send a first request frame to the first access point, wherein the first request frame is used to request the establishment of a network connection with the first access point, and includes a second field for indicating whether the proxy function of TCP acknowledgment messages is supported; and receive a response frame sent by the first access point to the first request frame, wherein the response frame of the first request frame includes: a third field for indicating whether the proxy function of TCP acknowledgment messages is supported and a fourth field for indicating whether the proxy function is enabled. or, The system receives a first frame, which includes a sixth field indicating whether the proxy function for TCP acknowledgment messages is supported; sends a second request frame to a first access point, which includes a seventh field indicating whether the proxy function for TCP acknowledgment messages is supported, an eighth field indicating whether the proxy function is enabled, and a ninth field indicating that the action of the second request frame is to request the first access point to enable or disable the proxy function; and receives a response frame from the first access point to the second request frame, which includes a tenth field indicating whether the proxy function for TCP acknowledgment messages is supported, an eleventh field indicating whether the proxy function is enabled, and a twelfth field indicating that the action of the response frame is to respond to the ninth field to enable or disable the proxy function.
[0024] Based on the second implementation of the third aspect, in its third implementation, the first request frame includes an association request frame or a reassociation request frame; the second field is carried in the first element of the first request frame, and the first element is used for UHR capability declaration; the third field is carried in the second element of the response frame of the first request frame, and the second element is used for UHR capability declaration; the fourth field is carried in the third element of the response frame of the first request frame, and the third element is used to indicate UHR operation parameters; the first frame is a beacon frame, the sixth field is carried in the fourth element of the first frame, and the fourth element is used for UHR capability declaration; the second request frame is an action frame; the seventh and eighth fields are carried in the fifth element of the second request frame, and the fifth element is used to indicate TCP ACK proxy operation parameters; the response frame of the second request frame is an action frame; the tenth and eleventh fields are carried in the sixth element of the response frame of the second request frame, and the sixth element is used to indicate TCP ACK proxy operation parameters.
[0025] Based on the third aspect or its first implementation, in its fourth implementation, after receiving the first data packet sent by the first access point through the second link, the method further includes: generating a TCP acknowledgment message for the first data packet; and sending the TCP acknowledgment message to the first access point through the second link.
[0026] Fourthly, a communication device is provided, configured at a first access point, the device comprising: a processing module for generating a TCP acknowledgment message for a first data packet, the TCP acknowledgment message including a first field for indicating a CE; and a transceiver module for sending the TCP acknowledgment message to a data sender.
[0027] Fifthly, a communication device is provided, configured at a first access point, the device comprising: a processing module, configured to transfer data from a MAC layer queue of a first link containing a first data packet to a MAC layer queue of a second link, the first data packet including a first field for indicating a CE; and a transceiver module, configured to send the first data packet to a first site via the second link.
[0028] In a sixth aspect, a communication device is provided, configured at a first site, the device comprising: a transceiver module for receiving a first data packet sent by a first access point via a second link, wherein the transmission link of the first data packet is from the first link to the second link of the first access point; wherein the first data packet includes a first field for indicating a CE.
[0029] In a seventh aspect, an access point device is provided, including a processor and a memory. The memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to perform the methods in various implementations of the first or second aspect described above.
[0030] Eighthly, a site device is provided, including a processor and a memory. The memory is used to store a computer program, and the processor is used to invoke and run the computer program stored in the memory to perform the method provided in the third aspect above.
[0031] A ninth aspect provides a chip for implementing the methods of any one of the first to third aspects or their respective implementations. Specifically, the chip includes a processor for calling and running a computer program from a memory, causing a device equipped with the chip to perform the methods of any one of the first to third aspects or their implementations.
[0032] In a tenth aspect, a readable storage medium is provided for storing a computer program that causes a computer to perform the methods of any one of the first to third aspects or their implementations.
[0033] Eleventhly, a communication device is provided, comprising: a processor and a memory for storing a computer program, wherein the processor is configured to call and run the computer program stored in the memory, and to execute the method of any one of the first to third aspects or their implementations.
[0034] In a twelfth aspect, a communication system is provided, including an access point device and a terminal device, wherein the access point device is used to perform the methods of the first aspect or the second aspect or their respective implementations, and the terminal device is used to perform the methods of the third aspect or their respective implementations.
[0035] In the above technical solution provided in this application, the first access point generates a TCP acknowledgment message for the first data packet, and the first field of the TCP acknowledgment message is set to indicate the CE (Congestion Notification Center), and sends the TCP acknowledgment message to the data sender. Alternatively, the data in the MAC layer queue of the first link where the first data packet is located is transferred to the MAC layer queue of the second link, and the first data packet is sent to the first station through the second link. The first data packet includes a first field for indicating the CE. Therefore, this application can solve the problem of lost feedback of explicit congestion notification (ECN) in L4S, ensuring closed-loop congestion control in L4S. Attached Figure Description
[0036] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0037] Figure 1 A schematic structural diagram of a communication system applicable to embodiments of this application is shown.
[0038] Figure 2 This diagram illustrates the information exchange between an L4S data sender, an L4S AP, and an L4S data receiver.
[0039] Figure 3 A schematic diagram of a technical solution for the problem of lost TCP ACK packet feedback is shown.
[0040] Figure 4 One of the information interaction diagrams of a communication method applicable to embodiments of this application is shown.
[0041] Figure 5 The second schematic diagram illustrates an information interaction method applicable to an embodiment of this application.
[0042] Figure 6 The third illustration shows an information interaction diagram of a communication method applicable to an embodiment of this application.
[0043] Figure 7 A schematic diagram of the UHR MAC capability information field in a UHR Capabilities element applicable to an embodiment of this application is shown.
[0044] Figure 8 A schematic diagram of the UHR operation parameter field in a third element applicable to an embodiment of this application is shown.
[0045] Figure 9 A schematic diagram of a third element applicable to an embodiment of this application is shown.
[0046] Figure 10 The fourth illustration shows an information interaction diagram of a communication method applicable to embodiments of this application.
[0047] Figure 11 A schematic diagram of an L4S Proxy Operation Parameters element applicable to embodiments of this application is shown.
[0048] Figure 12 The fifth illustration shows an information interaction diagram of a communication method applicable to embodiments of this application.
[0049] Figure 13 The sixth illustration shows an information interaction diagram of a communication method applicable to embodiments of this application.
[0050] Figure 14 A schematic diagram of a fifteenth field applicable to an embodiment of this application is shown.
[0051] Figure 15 One of the schematic block diagrams of a communication device applicable to embodiments of this application is shown.
[0052] Figure 16 A second schematic block diagram of a communication device applicable to embodiments of this application is shown.
[0053] Figure 17 A third schematic block diagram of a communication device applicable to embodiments of this application is shown.
[0054] Figure 18 A schematic block diagram of a communication device applicable to embodiments of this application is shown.
[0055] Figure 19 A schematic block diagram of a chip applicable to embodiments of this application is shown.
[0056] Figure 20 A schematic block diagram of a communication system applicable to embodiments of this application is shown. Detailed Implementation
[0057] The technical solutions of the embodiments of this application will now be described with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. All other embodiments obtained by those skilled in the art without creative effort regarding the embodiments of this application are within the scope of protection of this application.
[0058] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Furthermore, the terms "first" and "second," etc., used herein are used only to distinguish different objects and not to describe a particular order.
[0059] It should be noted that, in the embodiments of this application, "at least one item" refers to one item or more items, "more items" refers to two items or more, and "at least two items" refers to two items or more. "At least one of the following items" or similar expressions can refer to any combination of these items. For example, at least one item of a, b, or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c".
[0060] It should be noted that in the embodiments of this application, "and / or" indicates that the connected objects can have three relationships. For example, "A and / or B" can represent three scenarios: only A exists, only B exists, and both A and B exist simultaneously. The character " / " generally indicates that the preceding and following objects have an "or" relationship.
[0061] It should be understood that the "instruction" mentioned in the embodiments of this application can be a direct instruction or an indirect instruction. For example, A instructing B can mean that A directly instructs B, such as B being obtainable through A; or it can mean that A indirectly instructs B, such as A instructing C, where B is obtainable through C, for example, B and C are related.
[0062] The technical solutions provided in this application can be applied to WLAN systems, such as Wireless Fidelity (WiFi) protocols. These WiFi protocols may include, but are not limited to, the 802.11 series protocols, such as 802.11a, 802.11ax, 802.11ac, 802.11b, 802.11be, 802.11g, 802.11n, 802.11bn, or next-generation protocols.
[0063] The method provided in this application can be implemented by a communication device in a wireless communication system or by a chip or processor in the communication device. Accordingly, the communication device supports communication using the IEEE 802.11 series of protocols. Although the embodiments of this application are mainly illustrated using a network deploying IEEE 802.11 as an example, those skilled in the art will readily understand that the various aspects involved in this application can be extended to other networks using various standards or protocols, such as Bluetooth, high-performance radio LAN (HIPERLAN) (a wireless standard similar to IEEE 802.11, mainly used in Europe), wide area network (WAN), WLAN, personal area network (PAN), ultra-wideband (UWB) based wireless PAN systems, sensing systems, or other networks now known or to be developed in the future. The methods provided in the embodiments of this application can be applied to the IEEE 802.15 series protocols, such as the 802.15.4a, 802.15.4z, or 802.15.4ab protocols, or future UWB WPAN protocols, etc., and will not be listed one by one. The technical solutions provided in the embodiments of this application can also be applied to the following communication systems, for example, Internet of Things (IoT) systems, vehicle-to-everything (V2X) systems, narrowband Internet of Things (NB-IoT) systems, devices applied in V2X, IoT nodes, sensors, etc., smart cameras, smart remote controls, smart water and electricity meters in smart homes, and sensors in smart cities, etc., or they can also be applied to Long Term Evolution (LTE) systems, 5th Generation (5G) communication systems, and new communication systems that will emerge in the future development of communication, etc. Therefore, regardless of the coverage area and wireless access protocol used, the various aspects provided in this application can be applied to any suitable wireless network.
[0064] Figure 1A schematic structural diagram of a communication system 100 applicable to embodiments of this application is shown. The communication system 100 may include an access point device 110 and a site device 120. The site device 120 can access the network through the access point device 110.
[0065] Access points can support communication or sensing based on WiFi protocols, such as 802.11a, 802.11ax, 802.11ac, 802.11b, 802.11be, 802.11g, 802.11n, 802.11bn, or next-generation protocols.
[0066] The site can support communication or sensing based on WiFi protocols, such as 802.11a, 802.11ax, 802.11ac, 802.11b, 802.11be, 802.11g, 802.11n, 802.11bn, or next-generation protocols.
[0067] The communication in the communication system 100 can be communication between access points and stations, or communication between stations, or communication between access points.
[0068] An access point acts as a bridge connecting wired and wireless networks. Its main function is to connect various wireless network clients together and then connect the wireless network to the Ethernet.
[0069] A station (STA) includes access point stations (AP STA) and non-access point stations (non-AP stations). For simplicity, access point stations are usually referred to as access points (AP), and non-access point stations as stations (STA). Station equipment is also called a station, a non-access point station (Non-AP STA), or a non-access point node.
[0070] In some scenarios, access points and sites can be devices used in the Internet of Vehicles (IoV), IoT nodes and sensors in the Internet of Things (IoT), smart cameras, smart remote controls, smart water and electricity meters in smart homes, and sensors in smart cities.
[0071] In some scenarios, the access point can be a terminal device with a WiFi chip (such as a mobile phone) or a network device (such as a router).
[0072] In this application embodiment, an access point is a device with wireless communication capabilities, supporting communication or sensing using the WLAN protocol. It has the function of communicating or sensing with other devices in the WLAN network (such as non-AP STAs or other access points), and can also have the function of communicating or sensing with other devices. Alternatively, an access point acts as a bridge connecting wired and wireless networks, primarily connecting various wireless network clients together and then connecting the wireless network to the Ethernet. This wireless communication device can be a complete device, or it can be a chip, processing system, or functional module installed in a complete device. Devices with these chips, processing systems, or functional modules can implement the methods and functions of this application embodiment under the control of the chips, processing systems, or functional modules. The AP in this application embodiment is a device that provides services to non-AP STAs and can support 802.11 series protocols or subsequent protocols. For example, an access point can be an access point for terminals (such as mobile phones) to enter a wired (or wireless) network, mainly deployed in homes, buildings, and parks, with a typical coverage radius of tens to hundreds of meters; it can also be deployed outdoors. For example, an AP can be a communication server, router, switch, bridge, or other communication entity; APs can include various forms of macro base stations, micro base stations, repeater stations, etc.
[0073] In this application embodiment, the site can be a mobile phone, tablet computer, computer, virtual reality (VR) device, augmented reality (AR) device, wireless device in industrial control, set-top box, wireless device in self-driving, vehicle communication device, wireless device in remote medical care, wireless device in smart grid, wireless device in transportation safety, wireless device in smart city or smart home, wireless device, wireless communication chip, etc. that support WLAN or WiFi technology.
[0074] It should be understood that Figure 1 Only one access point and two sites are shown in the example. Optionally, the communication system 100 may include multiple access points or other numbers of sites. This application embodiment does not limit this.
[0075] Optionally, the communication system 100 may also include other devices, such as network controllers, gateways, and other network entities, which are not limited in this application.
[0076] To facilitate understanding of the embodiments of this application, the related technologies are described.
[0077] L4S technology proactively addresses network congestion by reconstructing congestion management mechanisms and data flow optimization strategies. While ensuring low-latency, highly reliable data transmission, it significantly improves resource utilization and user experience. The current L4S architecture defines a dedicated Medium Access Control (MAC) sublayer management entity (MLME) interface on the AP side for downlink management, notifying upper layers when congestion occurs in the MAC layer link transmission queue. Based on this notification, the upper layer can execute ECN marking in the IP header.
[0078] Table 1 shows the meaning of ECN encoding.
[0079] Table 1
[0080] For example, Figure 2 This diagram illustrates the information exchange between an L4S data sender, an L4S AP, and an L4S data receiver.
[0081] The L4S data sender (hereinafter referred to as the data sender) is an external network terminal device connected outside the WiFi network. In this embodiment, it is used to initiate L4S traffic and support the L4S congestion control algorithm. It can send data via TCP / UDP protocol and can respond with ECN=11 (indicating congestion) to smoothly reduce the sending rate.
[0082] An L4S data receiver (hereinafter referred to as the data receiver) is a terminal device that receives L4S traffic and has L4S feedback capabilities. It can identify the ECN=11 marker in the received data packets and notify the sender of the network status through an appropriate feedback mechanism. It is a non-access point station device in the WiFi architecture, namely an L4S non-AP STA (the first station in the following text).
[0083] An L4S AP (Access Point Access) is an access point device that supports L4S functionality (as described in the first access point below). It acts as a bridge between the L4S data sender (external network) and the L4S data receiver (user equipment), and implements local congestion control and optimization for L4S. Specifically, the L4S AP is responsible for dedicated queue management, ECN marking, congestion detection, and feedback enhancement for L4S traffic.
[0084] refer to Figure 2 The graph contains the following nodes.
[0085] 1) L4S capability declaration phase.
[0086] The L4S AP periodically sends beacon frames. The "L4S = 1" flag is set in the Extended Capabilities field of this frame to inform the L4S non-AP STA that it has L4S processing capabilities.
[0087] 2) Association and L4S confirmation stage.
[0088] The L4S non-AP STA sends an association / reassociation request frame ((Re)Association Request frame) to the L4S AP, and the L4S AP returns an association / reassociation response frame ((Re)Association Response frame). The (Re)Association Response frame carries the "L4S=1" field, thereby completing the bidirectional confirmation of L4S capability between the two parties, and the L4S non-AP STA and L4S AP establish an L4S transmission channel.
[0089] In the IEEE 802.11 protocol suite, the protocol stack of wireless devices is divided into the MAC layer and upper-layer protocol entities (such as the IP layer and TCP layer). Layers interact through standardized service primitives, mainly including two types: MA-UNITDATA.request / .indication: Used by upper layers (such as the IP layer) to pass MAC layer service data units (MSDUs) to the MAC layer, or by the MAC layer to pass received data to upper layers; MLME primitives are used for management operations such as association, capacity negotiation, and congestion notification.
[0090] MSDU refers to a data unit that is passed from the upper layer to the MAC layer but has not yet been encapsulated into an 802.11 frame; the MAC layer then encapsulates it into a MAC Protocol Data Unit (MPDU) and transmits it through the wireless channel.
[0091] As can be seen, the end-to-end transmission of L4S data streams includes both the over-the-air visible 802.11 frame interactions and cross-layer primitive calls within the device. The following section will combine these two mechanisms to fully describe the L4S traffic processing flow.
[0092] 3) Data transmission stage.
[0093] As mentioned earlier, the transmission of L4S data streams involves the coordinated operation of primitives within the protocol stack and air interface frames. Specifically: When an L4S data sender (such as a server) transmits TCP packets to an L4S non-AP STA, it sets "01" (ECT(1) state) in the ECN field of the IP header to mark the L4S traffic. After the TCP packet arrives at the L4S AP via network routing, its IP layer, as an upper-layer protocol entity, identifies it as L4S traffic to be forwarded and passes the data to the L4S AP's MAC layer through the MA-UNITDATA.request primitive. The primitive carries parameters such as L4S traffic identifier (e.g., "L4S = true") and priority. The L4S AP's MAC layer encapsulates the MSDU into an 802.11 Data frame and sends it to the L4S non-AP STA via the wireless channel.
[0094] 4) Congestion transmission and feedback phase.
[0095] The MAC layer of the L4S AP detects the queue length in real time through a built-in algorithm. If the congestion threshold is reached, it immediately sends a congestion signal to the IP layer of the L4S AP through the MAC layer management entity indication message MLME-L4S-CONGESTION-EXPERIENCED.indication, which may include "Congestion=true" and a flag frequency parameter.
[0096] When the IP layer of an L4S AP receives a congestion signal, it marks the ECN field of subsequent TCP packets transmitted through the L4S queue with "ECN=11" (CE mark, indicating congestion). The L4S MSDU with the CE mark will then be sent to the L4S non-APSTA.
[0097] After receiving the L4S MSDU with the CE tag, the L4S non-AP STA sends the "ECN=11" status back to the L4S data sender via TCP ACK. The L4S data sender then smoothly reduces the transmission rate based on the frequency of the CE tag in the TCP ACK, preventing further queue accumulation.
[0098] Due to the uncertainty of wireless channels, such as Figure 3 The example shown is a scheme with a TCP ACK (ECN=11) feedback loss problem.
[0099] like Figure 3 As shown, deterioration of the wireless channel may cause L4S AP downlink data (ECN=11) packet loss, or L4S non-APSTA uplink TCP ACK (ECN=11) packet loss. Both of these situations will cause the L4S AP to be unable to receive TCP ACK (ECN=11), thereby interrupting the congestion feedback loop and thus destroying the L4S congestion control logic.
[0100] 1) The reasons for downlink packet loss in L4S AP include: when the quality of the wireless air interface deteriorates (such as low signal-to-noise ratio or strong co-channel interference), the number of retransmissions of L4S MSDU by the MAC layer of the L4S AP exceeds the dot11MaxRetry threshold defined by the IEEE 802.11 standard, resulting in downlink data packet loss; or due to a sudden drop in air interface rate (such as from 600Mbps to 54Mbps), the MAC layer queue of the L4S AP is overwhelmed with data and exceeds the queue timeout threshold, triggering downlink data packet timeout and dropping.
[0101] 2) The reasons for uplink ACK packet loss in L4S non-AP STA include: During the upload process, the TCPACK (ECN=11) generated by L4S non-AP STA may fail to be demodulated at the physical layer or dropped at the MAC layer due to uplink air interface interference (such as BSS contention in neighboring cells), L4S non-AP STA buffer overflow (such as receiving multiple streams of L4S data at the same time) or TCP delayed ACK mechanism, resulting in the L4S AP not receiving the ACK.
[0102] The issue of L4S ECN=11 feedback loss in the MAC on L4S mechanism mentioned above relies entirely on TCP's default retransmission mechanism. The specific mechanism is as follows: 1) When a TCP ACK (ECN=11) is not successfully received, the sending server's TCP layer will trigger a retransmission timeout (RTO) mechanism. The initial value of the retransmission timer is estimated based on the round-trip time (RTT) (typically 200ms to 1s). The retransmitted L4S data frame re-enters the shallow queue of the L4S AP, competing for buffer space with newly added data, thus exacerbating queue latency. If an ACK is not received for an extended period, the RTO backs off exponentially (e.g., 200ms → 400ms → 800ms), thus the time the sending server waits for an ACK increases with the number of retransmissions.
[0103] 2) TCP's RTO mechanism not only prolongs the feedback waiting time but also triggers aggressive rate adjustment strategies. Specifically, for example, the traditional TCP Reno algorithm will directly reset the congestion window to the minimum value when an RTO event occurs, which will cause a sharp drop in transmission rate; and although the CUBIC algorithm uses a relatively mild congestion window adjustment method, the transmission rate will still show a significant decrease.
[0104] It is evident that the aforementioned technologies used to address the message feedback loss issue with ECN=11 in the MAC on L4S mechanism suffer from problems such as excessive delay in the sending server waiting for ACK and overly aggressive rate adjustments.
[0105] This application provides a communication method, apparatus, and device. The L4S AP solves the problem of L4S ECN=11 feedback loss in the MAC on L4S mechanism by actively compensating for the loss. At the same time, it can avoid the problems of excessive delay in the sending server waiting for ACK and overly aggressive rate adjustment in related technologies.
[0106] The technical solutions of this application are described in detail below through specific embodiments. The above-mentioned related technologies are optional solutions and can be combined with the technical solutions of the embodiments of this application in any way, all of which fall within the protection scope of the embodiments of this application.
[0107] Figure 4 A schematic diagram illustrating information interaction of a communication method P100 applicable to an embodiment of this application is shown. (Reference) Figure 4 The embodiment shown in the figure includes at least the following: S110, the first access point generates a TCP acknowledgment message for the first data packet. The TCP acknowledgment message includes a first field, which is used to indicate CE.
[0108] S120, the first access point sends a TCP acknowledgment message to the data sender.
[0109] Correspondingly, the data sender receives a TCP acknowledgment message.
[0110] Figure 5 A schematic diagram illustrating information interaction of a communication method P200 applicable to an embodiment of this application is shown. (Reference) Figure 5 The embodiment shown in the figure includes at least the following: S210, the first access point transfers the data in the MAC layer queue of the first link where the first data packet is located to the MAC layer queue of the second link. The first data packet includes a first field, which is used to indicate the CE. S220, the first access point sends the first data packet to the first site through the second link.
[0111] Correspondingly, the first station receives the first data packet.
[0112] In this application, the first access point is an L4S AP, and the first site is an L4S non-ap STA. The first data packet contains a first field, the value of which indicates the CE (Customer Edge). For example, the first field is the ECN field carried in the IP header. For example, in this application, the first data packet is an L4S data packet with ECN = 11.
[0113] In an exemplary embodiment, if it is determined that a first preset condition regarding the first data packet is met, it indicates that there may be a problem of downlink L4S data packet loss or uplink TCP ACK packet loss. To solve this problem, in one exemplary embodiment, P100 is executed, whereby the first access point acts as an agent for the L4S non-ap STA to generate a TCP acknowledgment packet and directly sends the TCP acknowledgment packet to the L4S data sender. In another exemplary embodiment, P200 is executed, whereby the first access point actively switches to another non-blocking link and then performs L4S data transmission with the first site through the non-blocking link. This solves the problem of ECN feedback loss in L4S and ensures closed-loop congestion control in L4S.
[0114] For example, the first preset condition includes at least one of the following: (1) The first data packet stays in the MAC layer queue for a longer time than the first threshold; (2) Determine that the length of the MAC layer queue where the first data packet is located is greater than the second threshold; (3) After sending the first data packet to the first station, determine that the number of consecutive TCP acknowledgment messages for the first data packet not received exceeds the third threshold; (4) The predicted blocking probability of the current link output by the first AI model is greater than the third threshold, wherein the first AI model is trained with historical data of the current link.
[0115] As can be seen, in this embodiment of the application, the L4S AP can monitor packet loss status in stages for the L4S ECN=11 data packet to be forwarded. Specifically, the L4S AP can check the status of the MAC layer L4S dedicated queue before forwarding the L4S ECN=11 data packet; if the L4S ECN=11 data packet resides in the MAC layer queue for a duration exceeding a first threshold, the data packet may be discarded by the queue mechanism, thus indicating that the L4S AP has lost packets in downlink transmission, thereby triggering the execution of P100 or P200. The L4S AP can also continuously monitor the reception status of the corresponding TCP ACK packet after forwarding the L4S ECN=11 data packet; if the number of consecutive TCP ACK packets not received after sending the data packet to the first site exceeds a second threshold, the L4S AP is considered to have lost packets in uplink transmission, thereby triggering the execution of P100 or P200.
[0116] In this embodiment, for each transmission link between the L4S AP and the L4S non-ap STA, an AI model (such as a logistic regression model, gradient regression tree, random forest, etc.) is trained based on the historical data of that link (such as the number of ACK loss counts and link congestion duration). The trained model then predicts the probability of the link becoming congested. If the predicted probability of congestion is greater than a preset third threshold, the L4S AP is considered to have experienced uplink packet loss, triggering either P100 or P200. In this embodiment, multi-link switching can be triggered in advance based on the prediction information (e.g., switching in advance when the main link queue latency reaches 15ms), which helps reduce the end-to-end latency of the L4S stream.
[0117] It should be noted that, on the one hand, in order to facilitate compatibility with low-power IoT devices (such as sensors, smart terminals, etc.), a single-link negotiation proxy mechanism (such as...) is used. Figure 6-11 In the corresponding embodiment, setting the threshold involved in the first preset condition can increase the "low-power trigger threshold" to reduce the agent trigger frequency and adapt to the low-power requirements of IoT devices. On the other hand, for the deterministic latency requirements of industrial control, in multi-link switching mechanisms (such as... Figure 13 In the corresponding embodiment, a "hard real-time switching threshold" is added. By using industrial-grade L4S link priority rules (such as prioritizing wired links → 5G links → Wi-Fi links), the latency jitter of industrial L4S streams is ensured to be ≤1ms, meeting the requirements of Industry 4.0. Thus, the embodiments of this application can cover industrial Internet scenarios.
[0118] In an exemplary embodiment, after determining that the above triggering conditions are met, the first access point can execute P100. Specifically, if the first access point and the first site transmit data via a single link (e.g., case 1: the first access point and / or the first site are not multi-link devices (MLDs); or case 2: the first access point and the first site are MLDs but L4S data can only be transmitted between the two devices via a single link), then after the above triggering conditions are met, S110 and S120 are executed to resolve the problem of downlink L4S packet loss or uplink TCP ACK packet loss in the L4S mechanism by having the first access point proxy the first site to generate TCP ACK packets and send them to the data sender. If both the first access point and the first site are MLDs and L4S data can be transmitted between the two devices via any one of the multiple links, then after the above triggering conditions are met, P200 is executed (the specific implementation will be discussed later). Figure 13 (As described in detail in the corresponding embodiments), the method of actively switching to other non-blocking links through the first access point to transmit data with the first site is used to solve the problem of downlink L4S packet loss or uplink TCP ACK packet loss in the L4S mechanism, and to ensure closed-loop congestion control of L4S.
[0119] The following examples illustrate how the first access point proxy generates a TCP ACK packet and sends it to the data sender.
[0120] In an exemplary embodiment, the first access point and the first site need to negotiate the proxy function of the TCP ACK packet in advance. After the negotiation is completed, when the triggering condition is met, the first access point generates the TCK ACK packet on behalf of the first site and sends it to the data sender to maintain L4S closed-loop congestion control.
[0121] This application provides both static and dynamic negotiation methods. In an exemplary embodiment, triggering conditions can be unified through static negotiation during the association phase. If the triggering conditions change during operation, they can be updated through dynamic negotiation.
[0122] Figure 6 A schematic diagram of information interaction for a communication method P300 applicable to an embodiment of this application is shown. Specifically, a detailed implementation method is provided for static negotiation of the proxy function before generating the TCP ACK message for the first data packet in execution S110. (See reference...) Figure 6 The solution provided by method P300 includes the following steps: In S310, the first station generates a first request frame, which is used to request the establishment of a network connection with the first access point and includes a second field for indicating whether the proxy function of TCP acknowledgment messages is supported.
[0123] The proxy function of TCP acknowledgment messages refers to the function of L4S AP to generate TCP ACK messages, or in other words, the function of L4S AP to generate TCP ACK messages.
[0124] For example, the first request frame includes an association request frame or a reassociation request frame, i.e., a (Re)AssociationRequest frame.
[0125] For example, the second field may be carried within a first element in the first request frame, which is used for the declaration of ultra-high reliability capabilities. For example, the first element may be represented as a UHR Capabilities element.
[0126] For example, Figure 7 A schematic diagram is shown of the UHR MAC capability information field in the UHR Capabilities element applicable to embodiments of this application. (Reference) Figure 7 You can add an L4S Proxy Support field as a second field to the UHR MACCapabilities Information field of the UHR Capabilities element in the first request frame.
[0127] The L4S Proxy Support field can occupy 1 bit. For example, if the first site sets the value of the L4S Proxy Support field to 1 in the first request frame, it means that the first site supports the proxy function of TCP acknowledgment packets, that is, the L4S STA supports the generation of TCP ACK packets by the L4S AP proxy; if the value of the L4S Proxy Support field is set to 0, it means that the first site does not support the proxy function of TCP acknowledgment packets, that is, the L4S STA does not support the generation of TCP ACK packets by the L4S AP proxy.
[0128] Understandable Figure 7 The meanings of other fields in the UHR MAC capability information field shown can be found in existing protocols, and will not be explained in this embodiment.
[0129] In S320, the first access point receives the first request frame sent by the first site.
[0130] After receiving the first request frame, the first access point parses it. Based on the parsing result, it can determine the value of the second field (such as the L4S Proxy Support field) contained within, thereby knowing whether the first site supports the proxy function of the first access point in generating TCP acknowledgment packets. Based on this, it generates a response frame for the first request frame.
[0131] In S330, the first access point sends a response frame to the first request frame, wherein the response frame includes a third field indicating whether the proxy function of TCP acknowledgment messages is supported and a fourth field indicating whether the proxy function is enabled. In S340, the first access point sends the response frame to the first site.
[0132] Where the first access point supports the proxy function for TCP acknowledgment messages, another field (the fourth field) can be used to indicate whether the proxy function is enabled. For example, if the first access point parses the first request frame and determines that the first site supports the proxy function for its TCP acknowledgment messages and also supports the proxy function for TCP acknowledgment messages itself, and determines to enable the proxy function, then in the response frame of the generated first request frame, the value of the third field is set to support the proxy function for TCP acknowledgment messages, and the value of the fourth field is set to enable the proxy function.
[0133] For example, the response frame of the first request frame may include an associated response frame or a reassociated response frame.
[0134] For example, the third field is carried within the second element of the response frame of the first request frame, and the second element is used to declare ultra-high reliability capabilities. For example, the second element can be represented as a UHR Capabilities element, and the third field can be represented as an L4S Proxy Support field.
[0135] refer to Figure 7 The diagram shown illustrates the UHR MAC capability information field in the UHR Capabilities element. An L4S Proxy Support field can be added as a third field to the UHR MAC Capabilities Information field of the UHR Capabilities element in the response frame of the first request frame.
[0136] The L4S Proxy Support field can occupy 1 bit. For example, if the first access point sets the value of the L4S Proxy Support field to 1 in the response frame of the first request frame, it means that the first access point supports the proxy function of TCP acknowledgment packets, that is, the L4S AP supports generating TCP ACK packets; if the value of the L4S Proxy Support field is set to 0, it means that the first access point does not support the proxy function of TCP acknowledgment packets, that is, the L4S AP does not support generating TCP ACK packets.
[0137] Therefore, during the interaction between the L4S non-AP STA and the L4S AP, both parties identify proxy support by reusing the UHR Capabilities element of the 802.11 frame. Specifically, the L4S Proxy Support field value enables mutual confirmation of proxy capabilities between the two parties.
[0138] To clearly indicate the activation status of the proxy function of the first access point, the response frame of the first request frame (e.g., the (Re)Association Response frame) in this embodiment also includes a fourth field. This fourth field is carried within the third element of the response frame of the first request frame, and this third element is used to indicate UHR operation parameters. For example, the third element can be represented as a UHR Operation element.
[0139] Figure 8 A schematic diagram of the UHR operation parameter field in a third element applicable to an embodiment of this application is shown. (Reference) Figure 8 You can add the L4S Proxy Enabled field as a fourth field to the UHR Operation Parameters field of the UHR Operation element in the response frame of the first request frame.
[0140] The L4S Proxy Enabled field can occupy 1 bit. For example, if the first access point sets the value of the L4S Proxy Enabled field to 1 in the response frame of the first request frame, it means that the first access point enables the proxy function of TCP acknowledgment messages; if the value of the L4S Proxy Enabled field is set to 0, it means that the first access point disables the proxy function of TCP acknowledgment messages.
[0141] To transmit the triggering conditions for the proxy to generate a TCK ACK message to the first site, the response frame of the first request frame (e.g., a (Re)Association Response frame) also includes a fifth field. This fifth field indicates the triggering conditions for enabling the aforementioned proxy function. For example, the fifth field is carried within the third element of the response frame of the first request frame, and this third element indicates UHR operation parameters. For example, the third element can be represented as a UHR Operation element.
[0142] Understandable Figure 8 The meanings of the other fields in the UHR operation parameter field of the third element shown can be found in existing protocols, and will not be explained in this embodiment.
[0143] Figure 9 A schematic diagram of a third element applicable to an embodiment of this application is shown. (Reference) Figure 9 You can add the L4S Proxy Trigger Parameters field as the fifth field to the UHR Operation element in the response frame of the first request frame.
[0144] For example, the L4S Proxy Trigger Parameters field can occupy 2 bytes. One byte can define a threshold for the number of consecutive TCP ACK losses (i.e., the third threshold); the other byte can define a threshold for the duration of first data residing in the L4S MSDU queue (i.e., the first threshold), or an L4S MSDU queue length threshold (i.e., the second threshold). Thus, the first access point can determine whether the first data packet meets the first preset condition based on the value of the fifth field. For example, during the association establishment phase, the first access point can default to using pre-configured trigger parameters.
[0145] Understandable Figure 9 The meanings of the other fields in the third element shown can be found in existing protocols, and will not be explained in this embodiment.
[0146] refer to Figure 7-9In an exemplary embodiment, when an L4S AP receives a (Re)Association Request frame with the L4S Proxy Support field value of 1, it can set the L4S ProxySupport field and the L4S Proxy Enabled field to 1 respectively in the (Re)Association Response frame to declare support for and activate the proxy function. Simultaneously, the (Re)Association Response frame can also pass the default trigger threshold parameters to the L4S non-AP STA that initiated the request via the L4S Proxy Trigger Parameters field.
[0147] As can be seen, in this embodiment of the application, the L4S non-AP STA and L4S AP can complete the L4S proxy capability declaration and L4S proxy negotiation authorization through the first request frame and its response frame during the association phase. Specifically, the first access point generates the TCP acknowledgment message for the first data packet only when the second field of the first request frame and the third field of the response frame of the first request frame indicate support for the proxy function of TCP acknowledgment messages, and the fourth field of the response frame of the first request frame indicates that the above-mentioned proxy function is enabled.
[0148] The above combination Figure 6-9 The corresponding embodiment describes the negotiation and authorization process for L4S proxy capabilities through static association interaction during the association phase. After the association phase, if the L4S proxy support or proxy requirements of the L4S AP and L4S non-AP STA change, this application embodiment also provides an embodiment for dynamic synchronous negotiation of L4S proxy capabilities. The following will be combined with... Figure 10-11 An example of dynamic synchronization negotiation is introduced.
[0149] Figure 10 A schematic diagram of information interaction for a communication method P400 applicable to an embodiment of this application is shown. Specifically, it provides a detailed implementation method for the first access point to dynamically negotiate the proxy function for generating the TCP ACK packet before generating the TCP ACK packet in S110. (See reference...) Figure 10 The solution provided by method P400 includes the following steps: In S410, the first access point generates a first frame, which includes a sixth field indicating whether proxy functionality for TCP acknowledgment messages is supported. In S420, the first access point sends the first frame.
[0150] As mentioned earlier, the proxy function of TCP acknowledgment messages refers to the function of L4S AP proxying the generation of TCP ACK messages, or in other words, the function of L4S AP generating TCP ACK messages.
[0151] For example, the first frame is a beacon frame.
[0152] In this embodiment, the sixth field is carried within the fourth element of the first frame, which is used for UHR capability declaration. For example, the fourth element can be represented as a UHR Capabilities element.
[0153] refer to Figure 7 The diagram shown illustrates the UHR MAC capability information field in the UHR Capabilities element. An L4S Proxy Support field can be added as a sixth field to the UHR MAC Capabilities Information field of the UHR Capabilities element in the first frame.
[0154] The L4S Proxy Support field can occupy 1 bit. For example, if the first access point sets the value of the L4S Proxy Support field to 1 in the first frame, it means that the first access point supports the proxy function of TCP acknowledgment packets, that is, the L4S AP supports generating TCP ACK packets; if the value of the L4S Proxy Support field is set to 0, it means that the first access point does not support the proxy function of TCP acknowledgment packets, that is, the L4S AP does not support generating TCP ACK packets.
[0155] In this embodiment, the L4S AP broadcasts L4S proxy support capabilities to the associated L4S non-AP STA via a periodic first frame. The L4S AP reuses the UHR Capabilities element of the 802.11 frame and adds an L4S Proxy Support field (the sixth field) to the UHRMAC Capabilities Information field of that element, as described above, thereby transmitting its L4S proxy support status to the associated non-AP STA.
[0156] In S430, the first station generates a second request frame, which includes: a seventh field indicating whether the proxy function of TCP acknowledgment messages is supported; an eighth field indicating whether the proxy function is enabled; and a ninth field identifying that the action of the second request frame is to request the first access point to enable or disable the proxy function. In S440, the first station sends the second request frame to the first access point.
[0157] The first station (L4S non-AP STA) parses the first frame to obtain the L4S proxy support information of the L4S AP. After obtaining the L4S AP's L4S proxy support information, if its own L4S proxy support status or proxy requirements change dynamically, it generates and sends a second request frame to send an L4S proxy request to the L4S AP.
[0158] The second request frame is used to send an L4S proxy request to the L4S AP. Specifically, the ninth field indicates that the action of the second request frame is to request the first access point to enable or disable the aforementioned proxy function. For example, the second request frame is an action frame, which can be a reused 802.11 QoS Action frame.
[0159] For example, a new flag, L4SProxy Request, is added to the Action Field of the QoS Action frame as the ninth field. Specifically, if the value of the L4S Proxy Request field is set to 1, it indicates that the QoS Action frame is the second request frame mentioned above, and can be denoted as the L4S Proxy Request Action frame.
[0160] For example, the second request frame further includes a seventh field indicating whether TCP acknowledgment message proxying is supported, and an eighth field indicating whether the proxying function is enabled. If the first site parses the first frame and determines that the first access point supports TCP acknowledgment message proxying, then in the generated second request frame, the value of the seventh field is set to support TCP acknowledgment message proxying, and the value of the eighth field is set to enable the proxying function.
[0161] For example, in the second request frame, both the seventh and eighth fields can be carried within the fifth element. The fifth element indicates the proxy operation parameters for the TCP ACK. For example, the fifth element can be a newly added element in the second request frame (L4SProxy Request Action frame), and can be referred to as the L4S Proxy Operation Parameters element.
[0162] In order to transmit the triggering conditions for generating TCK ACK messages for the proxies it supports to the first access point, in some embodiments, the second request frame further includes a thirteenth field for indicating the triggering condition information for enabling the above-mentioned proxy function. For example, the thirteenth field is represented as the L4S Proxy Trigger Parameters field, which can specifically be used to carry the L4S proxy triggering threshold supported by L4SSTA.
[0163] For example, Figure 11 A schematic diagram of an L4S Proxy OperationParameters element applicable to embodiments of this application is shown.
[0164] refer to Figure 11 The L4S Proxy Support (seventh field), L4S Proxy Enabled (eighth field), and thirteenth field, which indicate the L4S STA's L4S proxy support status, can all be contained in the fifth element.
[0165] Through such Figure 11 The L4S Proxy Operation Parameters element includes L4S Proxy TriggerParameters (field thirteen). The L4S STA can transmit its supported L4S proxy triggering parameters for adoption by the L4S AP, thus demonstrating that the site and access point determine the triggering conditions for the proxy function through dynamic negotiation. Simultaneously, the fifth element mentioned above enables the synchronization of L4S proxy parameters between the L4S non-AP STA and the L4S AP.
[0166] In S450, the first access point generates a response frame to the second request frame. The response frame includes: a tenth field indicating whether the proxy function of TCP acknowledgment messages is supported; an eleventh field indicating whether the proxy function is enabled; and a twelfth field identifying whether the action of the response frame is to respond to the ninth field to enable or disable the proxy function. In S460, the first access point sends the response frame to the first site.
[0167] For example, after receiving the second request frame (L4S Proxy Request Action frame), the first access point can obtain the association status of the first site, the L4S proxy capability matching, and the L4S proxy triggering parameters carried in the thirteenth field by parsing the second request frame. Furthermore, after verifying the reasonableness of the above parsing results, it will reply with a response frame to confirm the negotiation results.
[0168] The response frame of the second request frame is used to determine the negotiation result with the first site. Specifically, the action of the response frame of the second request frame can be identified by the twelfth field as responding to the request of the first site, enabling or disabling the aforementioned proxy function. For example, the second request frame is an action frame, which can be a multiplexed 802.11 QoS Action frame.
[0169] For example, a new flag, L4SProxy Response, is added to the Action Field of the QoS Action frame as the twelfth field. Specifically, setting the value of the L4S Proxy Response field to 1 indicates that the QoS Action frame is a response frame to the aforementioned second request frame, and can be referred to as the L4S Proxy Response Action frame.
[0170] To provide the triggering conditions for transmitting the confirmed TCP ACK packet, the response frame of the second request frame (L4S ProxyResponse Action frame) also includes a fourteenth field that indicates the triggering condition information for enabling the above-mentioned proxy function.
[0171] In some embodiments, the value of the fourteenth field in the response frame of the second request frame can be determined based on the value of the thirteenth field in the second request frame. That is, the first access point adopts all or part of the triggering parameters of the TCPACK packet proxy provided by the first site, thereby reflecting that the site and the access point determine the triggering condition information of the proxy function through dynamic negotiation.
[0172] In other embodiments, if the first access point determines that the trigger threshold for the TCP ACK packet proxy in the second request frame is unreasonable or empty, at least some of the field values in the fourteenth field of the response frame of the second request frame can also use default values to ensure that the TCP ACK packet proxy function is triggered reasonably.
[0173] In an exemplary embodiment, to clearly indicate the enabled status of the proxy function of the first access point, the response frame (L4S Proxy Response Action frame) of the second request frame in this embodiment further includes a tenth field and an eleventh field. For example, the L4S Proxy Support field and the L4S Proxy Enabled field can be set to 1 simultaneously in the L4S Proxy Response Action frame to declare support for and activate the proxy function.
[0174] In an exemplary embodiment, in the response frame of the second request frame, the tenth, eleventh, and fourteenth fields can be carried within the sixth element of that frame. The sixth element is used to indicate the proxy operation parameters for the TCP ACK.
[0175] For example, the sixth element can be an element added to the response frame (L4S Proxy Response Action frame) of the second request frame, which can be denoted as the "L4S Proxy Operation Parameters" element.
[0176] For example, refer to Figure 11 The diagram shown illustrates the L4S Proxy Operation Parameters element. The L4S Proxy Support (field 10), L4S Proxy Enabled (field 11), and field 14, which represent the L4S AP's L4S proxy support status, can all be contained within this element.
[0177] As can be seen, in the dynamic L4S proxy negotiation and authorization scheme provided in this application embodiment, when the L4S proxy support or proxy requirements of the associated L4S AP and L4S non-AP STA change, the L4S AP can broadcast its L4S proxy support capability through a first frame (such as a beacon frame). Upon receiving this first frame, the L4S non-AP STA, based on its capabilities and requirements, negotiates its L4S proxy capability with the L4S AP through a second request frame and its response frame (L4S Proxy Request / Response Action frames, such as action frames). Therefore, during the association phase, the L4S non-AP STA and L4S AP can complete the L4S proxy capability declaration and L4S proxy negotiation and authorization through the first frame, the second request frame, and their response frames.
[0178] Meanwhile, the dynamic L4S proxy negotiation and authorization mechanism provided in this embodiment supports the adjustment of L4S capabilities between AP and non-AP STA after association (such as supporting L4S after firmware upgrade), which can solve the problem that static negotiation cannot cope with capability changes, making the L4S architecture adaptable to complex scenarios such as device firmware iteration and network topology changes, improving deployment flexibility and enhancing the adaptability of the L4S architecture.
[0179] The above combination Figure 6-11 This paper describes the specific implementation method for negotiating and authorizing L4S proxy capabilities during the association phase and data transmission phase. This allows the L4S AP proxy to generate and return a TCP ACK packet to the data sender when the first access point is unable to receive its own TCP ACK packet. Specifically, when the first access point determines the aforementioned first preset condition (such as failing to receive an ACK from an L4S non-AP STA twice consecutively or queue congestion), it generates a TCP ACK packet conforming to the TCP specification and then transmits the TCP ACK packet to the data sender via a single link.
[0180] Next, combine Figure 12 This paper details the specific implementation of the first access point proxy generating TCP ACK packets. Figure 12A schematic diagram of information interaction for a communication method P500 applicable to an embodiment of this application is shown. Specifically, a concrete implementation of the first access point proxy generating a TCP ACK packet is provided, which can be considered a specific implementation of S110.
[0181] refer to Figure 12 The solution provided by method P500 includes the following steps: In S510, the first access point saves the TCP connection state information of the first data packet before sending it to the first site.
[0182] In the single-chain scenario solution provided in this application embodiment, in order to provide metadata support for the subsequent proxy to generate TCP ACK messages, the first access point saves the TCP connection state information of the first data packet at the MAC layer before sending the first data packet to the first site.
[0183] In an exemplary embodiment, the TCP connection state information includes at least one of the following: source IP address, destination IP address, TCP destination port, TCP source port, TCP sequence number, and TCP acknowledgment.
[0184] Table 2
[0185] In S520, after determining that the first preset condition is met, a first MAC layer management entity primitive is generated. Furthermore, the MAC layer of the first access point uses the first MAC layer management entity primitive to transmit the TCP connection state information of the first data packet to the IP layer.
[0186] Specifically, when the first access point detects that the first preset condition is met (i.e., triggering the proxy to generate a TCP ACK packet), the MAC layer of the L4S AP transmits the proxy triggering information to the IP layer through the MLME-L4S-Proxy.Indication primitive. For example, the first MAC layer management entity primitive is specifically the MLME-L4S-Proxy.Indication primitive. It contains the following key parameters: MLME-L4S-Proxy.Indication( SrcIP, DstIP, SrcPort, DstPort, Seq, AckNum, ECNStatus ) For a description of the key parameters contained in the MLME-L4S-Proxy.Indication primitive, please refer to Table 2.
[0187] In S530, the IP layer of the first access point generates a TCP acknowledgment message for the first data packet based on the TCP connection state information of the first data packet.
[0188] For example, after the IP layer of the first access point receives the aforementioned MLME-L4S-Proxy.Indication primitive, it generates a TCPACK packet for the proxy of the first data packet based on the TCP connection state information in the MLME-L4S-Proxy.Indication primitive (i.e., the TCP ACK packet is generated by the proxy of the first access point). This is to transmit a congestion feedback signal to the sending server through proactive compensation in the event of link congestion.
[0189] In an exemplary embodiment, the first access point generates a TCP ACK message for the first data packet by including the following steps.
[0190] In S11, at the IP layer, the destination IP address and source IP address of the TCP acknowledgment message's IP header are determined based on the source IP address and destination IP address of the first data packet, respectively; and in S12, at the IP layer, the value of the first field of the TCP acknowledgment message is set to indicate CE. For example, the ECN field in the IP header of the TCP acknowledgment message is set to CE.
[0191] S11 and S12 involve the generation of the IP header for the TCP ACK packet generated by the first access point agent. Specifically, the source IP address of the TCP ACK packet is taken from the primitive DstIP (i.e., the destination IP of the original data packet, corresponding to the IP address of the L4S non-AP STA), and the destination IP address is taken from the primitive SrcIP (i.e., the source IP of the original data packet, corresponding to the IP address of the sending server), masquerading as a data packet sent by the L4S non-AP STA to the sending server. Simultaneously, the ECN field of the IP header of the TCP ACK packet is fixed to the primitive ECNStatus (binary 11, indicating congestion) to transmit the L4S core congestion signal.
[0192] In S13, the source port and destination port of the TCP header of the TCP acknowledgment message are determined at the IP layer based on the TCP destination port and TCP source port of the first data packet, respectively; and in S14, the sequence number and acknowledgment number of the TCP header of the TCP acknowledgment message are determined at the IP layer based on the TCP sequence number and TCP acknowledgment number of the first data packet, respectively.
[0193] S13 and S14 relate to the generation of the TCP header of the aforementioned TCP ACK packet: the source port of the TCP ACK packet is taken from the primitive DstPort (i.e., the TCP destination port of the original data packet, corresponding to the temporary port of L4S non-AP STA), and the destination port is taken from the primitive SrcPort (i.e., the TCP source port of the original data packet, corresponding to the listening port of the sending server), matching the port information of the original TCP session; the sequence number is taken from the primitive AckNum (the TCP acknowledgment number of the original data packet), and the acknowledgment number is taken from the primitive Seq+1 (the TCP sequence number of the original data packet plus 1), following the TCP "sequence number-acknowledgment number" rule; the ACK flag is set to 1 to explicitly identify the acknowledgment frame.
[0194] In method P500, steps S520-S530 can be considered a specific implementation of step S110 in method P100. After generating the TCP ACK packet through the specific implementation of S110, step S120 is further executed: the first access point sends a TCP acknowledgment packet to the data sender. For example, the generated TCP ACK packet is directly sent to the sending server through the network layer interface of the L4S AP.
[0195] In an exemplary embodiment, the first access point further performs S540: after the first access point generates a TCP acknowledgment message for the first data packet, or after receiving a TCP acknowledgment message for the first data packet, the TCP connection state information of the first data packet is released at the MAC layer.
[0196] For example, the timing for releasing the TCP connection state information stored in the first data packet at the MAC layer in S510 includes: (1) When the first access point receives a TCP acknowledgment packet for the first data packet sent by the first site, it indicates that the link between the first access point and the first site is intact. Therefore, there is no need for the proxy to generate a TCP ACK packet for this first data packet, and the TCP connection state information for this first data packet can be released. Or, (2). After the first access point agent generates the TCP ACK message for the first data packet and successfully sends the acknowledgment message to the data sender, the TCP connection state information of the first data packet can be released.
[0197] The above embodiments describe an example where the first access point proxies the generation of a TCP ACK packet for the first data packet after link congestion is determined. This embodiment solves the problem of downlink L4S data packet loss or uplink TCP ACK packet loss in the L4S mechanism by having the first access point actively proxies the generation of a TCP ACK packet and sends it to the data sender, thus maintaining L4S closed-loop control.
[0198] It should be noted that in some embodiments, if the first access point and / or the first site does not belong to an MLD (Multi-Level Distributor), i.e., data transmission between the first access point and the first site is conducted via a single link, L4S closed-loop congestion control can be maintained by having the first access point proxy generate the TCP ACK packet for the first data packet using the methods S110 and S120 provided in this application embodiment. In other embodiments, if both the first access point and the first site belong to an MLD (Multi-Level Distributor Distributor), i.e., data transmission between the first access point and the first site is conducted via multiple links, L4S closed-loop congestion control can also be maintained by having the first access point proxy generate the TCP ACK packet for the first data packet using the methods S110 and S120 provided in this application embodiment.
[0199] The following combination Figure 13 The specific implementation of method P200 is described below. When both the first access point and the first site belong to MLD and L4S data transmission between the two devices can be performed via at least two links, the first access point executes embodiments S210 and S220 after determining that the above triggering conditions are met. In this embodiment, the first access point actively switches to other non-blocking links that support L4S to transmit data with the first site, thereby maintaining a smooth feedback path and resolving the problem of downlink L4S packet loss or uplink TCP ACK packet loss in the L4S mechanism.
[0200] It should be noted that when both the first access point and the first site belong to MLD, method P100 can also be used to solve the above problem. For example, if both the first access point and the first site belong to MLD and L4S data can only be transmitted between the two devices through one link, then the first access point can execute P100 to solve the above problem. That is, the first access point proxy generates a TCP ACK packet with the value of the first field set to indicate CE, and sends the TCP ACK packet to the L4S data sender.
[0201] Figure 13 A schematic diagram of information interaction for a communication method P600 applicable to an embodiment of this application is shown. Specifically, it can be used as a concrete implementation of S210 and S220.
[0202] refer to Figure 13 The solution provided by method P600 includes the following steps: In S610, the first access point sends a second frame to the first site. The second frame includes a fifteenth field, which indicates a link supporting Low Latency, Low Packet Loss, and Scalable Throughput (L4S). Then, in S620, the second frame is sent to the first site.
[0203] In this embodiment, both the first access point and the first site are MLDs, which can be denoted as L4S AP MLD and L4Snon-AP MLD, respectively.
[0204] For example, the second frame is a beacon frame, a probe response frame, an association response frame, or a (Re)Association Response frame.
[0205] In this embodiment, the L4S capability of the link is declared through the fifteenth field, thereby enabling the synchronization of the list of links supporting L4S between the L4S AP MLD and the L4S non-AP MLD.
[0206] For example, Figure 14 A schematic diagram of a fifteenth field applicable to an embodiment of this application is shown. (Reference) Figure 14 The fifteenth field can be represented as the L4S Link Bitmap field. The L4S Link Bitmap field is a variable-length field; the bitmap length equals the maximum number of links supported by the first access point. A bit value of 1 indicates that the link supports L4S capability, and a bit value of 0 indicates that it does not. For example... Figure 14 As shown, the first access point supports a total of 4 links (Link0~Link3), of which Link0 and Link2 support L4S capability, while Link1 and Link3 do not support L4S capability. Therefore, the value of the fifteenth field (L4SLink Bitmap) of the first access point is "1010", which allows it to announce to the L4S non-AP MLD (first site) that the link resources supporting L4S are Link0 and Link2. Thus, the L4S non-AP MLD (first site) can clearly identify which links support L4S functionality for subsequent switching.
[0207] It should be noted that, Figure 14 The example shown is one representation of the fifteenth field, but the field can also be represented in other ways. This application does not limit the representation of this field.
[0208] For example, the fifteenth field is carried within the seventh element of the second frame. The seventh element is used for extended capability declarations, and can be represented as an Extended Capabilities element. For example, an L4S Link Bitmap field is added to the Extended Capabilities element as the fifteenth field. It is understood that this application does not limit the other fields in the seventh element (Extended Capabilities element).
[0209] In S630, the first station parses the second frame and determines the links supported by the first access point and the links that support L4S functionality based on the parsing results.
[0210] For example, after receiving the second frame, the L4S non-AP MLD can obtain the distribution of L4S-supporting links in the L4S AP MLD and the links that support L4S functionality by parsing the L4S Link Bitmap field, thereby providing a basis for decision-making for subsequent link switching.
[0211] In S640, if the first access point determines that a first preset condition regarding the first data packet is met, then the data in the MAC layer queue of the first link where the first data packet resides is transferred to the MAC layer queue of the second link. And, in S650, the first access point sends the first data packet to the first station via the second link.
[0212] It should be noted that in the specific implementation of method P200 / P600, the specific implementation of determining whether the first access point meets the above-mentioned first preset condition is the same as in the specific implementation of method P100, that is, it is determined by the field value of the fifth field in the response frame of the first request frame or the fourteenth field in the response frame of the second request frame, which will not be elaborated here.
[0213] Both the first and second links support L4S functionality. For example, the first and second links are the primary and secondary links, respectively, as shown in the example in field 15 (Link0 and Link2). For example, the second link (the target link selected during switching) can preferentially select a low-power link to balance L4S performance and device power consumption, for example, to achieve compatibility with low-power IoT devices (such as sensors, smart terminals, etc.).
[0214] In this embodiment, if the first access point determines that the first link (e.g., Link0) originally used for transmitting L4S data packets is congested, it can switch to the second link (e.g., Link2) to transmit L4S data packets. Specifically, the first access point transfers the data in the MAC layer queue of the first link where the first data packet is located to the MAC layer queue of the second link.
[0215] As can be seen, in this embodiment, the link redundancy capability of MLD is utilized. When the first link becomes congested or its quality deteriorates, the L4S non-AP MLD / L4S AP MLD keeps other L4S-supporting links open and transfers the data of the queue corresponding to the original L4S link to the switching link, so as to maintain the normal transmission of TCP ACK packets by the L4S non-AP MLD, thereby ensuring that the feedback path is not interrupted.
[0216] It should be noted that the execution order of S640 and S630 is not limited in this embodiment.
[0217] In S660, the first station generates a TCP ACK message for the first data packet after receiving the first data packet.
[0218] For example, the first station does not receive the expected frame of the first data packet on the first link (e.g., Link0) where the TCP stream was originally being received. However, if the first data packet is received on the second link (e.g., Link2), the station can confirm that the first data packet belongs to the same TCP stream by parsing the Multi-Link Control (MLC) field in its IP header. Therefore, a TCP ACK packet for the first data packet is generated, and ECN=11 (CongestionExperienced) is set in the IP header of that packet.
[0219] In S670, the first station sends a TCP ACK message for the first data packet to the first access point via the second link.
[0220] For example, if it can be determined by parsing the second frame that the second link (such as Link2) supports L4S function, then after the second link receives the first data packet, the first station returns a TCP ACK message for the data packet to the first access point on the second link.
[0221] In multi-link scenarios, when the main link transmitting L4S streams is congested and an L4S-supporting secondary link is available, the L4S transmission link switches to the L4S-supporting secondary link. The L4S non-AP STA replies normally with ACK (ECN=11) through the secondary link, maintaining L4S closed-loop congestion control.
[0222] like Figure 13 In the provided embodiment, the L4S AP MLD explicitly declares its supported link distribution (including links supporting L4S functionality) through the L4S capability declaration. If a currently supporting L4S link becomes congested, the L4S AP MLD switches to another supporting L4S link (such as a second link) to continue transmitting L4S data packets. The L4S non-AP MLD then successfully receives the first data packet from the second link and can switch back to the second link to send the corresponding TCP ACK message, maintaining L4S closed-loop control. It is evident that this embodiment avoids single points of failure through multi-link redundancy, effectively improving L4S transmission reliability and ensuring the authenticity and accuracy of congestion feedback. Furthermore, this embodiment does not require modification of the TCP stack and is compatible with existing protocols.
[0223] The communication method provided in this application can solve the problem of ECN feedback loss in L4S. Specifically, in multi-link communication scenarios, the primary and secondary links can be switched to ensure that the L4S non-AP MLD can send the original TCP ACK (indicating congestion notification as congestion encounter) message normally, reducing network congestion caused by proxy misjudgment. In multi-link or single-link communication scenarios, the access point device can replace the L4S non-AP STA in generating TCP ACK (indicating congestion notification as congestion encounter) messages, thereby maintaining the low packet loss and low latency characteristics of L4S.
[0224] Meanwhile, the solution provided in this application is compatible with existing protocols and devices, which helps reduce deployment costs. Specifically, it reuses frames and elements of the IEEE 802.11 protocol, such as the Extended Capabilities element and Action frames, without modifying the core TCP / IP mechanisms (such as TCP acknowledgment numbers and ECN fields). Non-L4S devices or devices without negotiated proxies are not affected, thus meeting the backward compatibility requirements of the protocol.
[0225] Furthermore, the solutions provided in this application are conducive to supporting future network evolution. Specifically, the expansion of technical solutions (such as 5G-Wi-Fi convergence, AI optimization, and industrial internet coverage) provides a foundation for the evolution of the L4S architecture towards future networks (such as 6G and intelligent networks), and can adapt to the high bandwidth, low latency, and deterministic requirements of the Internet of Things scenario (such as VR / AR, real-time industrial control, and intelligent driving), with broad application prospects.
[0226] For example, embodiments of this application can support 5G-Wi-Fi converged scenarios. In a 5G and Wi-Fi collaborative network, the multi-link switching mechanism is extended to between 5G links and Wi-Fi links (e.g., switching to a 5G link when the Wi-Fi main link is congested). Through "5G-Wi-Fi L4S capability declaration" and "cross-access technology switching", L4S congestion feedback continuity in converged scenarios is achieved.
[0227] The above text combined Figures 4 to 14 The method embodiments of this application are described in detail below, in conjunction with... Figures 15 to 16 The present application describes the device embodiments in detail. It should be understood that the device embodiments correspond to the method embodiments, and similar descriptions can be referred to the method embodiments.
[0228] Figure 15 A schematic block diagram of a communication device 200 according to an embodiment of this application is shown. The communication device 200 can be a first access point in the above embodiments, such as an L4S-enabled access point device, or a component in the access point device, such as a chip, circuit, or module. Figure 15The communication device 200 includes a processing module 201 and a transceiver module 202.
[0229] The processing module 201 is used to generate a TCP acknowledgment message for the first data packet. The TCP acknowledgment message includes a first field, which is used to indicate the CE. The transceiver module 202 is used to send the TCP acknowledgment message to the data sender.
[0230] Based on the communication device 200 described above, in its first implementation, the transceiver module 202 is further configured to: receive a first request frame sent by a first site before the processing module 201 generates the TCP acknowledgment message of the first data packet, wherein the first request frame is used to request the establishment of a network connection with the first access point, and includes a second field for indicating whether the proxy function of the TCP acknowledgment message is supported; and send a response frame of the first request frame to the first site, wherein the response frame of the first request frame includes: a third field for indicating whether the proxy function of the TCP acknowledgment message is supported and a fourth field for indicating whether the proxy function is enabled.
[0231] In a second implementation of the communication device 200, based on the first implementation of the first request frame, the response frame of the first request frame further includes a fifth field for indicating trigger condition information for enabling the proxy function.
[0232] In a third implementation of the communication device 200, based on the first or second implementation of the above-mentioned communication device 200, the first request frame includes an association request frame or a reassociation request frame; the second field is carried in the first element of the first request frame, and the first element is used for UHR capability declaration; the third field is carried in the second element of the response frame of the first request frame, and the second element is used for UHR capability declaration; the fourth and fifth fields are carried in the third element of the response frame of the first request frame, and the third element is used to indicate UHR operation parameters.
[0233] Based on the communication device 200 described above and any one of its first to third implementations, in its fourth implementation, the transceiver module is further configured to: broadcast a first frame before the processing module generates a TCP acknowledgment message for the first data packet, the first frame including a sixth field indicating whether the proxy function of the TCP acknowledgment message is supported; receive a second request frame sent by a first station, wherein the second request frame includes: a seventh field indicating whether the proxy function of the TCP acknowledgment message is supported, an eighth field indicating whether the proxy function is enabled, and a ninth field indicating that the action of the second request frame is to request the first access point to enable or disable the proxy function; and send a response frame of the second request frame to the first station, wherein the response frame of the second request frame includes: a tenth field indicating whether the proxy function of the TCP acknowledgment message is supported, an eleventh field indicating whether the proxy function is enabled, and a twelfth field indicating that the action of the response frame of the second request frame is to respond to the ninth field to enable or disable the proxy function.
[0234] In a fifth implementation of the communication device 200, the second request frame further includes a thirteenth field for indicating trigger condition information for enabling the proxy function; the response frame of the second request frame further includes a fourteenth field for indicating trigger condition information for enabling the proxy function; the value of the fourteenth field is determined based on the trigger condition information indicated by the fifth field, or is a default value.
[0235] In a sixth implementation of the communication device 200, based on the fourth or fifth implementation, the first frame is a beacon frame, the sixth field is carried in the fourth element of the first frame, and the fourth element is used for UHR capability declaration; the second request frame is an action frame; the seventh, eighth, and thirteenth fields are carried in the fifth element of the second request frame, and the fifth element is used to indicate the proxy operation parameters of TCP ACK; the response frame of the second request frame is an action frame; the tenth, eleventh, and fourteenth fields are carried in the sixth element of the response frame of the second request frame, and the sixth element is used to indicate the proxy operation parameters of TCP ACK.
[0236] Based on the above-mentioned communication device 200 and any one of its first to sixth implementations, in its seventh implementation, the processing module is further configured to: save the TCP connection state information of the first data packet in the MAC layer before the transceiver module sends the first data packet to the first site; and transmit the TCP connection state information of the first data packet to the IP layer of the first access point through the first MAC layer management entity primitive. The aforementioned processing module is further configured to: after generating the TCP acknowledgment message of the first data packet, or after the aforementioned transceiver module receives the TCP acknowledgment message of the first data packet, release the TCP connection state information of the first data packet at the MAC layer.
[0237] Based on the seventh implementation of the communication device 200, in its eighth implementation, the TCP connection status information includes: source IP address, destination IP address, TCP destination port, TCP source port, TCP sequence number, and TCP acknowledgment. The aforementioned processing module is specifically used for: determining the destination IP address and source IP address of the TCP acknowledgment message's IP header at the IP layer based on the source IP address and destination IP address of the first data packet; setting the value of the first field of the TCP acknowledgment message at the IP layer to indicate CE; determining the source port and destination port of the TCP header of the TCP acknowledgment message at the IP layer based on the TCP destination port and TCP source port of the first data packet; and determining the sequence number and acknowledgment number of the TCP header of the TCP acknowledgment message at the IP layer based on the TCP sequence number and TCP acknowledgment number of the first data packet.
[0238] Based on the communication device 200 described above, in its ninth implementation, the processing module is further configured to: determine, before generating the TCP acknowledgment message of the first data packet, that a first preset condition regarding the first data packet is met, wherein the first preset condition includes at least one of the following: It is determined that the duration of the aforementioned first data packet residing in the MAC layer queue of the first access point is greater than a first threshold; It is determined that the length of the MAC layer queue containing the first data packet is greater than the second threshold; After sending the first data packet to the first site, it is determined that the number of times the TCP acknowledgment message for the first data packet is not received exceeds the third threshold. The predicted blocking probability of the current link output by the first AI model is greater than the fourth threshold. The first AI model is trained using historical data of the current link. The first field mentioned above includes the ECN field carried in the IP header; The aforementioned processing module determines whether the aforementioned first preset condition is met based on the trigger condition information in the aforementioned fifth field or the aforementioned fourteenth indication.
[0239] It should be understood that the communication device 200 described in the embodiments of this application may correspond to the first access point in the method embodiments of this application, and the various units in the device 200 and the other operations and / or functions described above are respectively for implementing Figure 4 , Figure 6 , Figure 10 or Figure 12 The corresponding processes applied to the first access point in the above embodiments will not be described in detail here for the sake of simplicity.
[0240] Figure 16 A schematic block diagram of a communication device 300 according to an embodiment of this application is shown. The communication device 300 can be a first access point in the above embodiments, such as an L4S-enabled access point device, or a component in the access point device, such as a chip, circuit, or module. Figure 16 The communication device 300 includes a processing module 301 and a transceiver module 302.
[0241] The processing module 301 is used to transfer the data in the MAC layer queue of the first link where the first data packet is located to the MAC layer queue of the second link. The first data packet includes a first field, which is used to indicate the CE. The transceiver module 302 is used to send the first data packet to the first station through the second link.
[0242] Based on the above-mentioned communication device 300, in its first implementation, the above-mentioned processing module 302 is further configured to: determine that the above-mentioned first access point and the above-mentioned first site belong to MLD before transferring the data of the MAC layer queue of the first link where the first data packet is located to the MAC layer queue of the second link; The transceiver module 301 is further configured to: send a second frame to the first station, the second frame including a fifteenth field for indicating a link that supports low latency, low packet loss, and scalable throughput (L4S); wherein the first link and the second link are L4S-supporting links.
[0243] In a second implementation of the communication device 300, based on the first implementation of the above-mentioned communication device 300, the second frame is any one of the following: a beacon frame, a probe response frame, an association response frame, and a reassociation response frame.
[0244] In a third implementation of the communication device 300, based on the first or second implementation of the above-mentioned communication device 300, the fifteenth field is carried in the seventh element of the second frame, and the seventh element is used to declare extended capabilities.
[0245] Based on the communication device 300 described above and any one of its first to third implementations, in its fourth implementation, the processing module is further configured to: before transferring the data in the MAC layer queue of the first link where the first data packet is located to the MAC layer queue of the second link, determine that a first preset condition regarding the first data packet is met, wherein the first preset condition includes at least one of the following: It is determined that the duration of the first data packet's residence in the MAC layer queue of the first access point is greater than a first threshold. It is determined that the length of the MAC layer queue containing the first data packet is greater than the second threshold; After sending the first data packet to the first site, it is determined that the number of times the TCP acknowledgment message for the first data packet is not received exceeds the third threshold. The predicted blocking probability of the current link output by the first AI model is greater than the fourth threshold. The first AI model is trained using historical data of the current link. The first field mentioned above includes the ECN field carried in the Internet Protocol (IP) header.
[0246] It should be understood that the communication device 300 described in the embodiments of this application may correspond to the first access point in the method embodiments of this application, and the various units in the device 300 and the other operations and / or functions described above are respectively for implementing Figure 5 or Figure 13 The corresponding processes applied to the first access point in the above embodiments will not be described in detail here for the sake of simplicity.
[0247] Figure 17 A schematic block diagram of a communication device 400 according to an embodiment of this application is shown. The communication device 400 may be a site device (such as a first site), or a component within the site device, such as a chip, circuit, or module. Figure 17 The communication device 400 includes: The transceiver module 401 is used to receive a first data packet sent by the first access point through the second link, wherein the transmission link of the first data packet is the link through which the first access point switches from the first link to the second link; wherein the first data packet includes a first field, the first field being used to indicate CE.
[0248] Based on the above-described communication device 400, in its first implementation, the communication device 400 further includes a processing module 402. The transceiver module 401 is further configured to receive a second frame sent by the first access point before receiving the first data packet sent by the first access point through the second link; The aforementioned processing module 402 is configured to parse the aforementioned second frame, which includes a fifteenth field indicating a link that supports Low Latency, Low Packet Loss, and Scalable Throughput (L4S); and the aforementioned transceiver module 402 is further configured to: receive a first data packet based on the link indicated by the aforementioned fifteenth field; Wherein, the first link and the second link mentioned above are links that support L4S; the second frame mentioned above is any one of the following: beacon frame, probe response frame, association response frame, and reassociation response frame; the fifteenth field mentioned above is carried in the seventh element of the second frame mentioned above, and the seventh element is used for extended capability declaration.
[0249] Based on the above-described communication device 400, in its second implementation, the transceiver module 401 is further used for: Send a first request frame to the first access point, wherein the first request frame is used to request the establishment of a network connection with the first access point, and includes a second field for indicating whether the proxy function of TCP acknowledgment messages is supported; and receive a response frame sent by the first access point to the first request frame, wherein the response frame of the first request frame includes: a third field for indicating whether the proxy function of TCP acknowledgment messages is supported and a fourth field for indicating whether the proxy function is enabled. or, The system receives a first frame, which includes a sixth field indicating whether the proxy function for TCP acknowledgment messages is supported; sends a second request frame to a first access point, which includes a seventh field indicating whether the proxy function for TCP acknowledgment messages is supported, an eighth field indicating whether the proxy function is enabled, and a ninth field indicating that the action of the second request frame is to request the first access point to enable or disable the proxy function; and receives a response frame from the first access point to the second request frame, which includes a tenth field indicating whether the proxy function for TCP acknowledgment messages is supported, an eleventh field indicating whether the proxy function is enabled, and a twelfth field indicating that the action of the response frame is to respond to the ninth field to enable or disable the proxy function.
[0250] In a third implementation of the communication device 400, based on the second implementation of the above-mentioned communication device 400, the first request frame includes an association request frame or a reassociation request frame; the second field is carried in the first element of the first request frame, and the first element is used for UHR capability declaration; the third field is carried in the second element of the response frame of the first request frame, and the second element is used for UHR capability declaration; the fourth field is carried in the third element of the response frame of the first request frame, and the third element is used to indicate UHR operation parameters; the first frame is a beacon frame; the sixth field is carried in the fourth element of the first frame, and the fourth element is used for UHR capability declaration; the second request frame is an action frame; the seventh and eighth fields are carried in the fifth element of the second request frame, and the fifth element is used to indicate TCP ACK proxy operation parameters; the response frame of the second request frame is an action frame; the tenth and eleventh fields are carried in the sixth element of the response frame of the second request frame, and the sixth element is used to indicate TCP ACK proxy operation parameters.
[0251] In a fourth implementation of the communication device 400, the communication device 400 further includes a processing module 402. The processing module 402 is configured to: generate a TCP acknowledgment message for the first data packet after the transceiver module receives the first data packet; and send the TCP acknowledgment message to the first access point.
[0252] It should be understood that the communication device 400 described in the embodiments of this application may correspond to the station in the method embodiments of this application, and the various units in the device 400 and the other operations and / or functions described above are respectively for implementing Figure 4 , Figure 5 , Figure 6 , Figure 10 , Figure 12 or Figure 13 The corresponding processes applied to the first site in the above embodiments will not be described in detail here for the sake of brevity.
[0253] The communication device provided in this application can solve the problem of lost explicit congestion notification (ECN) feedback in L4S. Specifically, in multi-link communication scenarios, the primary and secondary links can be switched to ensure that the L4S non-AP MLD can send the original TCP ACK (explicit congestion notification as congestion encountered) message normally, reducing network congestion caused by proxy misjudgment. In multi-link or single-link communication scenarios, the access point device can replace the L4S non-AP STA in generating TCP ACK (explicit congestion notification as congestion encountered) message, thereby maintaining the low packet loss and low latency characteristics of L4S.
[0254] Meanwhile, the solution provided in this application is compatible with existing protocols and devices, which helps reduce deployment costs. Specifically, it reuses frames and elements of the IEEE 802.11 protocol, such as the Extended Capabilities element and Action frames, without modifying the core TCP / IP mechanisms (such as TCP acknowledgment numbers and ECN fields). Non-L4S devices or devices without negotiated proxies are not affected, thus meeting the backward compatibility requirements of the protocol.
[0255] This application provides an access point device, characterized in that it includes: a processor and a memory, the memory being used to store a computer program, and the processor being used to call and run the computer program stored in the memory to implement the method applied to the access point device in this application embodiment.
[0256] This application provides a site device, characterized in that it includes: a processor and a memory, the memory being used to store a computer program, and the processor being used to call and run the computer program stored in the memory to implement the method applied to the site device in this application embodiment.
[0257] Figure 18 This is a schematic structural diagram of a communication device 500 provided in an embodiment of this application. Figure 18 The communication device 500 shown includes a processor 510, which can call and run computer programs from memory to implement the methods in the embodiments of this application.
[0258] Optionally, such as Figure 18 As shown, the communication device 500 may further include a memory 520. The processor 510 can call and run computer programs from the memory 520 to implement the methods in the embodiments of this application. For example, when the communication device 500 is an access point device, the processor 510 can call and run computer programs from the memory 520 to implement the various steps of the method embodiments executed by the access point device, achieving the same technical effect. When the communication device 500 is a terminal device, the processor 510 can call and run computer programs from the memory 520 to implement the various steps of the method embodiments executed by the site device, achieving the same technical effect.
[0259] Alternatively, the memory 520 may be a separate device independent of the processor 510, or it may be integrated into the processor 510.
[0260] Optionally, such as Figure 18 As shown, the communication device 500 may also include a transceiver 530, and the processor 510 may control the transceiver 530 to communicate with other devices. Specifically, it may send information or data to other devices or receive information or data sent by other devices.
[0261] Optionally, transceiver 530 may include a transmitter and a receiver. Transceiver 530 may further include antennas, and the number of antennas may be one or more.
[0262] Figure 19 This is a schematic structural diagram of chip 600 according to an embodiment of this application. Figure 19 The chip 600 shown includes a processor 610, which can call and run computer programs from memory to implement the methods in the embodiments of this application.
[0263] Optionally, such as Figure 19 As shown, chip 600 may further include memory 620. Processor 610 can retrieve and run computer programs from memory 620 to implement the methods described in this embodiment.
[0264] Alternatively, the memory 620 may be a separate device independent of the processor 610, or it may be integrated into the processor 610.
[0265] Optionally, the chip 600 may also include an input interface 630. The processor 610 can control the input interface 630 to communicate with other devices or chips, for example, to acquire information or data sent by other devices or chips.
[0266] Optionally, the chip 600 may also include an output interface 640. The processor 610 can control the output interface 640 to communicate with other devices or chips, for example, to output information or data to other devices or chips.
[0267] Optionally, the chip can be applied to the access point device in the embodiments of this application, and the chip can implement the corresponding processes implemented by the access point device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.
[0268] Optionally, the chip can be applied to the site device in the embodiments of this application, and the chip can implement the corresponding processes implemented by the site device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.
[0269] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.
[0270] Figure 20 This is a schematic block diagram of a communication system 700 provided in an embodiment of this application. Figure 20 As shown, the communication system 700 includes an access point device 710 and a site device 720.
[0271] The access point device 710 can be used to implement the corresponding functions implemented by the access point device in the above method, and the site device 720 can be used to implement the corresponding functions implemented by the site device in the above method. For the sake of brevity, these will not be elaborated here.
[0272] It should be understood that the processor in the embodiments of this application may be an integrated circuit chip with signal processing capabilities. In implementation, the steps of the above method embodiments can be completed by integrated logic circuits in the processor's hardware or by instructions in software form. The processor described above may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules may reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in the memory, and the processor reads the information in the memory and, in conjunction with its hardware, completes the steps of the above method.
[0273] It is understood that the memory in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM). It should be noted that the memory used in the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0274] It should be understood that the above-described memory is exemplary and not a limiting description. For example, the memory in the embodiments of this application may also be static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct memory bus RAM (DR RAM), etc. That is to say, the memory in the embodiments of this application is intended to include, but is not limited to, these and any other suitable types of memory.
[0275] This application also provides a readable storage medium storing a computer program that, when executed by a processor, implements the various processes of the above-described method embodiments.
[0276] Optionally, the readable storage medium can be applied to the access point device in the embodiments of this application, and the computer program causes the processor to execute the corresponding process implemented by the access point device in the method embodiments of this application. To avoid repetition, it will not be described again here.
[0277] Optionally, the readable storage medium can be applied to the site device in the embodiments of this application, and the computer program causes the processor to execute the corresponding process implemented by the third site device in the method embodiments of this application. To avoid repetition, it will not be described again here.
[0278] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the various processes of the above-described method embodiments.
[0279] Optionally, the computer program product can be applied to the access point device in the embodiments of this application, and the computer program causes the processor to execute the corresponding process implemented by the access point device in the method embodiments of this application. To avoid repetition, it will not be described again here.
[0280] Optionally, the computer program product can be applied to the site device in the embodiments of this application, and the computer program causes the processor to execute the corresponding process implemented by the third site device in the method embodiments of this application. To avoid repetition, it will not be described again here.
[0281] This application also provides a computer program. When executed by a processor, this computer program implements the various processes of the above-described method embodiments.
[0282] Optionally, the computer program can be applied to the access point device in the embodiments of this application. The computer program causes the processor to execute the corresponding process implemented by the access point device in the method embodiments of this application. To avoid repetition, it will not be described again here.
[0283] Optionally, the computer program can be applied to the site device in the embodiments of this application. The computer program causes the processor to execute the corresponding process implemented by the third site device in the method embodiments of this application. To avoid repetition, it will not be described again here.
[0284] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0285] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0286] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0287] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0288] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0289] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, or a part thereof, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.
[0290] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A communication method, characterized in that, Applied to the first access point, including: A Transmission Control Protocol (TCP) acknowledgment message is generated for the first data packet. The TCP acknowledgment message includes a first field, which is used to indicate that a Congestion Response (CE) has been encountered. Send the TCP acknowledgment message to the data sender.
2. The method according to claim 1, characterized in that, Before generating the TCP acknowledgment message for the first data packet, the following is also included: Receive a first request frame sent by a first site, wherein the first request frame is used to request the establishment of a network connection with the first access point, and includes a second field for indicating whether the proxy function of TCP acknowledgment messages is supported; Send a response frame to the first site for the first request frame, wherein the response frame for the first request frame includes: a third field indicating whether the proxy function of TCP acknowledgment messages is supported and a fourth field indicating whether the proxy function is enabled.
3. The method according to claim 2, characterized in that, The response frame of the first request frame also includes a fifth field for indicating the triggering conditions for enabling the proxy function.
4. The method according to claim 2 or 3, characterized in that, The first request frame includes an association request frame or a reassociation request frame; The second field is carried in the first element of the first request frame, and the first element is used to declare the Ultra-High Reliability (UHR) capability; The third field is carried in the second element of the response frame of the first request frame, and the second element is used for UHR capability declaration; The fourth and fifth fields are carried in the third element of the response frame of the first request frame, and the third element is used to indicate the UHR operation parameters.
5. The method according to any one of claims 1-4, characterized in that, Before generating the TCP acknowledgment message for the first data packet, the method further includes: The first frame is broadcast, and the first frame includes a sixth field indicating whether the proxy function of TCP acknowledgment messages is supported; Receive a second request frame sent by the first site, wherein the second request frame includes: a seventh field for indicating whether the proxy function of TCP acknowledgment messages is supported, an eighth field for indicating whether the proxy function is enabled, and a ninth field for identifying that the action of the second request frame is to request the first access point to enable or disable the proxy function. Send a response frame to the first site for the second request frame, wherein the response frame for the second request frame includes: a tenth field indicating whether the proxy function of TCP acknowledgment messages is supported, an eleventh field indicating whether the proxy function is enabled, and a twelfth field indicating whether the action of the response frame for the second request frame is to respond to the ninth field to enable or disable the proxy function.
6. The method according to claim 5, characterized in that, The second request frame also includes a thirteenth field for indicating trigger condition information to enable the proxy function; The response frame of the second request frame also includes a fourteenth field for indicating the triggering condition information for enabling the proxy function.
7. The method according to claim 5 or 6, characterized in that, The first frame is a beacon frame, and the sixth field is carried in the fourth element of the first frame. The fourth element is used to declare the Ultra-High Reliability (UHR) capability. The second request frame is an action frame; the seventh, eighth, and thirteenth fields are carried in the fifth element of the second request frame, and the fifth element is used to indicate the proxy operation parameters of TCP ACK; The response frame of the second request frame is an action frame; the tenth, eleventh, and fourteenth fields are carried in the sixth element of the response frame of the second request frame, and the sixth element is used to indicate the proxy operation parameters of TCP ACK.
8. The method according to any one of claims 1-7, characterized in that, Also includes: Before sending the first data packet to the first site, the TCP connection state information of the first data packet is saved at the Media Access Control (MAC) layer; The TCP connection state information of the first data packet is transmitted to the Internet Protocol (IP) layer of the first access point through the first MAC layer management entity primitive. After the first access point generates a TCP acknowledgment message for the first data packet, or after receiving the TCP acknowledgment message for the first data packet, the method further includes: Release the TCP connection state information of the first data packet at the MAC layer.
9. The method according to claim 8, characterized in that, The TCP connection status information includes: source IP address, destination IP address, TCP destination port, TCP source port, TCP sequence number, and TCP acknowledgment. The first access point generates a TCP acknowledgment message for the first data packet, including: At the IP layer, the destination IP address and source IP address of the TCP acknowledgment message's IP header are determined based on the source IP address and destination IP address of the first data packet. At the IP layer, the value of the first field of the TCP acknowledgment message is set to indicate CE; At the IP layer, the source port and destination port of the TCP header of the TCP acknowledgment message are determined based on the TCP destination port and TCP source port of the first data packet, respectively. At the IP layer, the sequence number and acknowledgment number of the TCP header of the TCP acknowledgment message are determined based on the TCP sequence number and TCP acknowledgment number of the first data packet.
10. The method according to any one of claims 1-9, characterized in that, Before generating the TCP acknowledgment message for the first data packet, the process also includes: It is determined that a first preset condition is met regarding the first data packet, the first preset condition including at least one of the following: Determine that the duration of the first data packet's residence in the MAC layer queue of the first access point is greater than a first threshold; Determine that the length of the MAC layer queue containing the first data packet is greater than the second threshold; After sending the first data packet to the first site, it is determined that the number of consecutive TCP acknowledgment packets not received for the first data packet exceeds a third threshold. The predicted blocking probability of the current link output by the first artificial intelligence (AI) model is greater than the fourth threshold, wherein the first AI model is trained using historical data of the current link; The first field includes the Explicit Congestion Notification (ECN) field carried in the Internet Protocol (IP) header; The first access point determines whether the first preset condition is met based on the trigger condition information indicated by the fifth or fourteenth field.
11. A communication method, characterized in that, Applied to the first access point, including: The data in the Media Access Control (MAC) layer queue of the first link where the first data packet is located is transferred to the MAC layer queue of the second link. The first data packet includes a first field, which is used to indicate that congestion has occurred (CE). The first data packet is sent to the first station via the second link.
12. The method according to claim 11, characterized in that, Before transferring the data from the MAC layer queue of the first link, where the first data packet resides, to the MAC layer queue of the second link, the process also includes: It is determined that the first access point and the first site belong to the Multi-Link Device (MLD); Send a second frame to the first station, the second frame including a fifteenth field for indicating a link that supports low latency, low packet loss, and scalable throughput L4S; The first link and the second link are L4S-enabled links.
13. The method according to claim 12, characterized in that, The second frame is any one of the following: a beacon frame, a probe response frame, an association response frame, and a reassociation response frame.
14. The method according to claim 12 or 13, characterized in that, The fifteenth field is carried in the seventh element of the second frame, and the seventh element is used for extended capability declaration.
15. The method according to any one of claims 11-14, characterized in that, Before transferring the data from the MAC layer queue of the first link, where the first data packet resides, to the MAC layer queue of the second link, the process also includes: It is determined that a first preset condition is met regarding the first data packet, the first preset condition including at least one of the following: Determine that the duration of the first data packet's residence in the MAC layer queue of the first access point is greater than a first threshold; Determine that the length of the MAC layer queue containing the first data packet is greater than the second threshold; After sending the first data packet to the first site, it is determined that the number of consecutive TCP acknowledgment packets not received for the first data packet exceeds a third threshold. The predicted blocking probability of the current link output by the first artificial intelligence (AI) model is greater than the fourth threshold, wherein the first AI model is trained using historical data of the current link; The first field includes the Explicit Congestion Notification (ECN) field carried in the Internet Protocol (IP) header.
16. A communication method, characterized in that, Applied to the first site, including: Receive a first data packet sent by the first access point through the second link, wherein the transmission link of the first data packet is the link through which the first access point switches from the first link to the second link; The first data packet includes a first field, which is used to indicate that congestion has encountered a Congestion Response (CE).
17. The method according to claim 16, characterized in that, Before receiving the first data packet sent by the first access point through the second link, it also includes: Receive the second frame sent by the first access point; The second frame is parsed, the second frame including a fifteenth field for indicating a link that supports low latency, low packet loss, and scalable throughput L4S; and a first data packet is received based on the link indicated by the fifteenth field; Among them, the first link and the second link are links that support L4S; The second frame is any one of the following: a beacon frame, a probe response frame, an association response frame, and a reassociation response frame; the fifteenth field is carried in the seventh element of the second frame, and the seventh element is used for extended capability declaration.
18. The method according to claim 16, characterized in that, The method further includes: Send a first request frame to the first access point, wherein the first request frame is used to request the establishment of a network connection with the first access point, and includes a second field for indicating whether the proxy function of Transmission Control Protocol (TCP) acknowledgment messages is supported; and receive a response frame of the first request frame sent by the first access point, wherein the response frame of the first request frame includes: a third field for indicating whether the proxy function of TCP acknowledgment messages is supported and a fourth field for indicating whether the proxy function is enabled. or, The system receives a first frame, which includes a sixth field indicating whether a proxy function for TCP acknowledgment messages is supported; sends a second request frame to a first access point, wherein the second request frame includes a seventh field indicating whether a proxy function for TCP acknowledgment messages is supported, an eighth field indicating whether the proxy function is enabled, and a ninth field identifying that the action of the second request frame is to request the first access point to enable or disable the proxy function; and receives a response frame to the second request frame sent by the first access point, wherein the response frame includes a tenth field indicating whether a proxy function for TCP acknowledgment messages is supported, an eleventh field indicating whether the proxy function is enabled, and a twelfth field identifying that the action of the response frame is to respond to the ninth field to enable or disable the proxy function.
19. The method according to claim 18, characterized in that, The first request frame includes an association request frame or a reassociation request frame; The second field is carried in the first element of the first request frame, and the first element is used to declare the Ultra-High Reliability (UHR) capability; The third field is carried in the second element of the response frame of the first request frame, and the second element is used for UHR capability declaration; The fourth field is carried in the third element of the response frame of the first request frame, and the third element is used to indicate the UHR operation parameters; The first frame is a beacon frame, and the sixth field is carried in the fourth element of the first frame. The fourth element is used for UHR capability declaration. The second request frame is an action frame; the seventh and eighth fields are carried in the fifth element of the second request frame, and the fifth element is used to indicate the proxy operation parameters of TCP ACK; The response frame of the second request frame is an action frame; the tenth and eleventh fields are carried in the sixth element of the response frame of the second request frame, and the sixth element is used to indicate the proxy operation parameters of TCP ACK.
20. The method according to claim 16 or 17, characterized in that, After receiving the first data packet sent by the first access point through the second link, the method further includes: Generate a TCP acknowledgment message for the first data packet; The TCP acknowledgment message is sent to the first access point via the second link.
21. A communication device, characterized in that, Configured at the first access point, including: The processing module is used to generate a Transmission Control Protocol (TCP) acknowledgment message for the first data packet. The TCP acknowledgment message includes a first field, which is used to indicate that a congestion event (CE) has occurred. The transceiver module is used to send the TCP acknowledgment message to the data sender.
22. A communication device, characterized in that, Configured at the first access point, including: The processing module is used to transfer the data of the Media Access Control (MAC) layer queue of the first link where the first data packet is located to the MAC layer queue of the second link. The first data packet includes a first field, which is used to indicate that congestion has been encountered (CE). The transceiver module is used to send the first data packet to the first station via the second link.
23. A communication device, characterized in that, Configured at the first site, including: The transceiver module is used to receive a first data packet sent by the first access point through the second link, wherein the transmission link of the first data packet is the link through which the first access point switches from the first link to the second link; The first data packet includes a first field, which is used to indicate that congestion has encountered a CE (Congestion Encounter).
24. An access point device, characterized in that, include: A processor and a memory for storing a computer program, the processor for calling and running the computer program stored in the memory to perform the method as described in any one of claims 1-15.
25. A site device, characterized in that, include: A processor and a memory for storing a computer program, the processor for calling and running the computer program stored in the memory to perform the method as described in any one of claims 16-20.
26. A chip, characterized in that, include: A processor for retrieving and running a computer program from memory, causing a device on which the chip is mounted to perform the method as described in any one of claims 1-20.
27. A readable storage medium, characterized in that, Used to store a computer program that causes a computer to perform the method as described in any one of claims 1-20.
28. A communication system, characterized in that, It includes an access point device and a site device, wherein the access point device is used to perform the method as described in any one of claims 1-20.