Language selection

Search

Patent 2527511 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent: (11) CA 2527511
(54) English Title: SYSTEMS AND METHODS FOR SEAMLESS ROAMING BETWEEN WIRELESS NETWORKS
(54) French Title: SYSTEMES ET PROCEDES D'ITINERANCE EN CONTINU ENTRE DES RESEAUX SANS FIL
Status: Term Expired - Post Grant Beyond Limit
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04W 36/14 (2009.01)
  • H04W 36/18 (2009.01)
  • H04W 84/12 (2009.01)
(72) Inventors :
  • NAIR, BIJU (United States of America)
  • REDZIC, OGNJEN (United States of America)
  • SINGER, MARTIN H. (United States of America)
  • BOXALL, ROBERT F. (United States of America)
(73) Owners :
  • SMITH MICRO SOFTWARE, INC.
(71) Applicants :
  • SMITH MICRO SOFTWARE, INC. (United States of America)
(74) Agent: TORYS LLP
(74) Associate agent:
(45) Issued: 2013-05-14
(86) PCT Filing Date: 2003-08-06
(87) Open to Public Inspection: 2005-02-24
Examination requested: 2008-07-23
Availability of licence: N/A
Dedicated to the Public: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): Yes
(86) PCT Filing Number: PCT/US2003/024630
(87) International Publication Number: US2003024630
(85) National Entry: 2005-11-28

(30) Application Priority Data: None

Abstracts

English Abstract


A method for the seamless switching of a wireless device between wireless wide
area networks (WWANs) and wireless local area networks (WLANs) includes
automatically detecting the available WWANs and WLANs, selecting one of the
available networks for use by the wireless device, and connecting the wireless
device to the selected network. The method also includes maintaining the
network connectivity (112) by monitoring the connection and, upon determining
that the connection has been lost (114), selecting another available network
for use and connecting the wireless device the other network (120).
Additionally, the method communicates information about the availability
networks and connection status to a user of the wireless device, which allows
the user to manually switch the wireless device connection from the
automatically selected available network to another available network.
Further, a wireless device implements the above-described method.


French Abstract

L'invention concerne un procédé de commutation en continu pour un dispositif sans fil entre des réseaux longues distances sans fil (WWAN) et des réseaux locaux sans fil (WLAN). Selon ce procédé, les réseaux WWAN et WLAN disponibles sont automatiquement détectés, un des réseaux disponibles est sélectionné pour être utilisé par le dispositif sans fil, qui est alors connecté au réseau sélectionné. Ce procédé consiste également à maintenir la connectabilité (112) du réseau par la surveillance de la connexion et, si l'on constate que la connexion a été perdue (114), à sélectionner un autre réseau disponible et à connecter le dispositif sans fils à cet autre réseau (120). En outre, le procédé communique l'information concernant la disponibilité des réseaux et l'état d'une connexion à un utilisateur de dispositif sans fil, cet utilisateur pouvant alors commuter manuellement la connexion du dispositif sans fil du réseau disponible sélectionné automatiquement un autre réseau disponible. La présente invention porte également sur l'exécution par un dispositif sans fil dudit procédé.

Claims

Note: Claims are shown in the official language in which they were submitted.


15
CLAIMS
What is claimed is:
1. A wireless device for seamless roaming among one or more wireless wide area
networks (WWANs) and one or more wireless local area networks (WLANs), the
wireless device comprising:
a user interface enabling a user to interact with the wireless device;
one or more network interfaces coupled to the wireless device and to the one
or more WWANs and the one or more WLANs;
an operating system running on the wireless device;
a connectivity application running on top of the operating system and
including:
a user interface software component coupled to the user interface;
a core component coupled to the user interface software component;
and
one or more network interface components coupled to the core
component; and
a driver layer functioning on top of the operating system and coupled to the
one or more network interface components and to the one or more network
interfaces
wherein the core component comprises an active connection selection
subcomponent
and a rules engine subcomponent, wherein:
the active connection selection subcomponent implements logic to:
detect an availability for the one or more WWANs and the one or more
WLANs via the one or more network interface components;
establish and maintain a connection to a first of the available one or
more WWANs and one or more WLANs; and
communicate the availability and a connection status to the user via the
user interface software component; and
the rules engine subcomponent implements logic to:

16
define selection criteria by which the active connection selection
subcomponent establishes and maintains the connection to the first of
the available one or more WWANs and one or more WLANs.
2. The wireless device of claim 1, wherein the user interface comprises:
an input device, the input device including at least one of:
a keypad;
a touch screen;
an input port;
a pointing device; and
a microphone; and
an output device, the output device including at least one of:
video display;
an output port; and
a speaker.
3. The wireless device of claim 2, further comprising at least one graphical
user
interface (GUI) having a plurality of interactive devices designed to
facilitate the user
interaction with the wireless device via the input device and the output
device.
4. The wireless device of claim 1, wherein the one or more network interfaces
comprises at least one of:
a WWAN interface and a WLAN interface; and
a combination WWAN/WLAN interface.
5. The wireless device of claim 4, wherein the WWAN interface and the
combination WWAN/WLAN interface are capable of coupling to at least one of:
an analog cellular network;
a digital cellular network;
a TDMA network;
a CDMA network;
a 1xRTT network;

