The disclosure relates generally to decision algorithms for vertical hand-off of a communication session, such as a voice call, between a wireless access network and a cellular network.
Mobile communication can be provided by different types of wireless networks, such as cellular networks and wireless local area networks (WLANS).
In dual-mode mobile devices, it may be advantageous to make use of a WLAN when available, and be able to switch to a cellular network when the WLAN is no longer available.
There remains a need for mechanisms for transferring an ongoing communication session (e.g. a voice call) on a dual-mode mobile device from an AP in a WLAN to a BTS in a cellular network (or vice-versa).
In the figures which illustrate embodiments by example only,
In overview, to handle a communication session at a wireless mobile communications device, after receiving an indication of current signal strength of an access point for a wireless local area network (“WLAN”) a signal strength threshold associated with the access point is retrieved. If the communication session is currently carried by a cellular network and the current signal strength exceeds the signal strength threshold, the communication session is switched from the cellular network to the WLAN. A metric is then adjusted based on timing of the switch relative to any switch of the communication session from the WLAN to the cellular network over a preceding time window associated with the access point. Based on the metric, the signal strength threshold associated with the access point is selectively adjusted. If, on the other hand, the communication session is currently carried by the WLAN and the current signal strength is below the signal strength threshold, an attempt is made to switch the communication session from the WLAN to the cellular network and a metric associated with the access point is adjusted based on whether or not the switch failed. Based on this second metric, the signal strength threshold associated with said access point is adjusted.
Mobile device 10 includes a microprocessor 102, a cellular communications subsystem 104; a WLAN communications subsystem 106; a keyboard 108 and a display 109, along with other input/output devices including a serial port 110, a speaker 111 and a microphone 112; as well as memory devices including a flash memory 114 and a Random Access Memory (RAM) 116; and various other device subsystems 118. The mobile device 10 may have a battery 119 to power the active elements of the mobile device 10.
Operating system software executed by microprocessor 102 is stored in flash memory 114, however it may be stored in other types of memory devices, such as a read only memory (ROM) or a similar storage element. Flash memory 114 also stores application software which may have been installed on mobile device 10 during manufacture or which may have been downloaded to the mobile device 10. Microprocessor 102, in addition to its operating system functions, enables execution of software applications on mobile device 10.
System software and specific device applications, or parts thereof, may be temporarily loaded into a volatile store, such as RAM 116. Communication signals received by the mobile device may also be stored to RAM 116.
Communication functions, including data and voice communications, may be performed through either a cellular communication subsystem (CCS) 104 or through a WLAN communication subsystem (WCS) 106.
CCS 104 uses one or more antennae, illustrated as antenna 105, configured for transmitting and receiving radio frequency (RF) signals to and from base transceiver stations (BTSs), such as BTS 101, of conventional cellular networks. The specific design and implementation of CCS 104 is dependent upon the type of cellular network in which the mobile device 10 is intended to operate. For example, CCS 104 may be designed to operate with the Mobitex™, DataTAC™ or General Packet Radio Service (CPRS) mobile data communication networks and also designed to operate with any of a variety of voice communication networks, such as Advanced Mobile Phone Service (AMPS), Time Division Multiple Access (TDMA), Code Division Multiple Access CDMA, Personal Communications Service (PCS), Global System for Mobile Communications (GSM), etc.
WCS 106 uses one or more antennae, illustrated as antenna 107, configured for transmitting and receiving RE signals to and from conventional access points (APs), such as AP 103, of conventional WLANs. The specific design and implementation of WCS 106 is dependent upon the WLAN in which the mobile device 10 is intended to operate. In one embodiment, WCS 106 is configured to operate in accordance with the IEEE 802.11x standard.
During data communications, a signal, such as a text message or web page download, may be received and processed by one of CCS 104 or WCS 106 and passed to microprocessor 102. The received signal is then further processed by microprocessor 102 for an output to display 109, or alternatively to some other auxiliary I/O device. A device user may also compose data items, such as e-mail messages, using keyboard 108 and/or some other auxiliary I/O device, such as a touchpad, a rocker switch, a thumb-wheel, or some other type of input device. The composed data items may then be transmitted over the cellular network via the CCS 104 or the WCS 106.
During voice communications, overall operation of the device is substantially similar to that of data communications, except that received signals are output to speaker 111, and signals for transmission are generated by microphone 112. Alternative voice or audio I/O subsystems, such as a voice message recording subsystem, may also be implemented on device 10. In addition, display 109 may also be utilized in voice communication mode, for example, to display the identity of a calling party, the duration of a voice call, or other voice call related information.
Cellular network 210 includes a conventional base transceiver station (BTS) 208 which serves a coverage area 209. BTS 208 provides communications with mobile device 10 by way of the CCS 104. Cellular network 210 may be any of a variety of mobile data communication networks, such as Mobitex™, DataTAC™ or General Packet Radio Service (CPRS), or voice communication networks, such as Advanced Mobile Phone Service (AMPS), Time Division Multiple Access (TDMA), Code Division Multiple Access CDMA, Personal Communications Service (PCS), Global System for Mobile Communications (GSM).
WLAN 205 includes two conventional access points (APs) 202, designated as AP 202a and AP 202b, which serve respective coverage areas 204a and 204b. As is conventional in wireless networks having mobile devices served by various APs, such as in an IEEE 802.11x network, there is a standard procedure by which mobile device 10 associates itself with an AP 202. Before mobile device 10 associates with an AP 202, it obtains information from APs within range by scanning the frequency channels for their beacons. The APs 202 periodically broadcast a management frame called a beacon frame to announce their presence. Included in the beacon frame is a Service Set Identifier (SSID) which identifies the WLAN 205 to which the APs 202 belong. In traditional WLANs, such as 802.11x networks, beacon powers of APs are kept at a fixed level. Mobile device 10 may simply choose the AP 202 with the best signal strength for association. This procedure is performed seamlessly by the WCS 106 of mobile device 10.
In the scenario illustrated in
Referring to
As is conventional, mobile device 10 may be configured to have different communication modes, including (1) a cellular only mode, where mobile device 10 can only communicate over cellular networks; (2) an independent cellular and WLAN mode, where mobile device 10 can communicate over both cellular networks and WLAN, but the two are independent of each other; and (3) a WLAN priority mode, where mobile device 10 communicates via WLAN when available, and switches to communicate via cellular networks when WLAN is no longer available.
A VHO execution module (VEM) 115 is configured to carry out VHOs in response to commands received from DSM 130. VEM 115 may carry out VHOs in any conventional manner known to persons skilled in the art. Similarly, a session initiation module (SIM) 117 is configured to initiate communication sessions either via CMS 104 or via WCS 106 according to commands received from DSM 130. SIM 117 may initiate communication sessions in any conventional manner known to persons skilled in the art. DSM 130, VEM 115, SIM 117 and CDB 160 may all be stored in flash memory 114 of mobile device 10 (
As shown in
Current readings 150 are periodically updated by DSM 130 with values received or measured by mobile device 10. The best candidate neighbouring AP may be, for example, the neighbouring AP having the highest signal strength.
As also shown in
Universal thresholds 190 are set to default values, which may for example be predefined by the device manufacturer, when DSM 130 is first initialized. The various values X and Y in Table 2 may also be predefined by the device manufacturer. For example, in one embodiment, with respect to thresholds 191 and 192, minimum number (X) of communication sessions may be set to five communication sessions, preceding time window (Y) may be set to one week, and the default values for Max-VHO-Out-per-min 191 and Max-VHO-In-per-min 192 may be set to one VHO-Out and one VHO-In, respectively; and, with respect to thresholds 193 and 194, minimum number (X) of VHO-Outs may be set to five VHO-Outs, preceding time window (Y) may be set to one week, and the default values for Max-VHO-Out-fail-rate 193 and Min-VHO-In-fail-rate 194 may be set to 30% and 2%, respectively. In one embodiment, universal thresholds 190 and the various values X and Y may be adjusted manually, for example, by the user through a conventional advanced settings user screen.
APDB 160 is more specifically illustrated in
As shown in
When DSM 130 creates a new AP entry 162 in APDB 160, all historical data 170 for the new AP entry 162 are initialized to zero. Thereafter, historical data 170 are updated by DSM 130 during operation of mobile device 10 in response to events relating to the AP represented by the AP entry 162. As will be appreciated, the various values X and Y in Table 3 correlate with the various values X and Y in Table 2. As described above with reference to universal thresholds 190, the various values X and Y may be predefined by the device manufacturer.
As also shown in
When DSM 130 first creates a new AP entry 162 in APDB 160, the dynamic thresholds 180 for the new AP entry 162 are set to default values which may for example be predefined by the device manufacturer. As will be appreciated by those skilled in the pertinent arts, in order to avoid the potential of a ping-pong effect, the default value for Lo-SS-Out 181 is preferably lower than the default value for Hi-SS-In 182, and the default value for Hi-LL-In 184 is preferably lower than the default value for Hi-LL-Out 184. By way of example, dynamic thresholds 180 may be configured with the following default values: −78 dBm for Lo-SS-Out 181; −70 dBm for Hi-SS-In 182; 50% for Hi-LL-Out 183; and 20% for Hi-LL-In 184.
Thereafter, and as described in more detail below, the dynamic thresholds 180 are adjusted by DSM 130 during operation of mobile device 10 in response to changes in the historical data 170, in accordance with rules 140.
As shown in
Dynamic threshold rules 142 define conditions for adjusting dynamic thresholds 180. The conditions defined by dynamic threshold rules 142 are based on historical data 170 and universal thresholds 190. Exemplary dynamic threshold rules 142 are shown in the following table:
Network selection rules 143 define conditions for triggering VHOs. The conditions defined by network selection rules 143 are based on current readings 150 and dynamic thresholds 180. Exemplary network selection rules 143 are shown in the following table:
Methods of handling voice calls in accordance with an embodiment will now be described with reference to
As will be appreciated by those skilled in the pertinent arts, different parameter sets for current readings 150, historical data 170, universal thresholds 190, dynamic thresholds 180, and rules 140 may be used in order to achieve different optimization strategies and objectives. For example, a further embodiment may utilize the following parameter sets:
As noted above in relation to the first embodiment, universal thresholds 190 are set to default values, which may for example be predefined by the device manufacturer, when DSM 130 is first initialized. The various values X, Y and Z in Table 8 may also be predefined by the device manufacturer. For example, in one embodiment, with respect to thresholds A3 and A5, X may be set to five calls, Y may be set to one week, and the default values for A3 and A5 may be set to 1.0 and 0.2, respectively; with respect to thresholds A4 and A6, X may be set to five VHO-Outs, Y may be set to one week, and the default values for A4 and A6 may be set to 30% and 2%, respectively; and with respect to thresholds B5 and B6, Z may be set to one minute, X may be set to five VHO-Ins, Y may be set to one week, and the default values for B5 and B6 may be set to 30% and 2%, respectively. As noted above, universal thresholds 190 and the various values X, Y and Z may be adjusted manually, for example, by the user through a conventional advanced settings user screen.
As will be appreciated, the various values X, Y and Z in Table 9 correlate with the various values X, Y and Z in Table 8.
Other modifications will be apparent to those skilled in the art.
This application is a continuation of U.S. application Ser. No. 12/774,791 filed May 6, 2010 now U.S. Pat. No. 8,315,228 which application claimed priority from U.S. provisional application No. 61/297,995, filed Jan. 25, 2010, the contents of both prior applications are incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
6507740 | Shi | Jan 2003 | B2 |
20050271011 | Alemany et al. | Dec 2005 | A1 |
20060003768 | Chiou | Jan 2006 | A1 |
20060083199 | Yang | Apr 2006 | A1 |
20060286984 | Bonner | Dec 2006 | A1 |
20070115883 | Narayanan et al. | May 2007 | A1 |
20070218906 | Melia et al. | Sep 2007 | A1 |
20070249365 | Jendbro | Oct 2007 | A1 |
20080076428 | Jagadeesan et al. | Mar 2008 | A1 |
20080096560 | Felske et al. | Apr 2008 | A1 |
20090010222 | Jechoux | Jan 2009 | A1 |
20090154426 | Perraud et al. | Jun 2009 | A1 |
20100056157 | Verona et al. | Mar 2010 | A1 |
20100226339 | Stephenson et al. | Sep 2010 | A1 |
20100273487 | Alonso-Rubio et al. | Oct 2010 | A1 |
20100284374 | Evans | Nov 2010 | A1 |
20110103318 | Ekici et al. | May 2011 | A1 |
Number | Date | Country |
---|---|---|
2337184 | Nov 1999 | GB |
2342255 | Apr 2000 | GB |
WO2004066707 | Aug 2010 | WO |
WO2004066707 | Aug 2010 | WO |
Entry |
---|
Ngo, Nguyen Hoang, USPTO Office Communication issued May 8, 2012 in relation to U.S. Appl. No. 12/774,791 filed May 6, 2010 (14 pages). |
Number | Date | Country | |
---|---|---|---|
20130040638 A1 | Feb 2013 | US |
Number | Date | Country | |
---|---|---|---|
61297995 | Jan 2010 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12774791 | May 2010 | US |
Child | 13616729 | US |