Communication method, device and system and readable storage medium
By detecting that the wireless communication connection between the STA and the AP is disconnected and the update information is sent, the data packet loss problem caused by the AC failing to update the STA forwarding table entry in time is solved, and data transmission stability in the STA roaming scenario is achieved.
Patent Information
- Application Number
- CN202311245888.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-22
- Publication Date
- 2025-03-25
AI Technical Summary
After the STA roams from one AP to another, the AC will not actively update the forwarding entry of the STA, resulting in packet loss.
By detecting that the wireless communication connection between the STA and the AP is disconnected, the first device sends information to the third device (AC), instructing to delete the forwarding entry corresponding to the STA, and update the forwarding entry when the STA reconnects.
It realizes timely update of forwarding items in STA roaming scenarios, reducing data packet loss rate and avoiding network communication lag.
Smart Images

Figure CN119697798A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of wireless communication technology, and in particular to a communication method, device, system and readable storage medium. Background Art
[0002] To improve the quality of communication between stations (STA) through wireless networks (such as wireless local area networks (WLAN), wireless fidelity (Wi-Fi) networks, etc.), an access controller (AC) is usually connected to multiple wireless access points (APs). STA can roam between multiple APs connected to the AC according to its own environment, the network quality of different APs, etc., to improve the communication quality of STA accessing the Internet or other devices connected to the AC through the AC. For example, after the STA connects to the current AP for network data transmission, if the STA moves to an area closer to another AP or the network quality of another AP is better than the current AP, the STA can connect to the other AP for communication.
[0003] Generally speaking, data transmitted from the Internet or other devices connected to the AC to the STA is transmitted by the AC to the AP connected to the corresponding port of the STA according to the STA's forwarding table entry in the AC's forwarding table (used to record the correspondence between the STA and the AC's ports), and then transmitted to the STA by the AP through the wireless network. After the STA roams from one AP to another, the AC will not actively update the corresponding forwarding table entry of the STA, resulting in the AC forwarding the data transmitted to the STA to the AP, causing the STA's data packet loss. Summary of the invention
[0004] In view of this, the present application provides a communication method, device, system and readable storage medium, which are conducive to reducing the data packet loss rate of the site and avoiding network communication jams of the site.
[0005] A first aspect provides a communication method, the method comprising: a first device is connected to a second device, wherein the second device accesses a wireless access point provided by the first device as a site, and the access controller of the first device is a third device; the first device detects that the wireless communication connection between the first device and the second device is disconnected, and sends first information to the third device, wherein the first information is used to instruct the third device to delete a forwarding table entry corresponding to the second device in a forwarding table of the third device.
[0006] Based on the above method, the third device (as AC) can promptly delete the forwarding entry corresponding to the second device in the forwarding table after the wireless communication connection between the second device (as STA) and the first device (as AP) is disconnected. According to the provisions of the communication protocol, when the third device does not have the forwarding entry of the second device, it can cache the data transmitted to the second device, and transmit the cached data to the third device after the second device reconnects to the wireless access point of the third device, which is conducive to reducing the packet loss rate of the second device and avoiding the second device The device's network communication is stuck.
[0007] In some implementations, the first device is a wireless access point connected to the third device, for providing the second device with a wireless network connected to a network (eg, the Internet) to which the third device is connected or to other devices to which the third device is connected.
[0008] In a possible implementation of the first aspect above, the first device detects that the wireless communication connection between the first device and the second device is disconnected, and sends the first information to the third device, including: the first device detects that the wireless communication connection between the first device and the second device is disconnected, and sends the first information to the third device through the management channel between the first device and the third device.
[0009] In some implementations, the management channel between the first device and the third device may be a communication channel between the third device and the first device for transmitting control information, or a message (or frame) for transmitting control information defined by a communication protocol between the third device and the first device.
[0010] In a possible implementation of the first aspect, the first information includes an identifier of the second device, where the identifier includes at least one of a media access control address, a device serial number, a device name, and an Internet Protocol address.
[0011] A second aspect provides a communication method, the method comprising: a third device receives first information sent by a first device, the first information is sent by the first device when the first device detects that the wireless communication connection between the first device and the second device is disconnected, wherein the third device is an access controller of the first device, and the second device accesses a wireless access point provided by the first device as a site; the third device responds to the first information and deletes a forwarding table entry corresponding to the second device in the forwarding table.
[0012] Based on the above method, the third device (as AC) can promptly delete the forwarding entry corresponding to the second device in the forwarding table after receiving the first information indicating that the wireless communication connection between the second device (as STA) and the first device (as AP) is disconnected. According to the provisions of the communication protocol, when the third device does not have the forwarding entry of the second device, it can cache the data transmitted to the second device, and transmit the cached data to the third device after the second device reconnects to the wireless access point of the third device, which is conducive to reducing the packet loss rate of the second device and avoiding the second device The device's network communication is stuck.
[0013] In some implementations, the first device is a wireless access point connected to the third device, for providing the second device with a wireless network connected to a network (eg, the Internet) to which the third device is connected or to other devices to which the third device is connected.
[0014] In a possible implementation of the second aspect above, the method further includes: after deleting the forwarding table entry corresponding to the second device, the third device sends an address resolution protocol request message for the Internet Protocol address of the second device; the third device receives an address resolution protocol response message corresponding to the address resolution protocol request message sent by the second device, and establishes a first forwarding table entry corresponding to the second device in the forwarding table, wherein the forwarding port in the first forwarding table entry is a communication port between the wireless access point to which the second device is currently connected and the third device.
[0015] In this implementation, after deleting the forwarding table entry corresponding to the second device, the third device can promptly establish a first forwarding table entry corresponding to the second device by sending an address resolution protocol request message for the Internet Protocol address of the second device, thereby shortening the time for disconnection of the communication connection between the third device and the second device and avoiding network lag of the second device.
[0016] In a possible implementation of the second aspect above, the method also includes: the third device receives the first message, and the sending device recorded in the first message is the second device; the third device establishes a first forwarding table entry corresponding to the second device in the forwarding table, wherein the forwarding port in the first forwarding table entry is the communication port between the wireless network access point to which the second device is currently connected and the third device.
[0017] In a possible implementation of the second aspect above, the method above also includes: after deleting the transfer table entry corresponding to the second device, the third device caches the first data corresponding to the second device; and the third device transmits the first data to the second device based on the first transfer table entry.
[0018] In this implementation, after establishing the first forwarding table entry for the second device, the third device may transmit cached data corresponding to the second device to the second device, thereby reducing the amount of data lost by the second device.
[0019] A third aspect provides a communication method, which includes: a fourth device establishes a wireless communication connection with a second device, wherein the second device accesses a wireless access point provided by the fourth device as a site, the access controller of the fourth device is a third device, and the fourth device communicates with the third device through a first port; the fourth device sends a second message to the third device, wherein the second message is used to instruct the third device to update the forwarding port in the forwarding table entry corresponding to the second device in the forwarding table of the third device to the first port, and the media access control address recorded in the source address field in the second message is the media access control address of the second device.
[0020] By using the above method, when the second device (as STA) establishes a wireless communication connection with the fourth device, the fourth device (as AP) can send a second message whose media access control address recorded in the source address field is the media access control address of the second device to the third device (as AC), so that the third device can update the corresponding forwarding table entry of the second device in time. By using the above method, the packet loss rate of the second device can be reduced, and the network communication of the second device can be avoided from being stuck.
[0021] In some implementations, the fourth device is a wireless access point connected to the third device to provide the second device with a wireless network for connecting to a network (eg, the Internet) to which the third device is connected or other devices to which the third device is connected.
[0022] In a possible implementation of the third aspect, the second message is any one of the following messages: an Address Resolution Protocol message, a Spanning Tree Protocol message, and an Internet Control Message Protocol message with the third device as the destination device.
[0023] A fourth aspect provides a first device, the first device comprising: a memory, used to store one or more programs; a processor, used to execute one or more programs so that the first device implements any one of the communication methods provided in the first aspect.
[0024] In a fifth aspect, the present application provides a third device, the third device comprising: a memory for storing one or more programs; and a processor for executing one or more programs so that the third device implements any one of the communication methods provided in the second aspect above.
[0025] In a sixth aspect, the present application provides a fourth device, the fourth device comprising: a memory for storing one or more programs; and a processor for executing one or more programs so that the fourth device implements any one of the communication methods provided in the third aspect above.
[0026] The seventh aspect provides a system, which includes any one of the first devices provided by the fourth aspect and any one of the third devices provided by the fifth aspect.
[0027] The eighth aspect provides a readable storage medium, which includes one or more programs. When the one or more programs are executed on a device, the device enables any one of the communication methods provided by the first aspect, or implements any one of the communication methods provided by the second aspect, or implements any one of the communication methods provided by the third aspect.
[0028] The ninth aspect provides a program product, which, when running on a device, enables the device to implement any one of the communication methods provided in the first aspect, or any one of the communication methods provided in the second aspect, or any one of the communication methods provided in the third aspect.
[0029] It should be understood that the beneficial effects of the fourth to ninth aspects mentioned above can be referred to the description of the first to third aspects mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1 According to some embodiments of the present application, a schematic diagram of a roaming scene is shown;
[0031] Figure 2 According to some embodiments of the present application, a Figure 1 A schematic diagram of the timing of AC 10 forwarding data in the scenario shown;
[0032] Figure 3 According to some embodiments of the present application, a process schematic diagram of a communication method is shown;
[0033] Figure 4A According to some embodiments of the present application, a timing diagram of AC 10 forwarding data to STA 30 after updating the forwarding table based on the forwarding table deletion message sent by AP 21 is shown;
[0034] Figure 4B According to some embodiments of the present application, a timing diagram of AC 10 forwarding data to STA 30 after updating a forwarding table entry based on an uplink message sent by AP 22 is shown;
[0035] Figure 5A According to some embodiments of the present application, a schematic diagram of a connection method between AP 21, AP 22 and AC 10 is shown;
[0036] Figure 5B According to some embodiments of the present application, another schematic diagram of a connection method between AP 21, AP 22 and AC 10 is shown;
[0037] Figure 5C According to some embodiments of the present application, a schematic diagram of another connection method between AP 21, AP 22 and AC 10 is shown;
[0038] Figure 5D According to some embodiments of the present application, a schematic diagram of another connection method between AP 21, AP 22 and AC 10 is shown;
[0039] Figure 6 According to some embodiments of the present application, a schematic diagram of software architecture in an AC and an AP is shown;
[0040] Fig. 7A According to some embodiments of the present application, a functional schematic diagram of a site connection status detection module is shown;
[0041] Figure 7B According to some embodiments of the present application, a functional schematic diagram of a forwarding entry update information sending module is shown;
[0042] Figure 7C According to some embodiments of the present application, a functional schematic diagram of a roaming detection module is shown;
[0043] Fig.7D According to some embodiments of the present application, a functional schematic diagram of a forwarding entry processing module is shown;
[0044] Fig. 8A According to some embodiments of the present application, a schematic diagram of an implementation process of a communication method is shown;
[0045] Figure 8B According to some embodiments of the present application, a schematic diagram of an interaction process of a communication method is shown;
[0046] Fig. 9 According to some embodiments of the present application, a schematic diagram of an interaction process of another communication method is shown;
[0047] Fig. 10A According to some embodiments of the present application, a schematic diagram of an implementation process of another communication method is shown;
[0048] Fig. 10B According to some embodiments of the present application, a schematic diagram of an interaction process of another communication method is shown;
[0049] Fig.11 According to some embodiments of the present application, a schematic diagram of an interaction process of another communication method is shown;
[0050] Fig.12According to some embodiments of the present application, a schematic structural diagram of a device 100 is shown. DETAILED DESCRIPTION
[0051] Illustrative embodiments of the present application include, but are not limited to, communication methods, devices, systems, and readable storage media.
[0052] The technical solution of the present application is introduced below in conjunction with the accompanying drawings.
[0053] Figure 1 According to some embodiments of the present application, a schematic diagram of a roaming scene is shown.
[0054] like Figure 1 As shown, AC 10 includes Ethernet interface eth.0, Ethernet interface eth.1, Ethernet interface eth.2, and Ethernet interface eth.3, wherein Ethernet interface eth.0 is connected to the Internet, Ethernet interface eth.1 is connected to a network attached storage (NAS) 40, Ethernet interface eth.2 is connected to AP 22, and Ethernet interface eth.3 is connected to AP 21.
[0055] refer to Figure 1 STA 30 is connected to AP 21 through a wireless network, and performs network data transmission through AP 21. For example, STA 30 can access the Internet or other devices (such as NAS 40) connected to AC 10 through AP 21 and AC 10. When STA 30 moves to an area closer to AP 22 or the network quality provided by AP 22 is higher than that of AP 21, STA 30 can roam to AP 22 (disconnect the wireless network connection with AP 21 and connect to AP 22 through a wireless network) based on a roaming protocol (such as Institute of Electrical and Electronics Engineers (IEEE) 802.11K protocol, IEEE 802.11V protocol, IEEE 802.11R protocol, etc.), and perform network data transmission through AP 22.
[0056] However, the data transmitted from the Internet or NAS 40 to the STA is transmitted by AC 10 to AP 21 or AP 22 according to the forwarding table entry of STA 30 (used to record the corresponding relationship between STA 30 and AP). After STA 30 roams from AP 21 to AP 22, the forwarding table entry corresponding to STA 30 in AC 10 is not updated immediately. For example, when STA 30 and AC 10 communicate via the transmission control protocol (TCP), AC 10 will update the forwarding table entry of STA 30 after the communication connection with STA 30 is disconnected for a preset period of time; when STA 30 and AC 10 communicate via the user datagram protocol (UDP), AC 10 will update the forwarding table entry of STA 30 after receiving the uplink message sent by STA 30.
[0057] In this way, since AC 10 will not actively update the forwarding table entry corresponding to STA 30, AC 10 will forward the data transmitted from the Internet or NAS 40 to STA 30 through Ethernet interface eth.3 to AP 21. In fact, STA 30 has roamed to AP 22, and AP 21 cannot correctly transmit data to STA 30.
[0058] It should be understood that the forwarding table of the AC records the correspondence between the STA identifiers (e.g., media access control (MAC) addresses, device names, device serial numbers, Internet protocol (IP) addresses, etc.) of each STA connected to the AC and the ports of the AC (which may be the physical interface of the AC (e.g., the aforementioned Ethernet interface) or the logical port of wireless communication). The correspondence between the STA identifier of each STA and the port of the AC may be referred to as a forwarding table entry.
[0059] In other embodiments, other information may also be recorded in the forwarding table of the AC, such as whether the MAC address is the local address of the AC, the aging time of the forwarding table entry (the time when the forwarding table entry is automatically refreshed), the STA identifier of each STA and the IP four-tuple information (source IP address, destination IP address, source port, destination port) or five-tuple information (source IP address, destination IP address, protocol number, source port, destination port) or seven-tuple information (source IP address, destination IP address, protocol number, source port, destination port, service type and interface index), etc.
[0060] For example, Figure 2 According to some embodiments of the present application, a Figure 1A schematic diagram of the timing of AC 10 forwarding data in the illustrated scenario.
[0061] like Figure 2 As shown, the data that the Internet or NAS 40 needs to transmit to STA 30 includes data D1, data D2, data D3, and data D4, and the MAC address of STA 30 is MAC1.
[0062] Before time T1, STA 30 is connected to AP 21, and the forwarding entry corresponding to STA 30 in the forwarding table of AC 10 is "MAC1→eth.3" (the correspondence between the MAC address of STA 30 and the Ethernet interface eth.3). AC 10 can transmit data D1 to AP 21 connected to the Ethernet interface eth.3 based on the forwarding entry "MAC1→eth.3", and then AP 21 transmits it to STA 30 through the wireless network.
[0063] At time T1, STA 30 disconnects from the wireless network connection with AP 21, and connects to AP 22 via the wireless network at time T2.
[0064] During the period from T1 to T2, AC 10 will not update the forwarding table entry corresponding to STA 30, and AC 10 will still transmit data D2 to AP 21 connected to Ethernet interface eth.3 based on the forwarding table entry "MAC1→eth.3". During the period from T1 to T2, STA 30 is not connected to AP 21, so STA 30 cannot receive data D2, resulting in data D2 packet loss.
[0065] During the period from T2 to T3, STA 30 has been connected to AP 22 but STA 30 has not sent an uplink message to AC 10, and AC 10 will not update the corresponding forwarding table entry of STA 30. During the period from T2 to T3, AC 10 will still transmit data D3 to AP 21 connected to Ethernet interface eth.3 based on the forwarding table entry "MAC1→eth.3". During the period from T2 to T3, STA 30 is not connected to AP 21, so STA 30 cannot receive data D3, resulting in packet loss of data D3.
[0066] At time T3, STA30 sends an uplink message to AC10 through AP22. After receiving the uplink message sent by STA30, AC10 can update the forwarding table entry corresponding to STA30 to "MAC1→eth.2" (the correspondence between the MAC address of STA30 and the Ethernet interface eth.2). After time T3, AC10 can transmit data D4 to AP22 connected to Ethernet interface eth.2 based on the forwarding table entry "MAC1→eth.2", and then AP22 transmits it to STA30 through the wireless network.
[0067] Based on the above process, it can be seen that during the period from when STA 30 is disconnected from AP 21 to when STA 30 sends an uplink message to AP 22, the data (data D2, data D3) that the Internet or NAS 40 needs to transmit to STA 30 cannot be transmitted to STA 30, resulting in data packet loss in STA 30.
[0068] In view of this, an embodiment of the present application provides a communication method, which is applied to a scenario where a STA roams from a first AP to a second AP, and the first AP and the second AP are connected to the same AC. The first AP sends forwarding table item update information to the AC when it detects that the wireless network connection status between the STA and the first AP is disconnected, and / or the second AP sends forwarding table item update information to the AC after detecting that a wireless communication connection with the STA is established. Then the AC can update the historical forwarding table item corresponding to the STA in the forwarding table of the AC (corresponding to the mapping relationship between the port connected to the first AP on the AC and the STA identifier of the STA) to the current forwarding table item (corresponding to the mapping relationship between the port connected to the second AP on the AC and the STA identifier of the STA) according to the received forwarding table item update information. In this way, the AC can timely update the forwarding table item corresponding to the STA in the scenario where the STA roams from the first AP to the second AP, which is conducive to reducing the amount of packet loss of data sent by the AC to the STA.
[0069] In some embodiments, corresponding to the scenario where a STA roams from a first AP to a second AP, and the first AP and the second AP are connected to the same AC, the first AP may send forwarding table entry deletion information (as forwarding table update information) carrying the STA identifier (e.g., MAC address, name, device serial number, etc. of the STA device) to the AC when detecting that the wireless network connection status between the STA and the first AP is disconnected. After receiving the forwarding table entry deletion information, the AC may delete the forwarding table entry corresponding to the STA in the forwarding table of the AC according to the STA identifier in the forwarding table entry deletion information.
[0070] After deleting the forwarding table entry of the STA, the AC can cache the data transmitted to the STA. Then, after the STA is connected to the second AP, the AC can create a new forwarding table entry corresponding to the STA in the forwarding table of the AC, which is used to indicate the correspondence between the port to which the second AP on the AC is connected and the STA identifier of the STA. Then, based on the newly created forwarding table entry, the AC can transmit the previously cached data and the data currently required to be transmitted to the STA through the second AP to the STA. This is conducive to reducing the amount of packet loss of the data sent by the AC to the STA in the roaming scenario.
[0071] In some embodiments, it corresponds to a scenario where a STA roams from a first AP to a second AP, and the first AP and the second AP are connected to the same AC. When the second AP detects that the STA is connected to the second AP through a wireless network, it can send an uplink message corresponding to the STA to the AC (a message in which the message sending device recorded in the message is the STA). After receiving the uplink message corresponding to the STA, the AC can update the historical forwarding table entry in the forwarding table of the AC (the mapping relationship between the port connected to the first AP on the AC and the STA identifier of the STA) according to the STA identifier to the current forwarding table entry (the mapping relationship between the port connected to the second AP on the AC and the STA identifier of the STA). Then, based on the current forwarding table entry, the AC can transmit data to the STA through the second AP.
[0072] In this way, after the STA roams from the first AP to the second AP, the AC can promptly update the forwarding table entry corresponding to the STA and transmit data to the STA based on the updated forwarding table entry, thereby avoiding STA device data packet loss due to failure to promptly update the forwarding table entry corresponding to the STA.
[0073] For example, Figure 3 According to some embodiments of the present application, a process diagram of a communication method is shown.
[0074] refer to Figure 3 , corresponding to Figure 1 In the scenario shown, after detecting that the wireless network between STA 30 and AP 21 is disconnected, AP 21 (as the first AP) can send forwarding table entry deletion information to AC 10. After receiving the forwarding table entry deletion information, AC 10 can delete the forwarding table entry corresponding to STA 30 in the forwarding table (for example, the aforementioned forwarding table entry "MAC1→eth.3"). Then, after STA 30 is connected to AP 22 (as the second AP), AC can create a new forwarding table entry corresponding to STA 30 (for example, create the aforementioned forwarding table entry "MAC1→eth.2"), and transmit data to STA 30 through AP 22 based on the newly created forwarding table entry.
[0075] It should be understood that after the forwarding table entry corresponding to STA 30 is deleted from the forwarding table of AC 10, AC 10 cannot query the Ethernet interface corresponding to STA 30 from the forwarding table. AC 10 can cache the data to be transmitted to STA 30, and after creating a new forwarding table entry for STA 30, transmit the cached data to STA 30 through AP 22 based on the newly created forwarding table entry. In this way, the packet loss of data sent by AC 10 to STA 30 can be reduced, avoiding network freeze of STA 30.
[0076] Continue to refer Figure 3 , corresponding to Figure 1 In the scenario shown, after detecting the wireless network connection between STA 30 and AP 22, AP 22 can send an uplink message corresponding to STA 30 to AC 10 (a message in which the message sending device is STA 30) (for example, the address in the source address field in the uplink message (the MAC address of the device sending the message) is the MAC address of STA 30). After receiving the uplink message corresponding to STA 30, AC 10 can update the forwarding port (for example, the aforementioned Ethernet interface eth.3) in the forwarding table entry corresponding to STA 30 in the forwarding table to the port connected to AP 22 on AC 10 (for example, the aforementioned Ethernet interface eth.2), and transmit data to STA 30 through AP 22 based on the updated forwarding table entry.
[0077] Based on the above method, AC 10 can update the forwarding table of STA 30 in time when the AP connected to STA 30 changes, and transmit data to STA 30 based on the updated forwarding table. This is beneficial to reduce the packet loss of data sent by AC 10 to STA 30 and avoid network freezes.
[0078] For example, Figure 4A According to some embodiments of the present application, a timing diagram of AC 10 forwarding data to STA 30 after updating the forwarding table based on the forwarding table deletion message sent by AP 21 is shown; Figure 4B According to some embodiments of the present application, a timing diagram of AC 10 forwarding data to STA 30 after updating a forwarding table entry based on an uplink message sent by AP 22 is shown.
[0079] refer to Figure 4A , corresponding to Figure 3 In the illustrated situation, the data that the Internet or NAS 40 needs to transmit to STA 30 includes data D1, data D2 (including data D21 and data D22), data D3, and data D4, and the MAC address of STA 30 is MAC1.
[0080] Before time T1, STA 30 is connected to AP 21, and the forwarding entry corresponding to STA 30 in the forwarding table of AC 10 is "MAC1→eth.3". AC 10 can transmit data D1 to AP 21 connected to Ethernet interface eth.3 based on the forwarding entry "MAC1→eth.3", and then AP 21 transmits it to STA 30 through the wireless network.
[0081] At time T1, AP 21 detects that the wireless network connection between STA 30 and AP 21 is disconnected, and sends forwarding entry deletion information to AC 10. In response to the forwarding entry deletion information, AC 10 deletes the forwarding entry "MAC1→eth.3" corresponding to STA 30 in the forwarding table of AC 10 at time T4. STA 30 connects to AP 22 through the wireless network at time T2, and sends an uplink message to AC10 at time T3.
[0082] During the period from time T1 to time T4, the forwarding table entry corresponding to STA 30 in AC 10 is not updated, and AC 10 still transmits data D21 to AP 21 connected to Ethernet interface eth.3 based on the forwarding table entry "MAC1→eth.3".
[0083] During the period from time T4 to time T2, the forwarding entry "MAC1→eth.3" has been deleted, and AC 10 cannot find the forwarding entry corresponding to STA 30 in the forwarding table, and caches data D22.
[0084] During the period from T2 to T3, STA 30 has connected to AP 22 but STA 30 has not sent an uplink message to AC 10, and AC 10 will not update the forwarding entry corresponding to STA 30. During the period from T2 to T3, AC 10 still cannot query the forwarding entry corresponding to STA 30 in the forwarding table and caches data D3.
[0085] At time T3, STA 30 sends an uplink message to AC 10 through AP 22. After receiving the uplink message sent by STA 30, AC 10 can create a forwarding entry "MAC1→eth.2" corresponding to STA 30 in the forwarding table of AC 10. After time T3, AC 10 can transmit the cached data D22, cached data D3, and data D4 to AP 22 connected to Ethernet interface eth.2 based on the forwarding entry "MAC1→eth.2", and then AP 22 transmits it to STA 30 through the wireless network.
[0086] Based on the above process, when STA 30 roams from AP 21 to AP 22, only data D21 is lost. Figure 2In the situation shown, data D22 and data D3 are not lost, and the packet loss of data sent by AC 10 to STA 30 is reduced, thereby avoiding communication jam of STA 30.
[0087] For example, refer to Figure 4B , corresponding to Figure 3 In the illustrated situation, the data that the Internet or NAS 40 needs to transmit to STA 30 includes data D1, data D2, data D3, and data D4, and the MAC address of STA 30 is MAC1.
[0088] Before time T1, STA 30 is connected to AP 21, and the forwarding entry corresponding to STA 30 in the forwarding table of AC 10 is "MAC1→eth.3". AC 10 can transmit data D1 to AP 21 connected to Ethernet interface eth.3 based on the forwarding entry "MAC1→eth.3", and then AP 21 transmits it to STA 30 through the wireless network.
[0089] At time T1, STA 30 disconnects from the wireless network connection with AP 21, and connects to AP 22 via the wireless network at time T2.
[0090] During the period from T1 to T2, AC 10 will not update the forwarding table entry corresponding to STA 30, and AC 10 will still transmit data D2 to AP 21 connected to Ethernet interface eth.3 based on the forwarding table entry "MAC1→eth.3". During the period from T1 to T2, STA 30 is not connected to AP 21, and data D2 is lost.
[0091] At time T2, AP 22 detects that STA 30 is connected to AP 22 via a wireless network, and sends an uplink message corresponding to STA 30 to AC 10. In response to the uplink message corresponding to STA 30, AC 10 updates the forwarding entry corresponding to STA 30 from "MAC1→eth.3" to "MAC1→eth.2".
[0092] During the period from time T2 to time T3, AC 10 may transmit data D3 to AP 22 connected to Ethernet interface eth.2 based on the forwarding table entry “MAC1→eth.2”, and AP 22 may transmit data D3 to STA 30 through the wireless network.
[0093] After time T3, since the forwarding table entry corresponding to STA 30 has been updated to "MAC1→eth.2", AC 10 can transmit data D4 to AP 22 connected to Ethernet interface eth.2 based on the forwarding table entry "MAC1→eth.2", and then AP 22 transmits it to STA 30 through the wireless network.
[0094] Based on the above process, when STA 30 roams from AP 21 to AP 22, only data D2 is lost. Figure 2 In the situation shown, data D3 is not lost, which reduces the amount of packet loss of data sent by AC 10 to STA 30 and avoids communication jams of STA 30.
[0095] It should be understood that the AP can be any device used to access the STA to the AC's network, including but not limited to wireless routers, customer premises equipment (CPE), mobile phones, tablet computers, laptop computers, desktop computers, wearable devices, etc.
[0096] It should be understood that the AC can be any device used to manage APs and STAs connected to the AC, including but not limited to routers, CPEs, car computers, mobile phones, tablet computers, laptop computers, desktop computers, etc.
[0097] In some embodiments, the AC can be used to aggregate data from different APs and access the Internet or other devices, to manage AP configuration, and to authenticate, manage, and control broadband access, security, and other functions of STAs.
[0098] It should be understood that a STA can be any device that can connect to an AP via a wireless network, including but not limited to laptops, desktop computers, mobile phones, tablets, smart home devices (such as smart TVs, smart lamps, smart curtains, smart cameras, etc.), IoT devices (such as sensors), wearable devices (such as smart watches, smart bracelets, etc.), etc.
[0099] It should be understood that the connection between AP 21, AP 22 and AC 10 through the Ethernet interface provided in the above embodiments is only an example. In other embodiments, AP 21, AP 22 and AC 10 may also be connected in other ways, which are not limited here.
[0100] refer to Figure 5A , AP 21 and AP 22 may be connected to AC 10 via a power line communication (PLC) network.
[0101] refer to Figure 5B , AP 21 and AP 22 can be connected to AC 10 via a wireless network.
[0102] refer to Figure 5C, AP 21 and AP 22 may be connected to AC 10 via a fiber to the remote (FTTR) network.
[0103] It should be understood that in other embodiments, AP 21 and AP 22 may be connected to AC 10 in different ways, which are not limited herein. Figure 5D , AP 21 can be connected to AC 10 through a first method, and AP 22 can be connected to AC 10 through a second method, wherein the first method and the second method can be the same or different. For example, the first method and the second method can be any one of the aforementioned Ethernet interface, PLC network, FTTR network, wireless network, etc.
[0104] The following introduces the technical solution of this application in combination with the software architecture in AC and AP.
[0105] To facilitate understanding, first combine Figure 3 The scenario shown introduces the software architecture in AC and AP.
[0106] Figure 6 According to some embodiments of the present application, a schematic diagram of software architecture in an AC and an AP is shown.
[0107] like Figure 6 As shown, the software architecture of the AP may include a site connection status detection module and a forwarding entry update information sending module; the software architecture of the AC includes a forwarding entry processing module, a roaming detection module, and a kernel.
[0108] The station connection status detection module is used to detect the status of the wireless communication connection between the STA and the AP, and transmit the detected status of the wireless communication connection to the forwarding entry update information sending module.
[0109] In some embodiments, the station connection status detection module can detect the status of the wireless communication connection with the AP by listening to a message defined by the communication protocol indicating that the STA is connected to the AP through the wireless network or a message indicating that the STA disconnects the wireless communication connection with the AP. Fig. 7A The station connection status detection module can determine that the wireless communication connection between a STA and the AP is disconnected when the NL80211_CMD_DEL_STATION message for a certain STA is intercepted. The station connection status detection module can determine that the STA is connected to the AP through the wireless network when the NL80211_CMD_NEW_STATION message for a certain STA is intercepted.
[0110] The forwarding entry update information sending module is used to send the forwarding entry update information to the AC according to the detection result of the site connection status detection module.
[0111] In some embodiments, when the detection result of the station connection status detection module indicates that the wireless communication connection between a certain STA and the AP is disconnected, the forwarding entry update information sending module can send forwarding entry deletion information to the AC. Figure 7B The forwarding table entry update information sending module can send forwarding table entry deletion information to delete the forwarding table entry corresponding to the STA to the AC through the management channel. The forwarding table entry deletion information may include the identifier of the STA (such as a MAC address).
[0112] It should be understood that the management channel (also called the control channel) is a communication channel between the AC and the AP for transmitting control information, or a message (or frame) for transmitting control information defined by the communication protocol between the AC and the AP. For example, in some implementations, when the AC and the AP communicate through the wireless access point control (CAPWAP) protocol, the management channel can be a communication channel with a port number of 5247 defined by the CAPWAP protocol. For another example, when the AC and the AP communicate through a wireless network, the management channel can be a management frame defined by the 802.11 protocol.
[0113] In other embodiments, the forwarding entry update information sending module may also send the forwarding entry deletion information to the AC in other ways (such as control frames), which is not limited here.
[0114] In some embodiments, when the detection result of the station connection status detection module indicates that a certain STA is connected to the AP through the wireless network, the forwarding entry update information sending module can send an uplink message corresponding to the STA to the AC (a message in which the message sending device recorded in the message is the STA). Figure 7B The forwarding table update information sending module can send the uplink message corresponding to the STA to the AC by broadcasting (for example, broadcasting address resolution protocol (ARP) message), multicasting (for example, multicasting spanning tree protocol (STP) message), unicasting (for example, sending Internet control message protocol (ICMP) message with AC as the destination device), etc.
[0115] In some embodiments, the forwarding entry update information sending module may send an uplink message of the corresponding STA to the AC through a data channel.
[0116] It should be understood that the data channel is a channel for transmitting data between the AC and the AP, or a message (or frame) for transmitting data defined by the communication protocol between the AC and the AP. For example, in some embodiments, when the AC and the AP communicate through the CAPWAP protocol, the management channel can be a communication channel with a port number of 5246 defined by the CAPWAP protocol. For another example, when the AC and the AP communicate through a wireless network, the data channel can be a data frame (or message) defined by the 802.11 protocol.
[0117] In other embodiments, the forwarding entry update information sending module may also send the uplink message corresponding to the STA to the AC in other ways, which are not limited here.
[0118] The roaming detection module is used to detect whether the STA connected to the AP is connected to the AP in a roaming manner, and send the detection result to the forwarding entry processing module.
[0119] In some embodiments, the roaming detection module can cache the mapping relationship between the STA connected to the AC and the STA's forwarding port within a preset time period. After receiving an uplink message from a STA, the roaming detection module can determine that the STA is connected to the AP by roaming if the port to which the AP currently connected to the STA on the AC is connected is different from the forwarding port when the STA was last connected.
[0120] For example, refer to Figure 7C The roaming detection module can cache the mapping relationship between the MAC address of the STA that has been historically connected to the AC within a preset time and the STA's forwarding port. After receiving the uplink message corresponding to the STA, the roaming detection module can determine the forwarding port of the STA's last connection from the cached mapping relationship based on the MAC address of the STA, and determine that the STA is connected to the AP through roaming when the port to which the STA is currently connected on the AC is different from the forwarding port of the last connection.
[0121] The forwarding entry processing module is used to delete or update the forwarding entry corresponding to the STA in the forwarding table according to the forwarding entry deletion information sent by the forwarding entry update information sending module or the detection result of the roaming detection module.
[0122] In some embodiments, reference Fig.7DWhen the forwarding entry processing module receives forwarding entry deletion information for a certain STA (for example, when the AP receives forwarding entry deletion information sent by the NL80211_CMD_DEL_STATION message corresponding to the STA), it can delete the forwarding entry corresponding to the STA in the AC's forwarding table.
[0123] In some embodiments, reference Fig.7D When the roaming detection module detects that a STA is connected to the AP via roaming, the forwarding entry processing module can update the forwarding port in the forwarding entry corresponding to the STA in the AC's forwarding table to the port to which the AP to which the STA is currently connected is connected.
[0124] The kernel is used to implement AC related functions, such as aggregating data from different APs and accessing the Internet, AP configuration management, wireless user authentication, management, and bandwidth, access, switching, security and other functions.
[0125] In some embodiments, the kernel can be used to send an ARP request message to the STA according to the rules defined by the communication protocol (for example, when there is data that needs to be forwarded to the STA and there is no forwarding entry for the STA in the forwarding table), and create a new forwarding entry corresponding to the STA based on the received ARP reply message. In some embodiments, the kernel can be used to cache the data that needs to be forwarded to the STA when there is data that needs to be forwarded to the STA in the AC and there is no forwarding entry for the STA in the forwarding table, and hand over the cached data to the STA after the STA reconnects to the AC.
[0126] In some embodiments, the kernel may be configured to update a forwarding table entry corresponding to the STA according to a received uplink message corresponding to the STA.
[0127] It should be understood that Figure 6 The software architecture shown is only an example. In other embodiments, the software architecture of the AC and AP may include more or fewer modules, and some modules may be merged or split, which is not limited here.
[0128] It should be understood that in some embodiments, only the AC and AP may be arranged Figure 6 Some modules in the software architecture shown are used to implement the method provided in the embodiment of the present application.
[0129] Next, combine Figure 6 The software architecture shown and Figure 3 The scenario shown introduces the technical solution of this application.
[0130] First, a technical solution is introduced in which the AP connected by the STA before roaming triggers the AC to update the forwarding table of the STA.
[0131] For example, Fig. 8A According to some embodiments of the present application, a schematic diagram of an implementation process of a communication method is shown.
[0132] refer to Fig. 8A The AC 10 is provided with a forwarding table entry processing module 101 and a core 103 , and the AP 21 is provided with a site connection status detection module 211 and a forwarding table entry update information sending module 212 .
[0133] STA 30 first connects to AP 21 and performs data transmission through AP 21 and AC 10 (for example, accesses the Internet through AC 10 or accesses other devices connected to AC 10). If the network quality of AP 22 is higher than that of AP 21, STA 30 can disconnect the wireless communication connection with AP 21 and roam to AP 22.
[0134] After detecting that the wireless communication connection between STA 30 and AP 21 is disconnected, the station connection status detection module 211 may send the detection result to the forwarding entry update information sending module 212. The forwarding entry update information sending module 212 may send forwarding entry deletion information to the forwarding entry processing module 101 of AC 10 in response to the detection result. After receiving the forwarding entry deletion information, the forwarding entry processing module 101 of AC 10 may delete the forwarding entry "MAC1→eth.3" corresponding to STA 30 in the forwarding table of AC 10. After deleting the forwarding entry "MAC1→eth.3" corresponding to STA 30, AC 10 may cache the data transmitted to STA 30 and send an ARP request message to the IP address corresponding to STA 30 through the kernel 103 to obtain the forwarding port of STA 30.
[0135] After STA 30 roams to AP 22, STA 30 can send an ARP reply message to AC 10 in response to the ARP request message sent by the kernel 103. After receiving the ARP reply message, the forwarding entry processing module 101 of AC 10 can create a new forwarding entry "MAC1→eth.2" corresponding to STA 30 in the forwarding table of AC 10. Then, AC 10 can transmit the cached data corresponding to STA 30 to STA 30 through AP 22 based on the newly created forwarding entry "MAC1→eth.2".
[0136] In this way, AC 10 can update the forwarding table entry corresponding to STA 30 in time after the wireless communication connection between STA 30 and AP 21 is disconnected, which is beneficial to reduce the packet loss of data sent by AC 10 to STA 30 and avoid network freeze.
[0137] Combination Fig. 8A The process shown, Figure 8B According to some embodiments of the present application, a schematic diagram of an interaction process of a communication method is shown. Figure 8B As shown, the communication method may include the following steps:
[0138] S801 : STA 30 and AC 10 perform data transmission through AP 21 .
[0139] The STA 30 is connected to the AP 21 via a wireless network, and performs data transmission with the AC 10 based on the AP 21 .
[0140] Exemplarily, STA 30 can access a network (such as the Internet, etc.) to which AC 10 is connected, or access other devices connected to AC 10 through AP 21. For example, STA 30 can download data from other devices (such as a server) on the Internet or upload data to other devices. For another example, STA 30 can access a NAS connected to AC 10, such as the aforementioned NAS 40, to download data from the NAS or upload data to the NAS.
[0141] It should be understood that during data transmission between STA 30 and AC 10 through AP 21, the forwarding entry corresponding to STA 30 in the forwarding table of AC 10 is the forwarding entry "MAC1→eth.3", and AC 10 can transmit data to STA 30 through AP 21 connected to Ethernet interface eth.3.
[0142] S802 : The AP 21 detects that the wireless communication connection with the STA 30 is disconnected, and sends forwarding entry deletion information to the AC 10 .
[0143] Exemplarily, AP 21 may monitor the NL80211_CMD_DEL_STATION message based on the aforementioned station connection state detection module 211 , and send forwarding entry deletion information to AC 10 when the NL80211_CMD_DEL_STATION message corresponding to STA 30 is monitored.
[0144] In some embodiments, the forwarding entry deletion information may include the STA identification of STA 30, such as at least one of the MAC address, name, and device serial number of STA 30.
[0145] In some embodiments, the AP 21 may embed the forwarding table entry deletion information into a management frame, and send the forwarding table entry deletion information to the AC 10 through the management frame.
[0146] In some embodiments, the AP 21 may detect that the wireless communication connection with the STA 30 is disconnected based on the aforementioned station connection status detection module 211 , and send forwarding entry deletion information to the AC 10 through the forwarding entry update information sending module 212 .
[0147] S803: AC 10 deletes the forwarding entry of STA 30.
[0148] In response to the forwarding entry deletion information, the AC 10 deletes the forwarding entry corresponding to the STA 30 in the forwarding table of the AC 10 based on the STA identification of the STA 30 .
[0149] In some embodiments, AC 10 may delete the forwarding entry corresponding to STA 30 in the forwarding table of AC 10 through the aforementioned forwarding entry processing module 101 .
[0150] In some embodiments, the AC 10 may also delete information corresponding to the STA 30 in the neighbor information set and the hard acceleration information set when the neighbor information set and the hard acceleration information set exist in the AC 10. It should be understood that the neighbor information set is an information set in the AC 10 for storing a list of routers having a neighbor relationship with the AC 10 that has bidirectional communication. In some embodiments, the neighbor information set may also be referred to as a neighbor table.
[0151] It should be understood that the hardware acceleration information set is used in the AC 10 to store information (eg, MAC address, IP address, etc.) of devices connected to the AC 10 (eg, AP, AC, etc.) that support hardware acceleration.
[0152] S804: AC 10 caches the forwarding data corresponding to STA 30 and sends an ARP request message.
[0153] After deleting the forwarding entry of STA30 in the forwarding table of AC 10 , AC 10 may cache the forwarding data corresponding to STA 30 and send an ARP request message for STA30 .
[0154] In some embodiments, the IP address assigned by AC 10 to the STA connected to AP 21 and AP 22 has a lease period. That is, when the time interval between two connections of a STA to AC 10 through AP 21 or AP 22 is less than the lease period, the IP address assigned by AC 10 to the STA is the same. Based on this, in some embodiments, AC 10 may send an ARP request message for the IP address of STA 30 before disconnecting the wireless communication connection with AP 21.
[0155] In some embodiments, the ARP request message is a message defined by ARP, and the ARP request message may include the IP address of the device that needs to respond to the ARP request message (hereinafter referred to as the destination IP address). When AC 10 receives data that needs to be forwarded to a certain STA, if there is no forwarding table entry corresponding to the STA in the forwarding table, AC 10 can send an ARP request message for the IP address of the STA.
[0156] In some embodiments, if the AC 10 does not receive an ARP reply message corresponding to the ARP request message within a predefined time period, the ARP request message is discarded.
[0157] In some embodiments, AC 10 may send an ARP request message through kernel 103 .
[0158] S805: STA 30 establishes a wireless communication connection with AP 22.
[0159] After disconnecting the wireless communication connection with AP 21 , STA 30 may establish a wireless communication connection with AP 22 to roam to AP 22 .
[0160] In some embodiments, step S805 may be executed before step S803, or may be executed in parallel with step S803 and step S804, which is not limited here.
[0161] S806 : STA 30 sends an ARP reply message to AC 10 through AP 22 .
[0162] After establishing a wireless communication connection with the AP 22 , the STA 30 may send an ARP reply message to the AC 10 through the AP 22 upon receiving the ARP request message sent by the AC 10 .
[0163] It should be understood that an ARP reply message is a message defined by ARP. When a device receives an ARP request message, if its own IP address is the same as the destination IP address in the ARP request message, it can send an ARP reply message to the device that sent the ARP request message, and the ARP reply message can include the MAC address of the device.
[0164] S807: AC 10 creates a forwarding entry corresponding to STA 30 based on the ARP reply message.
[0165] After receiving the ARP reply message, AC 10 may create a new forwarding table entry corresponding to STA 30 based on the ARP reply message. The forwarding port of STA 30 in the newly created forwarding table entry is the port to which AP 22 on AC 10 is connected (eg, Ethernet interface eth.2).
[0166] For example, AC 10 may obtain the MAC address (MAC1) of STA 30 in the ARP reply message, and establish a forwarding table entry “MAC1→eth.2” corresponding to STA 30 .
[0167] In some embodiments, the AC 10 may create a new forwarding table entry corresponding to the STA 30 based on the ARP reply message through the kernel 103 .
[0168] S808: AC 10 transmits data to STA 30 through AP 22 based on the newly created forwarding entry.
[0169] After AC 10 creates a new forwarding table entry corresponding to STA 30, it can transmit data to STA 30 through AP 22 based on the newly created forwarding table entry.
[0170] For example, AC 10 may forward the cached data corresponding to STA 30 and other data to be transmitted to STA 30 to AP 22 connected to Ethernet interface eth.2, and then AP 22 transmits the data to STA 30 through the wireless network.
[0171] Based on the above method, when STA 30 roams from AP 21 to AP 22, AC 10 can delete the previously stored forwarding table entry corresponding to STA 30 in time based on the forwarding table entry deletion message sent by AP 21, and create a new forwarding table entry corresponding to STA 30, so that AC 10 can send data corresponding to STA 30 to AP 22 in time. In this way, it is helpful to reduce the packet loss of data sent by AC 10 to STA 30 and avoid STA 30 network freeze.
[0172] exist Fig. 8A and Figure 8B In the illustrated embodiment, AC 10 creates a forwarding entry for STA 30 based on the ARP request message and the ARP reply message. In other embodiments, AC 10 may not send an ARP request message, but create a forwarding entry for STA 30 after receiving an uplink message sent by STA 30.
[0173] For example, Fig. 9 According to some embodiments of the present application, a schematic diagram of an interaction process of another communication method is shown. Fig. 9 As shown, the method includes steps S901 to S908, wherein steps S901 to S903 can refer to the aforementioned steps S801 to S803, and are not described in detail here. The following introduces steps S904 to S908 which are different from the embodiment shown in FIG8 :
[0174] S904 : The AC 10 buffers the forwarding data corresponding to the STA 30 .
[0175] After deleting the forwarding entry of STA 30 in the forwarding table of AC 10 , AC 10 may cache the forwarding data corresponding to STA 30 .
[0176] S905: STA 30 establishes a wireless communication connection with AP 22.
[0177] After disconnecting the wireless communication connection with AP 21 , STA 30 may establish a wireless communication connection with AP 22 to roam to AP 22 .
[0178] In some embodiments, step S905 may be executed before step S903, or may be executed in parallel with step S903 and step S904, which is not limited here.
[0179] S906: STA 30 sends an uplink message to AC 10 through AP 22.
[0180] After STA 30 establishes a wireless communication connection with AP 22, it sends an uplink message to AC 10 through AP 22 according to the time point for sending uplink messages set by the application program currently accessing the network of STA 30 (for example, sending an uplink message once every certain time interval).
[0181] In some embodiments, the address recorded in the source address field in the uplink message (the address of the device sending the message) may be the MAC address of the STA 30 .
[0182] S907: AC 10 creates a forwarding entry corresponding to STA 30 based on the uplink message.
[0183] After receiving the uplink message, AC 10 may create a new forwarding entry corresponding to STA 30 in the forwarding table of AC 10 based on the uplink message.
[0184] For example, AC 10 may obtain the address recorded in the source address field of the uplink message (MAC address of STA 30: MAC1), and create a new forwarding table entry “MAC1→eth.2” corresponding to STA 30.
[0185] S908: AC 10 transmits data to STA 30 through AP 22 based on the newly created forwarding entry.
[0186] After AC 10 creates a new forwarding table entry corresponding to STA 30, it can transmit data to STA 30 through AP 22 based on the newly created forwarding table entry.
[0187] For example, AC 10 may forward previously cached data corresponding to STA 30 and other data to be transmitted to STA 30 to AP 22 connected to Ethernet interface eth.2, and then AP 22 transmits the data to STA 30 through the wireless network.
[0188] Based on the above method, AC 10 can delete the previously stored forwarding table entry corresponding to STA30 in time when STA30 roams from AP 21 to AP 22, and create a new forwarding table entry corresponding to STA30, so that AC 10 can send data corresponding to STA30 to AP22 in time. In this way, it is helpful to reduce the packet loss of data sent by AC 10 to STA30 and avoid STA30 network freeze.
[0189] The following describes a technical solution in which the AP to which the STA connects after roaming triggers the AC to update the forwarding table entries of the STA.
[0190] For example, Fig. 10A According to some embodiments of the present application, a schematic diagram of an implementation process of another communication method is shown.
[0191] refer to Fig. 10A The AC 10 is provided with a forwarding entry processing module 101 and a roaming detection module 102 , and the AP 22 is provided with a site connection status detection module 221 and a forwarding entry update information sending module 222 .
[0192] STA 30 first connects to AP 21 and performs data transmission through AP 21 and AC 10 (for example, accesses the Internet through AC 10 or accesses other devices connected to AC 10). If the network quality of AP 22 is higher than that of AP 21, STA 30 can disconnect the wireless communication connection with AP 21 and roam to AP 22.
[0193] After detecting that a wireless communication connection is established between STA 30 and AP 22, the station connection state detection module 221 may send the detection result to the forwarding entry update information sending module 222. In response to the detection result, the forwarding entry update information sending module 222 may send an uplink message corresponding to STA 30 to the roaming detection module 102 of AC 10. After receiving the uplink message corresponding to STA 30, the roaming detection module 102 of AC 10 may determine that STA 30 is connected to AP 22 by roaming if the current forwarding port of STA 30 (Ethernet interface eth.2 connected to AP 22) is different from the forwarding port when STA 30 was last connected to AC 10 (Ethernet interface eth.3 connected to AP 21). Then, the roaming detection module 102 may send a message of STA 30 roaming to the forwarding entry processing module 101 (used to indicate that STA 30 is connected to AP 22 by roaming). The forwarding entry processing module 101 can update the forwarding entry of STA30 in the forwarding table from "MAC1→eth.3" to "MAC1→eth.2" in response to the message of STA30 roaming. Secondly, AC10 can transmit the data corresponding to STA30 to STA30 through AP22 based on the updated forwarding entry "MAC1→eth.2".
[0194] In this way, AC 10 can update the forwarding table entry corresponding to STA 30 in time after the wireless communication connection between STA 30 and AP 21 is disconnected, which is beneficial to reduce the packet loss of data sent by AC 10 to STA 30 and avoid network freeze.
[0195] Combination Fig. 10A The process shown, Fig. 10B According to some embodiments of the present application, a schematic diagram of an interaction process of another communication method is shown. Fig. 10B As shown, the communication method may include the following steps:
[0196] S1001 : STA 30 and AC 10 perform data transmission through AP 21 .
[0197] STA 30 is connected to AP 21 via a wireless network, and performs data transmission with AC 10 based on AP 21. For details, please refer to the aforementioned step S801, which will not be described in detail here.
[0198] S1002: STA 30 disconnects the wireless communication connection with AP 21.
[0199] When STA 30 determines to roam to another AP (eg, AP 22 ) (eg, when the network quality provided by AP 22 is higher than the network quality provided by AP 21 ), STA 30 may disconnect the wireless communication connection with AP 21 .
[0200] S1003 : STA 30 establishes a wireless communication connection with AP 22 .
[0201] After STA 30 disconnects the wireless communication connection with AP 21 , it can establish a wireless communication connection with AP 22 .
[0202] S1004 : In response to STA 30 establishing a wireless communication connection with AP 22 , AP 22 sends an uplink message corresponding to STA 30 to AC 10 .
[0203] In response to the STA 30 establishing a wireless communication connection with the AP 22 , the AP 22 may send an uplink message corresponding to the STA 30 to the AC 10 .
[0204] In some embodiments, the message sending device recorded in the uplink message corresponding to STA 30 is STA 30. For example, the address recorded in the source address field in the uplink message corresponding to STA 30 may be the MAC address of STA 30: MAC1.
[0205] In some embodiments, the uplink message corresponding to STA 30 may be any one of the following messages: an ARP message, an STP message, and an ICMP message with AC 10 as the destination device.
[0206] In some embodiments, AP 22 may send an uplink message corresponding to STA 30 to AC 10 through a data channel between AP 22 and AC 10 .
[0207] In some embodiments, when the station connection state detection module 221 detects that the STA 30 has established a wireless communication connection with the AP 22 , the AP 22 may send an uplink message corresponding to the STA 30 to the AC 10 through the aforementioned forwarding entry update information sending module 222 .
[0208] S1005 : AC 10 updates the forwarding table entry corresponding to STA 30 based on the uplink message corresponding to STA 30 .
[0209] After receiving the uplink message corresponding to STA 30, AC 10 can query the forwarding table entry corresponding to STA 30 from AC 10 based on the STA identifier of the sending device (STA 30) of the uplink message recorded in the uplink message corresponding to STA 30, and update the forwarding port in the queried forwarding table entry to the current forwarding port of STA 30 (Ethernet interface eth.2 to which AP 22 is connected).
[0210] For example, in some embodiments, the address recorded in the source address field of the uplink message is MAC1, and AC 10 can query the corresponding STA 30 forwarding entry "MAC1→eth.3" based on MAC1 and update it to "MAC1→eth.2".
[0211] In some embodiments, AC 10 may update the forwarding table entry of STA 30 in the forwarding table from "MAC1→eth.3" to the forwarding table entry "MAC1→eth.2" through the forwarding table entry processing module 101 when the roaming detection module 102 determines that the current forwarding port of STA 30 (Ethernet interface eth.2 connected to AP 22) is different from the forwarding port when STA 30 was last connected to AC 10 (Ethernet interface eth.3 connected to AP 21).
[0212] S1006: AC 10 transmits data to STA 30 through AP 22 based on the updated forwarding table entry.
[0213] After updating the forwarding table entry corresponding to the STA 30, the AC 10 may transmit data to the STA 30 through the AP 22 based on the updated forwarding table entry.
[0214] For example, AC 10 may transmit data to be transmitted to STA 30 to AP 22 via Ethernet interface eth.2, and then AP 22 transmits the data to STA 30 via the wireless network.
[0215] Based on the above method, AC 10 can timely update the forwarding table entry corresponding to STA 30 based on the uplink message corresponding to STA 30 sent by AP 22 during the process of STA 30 roaming from AP 21 to AP 22, so that AC 10 can timely send data corresponding to STA 30 to AP 22. In this way, it is helpful to reduce the packet loss of data sent by AC 10 to STA 30 and avoid network freeze of STA 30.
[0216] The following describes a technical solution in which the AP connected before roaming and the AP connected after roaming jointly trigger the AC to update the forwarding table entries of the STA.
[0217] Fig.11 According to some embodiments of the present application, a schematic diagram of an interaction process of another communication method is shown. Fig.11 As shown, the interaction process includes the following steps:
[0218] S1101 : STA 30 and AC 10 perform data transmission through AP 21 .
[0219] STA 30 is connected to AP 21 via a wireless network, and performs data transmission with AC 10 based on AP 21. For details, please refer to the aforementioned S801 and no further description will be given here.
[0220] S1102 : AP 21 detects that the wireless communication connection with STA 30 is disconnected, and sends forwarding entry deletion information to AC 10 .
[0221] Exemplarily, AP 21 may monitor the NL80211_CMD_DEL_STATION message based on the aforementioned station connection state detection module 211 , and send forwarding entry deletion information to AC 10 when the NL80211_CMD_DEL_STATION message corresponding to STA 30 is monitored.
[0222] S1103 : AC 10 deletes the forwarding entry of STA 30 .
[0223] In response to the forwarding entry deletion information, AC 10 deletes the forwarding entry corresponding to STA 30 in the forwarding table of AC 10 based on the STA identifier of STA 30. For details, please refer to the aforementioned step S803, which will not be described in detail here.
[0224] S1104 : AC 10 buffers the forwarding data corresponding to STA 30 .
[0225] After deleting the forwarding entry of STA 30 in the forwarding table of AC 10 , AC 10 may cache the forwarding data corresponding to STA 30 .
[0226] S1105 : STA 30 establishes a wireless communication connection with AP 22 .
[0227] In some embodiments, step S1105 may be executed before step S1103, or may be executed in parallel with step S1103 and step S1104, which is not limited here.
[0228] S1106 : In response to STA 30 establishing a wireless communication connection with AP 22 , AP 22 sends an uplink message corresponding to STA 30 to AC 10 .
[0229] In response to STA 30 establishing a wireless communication connection with AP 22, AP 22 may send an uplink message corresponding to STA 30 to AC 10. For details, please refer to the aforementioned step S1004, which will not be described in detail here.
[0230] S1107 : AC 10 creates a new forwarding table entry corresponding to STA 30 based on the uplink message corresponding to STA 30 .
[0231] After receiving the uplink message corresponding to STA30, AC10 can create a new forwarding table entry corresponding to STA30 (such as the aforementioned forwarding table entry "MAC1→eth.2") based on the STA identifier of the sending device (STA30) of the uplink message recorded in the uplink message corresponding to STA30.
[0232] S1108: AC 10 transmits data to STA 30 through AP 22 based on the newly created forwarding entry.
[0233] After creating a new forwarding table entry corresponding to STA30, AC 10 may transmit data to STA30 through AP 22 based on the newly created forwarding table entry.
[0234] Based on the above method, AC 10 can timely update the forwarding table entry corresponding to STA 30 based on the forwarding entry deletion information sent by AP 21 and the uplink message corresponding to STA 30 sent by AP 22 during the process of STA 30 roaming from AP 21 to AP 22, so that AC 10 can timely send data corresponding to STA 30 to AP 22. In this way, it is helpful to reduce the packet loss of data sent by AC 10 to STA 30 and avoid network freeze of STA 30.
[0235] The embodiment of the present application further provides a device 100. One or more of the AP, AC, and STA in the embodiment of the present application may adopt the structure of the device 100.
[0236] Fig.12 According to some embodiments of the present application, a schematic structural diagram of a device 100 is shown.
[0237] like Fig.12 As shown, device 100 includes a processor 110 , a memory 120 , a communication interface 130 , and a bus 140 .
[0238] The processor 110 may include one or more processing units, for example, the processor 110 may include a central processing unit (CPU), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a microcontroller unit (MCU), a video codec, a digital signal processor (DSP), a baseband processor, a neural network processor (NPU), a field programmable gate array (FPGA), etc. In some embodiments, different processing units may be independent devices or integrated into one or more processors.
[0239] In some embodiments, the processor 110 may be configured to execute one or more programs to implement the methods provided in the aforementioned embodiments.
[0240] For example, when the device 100 is an AC, the processor 110 can be used to execute instructions for receiving forwarding table entry deletion information from other devices (such as AP) and deleting the forwarding table entry corresponding to the STA, executing instructions for receiving uplink messages from other devices corresponding to the STA and updating the forwarding table entry corresponding to the STA, executing instructions for determining whether the STA is connected to the AC via roaming, executing instructions for forwarding data to the AP to which the STA is connected based on the forwarding table entry, executing instructions for caching data forwarded to the STA, executing instructions for sending ARP request messages, etc.
[0241] For another example, when the device 100 is an AP, the processor 110 can be used to execute instructions for detecting the status of the wireless communication connection between the STA and the device 100, executing instructions for sending a forwarding table entry deletion message to the AC when the wireless communication connection between the STA and the device 100 is disconnected, executing instructions for sending an uplink message corresponding to the STA to the AC when the wireless communication connection between the STA and the device 100 is established, executing instructions for transmitting data sent by the AC to the STA through the wireless network, etc.
[0242] For another example, when the device 100 is a STA, the processor 100 can be used to execute instructions to roam to an AP when the network quality of the network provided by the AP is higher than the AP to which the device 100 is currently connected, execute instructions to send an ARP reply message to the AC in response to an ARP request message sent by the AC, etc.
[0243] The memory 120 may include one or more memories for storing data or program codes. For example, in some embodiments, the memory 120 may be used to store data sent by other devices, etc. For another example, in some embodiments, the memory 120 may be used to store instructions of the communication methods provided in the foregoing embodiments.
[0244] In some embodiments, the memory 120 may include a hard disk drive, a solid state drive, a flash memory, an optical disk, or a magneto-optical disk.
[0245] In some embodiments, memory 120 may include removable or non-removable or fixed media.
[0246] In some embodiments, memory 120 may be internal or external to device 100 .
[0247] The communication interface 130 is used to realize the communication between the device 100 and other devices. The communication interface 130 may include a wired or wireless communication interface (such as the aforementioned Ethernet interface eth.0, Ethernet interface eth.1, Ethernet interface eth.2, Ethernet interface eth.3, etc.), so that the device 100 can communicate with other devices through a wired or wireless network.
[0248] For example, when the device 100 is an AC, the device 100 can be connected to the Internet and an AP device through the communication interface 130 .
[0249] For another example, when the device 100 is an AP, the device 100 may be connected to an AC or STA device through the communication interface 130 .
[0250] For another example, when the device 100 is a STA, the device 100 may be connected to an AP through a communication interface.
[0251] The bus 140 is used to connect the processor 110 , the memory 120 , the communication interface 130 , and other possible modules or circuits.
[0252] It should be understood that Fig.12 The structure of the device 100 is only an example. In other embodiments, the device 100 may include more or fewer modules, which is not limited here.
[0253] The embodiment of the present application also provides a program product, which, when executed on a device, can enable the device to implement the communication methods provided in the aforementioned embodiments.
[0254] An embodiment of the present application also provides a readable storage medium, in which one or more programs are stored. When the one or more programs are executed by a device, the device implements the communication method provided by the aforementioned embodiments.
[0255] The embodiment of the present application further provides a system, which includes the AP 21 and AC 10 provided by the aforementioned embodiments.
[0256] The embodiment of the present application further provides a system, which includes the AP 22 and AC 10 provided by the aforementioned embodiments.
[0257] The embodiment of the present application further provides a system, which includes the AP 21, AP 22 and AC 10 provided by the aforementioned embodiments.
[0258] In the accompanying drawings, some structural or method features may be shown in a specific arrangement and / or order. However, it should be understood that such a specific arrangement and / or order may not be required. Instead, in some embodiments, these features may be arranged in a manner and / or order different from that shown in the illustrative drawings. In addition, the inclusion of structural or method features in a particular figure does not mean that such features are required in all embodiments, and in some embodiments, these features may not be included or may be combined with other features.
[0259] It should be noted that in the examples and description of this patent, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the term "includes" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "includes one" do not exclude the existence of other identical elements in the process, method, article or device including the elements.
Claims
1. A communication method, characterized in that: include: A first device is connected to a second device, wherein the second device accesses a wireless access point provided by the first device as a site, and an access controller of the first device is a third device; The first device detects that the wireless communication connection between the first device and the second device is disconnected, and sends first information to the third device, wherein the first information is used to instruct the third device to delete the forwarding entry corresponding to the second device in the forwarding table of the third device.
2. The method according to claim 1, characterized in that The first device detects that the wireless communication connection between the first device and the second device is disconnected, and sends first information to the third device, including: The first device detects that the wireless communication connection between the first device and the second device is disconnected, and sends the first information to the third device through the management channel between the first device and the third device.
3. According to the method of claim 1 or 2, the first information includes an identification of the second device, and the identification includes at least one of a media access control address, a device serial number, a device name, and an Internet Protocol address.
4. A communication method, characterized in that: include: The third device receives first information sent by the first device, where the first information is sent when the first device detects that the wireless communication connection between the first device and the second device is disconnected, wherein the third device is an access controller of the first device, and the second device accesses a wireless access point provided by the first device as a site; In response to the first information, the third device deletes a forwarding entry corresponding to the second device in the forwarding table of the third device.
5. The method according to claim 4, characterized in that The method further comprises: After deleting the forwarding table entry corresponding to the second device, the third device sends an address resolution protocol request message for the Internet Protocol address of the second device; The third device receives an address resolution protocol response message corresponding to the address resolution protocol request message sent by the second device, and establishes a first forwarding table entry corresponding to the second device in the forwarding table, wherein the forwarding port in the first forwarding table entry is a communication port between a wireless access point to which the second device is currently connected and the third device.
6. The method according to claim 4, characterized in that The method further comprises: The third device receives the first message, and the sending device recorded in the first message is the second device; The third device establishes a first forwarding table entry corresponding to the second device in the forwarding table, wherein the forwarding port in the first forwarding table entry is a communication port between a wireless network access point to which the second device is currently connected and the third device.
7. The method according to claim 5 or 6, characterized in that: The method further comprises: The third device caches the first data corresponding to the second device after deleting the forwarding table entry corresponding to the second device; The third device transmits the first data to the second device based on the first forwarding table entry.
8. A communication method, characterized in that: include: The fourth device establishes a wireless communication connection with the second device, wherein the second device accesses the wireless access point provided by the fourth device as a site, the access controller of the fourth device is the third device, and the fourth device communicates with the third device through the first port; The fourth device sends a second message to the third device, wherein the second message is used to instruct the third device to update the forwarding port in the forwarding table entry corresponding to the second device in the forwarding table of the third device to the first port, and the media access control address recorded in the source address field in the second message is the media access control address of the second device.
9. The method according to claim 8, characterized in that The second message is any one of the following messages: an Address Resolution Protocol message, a Spanning Tree Protocol message, and an Internet Control Message Protocol message with the third device as the destination device.
10. A first device, characterized in that: include: A memory for storing one or more programs; A processor, configured to execute the one or more programs so that the device implements the communication method according to any one of claims 1 to 3.
11. A third device, characterized in that: include: A memory for storing one or more programs; A processor, configured to execute the one or more programs so that the device implements the communication method according to any one of claims 4 to 7.
12. A fourth device, characterized in that: include: A memory for storing one or more programs; A processor, configured to execute the one or more programs so that the device implements the communication method described in claim 8 or 9.
13. A system, characterized in that: The system comprises the first device of claim 10 and the third device of claim 11 .
14. A readable storage medium, characterized in that: The readable storage medium includes one or more programs, and when the one or more programs are executed on the device, the device implements the communication method described in any one of claims 1 to 3, or the communication method described in any one of claims 4 to 7, or the communication method described in any one of claims 8 to 9.
Citation Information
Patent Citations
process for preparing an emulsion of paraffin in water for use in metalworking
NL80211C
Cited By
Communication methods, device, system and readable storage medium
EP4554315A1
Communication methods, device, system and readable storage medium
WO2025060588A1