17
a GPRS network;
a GSM network;
an EDGE network;
a UMTS network; and
an iDEN Packet Data network.
6. The wireless device of claim 4, wherein the WLAN interface and the
combination
WWAN/WLAN interface are capable of coupling to at least one of:
an IEEE 802.11 network;
a HomeRF network;
a Bluetooth network; and
a HiperLAN network.
7. The wireless device of claim 4, wherein at least one of the WWAN
interface,
the WLAN interface and the combination WWAN/WLAN interface is implemented
by hardware.
8. The wireless device of claim 4, wherein at least one of the WWAN
interface,
the WLAN interface and the combination WWAN/WLAN interface is implemented
by software.
9. The wireless device of claim 4, wherein at least one of the WWAN
interface,
the WLAN interface and the combination WWAN/WLAN interface is implemented
by both hardware and software.
10. The wireless device of claim 1, wherein the operating system comprises one
of:
MS-DOS;
MAC OS;
WINDOWS;
OS/2;
UNIX;

18
LINUX;
LINDOWS;
XENIX; and
PALM OS.
11. The wireless device of claim 1, the active connection selection
subcomponent
further implements logic to automatically switch the connection from the first
of the
available one or more WWVANs and one or more WLANs to a second of the
available one or more WWANs and one or more WLANs based on the selection
criteria of the rules engine subcomponent.
12. The wireless device of claim 1, the active connection selection
subcomponent
further implements logic to switch the connection from the first of the
available one or
more WWANs and one or more WLANs to a second of the available one or more
WWANs and one or more WLANs based on a manual switching selection of the user.
13. The wireless device of claim 1, wherein the user interface component
presents
the availability and the connection status to the user via the user interface.
14. The wireless device of claim 1, further comprising one or more other
applications running on top of the operating system and coupled to the one or
more
WWANs and the one or more WLANs via the connectivity application.
15. A wireless device as in claim 1 where the connectivity application,
responsive
to a user's intervention, switches from one network connection to another
without first
detecting a connection loss.
16. A wireless device for seamless roaming among one or more wireless wide
area
networks (WWANs) and one or more wireless local area networks (WLANs), the
wireless device comprising:
a user interface enabling a user to interact with the wireless device;
one or more network interfaces coupled to the wireless device and to the one
or more WWANs and the one or more WLANs;
an operating system running on the wireless device;

19
a connectivity application running on top of the operating system and
including:
a user interface software component coupled to the user interface;
a core component coupled to the user software interface component;
and
one or more network interface components coupled to the core
component; and
a driver layer functioning on top of the operating system and coupled to the
one or more network interface components and to the one or more network
interfaces
wherein the user software interface component includes:
a third-generation subcomponent;
a WLAN user interface subcomponent;
an inter-subcomponent communication module coupled to the third-
generation subcomponent and the WLAN user interface
subcomponent; and
a core interface subcomponent coupled to the inter-subcomponent
communication module.
17. The wireless device of claim 16, wherein: the inter-subcomponent
communication module is further coupled to the user software interface
component;
and the core interface subcomponent is further coupled to the core component.
18. A method for seamless switching of a wireless device between one or more
wireless wide area networks (WWANs) and one or more wireless local area
networks
(WLANs), the method comprising the steps of:
a) detecting available networks from the one or more WWANs and the one or
more WLANs;
b) communicating the network availability and a connection status to a user of
the wireless device;
c) selecting one of the available networks for use by the wireless device, the
selecting including:

20
1) a rule-based process further including:
a) searching a rules engine for an applicable rule defining
which of the available networks to select;
b) applying the applicable rule;
c) connecting the wireless device to the selected available
network, or
2) a manual process including:
a) enabling the user to manually switch the wireless device
connection from the selected available network to another
available network; and
d) maintaining the wireless device connection wherein step of enabling
includes:
detecting an intervention by the user;
determining whether the intervention is a request by the user to switch
the wireless device connection from the selected available network;
if the intervention is the request, disconnecting the network device
from the selected available network and reconnecting the network
device to another available network; and if the intervention is not the
request, ending the network device connection.
19. The method of claim 18, wherein the one or more WWANs include at least
one of:
an analog cellular network;
a digital cellular network;
a TDMA network;
a CDMA network;
a 1xRTT network;
a GPRS network; a GSM network;
an EDGE network;
a UMTS network; and

21
an iDEN Packet Data network.
20. The method of claim 18, wherein the one or more WLANs include at least one
of:
an IEEE 802.11 network;
a HomeRF network;
a Bluetooth network; and
a HiperLAN network.
21. The method of claim 18, wherein the steps of detecting, selecting,
connecting
and maintaining are performed automatically.
22. The method of claim 21, wherein the rules engine includes one or more
service provider rules.
23. The method of claim 22, wherein the one or more service provider rules
include a WLAN preference rule.
24. The method of claim 21, wherein the step of maintaining includes:
monitoring
the selected available network connection to determine a connecting loss; upon
determining the connection loss, repeating the steps of the selecting and
connecting.
25. A wireless device for seamless roaming among one or more wireless wide
area
networks (WWANs) and one or more wireless local area networks (WLANs), the
wireless device comprising:
a hardware user interface enabling a user to interact with the wireless
device;
one or more network interfaces coupled to the wireless device and to the one
or more WWANs and the one or more WLANs;
an operating system running on the wireless device;
a connectivity application running on top of the operating system and
including:
a user interface software component counted to the user interface;

