This application claims priority to Chinese Patent Application No. 202111432187.9, filed on Nov. 29, 2021, which is hereby incorporated by reference in its entirety.
This application pertains to the field of wireless local area network (wireless local area network, WLAN) technologies, and in particular, relates to a terminal roaming method, an apparatus, and a wireless local area network.
A WLAN includes an access point (access point, AP) and a station (station, STA). The STA refers to a terminal with a WLAN function, for example, a smartphone or a laptop. In a moving process of a terminal in the WLAN, link quality decreases with an increase in a distance between the terminal and an associated AP or decreases due to an obstacle. In this case, the terminal can roam to an AP that provides a higher-quality link to meet service requirements on communication quality. In a roaming handover process of the terminal, service transmission is affected to some extent. Therefore, how to enable the terminal to smoothly perform roaming handover is a problem that needs to be resolved currently.
This application provides a terminal roaming method, an apparatus, and a wireless local area network, to improve smoothness of roaming handover of a terminal.
According to a first aspect, a terminal roaming method is provided, and is applied to a wireless local area network. The method includes: A first AP receives first session migration information, where the first session migration information includes a session parameter used when a first terminal performs data exchange (exchange) with a second AP, and the second AP is an original associated AP of the first terminal. After the first terminal is associated with the first AP, the first AP continues data exchange with the first terminal based on the session parameter used when the first terminal performs data exchange with the second AP. A session parameter in this application is a parameter related to a session between a terminal and an AP, and is not a parameter of another type, for example, a security parameter. Therefore, a key (such as a pairwise master key (pairwise master key, PMK)) are not a session parameter. For example, the session parameter may be a block acknowledgment (block acknowledgment, BA) session parameter, a target wake time (target wake time, TWT) session parameter, or the like.
In this application, the session parameter used when the terminal performs data exchange with the original associated AP is migrated to a roaming target AP. After the terminal is associated with the roaming target AP, the roaming target AP can continue data exchange with the terminal based on the migrated session parameter. The terminal and the roaming target AP do not need to perform session negotiation again, to shorten a data service recovery time required after a roaming handover of the terminal, and reduce a service transmission delay. This improves smoothness of roaming handover of the terminal.
Optionally, an implementation in which the first AP receives the first session migration information includes: The first AP receives the first session migration information from the second AP. That is, the original associated AP of the terminal sends the session migration information to the roaming target AP.
The first AP may receive the first session migration information from the second AP before being associated with the terminal. The first AP may alternatively receive the first session migration information from the second AP after being associated with the terminal. Optionally, the first AP may receive the first session migration information from the second AP in a wired manner. In this way, air interface resources do not need to be occupied during session parameter migration.
Optionally, another implementation in which the first AP receives the first session migration information includes: The first AP receives the first session migration information from the first terminal. That is, the terminal sends the session migration information to the roaming target AP.
Optionally, the first session migration information is in an authentication request and/or an association request. The authentication request may be specifically an authentication request frame, and the association request may be specifically an association request frame or a re-association request frame.
Optionally, that the first session migration information is in the authentication request and/or the association request may be understood as that the authentication request includes session parameters corresponding to one or more service priorities and/or session parameters corresponding to one or more service flows; or the association request includes session parameters corresponding to one or more service priorities and/or session parameters corresponding to one or more service flows; or the authentication request includes session parameters corresponding to one or more service priorities and/or session parameters corresponding to one or more service flows, and the association request also includes session parameters corresponding to one or more service priorities and/or session parameters corresponding to one or more service flows. For example, a session parameter corresponding to a service priority may be a session parameter corresponding to a BA session. A session parameter corresponding to a service flow may be a session parameter corresponding to a TWT session.
Before being associated with the roaming target AP, the terminal may send, to the roaming target AP by using the authentication request and/or the association request, a session parameter corresponding to one session at a time or send session parameters corresponding to a plurality of sessions at a time. In this way, after the terminal is associated with the roaming target AP, the roaming target AP can continue data exchange of a corresponding session with the terminal based on the migrated session parameter, the terminal and the roaming target AP do not need to perform session negotiation again, and the terminal can quickly resume service transmission, to reduce a service transmission delay.
Alternatively, the first session migration information is in a session migration frame sent by the first terminal after the first terminal is associated with the first AP, and the session migration frame includes session parameters corresponding to a plurality of service priorities and/or session parameters corresponding to a plurality of service flows.
After being associated with the roaming target AP, the terminal may send, to the roaming target AP by using one or more session migration frames, a session parameter used when the terminal performs data exchange with the original associated AP. When the terminal or the roaming target AP has a service transmission requirement, data exchange can be performed based on the session parameter used when the terminal performs the data exchange with the original associated AP. In this way, the terminal and the roaming target AP do not need to perform session negotiation again, and service transmission can be quickly resumed, to reduce a service transmission delay. In addition, because the session migration frame includes the session parameters corresponding to a plurality of service priorities and/or the session parameters corresponding to a plurality of service flows, that is, the terminal can send, to the roaming target AP by using one session migration frame, session parameters corresponding to a plurality of sessions. Compared with a current solution in which only a session parameter corresponding to one session can be transmitted through negotiation at a time, in this embodiment of this application, a quantity of times of transmitting the session parameters through an air interface is reduced, so that air interface resources occupied for transmitting the session parameters are reduced, saving air interface resources.
Alternatively, the first session migration information is in at least one of an authentication request, an association request, or a session migration frame sent by the first terminal after the first terminal is associated with the first AP. That is, before being associated with the roaming target AP, the terminal may send all session parameters in the first session migration information to the roaming target AP by using the authentication request and/or the association request. Alternatively, after being associated with the roaming target AP, the terminal may send all session parameters in the first session migration information to the roaming target AP by using the session migration frame. Alternatively, before being associated with the roaming target AP, the terminal sends some of session parameters in the first session migration information to the roaming target AP by using the authentication request and/or the association request. After being associated with the roaming target AP, the terminal sends the other session parameters in the first session migration information to the roaming target AP by using the session migration frame.
Optionally, the first session migration information includes a BA session parameter and/or a TWT session parameter.
Optionally, the first AP and the second AP have a same device series. That the device series are the same includes that, for example, device name prefixes are the same, device functions are similar, or device vendors are the same. Two APs of a same device series have a same device model or different device models. A plurality of APs of a same device series are deployed in the WLAN, to ensure that communication functions of the plurality of APs are the same or similar as much as possible, so that a success rate of session parameter migration can be improved, so as to improve feasibility of the solutions of this application.
Optionally, the first AP receives a frame from a second terminal associated with the first AP, where the frame includes an identifier of a third AP, and the frame indicates that the second terminal is to roam to the third AP. The first AP sends second session migration information to the third AP, where the second session migration information includes a session parameter used when the second terminal performs data exchange with the first AP.
According to a second aspect, a terminal roaming method is provided, and is applied to a wireless local area network. The method includes: A terminal sends a frame to a first AP associated with the terminal, where the frame includes an identifier of a second AP, and the frame indicates that the terminal is to roam to the second AP. The terminal disconnects from the first AP, and establishes an association with the second AP.
In this application, before roaming, the terminal notifies the associated AP that the terminal is to roam to the roaming target AP, so that the associated AP can prepare for a roaming handover of the terminal in advance, to improve smoothness of the roaming handover of the terminal.
According to a third aspect, a terminal roaming method is provided, and is applied to a wireless local area network. The method includes: A terminal sends session migration information to a roaming target AP, where the session migration information includes a session parameter used when the terminal performs data exchange with an original associated AP of the terminal.
In this application, the terminal sends the session migration information to the roaming target AP. After the terminal is associated with the roaming target AP, the roaming target AP can continue the data exchange with the terminal based on the migrated session parameter, and the terminal can also continue data exchange with the roaming target AP based on the session parameter used when the terminal performs data exchange with the original associated AP. The terminal and the roaming target AP do not need to perform session negotiation again, to shorten a data service recovery time required after a roaming handover of the terminal, and reduce a service transmission delay. This improves smoothness of roaming handover of the terminal.
Optionally, the session migration information is in an authentication request and/or an association request.
Before being associated with the roaming target AP, the terminal may send, to the roaming target AP by using the authentication request and/or the association request, a session parameter corresponding to one session at a time or send session parameters corresponding to a plurality of sessions at a time. In this way, after the terminal is associated with the roaming target AP, the roaming target AP can continue data exchange of a corresponding session with the terminal based on the migrated session parameter, the terminal and the roaming target AP do not need to perform session negotiation again, and the terminal can quickly resume service transmission, to reduce a service transmission delay.
Alternatively, the session migration information is in a session migration frame sent by the terminal after the terminal is associated with the roaming target AP, and the session migration frame includes session parameters corresponding to a plurality of service priorities and/or session parameters corresponding to a plurality of service flows.
After being associated with the roaming target AP, the terminal may send, to the roaming target AP by using one or more session migration frames, a session parameter used when the terminal performs data exchange with the original associated AP. When the terminal or the roaming target AP has a service transmission requirement, data exchange can be performed based on the session parameter used when the terminal performs the data exchange with the original associated AP. In this way, the terminal and the roaming target AP do not need to perform session negotiation again, and service transmission can be quickly resumed, to reduce a service transmission delay. In addition, because the session migration frame includes the session parameters corresponding to a plurality of service priorities and/or the session parameters corresponding to a plurality of service flows, that is, the terminal can send, to the roaming target AP by using one session migration frame, session parameters corresponding to a plurality of sessions. Compared with a current solution in which only a session parameter corresponding to one session can be transmitted through negotiation at a time, in this embodiment of this application, a quantity of times of transmitting the session parameters through an air interface is reduced, so that air interface resources occupied for transmitting the session parameters are reduced, saving air interface resources.
Optionally, the session migration information includes a BA session parameter and/or a TWT session parameter.
Optionally, after the terminal is associated with the roaming target AP, the terminal continues the data exchange with the roaming target AP based on the session parameter used when the terminal performs data exchange with the original associated AP.
According to a fourth aspect, an AP is provided. The AP includes a plurality of functional modules. The plurality of functional modules interact with each other to implement the method according to the first aspect and the implementations of the first aspect. The plurality of functional modules may be implemented based on software, hardware, or a combination of software and hardware, and the plurality of functional modules may be randomly combined or divided based on a specific implementation.
According to a fifth aspect, a terminal is provided. The terminal includes a plurality of function modules, and the plurality of function modules interact with each other to implement the method according to the second aspect and the implementations of the second aspect or the method according to the third aspect and the implementations of the third aspect. The plurality of functional modules may be implemented based on software, hardware, or a combination of software and hardware, and the plurality of functional modules may be randomly combined or divided based on a specific implementation.
According to a sixth aspect, an AP is provided, including a processor and a transceiver.
The processor is configured to invoke a computer program, and collaborate with the transceiver to implement the method according to the first aspect and the implementations of the first aspect.
According to a seventh aspect, a terminal is provided, including a processor and a transceiver.
The processor is configured to invoke a computer program, and collaborate with the transceiver to implement the method according to the second aspect and the implementations of the second aspect or the method according to the third aspect and the implementations of the third aspect.
According to an eighth aspect, a wireless local area network is provided, including a terminal and a plurality of APs. The terminal is configured to perform the method according to the second aspect and the implementations of the second aspect or the method according to the third aspect and the implementations of the third aspect, and the AP is configured to perform the method according to the first aspect and the implementations of the first aspect.
According to a ninth aspect, a computer-readable storage medium is provided. The computer-readable storage medium stores instructions. When the instructions are executed by a processor of an access point, the method according to the first aspect and the implementations of the first aspect is implemented; or when the instructions are executed by a processor of a terminal, the method according to the second aspect and the implementations of the second aspect or the method according to the third aspect and the implementations of the third aspect is implemented.
According to a tenth aspect, a computer program product is provided, including a computer program. When the computer program is executed by a processor of an access point, the method according to the first aspect and the implementations of the first aspect is implemented; or when the computer program is executed by a processor of a terminal, the method according to the second aspect and the implementations of the second aspect or the method according to the third aspect and the implementations of the third aspect is implemented.
According to an eleventh aspect, a chip is provided. The chip includes a programmable logic circuit and/or program instructions. When the chip runs, the method according to the first aspect and the implementations of the first aspect is implemented, or the method according to the second aspect and the implementations of the second aspect is implemented, or the method according to the third aspect and the implementations of the third aspect is implemented.
To make the objectives, technical solutions, and advantages of this application clearer, the following further describes implementations of this application in detail with reference to the accompanying drawings.
The technical solutions of this application are applied to a WLAN. For example,
The terminal 101 is configured with a WLAN function. For example, the terminal 101 may be a smartphone, a notebook computer, an internet of things (internet of things, IoT) device, an automated optical inspection (automated optical inspection, AOI) device, an intelligent wearable device, or the like that has a WLAN chip. The AP 102 is a network device having a WLAN chip or a WLAN system on a chip (system on a chip, SoC). For example, the AP 102 may be a router, a switch, or the like. The AP 102 is configured to provide a WLAN protocol-based wireless access service for the terminal 101.
Optionally, the plurality of APs 102 are communicatively connected to each other. For example, refer to
In a moving process of a terminal in the WLAN, link quality decreases with an increase in a distance between the terminal and an associated AP and/or decreases due to an obstacle. In this case, the terminal can roam to an AP that provides a higher-quality link to meet service requirements on communication quality. For example, in a WLAN shown in
A roaming process of the terminal in the WLAN includes: The terminal first breaks an old link between the terminal and an original associated AP, and then establishes a new link between the terminal and a roaming target AP. A process of establishing the new link between the terminal and the roaming target AP includes link authentication, association, and key agreement. The terminal and the AP usually perform data exchange based on a BA session mechanism, a TWT session mechanism, or the like. Currently, after roaming is completed, a terminal needs to re-perform BA session negotiation, TWT session negotiation, and the like with a new associated AP. Each time session negotiation is performed takes a specific period of time, which increases a service transmission delay.
In view of this, this application proposes a technical solution of migrating a session parameter used when a terminal performs data exchange with an original associated AP to a roaming target AP. After the terminal is associated with the roaming target AP, the roaming target AP can continue data exchange with the terminal based on the migrated session parameter, and the terminal can also continue data exchange with the roaming target AP based on the session parameter used when the terminal performs data exchange with the original associated AP. The terminal and the roaming target AP do not need to perform session negotiation again, to shorten a data service recovery time required after a roaming handover of the terminal, and reduce a service transmission delay. This improves smoothness of roaming handover of the terminal.
A session parameter in this application is a parameter related to a session between a terminal and an AP, and is not a parameter of another type, for example, a security parameter. Therefore, a key (such as a PMK) is not a session parameter. For example, the session parameter may be a BA session parameter, a TWT session parameter, or the like.
This application provides two implementations based on an inventive concept of migrating a session parameter used when a terminal performs data exchange with an original associated AP to a roaming target AP. In an implementation, before roaming, the terminal indicates an associated AP of the terminal to send session migration information to the roaming target AP. In another implementation, in a roaming process or after roaming of the terminal is completed, the terminal sends session migration information to the roaming target AP. The session migration information includes the session parameter used when the terminal performs data exchange with the original associated AP. In this application, the two implementations are separately described by using the following two embodiments.
In an embodiment of this application,
Step 201: The terminal 1 sends a frame to the AP 1, where the frame includes an identifier of the AP 2, and the frame indicates that the terminal 1 is to roam to the AP 2.
Optionally, the AP 2 is a neighbor AP of the AP 1. There is region in which a signal coverage area of the AP 1 overlaps a signal coverage area of the AP 2. When the terminal 1 moves from the signal coverage area of the AP 1 to the signal coverage area of the AP 2, and received signal strength of the terminal 1 to the AP 2 is higher than received signal strength of the terminal 1 to the AP 1, and/or received signal strength of the terminal 1 to the AP 1 is less than a signal strength threshold, the terminal 1 triggers the terminal 1 to perform a roaming handover. Alternatively, the AP 1 may trigger the terminal 1 to perform roaming handover. A condition for triggering the terminal to perform roaming handover is not limited in this embodiment of this application. Before the roaming handover, the terminal 1 sends, to the AP 1, the frame indicating that the terminal 1 is to roam to the AP 2.
A neighbor AP of an AP refers to an AP near the AP. For example, if received signal strength of an AP to another AP is greater than a signal strength threshold, the another AP is a neighbor AP of the AP. For another example, if a possible roaming relationship exists between an AP and another AP (for example, the two APs are respectively disposed in two adjacent rooms, and although a wall blocks signal transmission between the two APs, when a terminal moves from one room to the other room, the terminal roams between the two APs, that is, a roaming relationship exists between the two APs), the another AP is a neighbor AP of the AP. For another example, planning personnel manually configure in AP information about a neighbor AP.
Optionally, the AP 1 and the AP 2 have a same device series. That the device series are the same includes that, for example, device name prefixes are the same, device functions are similar, or device vendors are the same. Two APs of a same device series have a same device model or different device models. A plurality of APs of a same device series are deployed in the WLAN, to ensure that communication functions of the plurality of APs are the same or similar as much as possible, so that a success rate of session parameter migration can be improved, so as to improve feasibility of the technical solutions of this application.
Optionally, the frame that is sent by the terminal 1 to the AP 1 and that indicates that the terminal 1 is to roam to the AP 2 may be implemented based on a management frame, a control frame, or a data frame of a WLAN protocol. An identifier of an AP may be a basic service set identifier (basic service set identifier, BSSID) of the AP, a hardware address of the AP, or another identifier that can uniquely identify the AP in the WLAN.
In this embodiment of this application, a frame element may be pre-defined to indicate that the terminal is to roam. The frame element is encapsulated in a data (data) portion of a data frame, a changeable field of a control frame, or a frame body (frame body) of a management frame, to obtain a frame indicating that the terminal is to roam to a roaming target AP. For example,
Step 202: The AP 1 sends session migration information 1 to the AP 2, where the session migration information 1 includes a session parameter used when the terminal 1 performs data exchange with the AP 1.
Optionally, the session parameter used when the AP 1 performs the data exchange with the terminal 1 may be a session parameter obtained through negotiation between the AP 1 and the terminal 1, or may be a session parameter that is obtained through migration and used when the terminal 1 performs data exchange with a previous associated AP.
The AP 1 may send the session migration information 1 to the AP 2 in a wired manner. For example, in step 202, the AP 1 may directly send the session migration information 1 to the AP 2 through a wired interface. After receiving the frame from the terminal 1, the AP 1 can detect that the terminal 1 is to roam to the AP 2. In this case, the AP 1 sorts out the session parameter used when the AP 1 performs the data exchange with the terminal 1, and then directly sends, to the AP 2, the session migration information 1 including the session parameter used when the terminal 1 performs data exchange with the AP 1.
Alternatively, in step 202, the AP 1 may indirectly send the session migration information 1 to the AP 2. The AP 1 sorts out the session parameter used when the AP 1 performs the data exchange with the terminal 1, and sends, to the wireless controller, the session parameter used when the AP 1 performs the data exchange with the terminal 1, and then the wireless controller sends, to the AP 2, the session parameter used when the AP 1 performs the data exchange with the terminal 1. For example, the AP 1 may send, to the wireless controller in a control and provisioning of wireless access points (control and provisioning of wireless access points, CAPWAP) manner, the session parameter used when the AP 1 performs the data exchange with the terminal 1, and then the wireless controller sends, to the AP 2 in the CAPWAP manner, the session parameter used when the AP 1 performs the data exchange with the terminal 1. Before step 201 is performed, the AP 1 may send, to the wireless controller in advance, the session parameter used when the AP 1 performs the data exchange with the terminal 1, and the wireless controller stores the session parameter. After the AP 1 detects that the terminal 1 is to roam to the AP 2, the AP 1 requests the wireless controller to send, to the AP 2, the stored session parameter used when the AP 1 performs the data exchange with the terminal 1. Alternatively, after detecting that the terminal 1 is to roam to the AP 2, the AP 1 may send, to the wireless controller, the session parameter used when the AP 1 performs the data exchange with the terminal 1, and then the wireless controller forwards the session parameter to the AP 2.
Optionally, the session migration information 1 includes but is not limited to a BA session parameter and/or a TWT session parameter. If the terminal 1 performs data exchange with the AP 1 based on a BA session mechanism, the session migration information 1 may include the BA session parameter. If the terminal 1 performs data exchange with the AP 1 based on a TWT session mechanism, the session migration information 1 may include the TWT session parameter. If the terminal 1 performs data exchange with the AP 1 based on the BA session mechanism and the TWT mechanism, the session migration information 1 may include the BA session parameter and the TWT session parameter.
Optionally, the BA session parameter includes one or more of a BA reply mechanism, a BA session window size, a BA start sequence number, or a BA timeout time length. The BA reply mechanism is classified into implicit BA and explicit BA. In the WLAN, the terminal and the AP separately negotiate corresponding BA session parameters for different service priorities, that is, each service priority is corresponding to one BA session. The service priority may be represented by using a service identifier (traffic identifier, TID). A TID 0 to a TID 7 are usually used to represent eight service priorities.
Optionally, the session migration information 1 includes BA session parameters corresponding to one or more service priorities. For example, if the terminal 1 and the AP 1 have successfully negotiated BA session parameters corresponding to a TID 0, a TID 2, a TID 4, and a TID 6, the session migration information 1 may include the BA session parameters corresponding to the TID 0, the TID 2, the TID 4, and the TID 6.
In this embodiment of this application, a BA migration element may be pre-defined to carry the BA session parameter. For example,
Optionally, the TWT session parameter includes one or more of an uplink data sending manner, a TWT working mode, a terminal status announcement manner, a TWT flow identifier, a TWT wake interval, an indication indicating whether to enable a TWT protection mechanism, duration of a TWT service period (service period, SP), or an indication of a primary channel used by the terminal during a TWT SP. The TWT flow identifier is used to distinguish between different types of service flows on a same terminal, and the different types of service flows are represented by using different TWT flow identifiers. In the WLAN, the terminal and the AP may separately negotiate corresponding TWT session parameters for different types of service flows, that is, each type of service flow is corresponding to one TWT session. One type of service flow includes one or more service flows. TWT session parameters corresponding to all service flows of a same type of service flow are the same. TWT session parameters corresponding to different types of service flows are usually different.
Optionally, the session migration information 1 includes TWT session parameters corresponding to one or more types of service flows. For example, if the terminal 1 and the AP 1 have successfully negotiated TWT session parameters corresponding to a service flow 1, a service flow 2, a service flow 3, and a service flow 4, the session migration information 1 may include the TWT session parameters corresponding to the service flow 1, the service flow 2, the service flow 3, and the service flow 4.
In this embodiment of this application, a TWT migration element may be pre-defined to carry the TWT session parameter. For example,
The TWT parameter number field is used to indicate TWT session parameters that are corresponding to a specific quantity of types of service flows and that are included in the TWT parameter information field, that is, indicate a quantity of migration TWT sessions. The TWT parameter information field includes one or more TWT session parameter fields that are in a one-to-one correspondence with one or more types of service flows. The TWT session parameter field includes a trigger (trigger) field, an implicit (implicit) field, a flow type (flow type) field, a TWT flow identifier (TWT flow ID) field, a TWT wake interval exponent (TWT wake interval exponent) field, a TWT protection (TWT protection) field, a TWT wake duration (TWT wake duration) field, a TWT wake interval mantissa (TWT wake interval mantissa) field, and a TWT channel (TWT channel) field.
The trigger field is used to indicate an uplink data sending manner. For example, if a value of the trigger field is 1, it indicates that during the TWT SP, the terminal needs to send uplink data in a manner of waiting for the AP to use trigger frame (trigger frame) scheduling. If a value of the trigger field is 0, it indicates that during the TWT SP, the terminal sends uplink data in a manner of enhanced distributed channel access (enhanced distributed channel access, EDCA) contention.
The implicit field is used to indicate the TWT working mode. For example, if a value of the implicit field is 1, it indicates that the TWT is an implicit TWT, a value of the implicit TWT is periodic, and a start time point of a next TWT SP is a start time point of a current TWT SP plus the TWT wake interval. If a value of the implicit field is 0, the TWT is an explicit TWT. A value of the explicit TWT is valid only once.
The flow type field is used to indicate the terminal status announcement manner. For example, if a value of the flow type field is 0, it indicates that during the TWT SP, the terminal first needs to send a power save poll (power save poll, PS-Poll) frame or an automatic power save delivery (automatic power save delivery, APSD) trigger frame to the AP, to indicate that the terminal is already in an awake state, and then the AP can send a packet to the terminal. If a value of the flow type field is 1, it indicates that during the TWT SP, the terminal does not need to send a PS-Poll frame or an APSD trigger frame to the AP, and the AP can directly send a packet to the terminal.
The TWT flow identifier field is used to indicate a service flow to which the TWT session parameter is applied. Different types of service flows are represented by using different TWT flow identifiers. The TWT flow identifier may be an identifier of a unicast TWT protocol, to indicate that a maximum of eight unicast TWT sessions are supported, that is, a maximum of eight types of service flows are supported.
The TWT wake interval exponent and the TWT wake interval mantissa are used together to determine the TWT wake interval. A calculation formula is as follows: TWT wake interval=TWT wake interval mantissa x (2″TWT wake interval exponent).
The TWT protection field is used to indicate whether to enable the TWT protection mechanism. If a value of the TWT protection field is 1, it indicates that the TWT protection mechanism is enabled, that is, the terminal requests the AP to protect the TWT SP. In this case, the AP protects the TWT SP by enabling a network allocation vector (network allocation vector, NAV) protection function. That is, each transmission opportunity (transmission opportunity, TXOP) during the TWT SP needs to have a NAV protection mechanism, for example, using a request to send (request to send, RTS) frame/clear to send (clear to send, CTS) frame, or using a CTS-to-self frame. If a value of the TWT protection field is 0, it indicates that the TWT protection mechanism is not enabled.
The TWT wake duration field is used to indicate duration of the TWT SP.
The TWT channel field is used to indicate the primary channel used by the terminal during the TWT SP.
Optionally, the AP 1 encapsulates, by using an Ethernet header, the BA migration element shown in
Step 203: The terminal 1 disconnects from the AP 1, and establishes an association with the AP 2.
Optionally, an operating channel of the AP 1 is different from an operating channel of the AP 2. An implementation process of step 203 includes: The terminal 1 switches an operating channel from the operating channel of the AP 1 to the operating channel of the AP 2, to associate with the AP 2.
Optionally, a trigger manner in which the terminal 1 disconnects from the AP 1 and establishes an association with the AP 2 includes but is not limited to the following three implementations.
In a first implementation, after receiving the session migration information 1 from the AP 1, the AP 2 sends acknowledgment information to the AP 1, where the acknowledgment information indicates that the AP 2 has successfully received the session migration information 1. After receiving the acknowledgment information from the AP 2, the AP 1 sends a disassociation frame to the terminal 1. After receiving the disassociation frame from the AP 1, the terminal 1 disconnects from the AP 1 and establishes the association with the AP 2.
In a second implementation, after receiving the session migration information 1 from the AP 1, the AP 2 sends acknowledgment information to the AP 1, where the acknowledgment information indicates that the AP 2 has successfully received the session migration information 1. After receiving the acknowledgment information from the AP 2, the AP 1 sends an acknowledgment frame to the terminal 1, where the acknowledgment frame indicates that the session parameter used when the terminal 1 performs data exchange with the AP 1 has been successfully migrated to the AP 2. After receiving the acknowledgment frame from the AP 1, the terminal 1 sends a disassociation frame to the AP 1 to disconnect from the AP 1, and further establishes the association with the AP 2.
In a third implementation, a time length of a frame that is sent by the terminal 1 to the AP 1 and that indicates that the terminal 1 is to roam to the AP 2 reaches a preset time length, and the terminal sends a disassociation frame to the AP 1 to disconnect from the AP 1, and further establishes the association with the AP 2.
Step 204: The AP 2 continues data exchange with the terminal 1 based on the session parameter in the session migration information 1.
After receiving the session migration information 1 from the AP 1, the AP 2 parses the session migration information 1 to obtain the session parameter used when the terminal 1 performs data exchange with the AP 1. After the terminal 1 is associated with the AP 2, the AP 2 continues data exchange with the terminal 1 based on the session parameter.
Optionally, the session migration information 1 includes the BA session parameter. That the AP 2 continues data exchange with the terminal 1 based on the BA session parameter in the session migration information 1 may be understood as follows: When a service flow of a specific service priority needs to be transmitted between the AP 2 and the terminal 1, the AP 2 sends the service flow to the terminal 1 based on a BA session parameter corresponding to the service priority in the session migration information 1. For example, if the session migration information 1 includes the BA session parameter corresponding to the TID 0, the AP 2 may directly send a service flow of the TID 0 to the terminal 1 based on the BA session parameter. Before resuming transmission of a service flow on the terminal 1, the AP 2 does not need to perform BA session negotiation with the terminal 1 again, so that a service transmission delay caused by a roaming handover of the terminal can be reduced.
Optionally, the session migration information 1 includes the TWT session parameter. That the AP 2 continues data exchange with the terminal 1 based on the TWT session parameter in the session migration information 1 may be understood as that the AP 2 continues to maintain a session manner of a corresponding service flow based on the TWT session parameter in the session migration information 1. In this case, after the terminal 1 is associated with the AP 2, the terminal 1 may indicate, to the AP 2, a time point at which a TWT SP corresponding to the service flow starts to be effective, so that the AP 2 can keep a TWT session period consistent with a TWT session period of the terminal 1. Before resuming transmission of a service flow on the terminal 1, the AP 2 does not need to perform TWT session negotiation with the terminal 1 again, so that a service transmission delay caused by a roaming handover of the terminal can be reduced.
If the AP 2 does not support use of a specific session parameter in the session migration information 1, after the terminal 1 is associated with the AP 2, the AP 2 may immediately initiate a session negotiation procedure for the session parameter to the terminal 1. For example, if the AP 2 does not support use of the BA session parameter corresponding to the TID 0 in the session migration information 1, the AP 2 and the terminal 1 may renegotiate the BA session parameter corresponding to the TID 0. For a process in which the AP negotiates the BA session parameter and the TWT session parameter with the terminal, refer to a related WLAN protocol. Details are not described in this embodiment of this application. In the session parameter migration mechanism provided in this embodiment of this application, the roaming target AP can detect, based on the session migration information, a specific service flow on the terminal that is to roam to the roaming target AP. Therefore, after the terminal is associated with the roaming target AP, the roaming target AP may immediately perform session negotiation with the terminal for a session parameter that is not supported by the roaming target AP, and does not need to wait until there is a service flow transmission requirement to perform session negotiation. This reduces a service transmission delay to some extent.
Step 205: The terminal 1 continues data exchange with the AP 2 based on the session parameter used when the terminal 1 performs the data exchange with the AP 1.
If the terminal 1 does not receive a response after sending a data frame to the AP 2 based on the session parameter used when the terminal 1 performs data exchange with the AP 1, the AP 2 may not support use of the session parameter. In this case, the terminal 1 may initiate a session negotiation procedure for the session parameter to the AP 2, to renegotiate the session parameter.
In this embodiment of this application, before roaming, the terminal indicates an associated AP of the terminal to send session migration information to the roaming target AP. After the terminal is associated with the roaming target AP, the roaming target AP can continue the data exchange with the terminal based on the migrated session parameter, and the terminal can also continue data exchange with the roaming target AP based on the session parameter used when the terminal performs data exchange with the original associated AP. The terminal and the roaming target AP do not need to perform session negotiation again, to shorten a data service recovery time required after a roaming handover of the terminal, and reduce a service transmission delay. This improves smoothness of roaming handover of the terminal.
In another embodiment of this application,
Step 601: The terminal 2 sends session migration information 2 to the AP 4, where the session migration information 2 includes a session parameter used when the terminal 2 performs data exchange with the AP 3.
Optionally, the terminal 2 sends the session migration information 2 to the AP 4 by using one or more WLAN frames. For a relationship between the AP 3 and the AP 4, refer to the description of the relationship between the AP 1 and the AP 2 in step 201. Details are not described herein again in this embodiment of this application.
In an implementation, the terminal 2 sends the session migration information 2 to the AP 4 in a process of associating with the AP 4, where the session migration information 2 is in an authentication request and/or an association request. The authentication request may be specifically an authentication request frame, and the association request may be specifically an association request frame or a re-association request frame.
Optionally, that the session migration information 2 is in the authentication request and/or the association request may be understood as that the authentication request includes session parameters corresponding to one or more service priorities and/or session parameters corresponding to one or more service flows; or the association request includes session parameters corresponding to one or more service priorities and/or session parameters corresponding to one or more service flows; or the authentication request includes session parameters corresponding to one or more service priorities and/or session parameters corresponding to one or more service flows, and the association request also includes session parameters corresponding to one or more service priorities and/or session parameters corresponding to one or more service flows. For example, a session parameter corresponding to a service priority may be a session parameter corresponding to a BA session. A session parameter corresponding to a service flow may be a session parameter corresponding to a TWT session.
In this implementation, before being associated with the roaming target AP, the terminal may send, to the roaming target AP by using the authentication request and/or the association request, a session parameter corresponding to one session at a time or send session parameters corresponding to a plurality of sessions at a time. In this way, after the terminal is associated with the roaming target AP, the roaming target AP can continue data exchange of a corresponding session with the terminal based on the migrated session parameter, the terminal and the roaming target AP do not need to perform session negotiation again, and the terminal can quickly resume service transmission, to reduce a service transmission delay.
In another implementation, after the terminal 2 is associated with the AP 4, the terminal 2 sends the session migration information 2 to the AP 4, where the session migration information 2 is in a session migration frame sent by the terminal 2 after the terminal 2 is associated with the AP 4. The session migration frame includes session parameters corresponding to a plurality of service priorities and/or session parameters corresponding to a plurality of service flows. Optionally, the session migration frame may be a management frame, a control frame, or a data frame. The session parameters corresponding to a plurality of service priorities may include BA session parameters respectively corresponding to the plurality of service priorities. The session parameters corresponding to a plurality of service flows may include TWT session parameters respectively corresponding to the plurality of service flows.
In this implementation, after being associated with the roaming target AP, the terminal may send, to the roaming target AP by using one or more session migration frames, a session parameter used when the terminal performs data exchange with the original associated AP. When the terminal or the roaming target AP has a service transmission requirement, data exchange can be performed based on the session parameter used when the terminal performs the data exchange with the original associated AP. In this way, the terminal and the roaming target AP do not need to perform session negotiation again, and service transmission can be quickly resumed, to reduce a service transmission delay. In addition, because the session migration frame includes the session parameters corresponding to a plurality of service priorities and/or the session parameters corresponding to a plurality of service flows, that is, the terminal can send, to the roaming target AP by using one session migration frame, session parameters corresponding to a plurality of sessions. Compared with a current solution in which only a session parameter corresponding to one session can be transmitted through negotiation at a time, in this embodiment of this application, a quantity of times of transmitting the session parameters through an air interface is reduced, so that air interface resources occupied for transmitting the session parameters are reduced, saving air interface resources.
Optionally, the session migration information 2 includes but is not limited to a BA session parameter and/or a TWT session parameter. For an explanation of the session migration information 2, refer to the related explanation of the session migration information 1 in step 202. Details are not described herein again in this embodiment of this application. If the terminal 2 sends the session migration information 2 to the AP 4 by using a management frame such as an authentication request frame, an association request frame, or a re-association request frame, the terminal 2 may encapsulate a BA migration element shown in
Step 602: After the terminal 2 is associated with the AP 4, the AP 4 continues data exchange with the terminal 2 based on the session parameter in the session migration information 2.
For an implementation process of step 602, refer to related descriptions of step 204. Details are not described herein again in this embodiment of this application.
Step 603: After the terminal 2 is associated with the AP 4, the terminal 2 continues data exchange with the AP 4 based on the session parameter used when performing data exchange with the AP 3.
For an implementation process of step 603, refer to related descriptions of step 205. Details are not described herein again in this embodiment of this application.
Optionally, the TWT session parameter sent by the terminal to the roaming target AP through the air interface may further include a TWT request direction, a TWT setup command type, and/or an indication of a time point at which a TWT SP starts to be effective. For example,
The TWT request field is used to indicate a TWT request direction. For example, if a value of the TWT request field is 0, it indicates that a frame is sent by a TWT responding terminal. For example, if a value of the TWT request field is 1, it indicates that a frame is sent by a TWT request terminal. The TWT setup command field is used to indicate the TWT setup command type, and is classified into request TWT, suggest TWT, expect TWT, accept TWT, candidate TWT, indicate TWT, and reject TWT. For specific explanations, refer to a related WLAN protocol. The target wake time field is used to indicate the time point at which a TWT SP starts to be effective.
If the terminal 2 migrates the TWT session parameter to the AP 4 by using the TWT migration element shown in
For example, an implementation process in which the terminal 2 migrates the TWT session parameter to the AP 4 is as follows: The terminal 2 encapsulates a TWT migration element shown in
In this embodiment of this application, in a roaming process or after roaming is completed, the terminal sends the session migration information to the roaming target AP. After the terminal is associated with the roaming target AP, the roaming target AP can continue the data exchange with the terminal based on the migrated session parameter, and the terminal can also continue data exchange with the roaming target AP based on the session parameter used when the terminal performs data exchange with the original associated AP. The terminal and the roaming target AP do not need to perform session negotiation again, to shorten a data service recovery time required after a roaming handover of the terminal, and reduce a service transmission delay. This improves smoothness of roaming handover of the terminal.
Step 801: The first AP receives first session migration information, where the first session migration information includes a session parameter used when the first terminal performs data exchange with the second AP, and the second AP is an original associated AP of the first terminal.
Step 802: After the first terminal is associated with the first AP, the first AP continues data exchange with the first terminal based on the session parameter.
When the method is specifically used to implement the method in the embodiment corresponding to
Optionally, an implementation in which the first AP receives the first session migration information includes: The first AP receives the first session migration information from the second AP. This implementation is specifically used to implement the method in the embodiment corresponding to
Optionally, another implementation in which the first AP receives the first session migration information includes: The first AP receives the first session migration information from the first terminal. This implementation is specifically used to implement the method in the embodiment corresponding to
Optionally, the first session migration information is in an authentication request and/or an association request. Alternatively, the first session migration information is in a session migration frame sent by the first terminal after the first terminal is associated with the first AP, and the session migration frame includes session parameters corresponding to a plurality of service priorities and/or session parameters corresponding to a plurality of service flows.
Optionally, the first session migration information includes a block acknowledgment session parameter and/or a target wake time session parameter.
Optionally, the first AP and the second AP have a same device series.
Optionally, the foregoing method further includes: The first AP receives a frame from the second terminal associated with the first AP, where the frame includes an identifier of a third AP, and the frame indicates that the second terminal is to roam to the third AP. The first AP sends second session migration information to the third AP, where the second session migration information includes a session parameter used when the second terminal performs data exchange with the first AP. When the method is specifically used to implement the method in the embodiment corresponding to
Step 901: The terminal sends a frame to the first AP associated with the terminal, where the frame includes an identifier of the second AP, and the frame indicates that the terminal is to roam to the second AP.
Step 902: The terminal disconnects from the first AP, and establishes an association with the second AP.
When the method is specifically used to implement the method in the embodiment corresponding to
Step 1001: The terminal sends session migration information to the roaming target AP, where the session migration information includes a session parameter used when the terminal performs data exchange with the original associated AP of the terminal.
When the method is specifically used to implement the method in the embodiment corresponding to
Optionally, the session migration information is in an authentication request and/or an association request.
Optionally, the session migration information is in a session migration frame sent by the terminal after the terminal is associated with the roaming target AP, and the session migration frame includes session parameters corresponding to a plurality of service priorities and/or session parameters corresponding to a plurality of service flows.
Optionally, the session migration information includes a block acknowledgment session parameter and/or a target wake time session parameter.
Optionally, after the terminal is associated with the roaming target AP, the terminal continues data exchange with the roaming target AP based on the session parameter used when the terminal performs data exchange with the original associated AP.
A sequence of steps of the foregoing terminal roaming method provided in embodiments of this application may be appropriately adjusted, or steps may be correspondingly added or deleted based on a situation. Any variation method readily figured out by a person skilled in the art within the technical scope disclosed in this application shall fall within the protection scope of this application. Therefore, details are not described herein.
a receiving module 1101, configured to receive first session migration information, where the first session migration information includes a session parameter used when a first terminal performs data exchange with a second AP, and the second AP is an original associated AP of the first terminal; and
a communications module 1102, configured to: after the first terminal is associated with the first AP, continue the data exchange with the first terminal based on the session parameter.
Optionally, the receiving module 1101 is configured to receive the first session migration information from the second AP.
Optionally, the receiving module 1101 is configured to receive the first session migration information from the first terminal.
Optionally, the first session migration information is in an authentication request and/or an association request.
Optionally, the first session migration information is in a session migration frame sent by the first terminal after the first terminal is associated with the first AP, and the session migration frame includes session parameters corresponding to a plurality of service priorities and/or session parameters corresponding to a plurality of service flows.
Optionally, the first session migration information includes a block acknowledgment session parameter and/or a target wake time session parameter.
Optionally, the first AP and the second AP have a same device series.
Optionally, as shown in
The receiving module 1101 is further configured to receive a frame from a second terminal associated with the first AP, where the frame includes an identifier of a third AP, and the frame indicates that the second terminal is to roam to the third AP. The sending module 1103 is configured to send second session migration information to the third AP, where the second session migration information includes a session parameter used when the second terminal performs data exchange with the first AP.
a sending module 1301, configured to send a frame to a first AP associated with the terminal, where the frame includes an identifier of a second AP, and the frame indicates that the terminal is to roam to the second AP; and
a processing module 1302, configured to: disconnect from the first AP, and establish an association with the second AP.
a sending module 1401, configured to send session migration information to a roaming target AP, where the session migration information includes a session parameter used when the terminal performs data exchange with an original associated AP of the terminal.
Optionally, the session migration information is in an authentication request and/or an association request.
Optionally, the session migration information is in a session migration frame sent by the terminal after the terminal is associated with the roaming target AP, and the session migration frame includes session parameters corresponding to a plurality of service priorities and/or session parameters corresponding to a plurality of service flows.
Optionally, the session migration information includes a block acknowledgment session parameter and/or a target wake time session parameter.
Optionally, as shown in
For the apparatuses in the foregoing embodiments, specific manners of executing operations by each module are described in detail in embodiments related to the methods, and details are not described herein.
An embodiment of this application provides an AP, including a processor and a transceiver. The processor is configured to invoke a computer program, and collaborate with the transceiver to implement the actions performed by the AP in the embodiment shown in
For example,
The processor 1601 is configured to invoke a computer program, and collaborate with the transceiver 1602 to implement the actions performed by the AP in the embodiment shown in
Optionally, the AP 1600 further includes a memory 1603, a communications bus 1604, and a communications interface 1605.
The processor 1601 may be a general-purpose central processing unit (central processing unit, CPU), an application-specific integrated circuit (application-specific integrated circuit, ASIC), or one or more integrated circuits configured to control program execution of the solutions of this application.
The communications bus 1604 may include a path for transmitting information between the foregoing components.
The memory 1603 may be a read-only memory (read-only memory, ROM) or another type of static storage device that can store static information and instructions, or a random access memory (random access memory, RAM) or another type of dynamic storage device that can store information and instructions, or may be an electrically erasable programmable read-only memory (electrically erasable programmable read-only memory, EEPROM), a compact disc read-only memory (compact disc read-only memory, CD-ROM) or another compact disc storage, an optical disc storage (including a compact disc, a laser disc, an optical disc, a digital versatile disc, a Blu-ray disc, or the like), a magnetic disk or another magnetic storage device, or may be any other medium that can be used to carry or store expected program code in a form of an instruction or a data structure and that can be accessed by a computer. However, this is not limited thereto. The memory 1603 may exist independently, and be connected to the processor 1601 through the communications bus 1604. Alternatively, the memory 1603 may be integrated with the processor 1601.
The memory 1603 is configured to store program code for executing the solutions in this application, and the processor 1601 controls execution of the program code. The processor 1601 is configured to execute the program code stored in the memory 1603. The program code may include one or more software modules. The one or more software modules may be the software modules provided in the embodiment shown in
The communications interface 1605 uses the transceiver 1602 and is configured to communicate with another device or a communications network, such as the Ethernet, a radio access network (radio access network, RAN), or a WLAN.
In a specific implementation, in an embodiment, the AP may include a plurality of processors. Each of the processors may be a single-core processor, or may be a multi-core processor. The processor herein may be one or more devices, circuits, and/or processing cores configured to process data (for example, computer program instructions).
An embodiment of this application provides a terminal, including a processor and a transceiver. The processor is configured to invoke a computer program, and collaborate with the transceiver to implement the actions performed by the terminal in the embodiment shown in
For example,
Optionally, the terminal 1700 further includes a memory 1703, a communications bus 1704, and a communications interface 1705.
The processor 1701 may be a general-purpose CPU, an ASIC, or one or more integrated circuits configured to control program execution in the solutions of this application.
The communications bus 1704 may include a path for transmitting information between the foregoing components.
The memory 1703 may be a ROM or another type of static storage device that can store static information and instructions, or a RAM or another type of dynamic storage device that can store information and instructions, or may be an EEPROM, a CD-ROM or another compact disc storage, an optical disc storage (including a compact disc, a laser disc, an optical disc, a digital versatile disc, a Blu-ray disc, or the like), a magnetic disk or another magnetic storage device, or may be any other medium that can be used to carry or store expected program code in a form of an instruction or a data structure and that can be accessed by a computer. However, this is not limited thereto. The memory 1703 may exist independently, and be connected to the processor 1701 through the communications bus 1704. Alternatively, the memory 1703 may be integrated with the processor 1701.
The memory 1703 is configured to store program code for executing the solutions in this application, and the processor 1701 controls execution of the program code. The processor 1701 is configured to execute the program code stored in the memory 1703. The program code may include one or more software modules. The one or more software modules may be the software modules provided in the embodiment shown in
The communications interface 1705 uses the transceiver 1702 and is configured to communicate with another device or a communications network, such as the Ethernet, a RAN, or a WLAN.
In a specific implementation, in an embodiment, the terminal may include a plurality of processors. Each of the processors may be a single-core processor, or may be a multi-core processor. The processor herein may be one or more devices, circuits, and/or processing cores configured to process data (for example, computer program instructions).
An embodiment of this application further provides a wireless local area network, including a terminal and a plurality of APs. The terminal is configured to perform actions performed by the terminal in the embodiment shown in
An embodiment of this application further provides a computer-readable storage medium. The computer-readable storage medium stores instructions. When the instructions are executed by a processor of an access point, actions performed by the AP in the embodiment shown in
An embodiment of this application further provides a computer program product, including a computer program. When the computer program is executed by a processor of an access point, actions performed by the AP in the embodiment shown in
A person of ordinary skill in the art may understand that all or some of the steps of the embodiments may be implemented by hardware or a program instructing related hardware. The program may be stored in a computer-readable storage medium. The storage medium may be a read-only memory, a magnetic disk, an optical disc, or the like.
In embodiments of this application, the terms “first”, “second”, and “third” are merely used for description, but cannot be understood as an indication or implication of relative importance.
The term “and/or” in this application describes only an association relationship between associated objects and indicates that three relationships may exist. For example, A and/or B may indicate the following cases: Only A exists, both A and B exist, and only B exists. In addition, the character “/” in this specification usually indicates an “or” relationship between the associated objects.
Number | Date | Country | Kind |
---|---|---|---|
202111432187.9 | Nov 2021 | CN | national |