ACCESS POINT RECOMMENDATION
FIELD
-
Various example embodiments relate to the field of telecommunication and in particular, to a method, device, apparatus and computer readable storage medium of communication for access point (AP) recommendation.
BACKGROUND
-
For a multi-link operation (MLO) , communication across different frequency bands or channels may occur simultaneously over multiple links between an AP multi-link device (MLD) and a non-AP MLD. As known, a network may adopt a client steering solution to encourage a non-AP station (STA) to associate with an idle AP with a better signal strength to improve performance on a client side.
SUMMARY
-
In general, example embodiments of the present disclosure provide a solution of communication for AP recommendation.
-
In a first aspect, there is provided a device. The device comprises at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the device at least to: discover a set of second devices; transmit, to a second device in the set of second devices, a request for obtaining profile information of a set of third devices available for communication with the device; and receive, from the second device, a response comprising the profile information of the set of third devices.
-
In a second aspect, there is provided a device. The device comprises at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the device at least to: receive, from a second device, a request for obtaining profile information of a set of third devices available for communication with the second device; obtain, based on the request, the profile information of the set of third devices from a core network device; and transmit, to the second device, a response comprising the profile information of the set of third devices.
-
In a third aspect, there is provided a method. The method comprises: discovering, at a device, a set of second devices; transmitting, to a second device in the set of second
devices, a request for obtaining profile information of a set of third devices available for communication with the first device; and receiving, from the second device, a response comprising the profile information of the set of third devices.
-
In a fourth aspect, there is provided a method. The method comprises: receiving, at a device and from a second device, a request for obtaining profile information of a set of third devices available for communication with the device; obtaining, based on the request, the profile information of the set of third devices from a core network device; and transmitting, to the device, a response comprising the profile information of the set of third devices.
-
In a fifth aspect, there is provided an apparatus. The apparatus comprises: means for discovering a set of second devices; means for transmitting, to a second device in the set of second devices, a request for obtaining profile information of a set of third devices available for communication with the first device; and means for receiving, from the second device, a response comprising the profile information of the set of third devices.
-
In a sixth aspect, there is provided an apparatus. The apparatus comprises: means for receiving, from a second device, a request for obtaining profile information of a set of third devices available for communication with the second device; means for obtaining, based on the request, the profile information of the set of third devices from a core network device; and means for transmitting, to the second device, a response comprising the profile information of the set of third devices.
-
In a seventh aspect, there is provided a non-transitory computer readable medium comprising program instructions that, when executed by an apparatus, cause the apparatus to perform at least the method according to the third or fourth aspect.
-
In an eighth aspect, there is provided a computer program comprising instructions, which, when executed by an apparatus, cause the apparatus to perform at least the method according to the third or fourth aspect.
-
It is to be understood that the summary section is not intended to identify key or essential features of embodiments of the present disclosure, nor is it intended to be used to limit the scope of the present disclosure. Other features of the present disclosure will become easily comprehensible through the following description.
BRIEF DESCRIPTION OF THE DRAWINGS
-
Some example embodiments will now be described with reference to the accompanying drawings, where:
-
Fig. 1 illustrates an example communication network in which embodiments of the present disclosure may be implemented;
-
Fig. 2 illustrates a diagram illustrating an example MLO in which embodiments of the present disclosure may be implemented;
-
Fig. 3A illustrates a diagram illustrating an example procedure of a non-AP STA associating with an AP according to a solution;
-
Fig. 3B illustrates a diagram illustrating an example format of an access network query protocol (ANQP) query frame to obtain multiple AP’s profile information according to the solution of Fig. 3A;
-
Fig. 3C illustrates a diagram illustrating an example format of an ANQP response frame to provide multiple AP’s profile information according to the solution of Fig. 3A;
-
Fig. 4 illustrates a diagram illustrating an example process of communication according to some embodiments of the present disclosure;
-
Fig. 5A illustrates a diagram illustrating an example format of an ANQP query frame to obtain AP MLD’s profile information according to some embodiments of the present disclosure;
-
Fig. 5B illustrates a diagram illustrating another example format of an ANQP query frame according to some embodiments of the present disclosure;
-
Fig. 5C illustrates a diagram illustrating still another example format of an ANQP query frame according to some embodiments of the present disclosure;
-
Fig. 6A illustrates a diagram illustrating an example format of an ANQP response frame according to some embodiments of the present disclosure;
-
Fig. 6B illustrates a diagram illustrating another example format of an ANQP response frame according to some embodiments of the present disclosure;
-
Fig. 7A illustrates a diagram illustrating an example ANQP query frame in Case 1 according to some embodiments of the present disclosure;
-
Fig. 7B illustrates a diagram illustrating an example ANQP response frame in Case 1 according to some embodiments of the present disclosure;
-
Fig. 8A illustrates a diagram illustrating an example ANQP query frame in Case 2 according to some embodiments of the present disclosure;
-
Fig. 8B illustrates a diagram illustrating an example ANQP response frame in Case 2 according to some embodiments of the present disclosure;
-
Fig. 9A illustrates a diagram illustrating an example ANQP query frame in Case 3 according to some embodiments of the present disclosure;
-
Fig. 9B illustrates a diagram illustrating an example ANQP response frame in Case 3 according to some embodiments of the present disclosure;
-
Fig. 10 illustrates a flowchart of an example method implemented at a non-AP device according to some embodiments of the present disclosure;
-
Fig. 11 illustrates a flowchart of an example method implemented at an AP device according to some embodiments of the present disclosure;
-
Fig. 12 illustrates a simplified block diagram of a device that is suitable for implementing embodiments of the present disclosure; and
-
Fig. 13 illustrates a block diagram of an example computer readable medium in accordance with some embodiments of the present disclosure.
-
Throughout the drawings, the same or similar reference numerals represent the same or similar element.
DETAILED DESCRIPTION
-
Principle of the present disclosure will now be described with reference to some example embodiments. It is to be understood that these embodiments are described only for the purpose of illustration and help those skilled in the art to understand and implement the present disclosure, without suggesting any limitation as to the scope of the disclosure. The disclosure described herein can be implemented in various manners other than the ones described below.
-
In the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skills in the art to which this disclosure belongs.
-
References in the present disclosure to “one embodiment, ” “an embodiment, ” “an example embodiment, ” and the like indicate that the embodiment described may include a
particular feature, structure, or characteristic, but it is not necessary that every embodiment includes the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to affect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.
-
It shall be understood that although the terms “first” and “second” etc. may be used herein to describe various elements, these elements should not be limited by these terms in any way other than only to distinguish one element from another. For example, a first element could be termed a second element, and similarly, a second element could be termed a first element, without departing from the scope of example embodiments. As used herein, the term “and/or” includes any and all combinations of one or more of the listed terms.
-
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of example embodiments. As used herein, the singular forms “a” , “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” , “comprising” , “has” , “having” , “includes” and/or “including” , when used herein, specify the presence of stated features, elements, and/or components etc., but do not preclude the presence or addition of one or more other features, elements, components and/or combinations thereof. As used herein, “at least one of the following: <a list of two or more elements>” and “at least one of <a list of two or more elements>” and similar wording, where the list of two or more elements are joined by “and” or “or” , mean at least any one of the elements, or at least any two or more of the elements, or at least all the elements.
-
As used in this application, the term “circuitry” may refer to one or more or all of the following:
-
(a) hardware-only circuit implementations (such as implementations in only analog and/or digital circuitry) and
-
(b) combinations of hardware circuits and software, such as (as applicable) :
-
(i) a combination of analog and/or digital hardware circuit (s) with software/firmware and
-
(ii) any portions of hardware processor (s) with software (including digital signal processor (s) ) , software, and memory (ies) that work together to cause an apparatus, such as a mobile phone or server, to perform various functions) and
-
(c) hardware circuit (s) and or processor (s) , such as a microprocessor (s) or a portion of a microprocessor (s) , that requires software (e.g., firmware) for operation, but the software may not be present when it is not needed for operation.
-
This definition of circuitry applies to all uses of this term in this application, including in any claims. As a further example, as used in this application, the term circuitry also covers an implementation of merely a hardware circuit or processor (or multiple processors) or portion of a hardware circuit or processor and its (or their) accompanying software and/or firmware. The term circuitry also covers, for example and if applicable to the particular claim element, a baseband integrated circuit or processor integrated circuit for a mobile device or a similar integrated circuit in server, a cellular network device, or other computing or network device.
-
As used herein, the term “communication network” refers to a network following any suitable communication standards, such as Long Term Evolution (LTE) , LTE-Advanced (LTE-A) , Wideband Code Division Multiple Access (WCDMA) , High-Speed Packet Access (HSPA) , Narrow Band Internet of Things (NB-IoT) , and so on. Furthermore, the communications between a terminal device and a network device in the communication network may be performed according to any suitable generation communication protocols, including, but not limited to, the first generation (1G) , the second generation (2G) , 2.5G, 2.75G, the third generation (3G) , the fourth generation (4G) , 4.5G, the fifth generation (5G) , the future sixth generation (6G) communication protocols, wireless local network communication protocols such as Institute for Electrical and Electronics Engineers (IEEE) 802.11 and the like and/or any other protocols either currently known or to be developed in the future. Embodiments of the present disclosure may be applied in various communication systems. Given the rapid development in communications, there will of course also be future type communication technologies and systems with which the present disclosure may be embodied. It should not be seen as limiting the scope of the present disclosure to only the aforementioned system.
-
As used herein, the term “network device” refers to a node in a communication network via which a terminal device accesses the network and receives services therefrom.
The communication network may be a core network (CN) . The network device in CN (also referred to as core network device herein) may refer to a policy control function (PCF) , an access management function (AMF) , a session management function (SMF) , a user plane function (UPF) , unified data management (UDM) , unified data repository (UDR) , an authentication server function (AUSF) , a ProSe key management function (PKMF) , a direct discovery name management function (DDNMF) , a network exposure function (NEF) , etc..
-
The communication network may be a radio access network (RAN) . The network device in RAN may refer to a base station (BS) or an access point (AP) , for example, a node B (NodeB or NB) , an evolved NodeB (eNodeB or eNB) , a NR next generation NodeB (also referred to as a gNB) , a Remote Radio Unit (RRU) , a radio header (RH) , a remote radio head (RRH) , a relay, a low power node such as a femto, a pico, and so forth, depending on the applied terminology and technology. An radio access network (RAN) split architecture comprises a gNB-CU (centralized unit, hosting radio resource control (RRC) , service data adaptation protocol (SDAP) and packet data convergence protocol (PDCP) layers) controlling a plurality of gNB-DUs (distributed unit, hosting radio link control (RLC) , medium access control (MAC) and physical (PHY) layers) .
-
The term “terminal device” refers to any end device that may be capable of wireless communication. By way of example rather than limitation, a terminal device may also be referred to as a communication device, user equipment (UE) , a Subscriber Station (SS) , a Portable Subscriber Station, a Mobile Station (MS) , or an Access Terminal (AT) . The terminal device may include, but not limited to, a mobile phone, a cellular phone, a smart phone, voice over IP (VoIP) phones, wireless local loop phones, a tablet, a wearable terminal device, a personal digital assistant (PDA) , portable computers, desktop computer, image capture terminal devices such as digital cameras, gaming terminal devices, music storage and playback appliances, vehicle-mounted wireless terminal devices, wireless endpoints, mobile stations, laptop-embedded equipment (LEE) , laptop-mounted equipment (LME) , USB dongles, smart devices, wireless customer-premises equipment (CPE) , an Internet of Things (IoT) device, a watch or other wearable, a head-mounted display (HMD) , a vehicle, a drone, a medical device and applications (e.g., remote surgery) , an industrial device and applications (e.g., a robot and/or other wireless devices operating in an industrial and/or an automated processing chain contexts) , a consumer electronics device, a device operating on commercial and/or industrial wireless networks, or the like. In the following description, the terms “terminal device” , “communication device” , “terminal” ,
“user equipment” and “UE” may be used interchangeably.
-
As used herein, the term “AP device” may refer to a device via which to access any wired or wireless network. For example, the wired or wireless network may be a broadband network, the Internet, a local area network, a metropolitan area network, a mobile communication network, or the like. For convenience, AP devices are also referred to as AP stations or APs herein. The AP device may support, for example, the Wi-Fi protocol or any other known or future-developed similar protocols. For example, the AP device may be a wireless router, a terminal device with a router function, a network device with a router function, and so on. The term “non-AP device” may refer to a device for accessing any wired or wireless network via an AP device. Non-AP devices may support, for example, the Wi-Fi protocol or any other known or future developed similar protocols. For example, a non-AP device may be any of a terminal device, a network device, and so on. For convenience, non-AP devices are also referred to as non-AP stations or non-APs herein. It should be understood that the term “station” may refer to an AP station or a non-AP station.
-
Although functionalities described herein can be performed, in various example embodiments, in a fixed and/or a wireless network node, in other example embodiments, functionalities may be implemented in a user equipment apparatus (such as a cell phone or tablet computer or laptop computer or desktop computer or mobile IoT device or fixed IoT device) . This user equipment apparatus can, for example, be furnished with corresponding capabilities as described in connection with the fixed and/or the wireless network node (s) , as appropriate. The user equipment apparatus may be the user equipment and/or a control device, such as a chipset or processor, configured to control the user equipment when installed therein. Examples of such functionalities include the bootstrapping server function and/or the home subscriber server, which may be implemented in the user equipment apparatus by providing the user equipment apparatus with software configured to cause the user equipment apparatus to perform from the point of view of these functions/nodes.
-
A client steering solution may be summarized as a service set identifier (SSID) and probe-based client steering and a block list-based client steering.
-
In the SSID and probe-based client steering, an AP may hide an SSID in a beacon or probe response frame, so that a STA has no way to find and associate with the special AP.
However, in most power sensitive clients or battery-power clients, a client may discover an AP via passive scan without sending any probe request frame, an SSID-hidden in beacon or probe response may cause the client to have less chance to find more APs around, which is undesirable by some client vendors.
-
In the block list-based client steering, an AP may reject an association request if one or more STAs is in a block list. The STA has no ideas on the block list setting by the AP, once the AP reject the association request, the STA does not know which AP should be the right one to associate with. This may give rise to an along association attempt and delay on STA side.
-
Currently, a target AP only can provide the required AP’s profile status according to an AP list filed in an ANQP query frame. That is, the target AP cannot provide additional AP’s profile status that is out of the AP list filed in the ANQP query frame. Further, only the target AP can provide its profile status in response to the ANQP query frame. That is, the target AP cannot provide other AP’s profile status in an ANQP response frame. Thus, it is hard for a target AP to give extra recommendation on candidate AP’s information via ANQP query and response frame exchange. Furthermore, an MLO feature is already defined, but there is no solution to address a client steering on a non-AP MLD.
-
In view of this, embodiments of the present disclosure provide a solution of communication for AP recommendation. In the solution, upon discovery of a set of second devices, a device transmits, to a second device in the set of second devices, a request for obtaining profile information of a set of third devices available for communication with the device. The second device obtains, based on the request, the profile information of the set of third devices from a core network device, and transmits, to the device, a response comprising the profile information of the set of third devices. In this way, power consumption on client side may be reduced and back-and-forth re-association delay may also be reduced significantly. Furthermore, seamless roaming from cellular network to Wi-Fi may be facilitated.
-
In some embodiments, the solution according to embodiments of the present disclosure may be applied in a pre-association phase in which no AP device is associated with a non-AP device. In this case, the solution may be applied for association of the non-AP device with an AP device. In some embodiments, the solution may be applied in a post-association phase in which an AP device has been associated with the non-AP device.
In this case, the solution may be applied for re-association of the non-AP device with another AP device.
-
Principles and implementations of the present disclosure will be described in detail below with reference to the figures.
-
Fig. 1 illustrates a schematic diagram of an example communication network 100 in which embodiments of the present disclosure can be implemented. As shown in Fig. 1, the communication network 100 may include a device 110 as a non-AP device and devices 120, 130, and 140 as AP devices for a WLAN (e.g., a Wi-Fi network) . The device 110 may support setting up one or multiple links with an AP device. Each of the devices 120, 130 and 140 may support setting up one or multiple links with a non-AP device.
-
In the context of the present disclosure, if a non-AP STA supports MLO, the non-AP STA may also be called as a non-AP MLD. If an AP supports MLO, the AP may also be called as an AP MLD. In this case, the term “non-AP STA” may be interchangeably used with “non-AP MLD” or “non-AP device” , and the term “AP” may be interchangeably used with “AP MLD” or “AP device” .
-
As shown in Fig. 1, the communication network 100 may further include a device 150 in a CN. In some embodiments, the device 110 may communicate with the CN (e.g., the device 150) via any of the devices 120, 130 and 140 in a WLAN (e.g., a Wi-Fi network) .
-
Continuing to refer to Fig. 1, the communication network 100 may further include a device 160 in a RAN. In some embodiments, the device 110 may communicate with the device 150 via the device 160 in a cellular network. For example, the device 110 may communicate with the device 160 via an air interface such as Uu interface or the like. The device 160 may communicate with the device 150 via an Xn interface.
-
In this example, the device 110 is illustrated as a mobile phone, the devices 120, 130, and 140 are illustrated as routers, the device 160 is illustrated as a base station. It should be noted that any of the devices 110, 120, 130, 140 and 160 may be any other suitable types of terminal devices or network devices, such as mobile phones, sensors and so on. Further, it is to be understood that the number of devices is only for the purpose of illustration without suggesting any limitations. The communication network 100 may include any suitable number or type of devices adapted for implementing embodiments of the present disclosure.
-
Communications in the communication network 100 may be implemented according to any proper communication protocol (s) , comprising, but not limited to, cellular communication protocols of the first generation (1G) , the second generation (2G) , the third generation (3G) , the fourth generation (4G) , the fifth generation (5G) , the future sixth generation (6G) , wireless local network communication protocols such as Institute for Electrical and Electronics Engineers (IEEE) 802.11 and the like, and/or any other protocols currently known or to be developed in the future. Moreover, the communication may utilize any proper wireless communication technology, comprising but not limited to: Code Division Multiple Access (CDMA) , Frequency Division Multiple Access (FDMA) , Time Division Multiple Access (TDMA) , Frequency Division Duplex (FDD) , Time Division Duplex (TDD) , Multiple-Input Multiple-Output (MIMO) , Orthogonal Frequency Division Multiple (OFDM) , Discrete Fourier Transform spread OFDM (DFT-s-OFDM) and/or any other technologies currently known or to be developed in the future.
-
In some scenarios, the device 110 as a non-AP MLD and one of the devices 120, 130 and 140 as an AP MLD may communicate with each other via multiple links. Fig. 2 illustrates a diagram 200 illustrating an example MLO in which embodiments of the present disclosure may be implemented. As shown in Fig. 2, before multi-link setup, the AP MLD and the non-AP MLD may only communicate on a single link, e.g., via 2.4GHz wireless medium (WM) . For example, the non-AP MLD may transmit an association request frame to the AP MLD and receive an association response frame from the AP MLD via 2.4GHz link. After successful multi-link setup, three links on 2.4GHz, 5GHz and 6GHz may be established for simultaneous communication between the AP MLD and the non-AP MLD. In this way, data throughput may be improved and transmission latency may be reduced significantly.
-
In some scenarios, as the device 110 moves, the device 110 may switch from communicating with the device 160 to communicating with one of the devices 120, 130 and 140 based on a Passpoint protocol. Passpoint protocol is a protocol developed by the Wi-Fi alliance to allow users to easily transition between partner networks. The vision is that people using mobile devices like smartphones and laptops will have reduced reliance on mobile data and be able to seamlessly transition between Wi-Fi networks as they travel.
-
Fig. 3A illustrates a diagram 300A illustrating an example procedure of a non-AP STA associating with an AP (Passpoint capable AP) according to a solution. In the solution, the non-AP STA and the AP communicates via a single link. As shown in Fig.
3A, the non-AP STA may discover 310 the AP through corresponding elements carried in Beacon and probe response frame.
-
Then the non-AP STA may query 311 a Passpoint profile supported on the AP via an ANQP query frame. Fig. 3B illustrates a diagram 300B illustrating an example format of an ANQP query frame to obtain multiple AP’s profile information according to the solution of Fig. 3A. As shown in Fig. 3B, an Info ID field indicates a name of the ANQP query frame and a Length field indicates the number of octets in Information fields. An AP List field comprises an AP List Length field and a BSSIDs field. The AP List Length field contains a length of the BSSIDs field. The BSSIDs field contains one or more BSSID fields. Each BSSID field indicates a basic service set identifier (BSSID) of a basic service set (BSS) of an AP that a non-AP STA wants to query. An ANQP Query IDs field contains one or more ANQP Query ID fields that are ordered by increasing info ID value. Each ANQP Query ID field is an unsigned integer of length two octets.
-
Referring back to Fig. 3A, the AP may indicate 312, to the non-AP STA, information of the Passpoint profile in an ANQP response frame. Fig. 3C illustrates a diagram 300C illustrating an example format of an ANQP response frame to provide multiple AP’s profile information according to the solution of Fig. 3A. As shown in Fig. 3C, an Info ID field indicates a name of the ANQP response frame and a Length field indicates the number of octets in Information fields. An AP Response Tuples field comprises an AP Identifier field, an AP Response Length field and an AP Query Response field. The AP Identifier field indicates the BSSID of the BSS of the AP that the non-AP STA queries. The AP Response Length field indicates the number of octets in the following AP Query Response field. The AP Query Response field contains an ANQP response corresponding to the ANQP Query ID in the received ANQP query frame.
-
Referring back to Fig. 3A, based on the above frame exchange, the non-AP STA may associate 313 with the AP if their supported Passpoint profile matches.
-
However, the solution of Fig. 3A has certain drawbacks. Some clients’ vendors are in favor of a solution in which the non-AP STA makes the association decision rather than relying on an undesired response on the AP or AP MLD side.
-
Further, AP MLD will be a mainstream in future, but there is no solution to address the AP MLD or the affiliated APs’ recommendation in pre-association phase, especially in the seamless roaming use case from cellular network to Wi-Fi.
-
In view of this, embodiments of the present disclosure provide a solution of communication for AP recommendation. The solution may be based on ANQP and may be extended to an MLD. Its details will be described below in connection with Figs. 4 to 9B.
-
Fig. 4 illustrates a diagram illustrating an example process 400 of communication according to some embodiments of the present disclosure. For the purpose of discussion, the process 400 will be described with reference to Fig. 1. The process 400 may involve the devices 110, 120, 130, 140 and 150 as illustrated in Fig. 1. It would be appreciated that although the process 400 has been described in the communication network 100 of Fig. 1, this process may be likewise applied to other communication scenarios.
-
As shown in Fig. 4, the device 110 (i.e., a non-AP device) discovers 410 a set of AP devices (also referred to as a set of discovered AP devices herein) , i.e., one or more AP devices (e.g., the devices 120, 130 and 140) . In some embodiments, the device 110 may discover the devices 120, 130 and 140 via active scan or passive scan. For example, the device 120, 130 and 140 may send out beacon frames periodically. Upon detection of the beacon frames, the device 110 may transmit probe response frames to the devices 120, 130 and 140. Then the devices 120, 130 and 140 may be discovered.
-
With reference to Fig. 4, the device 110 transmits 420, to one of the set of discovered AP devices (e.g., the device 120) , a request for obtaining profile information of a further set of AP devices (also referred to as a set of available AP devices herein) available for communication with the device 110. In some embodiments, the set of available AP devices may be a subset of the set of discovered AP devices. In some embodiments, the set of available AP devices may be different from the set of discovered AP devices. For example, the set of available AP devices may have no overlap with the set of discovered AP devices. In this case, any of the set of available AP devices is not discovered. In another example, the set of available AP devices may partially overlap with the set of discovered AP devices. In this case, a part of the set of available AP devices is discovered and another part of the set of available AP devices is not discovered.
-
In some embodiments, an AP device in the set of available AP devices may support a single link for communication with the device 110. In some embodiments, an AP device in the set of available AP devices may support multiple links for communication with the device 110.
-
In some embodiments, the request may comprise medium access control (MAC) address information of the set of discovered AP devices. Based on such request, the device 120 may know that the device 110 is querying profile information of the set of available AP devices.
-
In some embodiments, the device 110 may transmit the request in an ANQP query frame. It is to be understood that any other suitable forms are also feasible. In some embodiments, all the set of discovered AP devices (e.g., the devices 120, 130 and 140) may support multiple links for communication with the device 110. In this case, an ANQP query frame may be configured as that shown in Fig. 5A. Fig. 5A illustrates a diagram 500A illustrating an example format of an ANQP query frame to obtain AP MLD’s profile information according to some embodiments of the present disclosure. Comparing with the ANQP query frame of Fig. 3B, an AP MLD List field 510 is used to replace the AP List field of Fig. 3B. Other fields are unchanged and thus not repeated here for concise. In this way, an ANQP query frame may be extended to an MLD.
-
As shown in Fig. 5A, the AP MLD List field 510 may comprise an AP MLD List Length field 511 and an AP MLD MAC address field 512. The AP MLD List Length field 511 contains a length of the AP MLD MAC address field 512. The AP MLD MAC address field 512 contains one or more AP MLD MAC address fields. Each AP MLD MAC address field indicates an AP MLD that a non-AP STA would want to query. It is to be understood that the example of Fig. 5A is merely for illustration, and not for limitation. Any other suitable formats for an AP MLD may also be feasible.
-
In some embodiments, some of the set of discovered AP devices (e.g., the devices 120 and 130) may support multiple links for communication with the device 110, and some of the set of discovered AP devices (e.g., the device 140) may support only one link for communication with the device 110. In this case, an ANQP query frame may be configured as that shown in Fig. 5B. Fig. 5B illustrates a diagram 500B illustrating another example format of an ANQP query frame according to some embodiments of the present disclosure. Comparing with the ANQP query frame of Fig. 3B, an AP and AP MLD hybrid List field 520 is used to replace the AP List field of Fig. 3B. Other fields are unchanged and thus not repeated here for conciseness. In this way, an ANQP query frame may also be extended to an MLD.
-
As shown in Fig. 5B, the AP and AP MLD hybrid List field 520 may comprise an
AP and AP MLD hybrid List Length field 521 and an AP and AP MLD hybrid MAC address field 522. The AP and AP MLD hybrid List Length field 521 contains a length of the AP and AP MLD hybrid MAC address field 512. The AP and AP MLD hybrid MAC address field 522 contains one or more AP and AP MLD hybrid MAC address fields. Each AP and AP MLD hybrid MAC address field indicates an AP that is not affiliated with AP MLD supporting a single link or an AP MLD supporting multiple links that a non-AP STA would want to query. It is to be understood that the example of Fig. 5B is merely for illustration, and not for limitation. Any other suitable formats for both AP supporting a single link and AP MLD supporting multiple links may also be feasible.
-
In some embodiments, the request may comprise service set identifier (SSID) information of the set of discovered AP devices. Based on such request, the device 120 may know that the device 110 is querying profile information of the set of available AP devices.
-
In some embodiments, an AP device in the set of discovered AP devices may support one or multiple links for communication with the device 110. An ANQP query frame may be configured as that shown in Fig. 5C. Fig. 5C illustrates a diagram 500C illustrating still another example format of an ANQP query frame according to some embodiments of the present disclosure. Comparing with the ANQP query frame of Fig. 3B, an AP/AP MLD SSID List field 530 is used to replace the AP List field of Fig. 3B. Other fields are unchanged and thus not repeated here for conciseness. In this way, an ANQP query frame may be extended to an MLD.
-
As shown in Fig. 5C, the AP/AP MLD SSID List field 530 may comprise an SSID Length field 531 and an SSID field 532. The SSID Length field 531 contains a length of SSID of an AP supporting a single link or AP MLD supporting multiple links. The SSID field 532 contains an SSID of the AP or AP MLD. The SSID field indicates the one or more AP or AP MLD with the SSID that a non-AP STA would want to query. It is to be understood that the example of Fig. 5C is merely for illustration, and not for limitation. Any other suitable formats based on an SSID may also be feasible.
-
In some embodiments, the request may comprise information indicating the obtaining of the profile information of the set of available AP devices. Based on such request, the device 120 may know that the device 110 is querying profile information of all the AP devices available for communication with the device 110.
-
In some embodiments, the information may be predetermined. In some embodiments, the information may be preconfigured or configured. For example, an AP MLD MAC address field 512 in the example of FIG. 5A may include FF: FF: FF: FF: FF: FF. In another example, an AP and AP MLD hybrid MAC address field 522 in the example of FIG. 5B may include FF: FF: FF: FF: FF: FF.
-
In some embodiments, the profile information may be associated with a cellular network, e.g., 3GPP cellular network. In some embodiments, the profile information may be associated with a network access identifier (NAI) realm list. It is to be understood that any other suitable information may also be feasible.
-
Referring back to Fig. 4, based on the request, the device 120 obtains 430, from the device 150 in CN, the profile information of the set of available AP devices. In some embodiments, the device 120 may transmit 431 the request (e.g., ANQP query frame) to the device 150. Based on the request, the device 150 may detect throughput and latency requirement of current traffic, and determine available link or AP (i.e., the profile information of the set of available AP devices) . Then the device 150 may indicate 432 the profile information of the set of available AP devices to the device 120.
-
Referring back to Fig. 4, the device 120 transmits 440, to the device 110, a response comprising the profile information of the set of available AP devices. In some embodiments, the device 110 may transmit the response in an ANQP response frame. It is to be understood that any other suitable forms are also feasible.
-
In some embodiments, the response may comprise MAC address information of an AP device in the set of available AP devices, the profile information of the AP device associated with the MAC address information, and the number of available links of the AP device if the AP device supports multiple links.
-
In some embodiments, an ANQP response frame may be configured as that shown in Fig. 6A. Fig. 6A illustrates a diagram 600A illustrating an example format of an ANQP response frame according to some embodiments of the present disclosure. Comparing with the ANQP response frame of Fig. 3C, an AP MLD Response Tuples field 610 is used to replace the AP Response Tuples field of Fig. 3C. Other fields are unchanged and thus not repeated here for conciseness. In this way, an ANQP response frame may be extended to an MLD.
-
As shown in Fig. 6A, the AP MLD Response Tuples field 610 may comprise an AP
MLD Identifier field 611, an AP MLD Response Length field 612, an available affiliated APs bitmap field 613 and an AP MLD Query Response field 614. The AP MLD Identifier field 611 indicates an MLD MAC address of an AP MLD that a non-AP STA queries. The AP MLD Response Length field 612 indicates the number of octets in the following Available affiliated APs bitmap and AP MLD Query Response fields 613 and 614. The available affiliated APs bitmap field 613 indicates the available APs or links status for the non-AP STA to set up. The AP MLD Query Response field 614 contains an ANQP response corresponding to the ANQP Query ID in the received ANQP Query frame. It is to be understood that the example of Fig. 6A is merely for illustration, and not for limitation. Any other suitable formats for an MLD may also be feasible.
-
In some embodiments, an ANQP response frame may be configured as that shown in Fig. 6B. Fig. 6B illustrates a diagram 600B illustrating another example format of an ANQP response frame according to some embodiments of the present disclosure. Comparing with the ANQP response frame of Fig. 3C, an AP and AP MLD hybrid Response Tuples field 620 is used to replace the AP Response Tuples field of Fig. 3C. Other fields are unchanged and thus not repeated here for conciseness. In this way, an ANQP response frame may be extended to an MLD.
-
As shown in Fig. 6B, the AP and AP MLD hybrid Response Tuples field 620 may comprise an AP and AP MLD Identifier field 621, an AP and AP MLD hybrid Response Length field 622, an available affiliated APs bitmap field 623 and an AP or AP MLD Query Response field 624. The AP and AP MLD Identifier field 621 indicates a BSSID of an AP supporting a single link or an MLD MAC address of an AP MLD that a non-AP STA queries. The AP and AP MLD hybrid Response Length field 622 indicates the number of octets in the following Available affiliated APs bitmap and AP or AP MLD Query Response fields 623 and 624. The available affiliated APs bitmap field 623 indicates the available APs or links status for the non-AP STA to set up. The field 623 is only available when the AP and AP MLD identifier field 621 is an MLD MAC address of an AP MLD. Otherwise, the length of the field 623 is set to 0. The AP or AP MLD Query Response field 624 contains an ANQP response corresponding to the ANQP Query ID in the received ANQP Query frame. It is to be understood that the example of Fig. 6B is merely for illustration, and not for limitation. Any other suitable formats may also be feasible.
-
Referring back to Fig. 4, upon reception of the response, the device 110 may make 450 the final decision to associate with an AP device. In some embodiments, the device
110 may select 451 the AP device from the set of available AP devices. For example, the device 110 may select the AP device based on signal strength such as a receiving signal strength indication (RSSI) . It is to be understood that any other suitable ways are also feasible. Then the device 110 may associate 452 with the selected AP device. In this way, WLAN connection such as Wi-Fi connection may be set up.
-
For illustration, some example embodiments will be further described in connection with cases 1-3 below.
-
Case 1: ANQP query including special AP and AP MLD list
-
In the case 1, a non-AP MLD may discover more than one AP MLDs via active or passive scan. The non-AP MLD may send ANQP query frame to query an AP or AP MLD list around to a target AP MLD via the format shown in Fig. 5A or Fig. 5B. After receiving the ANQP request frame with the AP or AP MLD list, the target AP MLD may respond with an ANQP response frame with an AP or AP MLD list shown in Fig. 6A or Fig. 6B. In some embodiments, the target AP MLD may provide partial AP or AP MLD list that is subset of the AP or AP MLD list in the ANQP query frame. Then the non-AP MLD may make the final decision to associate with one AP or AP MLD based on the AP and AP MLD list in the ANQP response frame provided by the target AP MLD.
-
Case 2: ANQP query on all available APs and AP MLDs around
-
In the case 2, a non-AP MLD may discover only one AP MLD via active or passive scan. The non-AP MLD may send an ANQP query frame to a target AP MLD to query all available AP or AP MLD around with the format shown in Fig. 5A or Fig. 5B, in which the AP MLD MAC address or AP and AP MLD MAC address equal to FF: FF: FF: FF: FF: FF respectively. After receiving the ANQP query frame in above step, the target AP MLD may respond with an ANQP response frame carrying all available AP or AP MLD list shown in Fig. 6A or Fig. 6B. Then the non-AP MLD may make the final decision to associate with one AP or AP MLD based on the AP and AP MLD lists in the ANQP response frame provided by the target AP MLD.
-
Case 3: ANQP query on all available APs and AP MLDs with certain SSID around
-
In the case 3, a non-AP MLD may discover only one AP MLD via active or passive scan. The non-AP MLD may send an ANQP query frame to a target AP MLD to query all available AP and/or AP MLD around with the format shown in Fig. 5A or Fig. 5B, in which an SSID field equals to a certain SSID. After receiving the ANQP query frame
in above step, the target AP MLD may respond with an ANQP response frame carrying all available AP or AP MLD list shown in Fig. 6A or Fig. 6B. In some embodiments, the SSID info of AP or AP MLD in list of the ANQP response frame may map the SSID in the corresponding ANQP query frame. Then the non-AP MLD may make the final decision to associate with one AP or AP MLD based on the AP and AP MLD lists in the ANQP response frame provided by the target AP MLD.
-
More detailed embodiments will be given with reference to the example of Fig. 1 and in connection with the above cases 1-3. It is assumed that the device 150 is responsible for UE/non-AP MLD authentication and registration via base station or AP/AP MLD. The devices 120 (also called as AP MLD-1) and 130 (also called as AP MLD-2) operate three links on 2.4GHz, 5GHz and 6GHz respectively. The device 140 (also called as AP-3) operates a single link on 5GHz. The devices 120, 130 and 140 set SSID information with “Company” , “Guest” and “Company” respectively. The device 110 is a cellphone device supporting both cellular network and MLO function defined by Wi-Fi 7. The device 110 may perform the following steps for seamless roaming from cellular network to Wi-Fi.
-
Example for Case 1
-
In place 1, the device 110 is having video/voice traffic via the connection of the device 160 (cellular network) . The device 110 moves from place 1 to place 2 and detects a Passpoint feature is available in Wi-Fi network via the received Beacon/response frames from the devices 120, 130 and 140. The device 110 sends an ANQP query frame shown in Fig. 7A to the device 120. Fig. 7A illustrates a diagram 700A illustrating an example ANQP query frame in Case 1 according to some embodiments of the present disclosure. As shown in Fig. 7A, the AP MLD identifier or AP and AP MLD identifier equals to a MAC address (AP MLD-1 MAC) of the device 120, a MAC address (AP MLD-2 MAC) of the device 130 and a BSSID/MAC address (AP-3 BSSID/MAC) of the device 140. The ANQP query ID field equals to 264 (3GPP Cellular Network) .
-
Core network receives the ANQP query frame via the device 120 and detects throughput and latency requirement of current traffic. Core network may indicate only the link operating on 5GHz and 6GHz available on both the device 120 and the device 130. The device 120 may respond with the ANQP response frame including the information shown in Fig. 7B. Fig. 7B illustrates a diagram 700B illustrating an example ANQP
response frame in Case 1 according to some embodiments of the present disclosure. As shown in Fig. 7B, block 710 indicates profile information of the device 120 (AP MLD-1) , and block 720 indicates profile information of the device 130 (AP MLD-2) .
-
Then the device 110 may associate with the device 130 (AP MLD-2) based on the above ANQP frame exchange. Once the Wi-Fi connection is set up, the traffic may be offloaded from the device 160 to the currently associated device 130. In this way, an end user may not suffer from a service interruption issue.
-
Example for Case 2
-
In place 1, the device 110 is having video and/or voice traffic via the connection of the device 160 (cellular network) . The device 110 moves from place 1 to place 2 and detects a Passpoint feature is available in Wi-Fi network via the received Beacon/response frame from the devices 120 (AP MLD-1) . The device 110 sends an ANQP query frame shown in Fig. 8A to the device 120. Fig. 8A illustrates a diagram 800A illustrating an example ANQP query frame in Case 2 according to some embodiments of the present disclosure. As shown in Fig. 8A, the AP MLD identifier or AP and AP MLD identifier equals to FF: FF: FF: FF: FF: FF. The ANQP query ID field equals to 264 (3GPP Cellular Network) .
-
Core network receives the ANQP query frame via the device 120 and detects throughput and latency requirement of current traffic. Core network may recommend the device 130 (AP MLD-2) as a candidate AP MLD that is capsulated in the ANQP response frame sent by the device 120 (AP MLD-1) . Fig. 8B illustrates a diagram 800B illustrating an example ANQP response frame in Case 2 according to some embodiments of the present disclosure. As shown in Fig. 8B, block 810 indicates profile information of the device 130 (AP MLD-2) .
-
Then the device 110 may associate with the device 130 (AP MLD-2) based on the above ANQP frame exchange. Once the Wi-Fi connection is set up, the traffic may be offloaded from the device 160 to the currently associated device 130. In this way, an end user may not suffer from a service interruption issue.
-
Example for Case 3
-
In place 1, the device 110 is having video and/or voice traffic via the connection of the device 160 (cellular network) . The device 110 moves from place 1 to place 2 and detects a Passpoint feature is available in Wi-Fi network via the received Beacon/response
frame from the devices 120 (AP MLD-1) . The device 110 sends an ANQP query frame shown in Fig. 9A to the device 120. Fig. 9A illustrates a diagram 900A illustrating an example ANQP query frame in Case 3 according to some embodiments of the present disclosure. As shown in Fig. 9A, the SSID field equal to “Company” . The ANQP query ID field equals to 264 (3GPP Cellular Network) .
-
Core network receives the ANQP query frame via the device 120 and detects throughput and latency requirement of current traffic. Core network may recommend the device 140 (AP-3) as a candidate AP MLD that is capsulated in the ANQP response frame sent by the device 120 (AP MLD-1) . Fig. 9B illustrates a diagram 900B illustrating an example ANQP response frame in Case 3 according to some embodiments of the present disclosure. As shown in Fig. 9B, block 910 indicates profile information of the device 140 (AP-3) .
-
Then the device 110 may associate with the device 140 (AP-3) based on the above ANQP frame exchange. Once the Wi-Fi connection is set up, the traffic may be offloaded from the device 160 to the currently associated device 140. In this way, an end user may not suffer from a service interruption issue.
-
So far, the process of communication for AP recommendation is described. With the process 400, an ANQP based AP recommendation solution is provided. Clients (i.e., STAs) may not discover all candidate APs or AP MLDs around, and a target AP or AP MLD may provide all the candidate APs or AP MLDs via ANQP query and response frame exchange. Thus, power consumption on client side may be reduced.
-
Furthermore, based on the candidate AP or AP MLDs in the ANQP response frame, a client may make a final decision on an association with one of the candidate AP or AP MLDs without suffering from any association rejection issue. Thus, this may reduce back-and-forth re-association delay significantly.
-
Network may only provide the candidate AP/AP MLD list that can meet current traffic requirement, alike on-going video and audio traffic, via the ANQP frame exchange, and the STA may not suffer from the service broken issue after switching the network connection from cellular network to Wi-Fi, which can improve the user’s experience. Thus, seamless roaming from cellular network to Wi-Fi may be facilitated.
-
It is to be noted that the above process 400 is merely an example, and may have additional or less operations. It is also to be noted that operations of the above process
300 may be carried out separately or in any suitable combination.
-
Corresponding to the above process, example embodiments of the present disclosure also provide methods of communication implemented at a non-AP device and an AP device. Fig. 10 illustrates a flowchart of an example method 1000 implemented at a non-AP device according to some embodiments of the present disclosure. For the purpose of discussion, the method 1000 will be described with reference to Fig. 1.
-
At block 1010, a non-AP device (e.g., the device 110) discovers a set of AP devices (e.g., the devices 120, 130 and 140) . In some embodiments, an AP device in the set of AP devices may support one or multiple links for communication with the non-AP device.
-
At block 1020, the non-AP device transmits, to an AP device (e.g., the device 120) in the set of AP devices, a request for obtaining profile information of a further set of AP devices (e.g., the device 130 or 140 or other AP devices not shown or any combination of them) available for communication with the non-AP device. In some embodiments, an AP device in the further set of AP devices may support one or multiple links for communication with the non-AP device. In some embodiments, the profile information may be associated with a cellular network.
-
In some embodiments, the request may comprise MAC address information of the set of AP devices (e.g., the devices 120, 130 and 140) . In some embodiments, the request may comprise SSID information of the set of AP devices (e.g., the devices 120, 130 and 140) . In some embodiments, the request may comprise information indicating the obtaining of the profile information of the further set of AP devices.
-
At block 1030, the non-AP device receives, from the AP device (e.g., the device 120) , a response comprising the profile information of the further set of AP devices.
-
In some embodiments, the response may comprise MAC address information of an AP device in the further set of AP devices, the profile information of the AP device associated with the MAC address information, and the number of available links of the AP device if the AP device supports multiple links.
-
In some embodiments, the non-AP device may select an AP device from the further set of AP devices, and associate the non-AP device with the selected AP device via one or multiple links.
-
With the method 1000, power consumption on client side may be reduced and back-and-forth re-association delay may be reduced significantly. Furthermore, seamless roaming from cellular network to Wi-Fi may be facilitated.
-
Fig. 11 illustrates a flowchart of an example method 1100 implemented at an AP device according to some embodiments of the present disclosure. For the purpose of discussion, the method 1100 will be described with reference to Fig. 1.
-
At block 1110, an AP device (e.g., the device 120) receives, from a non-AP device (e.g., the device 110) , a request for obtaining profile information of a set of AP devices (i.e., a set of available AP devices) available for communication with the non-AP device. In some embodiments, the AP device may be comprised in a set of AP devices (i.e., a set of discovered AP devices) discovered by the non-AP device.
-
In some embodiments, an AP device in the set of discovered AP devices may support one or multiple links for communication with the non-AP device. In some embodiments, an AP device in the set of available AP devices may support one or multiple links for communication with the non-AP device. In some embodiments, the profile information may be associated with a cellular network.
-
In some embodiments, the request may comprise MAC address information of the set of discovered AP devices. In some embodiments, the request may comprise SSID information of the set of discovered AP devices. In some embodiments, the request may comprise information indicative of the obtaining of the profile information of the set of available AP devices.
-
At block 1120, the AP device (e.g., the device 120) obtains, based on the request, the profile information of the set of AP devices from a core network device (e.g., the device 150) .
-
At block 1130, the AP device (e.g., the device 120) transmits, to the non-AP device (e.g., the device 110) , a response comprising the profile information of the set of AP devices.
-
In some embodiments, the response may comprise MAC address information of an AP device in the set of available AP devices, the profile information of the AP device associated with the MAC address information, and the number of available links of the AP device if the AP device supports multiple links.
-
With the method 1100, an optimized AP recommendation may be achieved. Reduced power consumption on client side may be facilitated and reduced back-and-forth re-association delay may also be facilitated. Furthermore, seamless roaming from cellular network to Wi-Fi may be facilitated.
-
It is to be noted that the operations of the methods 1000 and 1100 correspond to that described in connection with Figs. 4 to 9B, and thus other details are not repeated here for conciseness.
-
Example embodiments of the present disclosure also provide the corresponding apparatus. In some embodiments, an apparatus (for example, a non-AP device) capable of performing the method 1000 may comprise means for performing the respective steps of the method 1000. The means may be implemented in any suitable form. For example, the means may be implemented in a circuitry or software module.
-
In some embodiments, the apparatus comprises: means for discovering a set of second devices (e.g., the set of discovered AP devices) ; means for transmitting, to a second device in the set of second devices, a request for obtaining profile information of a set of third devices (e.g., the set of available AP devices) available for communication with the device; and means for receiving, from the second device, a response comprising the profile information of the set of third devices.
-
In some embodiments, the request may comprise MAC address information of the set of second devices. In some embodiments, the request may comprise SSID information of the set of second devices. In some embodiments, the second device in the set of second devices may support one or multiple links for communication with the device. In some embodiments, the request may comprise information indicative of the obtaining of the profile information of the set of third devices.
-
In some embodiments, the response may comprise MAC address information of a third device in the set of third devices, the profile information of the third device associated with the MAC address information, and the number of available links of the third device if the third device supports multiple links.
-
In some embodiments, a third device in the set of third devices supports one or multiple links for communication with the device.
-
In some embodiments, the apparatus may further comprise: means for selecting a third device from the set of third devices; and means for associating the device with the
third device via one or multiple links.
-
In some embodiments, the device may be a non-AP device, the second device and a third device in the set of third devices may be AP devices. In some embodiments, the profile information may be associated with a cellular network.
-
In some embodiments, an apparatus (for example, an AP device) capable of performing the method 1100 may comprise means for performing the respective steps of the method 1100. The means may be implemented in any suitable form. For example, the means may be implemented in a circuitry or software module.
-
In some embodiments, the apparatus comprises: means for receiving, from a second device (e.g., a non-AP device) , a request for obtaining profile information of a set of third devices (e.g., the set of available AP devices) available for communication with the second device; means for obtaining, based on the request, the profile information of the set of third devices from a core network device; and means for transmitting, to the second device, a response comprising the profile information of the set of third devices.
-
In some embodiments, the request may comprise MAC address information of a set of devices (e.g., the set of discovered AP devices) comprising the device. In some embodiments, the request may comprise SSID information of a set of devices (e.g., the set of discovered AP devices) comprising the device. In some embodiments, at least one device in the set of devices supports one or multiple links for communication with the second device.
-
In some embodiments, the request may comprise information indicative of the obtaining of the profile information of the set of third devices.
-
In some embodiments, the response may comprise MAC address information of a third device in the set of third devices, the profile information of the third device associated with the MAC address information, and the number of available links of the third device if the third device supports multiple links.
-
In some embodiments, a third device in the set of third devices may support one or multiple links for communication with the second device.
-
In some embodiments, the second device may be a non-AP device, the device and a third device in the set of third devices may be AP devices. In some embodiments, the profile information may be associated with a cellular network.
-
Fig. 12 is a simplified block diagram of a device 1200 that is suitable for implementing embodiments of the present disclosure. The device 1200 may be provided to implement the communication device, for example the first device 110 or the second device 120 as shown in Fig. 1. As shown, the device 1200 includes one or more processors 1210, one or more memories 1220 coupled to the processor 1210, and one or more communication modules 1240 coupled to the processor 1210.
-
The communication module 1240 is for bidirectional communications. The communication module 1240 has at least one antenna to facilitate communication. The communication interface may represent any interface that is necessary for communication with other network elements.
-
The processor 1210 may be of any type suitable to the local technical network and may include one or more of the following: general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) and processors based on multicore processor architecture, as non-limiting examples. The device 1200 may have multiple processors, such as an application specific integrated circuit chip that is slaved in time to a clock which synchronizes the main processor.
-
The memory 1220 may include one or more non-volatile memories and one or more volatile memories. Examples of the non-volatile memories include, but are not limited to, a Read Only Memory (ROM) 1224, an electrically programmable read only memory (EPROM) , a flash memory, a hard disk, a compact disc (CD) , a digital video disk (DVD) , and other magnetic storage and/or optical storage. Examples of the volatile memories include, but are not limited to, a random access memory (RAM) 1222 and other volatile memories that will not last in the power-down duration.
-
A computer program 1230 includes computer executable instructions that are executed by the associated processor 1210. The program 1230 may be stored in the ROM 1220. The processor 1210 may perform any suitable actions and processing by loading the program 1230 into the RAM 1220.
-
The embodiments of the present disclosure may be implemented by means of the program 1230 so that the device 1200 may perform any process of the disclosure as discussed with reference to Figs. 1 to 11. The embodiments of the present disclosure may also be implemented by hardware or by a combination of software and hardware.
-
In some embodiments, the program 1230 may be tangibly contained in a computer
readable medium which may be included in the device 1200 (such as in the memory 1220) or other storage devices that are accessible by the device 1200. The device 1200 may load the program 1230 from the computer readable medium to the RAM 1222 for execution. The computer readable medium may include any types of tangible non-volatile storage, such as ROM, EPROM, a flash memory, a hard disk, CD, DVD, and the like. Fig. 13 shows an example of the computer readable medium 1300 in form of CD or DVD. The computer readable medium has the program 1230 stored thereon.
-
Generally, various embodiments of the present disclosure may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. Some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device. While various aspects of embodiments of the present disclosure are illustrated and described as block diagrams, flowcharts, or using some other pictorial representations, it is to be understood that the block, apparatus, system, technique or method described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
-
The present disclosure also provides at least one computer program product tangibly stored on a non-transitory computer readable storage medium. The computer program product includes computer-executable instructions, such as those included in program modules, being executed in a device on a target real or virtual processor, to carry out the method 1000 or 1100 as described above with reference to Figs. 10 and 11. Generally, program modules include routines, programs, libraries, objects, classes, components, data structures, or the like that perform particular tasks or implement particular abstract data types. The functionality of the program modules may be combined or split between program modules as desired in various embodiments. Machine-executable instructions for program modules may be executed within a local or distributed device. In a distributed device, program modules may be located in both local and remote storage media.
-
Program code for carrying out methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes,
when executed by the processor or controller, cause the functions/operations specified in the flowcharts and/or block diagrams to be implemented. The program code may execute entirely on a machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
-
In the context of the present disclosure, the computer program codes or related data may be carried by any suitable carrier to enable the device, apparatus or processor to perform various processes and operations as described above. Examples of the carrier include a signal, computer readable medium, and the like.
-
The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable medium may include but not limited to an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of the computer readable storage medium would include an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM) , a read-only memory (ROM) , an erasable programmable read-only memory (EPROM or Flash memory) , an optical fiber, a portable compact disc read-only memory (CD-ROM) , an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. The term “non-transitory, ” as used herein, is a limitation of the medium itself (i.e., tangible, not a signal) as opposed to a limitation on data storage persistency (e.g., RAM vs. ROM) .
-
Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are contained in the above discussions, these should not be construed as limitations on the scope of the present disclosure, but rather as descriptions of features that may be specific to particular embodiments. Certain features that are described in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments separately or in any suitable sub-combination.
-
Although the present disclosure has been described in languages specific to
structural features and/or methodological acts, it is to be understood that the present disclosure defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.