22
a core component coupled to the user interface software component the core
component including a rule evaluating engine and a plurality of predetermined
connection rules, at least one of which is user created to specify at least
one network
connection; and
one or more network interface components coupled to the core component;
and
a driver layer functioning on top of the operating system and coupled to the
one or more network interface components and to the one or more network
interfaces
where the connectivity application, responsive to a user instruction, switches
from one
network to another without first detecting a connection loss.

Description

Note: Descriptions are shown in the official language in which they were submitted.


CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-1-,
SYSTEMS AND METHODS FOR
SEAMLESS ROAMING BETWEEN WIRELESS NETWORKS
BACKGROUND OF THE INVENTION
Field of the Invention
The present invention relates generally to the field. of wireless technology
and, more
particularly, to seamless roaming between wireless,networks:
Description of the.Related Art
Wireless technology allows electronic devices to communicate with one another
without the use of physical lines (e.g., wire or fiber optic cable), and
accordingly, has become
increasingly. popular in recent years. There are different types of access
networks in wireless
technology, for example, the wireless local area network (WLAI~ and the
wireless wide area
network (WWAI~. WWANs are used by traditional cellular companies to provide
high-
mobility access (e:g., for usersmoving in cars) over a broad coverage area.
WLANs can be
used in buildings (e.g., homes or businesses) for stationary or low mobility
access.
While WLANs provide higher throughput rates (e.g., ranging from 11 Mbps to f4
Mbps), such networks generally do not provide a broad area of coverage, arid
thus, are not
always suitable for high mobility access. On the other hand, while WWANs
provide broad
ranging coverage, they generally have lower throughput rates.
Previously developed techniques have provided for connections to both a WLAN
and
a WWAN by a mobile device. With these techniques, separate device applications
were used
to independently support and manage different kinds of connections. That is,
one application
would be used for WWAN connections, and another application would be used for
WLAN
connections. This was problematic in that the two applications were
independent, and thus,

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-2-
did not provide the ability to coordinate connections for different types of
wireless networks.
Thus, whenever there was a loss of connection as a mobile device was moved out
of the
coverage area of one leind of wireless network into the coverage area of
another kind of
network, the previously developed techniques were not able to automatically
switch
connections. Instead, a user had to manually switch from one application
managing hardware
for a connection of the first kind of wireless network to a different
application managing
hardware for a connection of the second kind of wireless network. In order to
make this
manual switch, the user was required to shut down all applications using the
external network
connection and then, after the switch was made, to reinitiate networlc
connectivity and restart
all applications. Accordingly, the previously developed techniques were
disruptive, time
consuming, and not user friendly.
Therefore, what is needed is a way to automatically and seamlessly switch
between
and among different types of wireless networks.
SUMMARY OF THE INVENTION
According to embodiments of the present invention, systems and methods provide
un-
interrupted and ubiquitous wireless access, with seamless hand-off between
different lcinds of
networks. Thus, applications are not affected as a user roams between and
among WLANs
and WWANs. The embodiments of the present invention may also facilitate
handing off a
user to WLANs, whenever possible to more cost effectively use the available
WWAN
bandwidth. Important teclmical advantages of the present invention are readily
apparent to
one skilled in the art from the following figures, descriptions, and claims.
BRIEF DESCRIPTION OF THE DRAWINGS
For a more complete understanding of the present invention, for further
features and
advantages, applicants now make the following description, talcen in
conjunction with the
accompanying drawings, in which:
Figure 1 illustrates an environment in which systems and methods, according to
embodiments of the present invention, may operate;
Figure 2 illustrates an exemplary system for seamless roaming between wireless
networks according to an embodiment of the present invention;

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-3-
Figure 3 illustrates an exemplary user interface component according to an
embodiment of the present invention;
Figure 4 illustrates an exemplary core component according to an embodiment of
the
present invention;
Figure 5 illustrates a flow chart of an exemplary method for seamless roaming
between wireless networks according to an embodiment of the present invention;
and
Figure 6 illustrates a flow chart of an exemplary method for networlc
connection
monitoring and maintenance according to an embodiment of the present
invention.
DETAILED DESCRIPTION OF THE INVENTION
Turning first to the nomenclature of the specification, the detailed
description that
follows is represented largely in terms of processes aald symbolic
representations of
operations performed by conventional computer components, such as a local or
remote
central processing unit (CPU), processor, server, or other suitable processing
device
associated with a general purpose or specialized computer system, memory
storage devices
operatively associated with the processing device, and connected local or
remote display
devices. These operations may include the manipulation of data bits by the
processing device
and the maintenance of these bits within data structures resident in one or
more of the
memory storage devices. Such data structures impose a physical organization
upon the
collection of data bits stored within computer memory and represent specific
electrical or
magnetic elements. These symbolic representations are the means used by those
skilled in
the art of computer programming and computer construction to most effectively
convey
teachings and discoveries to others skilled in the art.
For purposes of this discussion, an application, process, method, routine, or
sub-
routine is generally considered to be a sequence of computer-executed steps
leading to a
desired result. These steps generally require manipulations of physical
quantities. Usually,
although not necessarily always, these quantities take the form of electrical,
magnetic, or
optical signals capable of being stored, transferred, combined, compared, or
otherwise
manipulated. It is conventional for those skilled in the art to refer to these
signals as bits,
values, elements, symbols, characters, text, teens, numbers, records, files,
or the lilce. It
should be kept in mind, however, that these and some other terms should be
associated with

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-4-
appropriate physical quantities for computer operations, and that these teens
are merely
conventional labels applied to physical quantities that exist within and
during operation of the
computer.
It should also be understood that automatic manipulations within the computer
system
are often referred to in terms such as adding, comparing, moving, searching,
or the like,
which are typically associated with manual operations performed by a human
operator. It
must be understood that, in most instances, no involvement of the human
operator is
necessary, or even desirable, in the present invention. However, some of the
operations
described herein are machine operations performed in conjunction with the
human operator,
or user, that interacts with the computer or system. Therefore, unless noted
as a manual, user
operation, all operations are presumed to be automatic.
In addition, it should be understood that the programs, processes, methods,
and the
like, described herein are but an exemplary implementation of the present
invention and are
not related, or limited, to any particular computer, system, apparatus, or
computer language.
Rather, various types of general purpose computing machines or devices may be
used with
programs constructed in accordance with the teachings described herein.
Similarly, it may
prove advantageous to construct a specialized apparatus, or hardware device,
to perform one
or more of the method steps described herein by way of dedicated computer
systems with
hard-wired logic or programs stored in non-volatile memory, such as read-only
memory
(ROM).
Overview
According to embodiments of the present invention, systems and methods provide
automatic and seamless roaming between wireless networlcs, including between
different
kinds of wireless networks (e.g., WLAN and WWAN). Embodiments of the present
invention can provide seamless access between two disparate wireless access
technologies,
such as a WLAN and a WWAN. The systems and methods of the present invention
can
provide or support automatic detection and connection to WLANs and WWANs.
stem For Seamless Roaming
Figure 1 illustrates an environment 10 in which embodiments of the present
invention
may operate. As depicted, environment 10 includes a plurality of wireless
networks through

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-5-
which a wireless device 12 may migrate and communicate. These networks can be,
for
example, a wireless wide area network (WWAN) 14, a first wireless local area
network
(WLAN) 16, and a second WLAN 18.
Each wireless networlcs 14, 16, 18 can be a communication network that
supports
wireless communication. Each network supports at least one wireless link or
device
connection. As such, the networks may support a variety of communications,
including, but
not limited to, analog cellular system, digital cellular system, Personal
Communication
System (PCS), Cellular Digital Packet Data (CDPD), ARDIS, RAM Mobile Data,
Metricom
Ricochet, paging, and Enhanced Specialized Mobile Radio (ESMR). The wireless
networks
14, 16, 18 may utilize or support various protocols. Exemplary protocols for
WLANs 16, 18
include IEEE 802.11, HomeRF, Bluetooth, HiperLAN and the like. Exemplary
protocols for
WWAN 14 include Time Division Multiple Access (TDMA, such as IS-136), Code
Division
Multiple Access (CDMA), lxRTT, General Paclcet Radio Service (GPRS), Enhanced
Data
rates for GSM Evolution (EDGE), Global System for Mobile communications (GSM),
Universal Mobile Telecommunications System (UMTS), and Integrated Digital
Enhanced
Network (iDEN) Packet Data. Each connection of a wireless network may have a
respective
identifier such as, for example, a particular Internet Protocol (IP) address.
Transmissions
over the wireless networks 14, 16, 18 may be analog or digital. The wireless
networks may
include or be supported by a public switched telephone network (PSTN) and/or a
private
system (e.g., cellular system) implemented with a number of switches, wire
lines, fiber-optic
cable, land-based transmission towers, space-based satellite transponders, and
the like. In
one embodiment, the wireless networks may include any other suitable
communication
system, such as a specialized mobile radio (SMR) system. Each wireless network
14, 16, 18
may have a respective range of operation. The ranges of the various wireless
networks can
overlap in coverage.
The wireless networlcs 14, 16, 18 can be maintained or operated by the same or
different service providers. In general, a service provider can be an entity
that delivers
services to one or more users, who, for example, access the networlc with a
wireless device.
These services may include wireless service, and possibly a host of other
services including,
for example, plain old telephone service (POTS), digital telephony service,
cellular service,
pager service, and the like. The user of the wireless device 12 can be a
subscriber to one or

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-6-
more of the services provided by one or more of the service providers with the
wireless
networks 14, 16, 18.
The wireless device 12 can be an electronic device with capability for
communicating
by wireless technology. Thus, wireless device 12 can be, for example, a laptop
or deslctop
computer, a wireless personal digital assistant (PDA), a cellular phone, or
any other wireless-
capable, suitable electronic device. The wireless device 12 can be used by a
respective user,
who can move among and through the effective ranges of operation for the
various wireless
networlcs 14, 16, 18. If the wireless device 12 is within the range a
particular wireless
network, the device 12 will be able to communicate through a linlc of that
wireless network.
The wireless device 12 may run one or more applications that exchange
data/information
through,wireless networks as the applications are run. Such an application can
be, for
example, a networlc browser that exchanges information with the distributed
application
known as the "World Wide Web." Another exemplary application can be electronic
mail or
instant messaging services.
In general, WLANs provide higher throughput rates (e.g., from 11 Mbps to 54
Mbps
and higher), but are not conducive to use in higher mobility applications
(e.g., such as when a
user is in a car). WWANs can be used in high mobility applications, but do not
provide as
much throughput as WLANs. Thus, to increase throughput rates for the user of
the wireless
device 12, it is desirable to connect to a WLAN when one is available and
comlection to it is
possible, while connecting to a WWAN when a WLAN comzection is not available
or
possible.
To provide uninterrupted and effective wireless access for the wireless device
12 in
exemplary environment 10, the present invention provides systems and methods
so that
WLANs and WWANs are able to automatically and seamlessly hand-off
communications
with the wireless device 12 as it roams between or among them, without the
applications
executing on the wireless device 12 being adversely affected.
System For Seamless Roaming
Figure 2 illustrates an exemplary system for seamless roaming between wireless
networks according to an embodiment of the present invention. As shown, this
system can be
incorporated into or comprise a wireless device 12. The wireless device 12 can
be any
suitable electronic device such as, for example, a portable personal computer
(PC), wireless

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
PDA or cellular phone, having a data processing facility supported by memory
(either
internal or external) and being wireless network capable.
A number of networking hardware devices, such as WLAN hardware 26, WWAN
hardware 28, and combination hardware 30, support connections between wireless
device 12
and various wireless networks. WLAN hardware 26 supports connection with a
WLAN.
WWAN hardware 28 supports connection with a WWAN. Combination hardware 30
supports coimection with either a WLAN or a WWAN. The networking hardware
devices
could be a wireless modem, a wireless network interface card (I~TIC), or any
other suitable
hardware peripheral device for supporting a wireless connection. In other
embodiments, such
devices can be implemented in any combination of hardware and software. A
driver layer 32,
which may be implemented in software or hardware or both, functions as a
hardware
controller for the WLAN hardware 26, WWAN hardware 28, and combination
hardware 30.
A user interface (I/F) 34 generally functions to enable a human user to
interact with
the wireless device 12, for example, to run applications (e.g., word
processing), browse the
Internet, check email, and the like. The functionality of the user interface
34 can be
performed by one or more suitable input devices (e.g., keypad, touch screen,
input port,
pointing device, microphone, and/or other device that can accept user input
information) and
one or more suitable output devices (e.g., video display, output port,
speaker, or other device,
for conveying information, including digital data, visual information, or
audio information).
In one embodiment, each user interface 34 may comprise or be operable to
display at least
one graphical user interface (GUI) having a number of interactive devices,
such as buttons,
windows, pull-down menus, and the like to facilitate the entry, viewing,
and/or retrieval of
information.
The wireless device 12 may operate under the control of a suitable operating
system
(OS) 20, such as, for example, MS-DOS, MAC OS, WINDOWS NT, WINDOWS 95,
WINDOWS CE, OS/2, UNIX, LINUX, LMOWS, XENIX, PALM OS, and the lilce. One
or more software applications 22 may run on the wireless device 12. Each
application 22
may interact with the operating system 20. These applications 22 may support
numerous
services or functions such as, for example, document sharing, accounting, word
processing,
application sharing, file transfer, remote control, browser, voice over W
ternet Protocol (IP),
user authentication, address book, files and folders, accounting, database
management, and
the like. At least a portion of these applications 22 may require the exchange
of information

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
_g_
over the wireless network with other electronic devices as the applications 22
are executing
on the wireless device 12.
A connectivity application 24, provided in the software layer, acts as a
pseudo muter
of network addresses and connectivity. The coimectivity application 24
logically resides
between the operating system 20 and the driver layer 32 of hardware
controllers. The
connectivity application 24 may logically "sit on top" of operating system 20.
Connectivity
application 24 may support the detection of wireless connections that are
available in any
given location to the wireless device 12. These connections include both WLAN
and
WWAN connections. Furthermore, unlike previously developed techniques, the
connectivity
application 24 maintains information and handles connectivity for different
kinds of wireless
networks. As such, connectivity application 24 is able to coordinate the
connection of the
wireless device 12 with different wireless networks, thereby providing
seamless transition or
handoff between the networlcs, including from a WLAN connection to a WWAN
connection,
and vice versa, as well as between WLAN or WWAN connections. Connectivity
application
24 may provide the IP address of the wireless comiection in use to the
operating system 20,
which in turn publishes this IP address to all applications 22. As depicted,
in one
embodiment, connectivity application 24 includes a user interface (Ul)
component 36, a core
component 38, a WLAN interface component 40, a WWAN interface component 42,
and a
combination interface component 44.
WLAN interface component 40, WWAN interface component 42, and combination
interface component 44 provide or support an interface with the driver layer
32 comprising
device drivers, which can be supplied by the respective hardware manufacturers
of the
networking hardware devices (e.g., WLAN hardware 26, WWAN hardware 28, and
combination hardware 30). WLAN interface component 40 may handle all the
communications with, for example, any WiFi compliant 802.11a card and its
driver. WLAN
interface component 40 can, for example, interface with the application
program interface
(API) of the WLAN card. This component 40 implements both the standard
interfaces as
well as specific aspects of communicating with the WLAN card, to retrieve
common
information such as Status, Signal Strength, MAC Address, Firmware version,
and the like.
The WLAN interface component 40 also handles sending and receiving messages to
the card.
The WWAN interface component 42 and the combo interface component 44 have
similar

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-9-
functionality to its WLAN counterpart, except that it is implemented to
communicate with the
API of the WWAN card.
The UI component 36 provides support for the presentation (e.g., visually,
audibly,
physically, etc.) of information relating to the wireless connections for the
wireless device 12.
This information may include, for example, network information for WWAN 14 and
WLANs
16, 18. The UI component 36 may also allow a user to configure or set (e.g.,
enabling and
disabling) the wireless connections for the device 12. In one embodiment, for
example, UI
component 36 may enable a user to readily and easily, yet manually or
automatically, switch
from one wireless network connection (e.g., for WWAN 14) to another wireless
network
connections (e.g., for WLAN 16) with no adverse effect on applications running
on the
wireless device 12.
The core component 38 is in communication with UI component 36, WLAN interface
component 40, WWAN interface component 42, and combination interface component
44.
The core component 38 implements the logic for lceeping track of, handling,
and managing
the connectivity to the wireless networks and informing the operating system
20 about any
changes. The core component 38 may also be responsible for automated switching
of the
connections which, in one embodiment, can be rule-based switching. The core
component 38
may automatically authenticate and connect the wireless device 12 to preferred
wireless
networks that are detected.
In operation, as the wireless device 12 is moved between or among the
effective
ranges of various wireless networks (WLAN or WWAN), connectivity application
24
functions to change connections from one wireless network to another wireless
network. In
one aspect, the change of wireless connection can be automatic such that, for
example, upon
loss of connectivity from any one connection, the connectivity application 24
will
automatically initiate a new connection and pass the respective IP address to
operating
system 20. Then, as applications 22 are subsequently refreshed using an IP
connection, the
applications 22 will automatically pick up the new IP address and start using
the new address
for wireless connectivity (e.g., according to the rules of core component 38).
This may occur
without any noticeable loss of connectivity to the user of the wireless device
12. In another
aspect, the change of wireless connection can be manually initiated by the
user. Connectivity
application 24 supports the detection of wireless connections that may be
available for any
given location. Information about the available wireless connections may be
accessed by the

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
0-
user from connectivity application 24 via user interface 34. Then, the user
can select which
wireless connection to use for comiectivity (e.g., to the Internet).
As such, the system according to an embodiment of the present invention
provides
ubiquity of access to wireless data and efficiency of spectral usage in
cellular bands when
using wireless data. Thus, for example, Internet-enabled applications 22 do
not experience a
loss of connectivity as a result of connection loss by wireless device 12 with
either a WWAN
or a WLAN. Nor do the applications 22 experience loss of connection as result
of transition
from one wireless network to another (e.g., from WWAN to WLAN). Furthermore,
the
system allows cellular service providers to offer wireless data services
supported by a
combination of their existing two-and-a-half generation ("2.SG") networks
(such as, but not
limited to, GPRS, CDMA lxRTT) and IEEE 802.11 WLAN networks (such as, but not
limited to, 802.1 la, 802.11b, 802.11g, etc.), with minimal risk of wireless
data consuming the
entire available capacity of the cellular networlcs.
User Interface Component
Figure 3 illustrates an exemplary user interface component 36 according to an
embodiment of the present invention. As shown in Figure 3, the user interface
component 36
can be completely separated from the core functionality (e.g., managing
connections)
provided by core component 38 (of Figure 2) of the connectivity application
24. This
separability can be done in order to allow users of the connectivity
application 24 to provide
their own user interfaces to the application, each interface having the look
and feel (along
with branding) desired by the particular service provider. As shown, user
interface
component 36 includes a third-generation (3G) UI subcomponent 50, a WLAN UI
subcomponent 52, an inter-subcomponent communication module 54, and a core
interface
(I/F) subcomponent 56.
The 3G UI subcomponent 50 may handle the connectldiscormect functionality for
various WWANs, which can be the 2.SG or 3G of mobile communications
technology.
Examples of such technologies include, but are not limited to GPRS, CDMA lxRTT
and
iDEN Packet Data services (for 2.SG) and W-CDMA based services such as UMTS
and
CDMA 3xRTT (for 3G). Relative to first generation (e.g., analog cellular) and
second
generation (e.g., digital PCS), 2.SG and 3G technology provides increased
bandwidth. For
example, 3G technology provides up to 384 Kbps when a wireless device is
stationary or

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-11-
moving at pedestrian speed, 128 I~bps in a car, and 2 Mbps in fixed
applications. 3G UI
subcomponent 50 may present or display information for the signal strength of
each available
WWAN (e.g., 2.5G or 3G) connection, as well as type of connection (e.g.,
circuit-switched or
packet-switched). This subcomponent 50 may also display or present information
about the
availability of WWAN service, or lack thereof.
WLAN UI subcomponent 52 can, among other things, keep traclc of and/or present
all
identified WLANs in the particular location of wireless device 12, as well as
their current
connections and encryption status. This WLAN UI subcomponent 52 may also
handle
selection by a user and connection of the wireless device 12 to the various
WLANs.
Taken together, 3G UI subcomponent 50 and WLAN UI subcomponent 52 provide
the user of the wireless device 12 with a real-time picture of all available
connections to the
various wireless networks, and may direct the user to a location where
connectivity is
available. A user of the wireless device 12 can toggle connections between
WWAN and
WLAN connections by interacting with 3G UI subcomponent 50 and WLAN UI
subcomponent 52.
The inter-subcomponent communication module 54 is responsible for
communicating
the status of each of the subcomponents 50 and 52. The inter-subcomponent
communication
module 54 may notify core component 38 of connection status change for each of
these
subcomponents. The core I/F subcomponent 56 interacts with core component 38
of
connectivity application 24. Core interface 54 may, among other things,
communicate the
status of the wireless connections and user interactions with UI component 36
to the core
component 38.
Core Component
Figure 4 illustrates an exemplary core component 38 according to an embodiment
of
the present invention. As shown, the core component 38 generally functions to
handle and
manage the connectivity to the wireless networks and inform the operating
system 20 about
any changes. As depicted, the core component 38 includes an active connection
selection 60
and a rules engine 62.
The active connection selection 60 keeps track of the various wireless
connections
which are presently available (including both WLAN and WWAN connections) and
also the
particular wireless connection, that is currently in use by the wireless
device 12. The active

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-12-
coimection selection 60 publishes the active connection information to the
operating system
20; that is, it provides the operating system 20 with information (e.g., IP
address) for the
current wireless connection. The wireless connection currently in use can be
changed by
modifying (or toggling) current active connection 60, either by a direct user
intervention or as
a result of one or more rules in the rules engine 62.
The rules engine 62 may implement and execute a number of rules for automated
switching of the wireless connections, and authentication and connection of
the wireless
device 12 to a preferred wireless network. These rules may define, for
example, what to do
when a GPRS connection is lost. Rules engine 62 may also allow the rules
themselves to be
created, modified, or deleted, thereby defining the characteristic behavior of
core component
38.
The rules engine 62 is responsible for making the decision as to which
wireless
network (e.g., WWAN 14, WLAN 16, or WLAN 18) to connect in the event of lost
connectivity or the availability of multiple wireless networks. The core
component 38
automatically detects any available wireless networks in the area of wireless
device 12 and
uses the rules engine 62 to determine to which networlc to connect. The rules
engine 62
functions on the basis of a combination of inputs from the user as well as
predefined rules
provided by one or more service providers (who operate or maintain the
wireless networks
and/or provide services to the user). By way of illustration, two examples of
the operation of
rules engine 62 according to the present invention are presented below.
The first rule example illustrations the operation of a user supplied rule. In
a user's
neighborhood, there are two wireless networks, Network A and Network B.
Network A
provides fast connectivity, but is unreliable and down about 50% of the time.
Network B is
highly reliable, but provides only about 50% of the data rate of Network A.
The user creates
a rule in the rules engine 62 that gives higher priority to the Networlc A,
rather than Network
B. When the core component 38 uses the rules engine 62 to decide to which
detected
network to connect, the rules engine 62 will recommend that the wireless
device 12 connect
to Network A. In the event of loss of connectivity between the wireless device
12 and
Network A, the core component 38 will again use the rules engine 62, which
returns a
recommendation that the wireless device 12 connect, secondarily, to Network B.
The second rule example illustrations the operation of a service provider
supplied
rule. A service provider provides WWAN services through Networlc P and WLAN
services

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-13- '
through Network Q. For technical reasons, such as preserving spectrum
availability on the
WWAN (Network P), a service provider may specify a rube in the rule engine 62
that
recommends that a user, who is currently on the WWAN, must be intelligently
switched to
the WLAN, as soon as it becomes available, thereby minimizing the number of
users on the
WWAN.
Because core coyponent 38 maintains information and handles connectivity for
various kinds of wireless networks (e.g., WWAN and WLAN), connectivity
application 24 is
able to coordinate for seamless transition or handoff between wireless
networks, including
from a WLAN connection to a WWAN connection, and vice versa, or between
different
WWAN or WLAN connections. This seamless session switching functionality can be
handled by a specific implementation of a well-defined standard such as, for
example, Mobile
Internet Protocol (1P) or IPv6 (which is also lcnown as IPng, or IP next
generation).
Method for Seamless Roaming
Figure 5 illustrates a flow chart of an exemplary method 100 for seamless
roaming
between wireless networks according to an embodiment of the present invention.
As shown
in Figure 5, the method 100 can be perfonned, at least in part, by a
connectivity application
24 rumung on a wireless device 12 that has mobility through the areas of
coverage provided
by one or more wireless networks. The method 100 begins at step 102, where the
wireless
device 12 searches for available wireless networks (e.g., WWAN, WLAN, etc.).
At step
104, the connectivity application 24 determines whether at least one network
has been
detected. If no network is detected, the method 100 returns to step 102 where
the wireless
device 12 continues to search for a wireless network.
If at least one network is detected, then at step 106 wireless device 12
searches the
rules engine 62 of the connectivity application 24 to identify one or more
applicable rules for
connecting the wireless device 12 to one of the detected networks. At step
108, the
connectivity application 24 directs the wireless device 12 to connect to a
particular detected
network per the recommendation of rubes engine 62. Once connected, the
connection is
monitored and maintained at step 110 (discussed further, below).
Figure 6 illustrates a flow chart of an exemplary method for network
connection
monitoring and maintenance according to an embodiment of the present
invention. As shown
in Figure 6, the comiectivity application monitors the current network
connection at step 112.

CA 02527511 2005-11-28
WO 2005/018252 PCT/US2003/024630
-14-
Such monitoring can include, for example, measuring the existence or strength
of, or
perceiving the desirability of maintaining, the current network connection. At
step 114, the
wireless device 12 determines whether there has been a loss in the wireless
connection. If
there is a loss, then method 100 returns to step 102 where the wireless device
12 searches for
available wireless networks. Otherwise, if there has not been a loss of
connection, then at
step 116, the connectivity application 24 determines whether there has been
any user
intervention such as, for example, a user shutting down the wireless device 12
or initiating a
manual switching of the wireless comlection between or among the different
available
networks. If there has not been any user intervention, then the method 100
returns to step
112 where the current wireless connection is further monitored.
On the other hand, if at step 116 there has been user intervention, then at
step 118 the
connectivity application 24 determines whether there the user initiated an
instruction to
manually switch connection to another wireless network. If there is such an
instruction, then
at step 120 the connectivity application 24 directs the wireless device 12 to
cormect to the
network specified by the user. Upon making this user-initiated switch, the
method 100
. returns to step 112 and begins monitoring of the new network connection.
Otherwise, if there
has been user intervention, but not to initiate a manual network connection
switch, then the
method 100 ends.
Although particular embodiments of the present invention have been shown and
described, it will be obvious to those skilled in the art that changes and
modifications may be
made without departing from the present invention in its broader aspects, and
therefore, the
appended claims are to encompass within their scope all such changes and
modifications that
fall within the true scope of the present invention.

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

2024-08-01:As part of the Next Generation Patents (NGP) transition, the Canadian Patents Database (CPD) now contains a more detailed Event History, which replicates the Event Log of our new back-office solution.

Please note that "Inactive:" events refers to events no longer in use in our new back-office solution.

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Event History , Maintenance Fee  and Payment History  should be consulted.

Event History

Description Date
Inactive: Expired (new Act pat) 2023-08-08
Inactive: COVID 19 - Deadline extended 2020-07-16
Common Representative Appointed 2019-10-30
Common Representative Appointed 2019-10-30
Grant by Issuance 2013-05-14
Inactive: Cover page published 2013-05-13
Inactive: Final fee received 2013-02-25
Pre-grant 2013-02-25
Notice of Allowance is Issued 2012-11-08
Letter Sent 2012-11-08
Notice of Allowance is Issued 2012-11-08
Inactive: Approved for allowance (AFA) 2012-11-06
Amendment Received - Voluntary Amendment 2012-04-05
Inactive: S.30(2) Rules - Examiner requisition 2011-10-06
Letter Sent 2011-09-26
Inactive: Single transfer 2011-09-06
Inactive: IPC deactivated 2011-07-29
Inactive: IPC assigned 2009-06-04
Inactive: IPC removed 2009-06-04
Inactive: IPC assigned 2009-06-04
Inactive: IPC assigned 2009-06-04
Inactive: First IPC assigned 2009-06-04
Amendment Received - Voluntary Amendment 2009-04-14
Inactive: IPC expired 2009-01-01
Letter Sent 2008-10-02
Request for Examination Requirements Determined Compliant 2008-07-23
All Requirements for Examination Determined Compliant 2008-07-23
Request for Examination Received 2008-07-23
Inactive: Correspondence - Formalities 2006-12-18
Letter Sent 2006-06-06
Inactive: Correspondence - Transfer 2006-05-01
Inactive: Office letter 2006-04-11
Inactive: Single transfer 2006-02-24
Inactive: Courtesy letter - Evidence 2006-02-07
Inactive: Cover page published 2006-02-02
Inactive: Notice - National entry - No RFE 2006-01-31
Application Received - PCT 2006-01-09
National Entry Requirements Determined Compliant 2005-11-28
Application Published (Open to Public Inspection) 2005-02-24

Abandonment History

There is no abandonment history.

Maintenance Fee

The last payment was received on 2012-07-18

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
SMITH MICRO SOFTWARE, INC.
Past Owners on Record
BIJU NAIR
MARTIN H. SINGER
OGNJEN REDZIC
ROBERT F. BOXALL
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Description 2005-11-27 14 857
Claims 2005-11-27 6 203
Drawings 2005-11-27 6 69
Abstract 2005-11-27 2 68
Representative drawing 2006-01-31 1 5
Claims 2012-04-04 8 241
Notice of National Entry 2006-01-30 1 193
Courtesy - Certificate of registration (related document(s)) 2006-06-05 1 105
Reminder - Request for Examination 2008-04-07 1 119
Acknowledgement of Request for Examination 2008-10-01 1 175
Courtesy - Certificate of registration (related document(s)) 2011-09-25 1 103
Commissioner's Notice - Application Found Allowable 2012-11-07 1 161
PCT 2005-11-27 1 56
Correspondence 2006-01-30 1 27
Correspondence 2006-04-10 1 25
Correspondence 2006-12-17 1 39
Fees 2007-07-18 1 38
Fees 2008-07-28 1 40
Fees 2009-07-27 1 200
Fees 2010-08-04 1 200
Correspondence 2013-02-24 1 36