US20140181923A1 - Method and Apparatus For Monitoring Wireless Network Access - Google Patents
Method and Apparatus For Monitoring Wireless Network Access Download PDFInfo
- Publication number
- US20140181923A1 US20140181923A1 US14/189,217 US201414189217A US2014181923A1 US 20140181923 A1 US20140181923 A1 US 20140181923A1 US 201414189217 A US201414189217 A US 201414189217A US 2014181923 A1 US2014181923 A1 US 2014181923A1
- Authority
- US
- United States
- Prior art keywords
- network
- wireless network
- client
- connection
- client device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/02—Access restriction performed under specific conditions
- H04W48/04—Access restriction performed under specific conditions based on user or terminal location or mobility data, e.g. moving direction, speed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/005—Data network PoA devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/18—Selecting a network or a communication service
Definitions
- a method and apparatus for monitoring wireless network access is disclosed.
- Wireless networks have become more prevalent and provide a mechanism for connecting to other networks, including the Internet.
- Wireless fidelity “WiFi” networks e.g., 802.11 networks
- DSLs digital subscriber lines
- T1 lines and equipment that controls access to the wireless network
- a “hot spot” typically has one or more wireless access points (APs) that serve as the connection point between a customer's device and the WiFi network.
- the customer's device can be any device (e.g., desktop or laptop computer, personal digital assistant, digital camera, mobile phone, automobile, gaming devices, consumer electronic equipment, etc.) which has a WiFi chip capable of communicating with the wireless network.
- a user In order to gain access to a wireless network, a user must first have authorization from the wireless network operator, which typically requires that the user have an agreement with the hot spot operator, or another entity that has an agreement with the wireless network operator, which identifies the access terms and fees. Based on such an agreement, the wireless network operator provides the user with connection/login procedures, which the user must use to gain access to the operator's wireless network.
- a user's WiFi-enabled device typically has the ability to sniff, or scan for, beacon frames, or signals, broadcast by access points which are a part of existing wireless networks. More particularly, the wireless device will tune to one or more available channels and listen for all beacon frames, or signals, broadcast by the wireless networks on that channel.
- the beacons received by the device can be from one or more wireless networks, and one or more wireless network providers, each of which have different connection/login procedures.
- the wireless device uses the beacon frames received to identify a wireless network and corresponding wireless network provider. Thereafter, an attempt is made to connect to the wireless network using the appropriate login procedures for the network provider.
- Obtaining and maintaining access to a wireless network is not simple due in large part to the number of wireless networks, and corresponding network providers, available and the fact that the user is “mobile” and attempting to enjoy a seamless network access despite being mobile.
- a typical wireless device periodically receives beacon frames broadcast by various access points, which can be used to change to a different access point and/or wireless network. The latter change might require the wireless device to establish a connection with a different wireless network and different wireless network connection procedures than that used with a previous connection.
- the user's device might need to interact with multiple wireless networks and wireless network providers, and the diverse connection (e.g., login) procedures required by each of the wireless network providers.
- a utility is provided to facilitate a user's wireless network access, such that interaction with various connection procedures required by different wireless network providers is transparent to the user.
- a utility can take advantage of capabilities of modern operating systems' ability to establish a low-level connection (e.g., layer 2 connectivity) to a wireless network, by detecting such a low-level connection and establishing a high-level connection, which can be used by the user to access the wireless network.
- a utility can be used in connection with aspects described in U.S. patent application Ser. No. 10/325,450, entitled “Method and Apparatus For Accessing Networks by a Mobile Device”, and U.S. patent application Ser. No.
- 11/435,019 entitled “Network Access Point Detection and Use” to be able to determine whether the low-level connection can be used to establish a wireless network connection. Furthermore and in a case that multiple wireless networks from different network providers are available, a utility is provided to select a preferred provider, either automatically or by alerting the user and allowing the user to make the selection.
- a client utility also referred to herein as a client, need not scan for, or associate to, a network.
- the client detects that a low-level network connection has been established, and performs an automated login process for the user.
- a type of detection used by such a client is passive in that it does not perform active scanning for a wireless network (e.g., detecting beacon frames broadcast by wireless networks). Rather, the client is installed on a client device and allows capabilities provided by the client device's operating system to perform the active scanning
- the client can be installed on a client device as a part of the user's signup process with a network provider.
- installation of the client can include an automatic configuration of the client to include the user's username and password, which can be used to connect to a wireless network, thereby avoiding the need for the user to provide this information (e.g., at a time when the client is installed and/or connection to a wireless network is attempted).
- a client component e.g., software component
- client can be downloaded to a computing device, which leverages off of the computing device's ability to locate and establish a network connection.
- the client component listens for network connection activity, and determines whether the device has established a network connection with a network known to the client. If the client determines that a network connection has been established to a known network, the client uses the network connection to log the user onto the network.
- Advantages of this approach include a client that can have a lighter footprint (size, resource needs, etc.) than might otherwise be needed, since the client can rely on other components to perform establish a connection with a network.
- the client can rely on device components to establish the network connection, but the client can control (or at least direct) the manner in which the user is logged onto the network. For example, the client can prompt the user to choose a particular account to log onto the network, rather than another account, if the client determines that the network connection is such that the user can use the first account. The client can then either select the account for the user, or prompt the user to select the account, in a case that the account is available to the user.
- download process used to download the client software component as well as configuration information, including user authentication information, as a downloadable file.
- the download process integrates the steps of transferring the client component to the computing device, installing the client on the computing device, and configuring the client to use the user's authentication information.
- This process is more automatic and more convenient to the user than multiple discrete manual steps.
- the process can be used, for example, to eliminate a need for the user to manually start an installation process or to re-input the user's authentication information (e.g., at a time when the user is attempting to log onto the wireless network).
- FIG. 1 which comprises FIGS. 1A and 1B , provides an architectural overview example of components used in accordance with one or more embodiments of the present disclosure.
- FIG. 2 which comprises FIGS. 2A , 2 B and 2 C, provides an example of a client process flow in accordance with one or more embodiments of the present disclosure.
- FIG. 3 which comprises FIGS. 3A , 3 B and 3 C, provides a detailed client process flow for use in accordance one or more embodiments of the present disclosure.
- FIG. 4 which comprises FIGS. 4A to 4F , provides examples of dialogs presented to a user during a sign up process for use with one or more embodiments disclosed herein.
- FIG. 5 which comprises FIGS. 5A to 5G , provides examples of user interface widgets which provide feedback to a user during a network logon process in accordance with disclosed embodiments.
- the present disclosure includes a network access point detection and use system and method.
- client software or client, executing on a user's client device, or device, is used to detect a low-level wireless network connection and to use the low-level network connection to connect the user to a wireless network.
- the client can be downloaded as part of a process in which a user signs up with a given wireless network provider. For example, during the sign up process, the user provides certain information about the user (e.g., name, address, payment details such as credit card information, and authentication information such as username and password). As part of the sign up process, the user can be presented with a choice of downloading the client. If the user elects to download the client, the program code for the client is downloaded to the user's device, together with the authentication information needed to authenticate the user to connect to a wireless network.
- FIG. 1 which comprises FIGS. 1A and 1B , provides an architectural overview example of components used in accordance with one or more embodiments of the present disclosure.
- Device 108 is a wireless-enabled device.
- a wireless-enabled device can be any device that includes network interface function, which can be provided by an operating system or some other software, e.g., software provided by a wireless network provider or WiFi chip hardware manufacturer, for example. Examples of such a device include, but are not limited to, desktop or laptop computer, personal digital assistant, digital camera, mobile phone, automobile, gaming device, consumer electronic equipment, and the like.
- device, 108 comprises one or more network drivers (or interfaces) 152 , operating system (or O/S) 158 , AP database 168 and client 167 .
- Each network driver 152 which can be a driver such as an operating system-level driver for example, can be used to connect to an AP 112 instance of a wireless network 102 , and then to send and receive network transmissions.
- client 167 is configured to detect a network interface connection using information provided by O/S 158 , identify an appropriate network connection (and AP 112 ) using AP database 168 , and log into a wireless network using account information for the user retrieved form AP database 168 .
- AP database 168 can contain a list of SSIDs and references to login scripts, e.g., for use in logging onto a wireless network.
- AP database 168 can be stored locally on device 108 , and can be updated on a periodic basis.
- U.S. patent application Ser. No. 10/325,450 which is incorporated herein by reference, provides examples of its contents and mechanisms for updating and maintaining AP database 168 .
- AP database 168 can include all or some portion of the information identified in U.S. patent application Ser. No. 10/325,450.
- an AP database 168 entry comprises an SSID and corresponding script information.
- the example architecture shown in FIG. 1A includes instances of wireless network 102 .
- Each instance of wireless network 102 can include one or more instances of access point (AP) 112 .
- AP 112 is a networking device that serves as a communication or connection point for a device 108 and wireless network 102 .
- device 108 can gain access to the Internet 106 , wired network 104 , and/or other instances of wireless network 102 , for example.
- a wireless network 102 instance can include, but need not include, one or more instances of access controller 114 .
- Access controller 114 comprises a device used to control access to wireless network 102 .
- Access controller 114 can be used to enforce a wireless network operator's rules for accessing wireless network 102 , and/or Internet 106 .
- Access control can be accomplished by, for example, allowing a network component of device 108 to associate with network 102 without requiring authentication, and then blocking the device's 108 traffic until valid authentication information is provided.
- Access controller 114 is typically used with commercial instances of wireless network 102 , such as one provided by a hot spot operator.
- Another instance of wireless network 102 such as one used in a home environment, need not include an access controller 114 .
- Each instance of wireless network 102 can have specific procedures, or methodologies, for associating, authenticating, and/or connecting to the network, which can (and likely do) vary from one instance to another of wireless network 102 .
- One example of a scenario that might be used involves a process of receiving the device's 108 initial Web page request, and redirecting the request to access controller 114 , which requests the authentication information from the device 108 . If the device 108 provides valid authentication information, access controller 114 permits unrestricted use of wireless network 102 by the device 108 .
- client 167 can detect such an association and then provide the required authentication so as to establish a network connection, or session, for a user of device 108 .
- server 130 can be used to download client 167 .
- server 130 can be used to transmit other data, including configuration information for client 167 , incremental updates to such configuration information, and/or updates to client 167 .
- FIG. 1A In the example architecture shown in FIG. 1A , a single device 108 and server 130 are shown for the sake of simplicity. It should be apparent that there can be multiple instances of device 108 and/or multiple instances of server 130 .
- FIG. 1B provides an example of an internal architecture of device 108 in accordance with one or more embodiments of the present disclosure.
- device 108 can include additional components. Such additional components can, for example, depend on the type of device.
- Device 108 comprises a central processing unit (CPU) 151 , one or more instances of network driver 152 , one or more instances of Input/Output (I/O) device interface 153 , and memory 154 , all of which can interface via bus 150 .
- Network driver 152 can comprise a wireless network driver, which can control a WiFi circuitry, for example.
- At least one instance of network driver 152 has the capability to detect instances of AP 112 , and to send and receive network communications using a network communications protocol such as that defined by the Transmission Control Protocol/Internet Protocol, or TCP/IP, protocol suite.
- Memory 154 can comprise a combination of temporary and persistent storage, and can include random access memory (RAM). Contents of memory 154 comprise cache 155 , configuration 156 , client 167 , operating software platform 158 , and AP database 168 .
- memory 154 can include permanent storage in addition to RAM. Examples of such persistent storage include, but are not limited to, flash memory and disk storage (e.g., fixed or removable), CD, etc.
- O/S 158 includes program code executable by CPU 151 to control the operations of device 108 .
- O/S 158 includes a facility to allow client 167 to monitor activity of network driver 152 , so as to identify an appropriate network connection, for example.
- Examples of configuration 156 include, without limitation, parameters used to control client 167 , updates to AP database 168 , login procedures and/or scripts, etc.
- AP 112 instances broadcast beacon frames 119 .
- Network driver 152 “scans” 120 , also referred to herein as “sniffs” or detects, a beacon frame 119 broadcast by an instance of AP 112 . That is, for example, network driver 152 of device 108 listens for beacon frames 119 broadcast on a given channel by instances of AP 112 .
- a beacon frame 119 typically includes information such as an SSID, BSSID, as well as security settings.
- Network driver 152 is further configured to transmit a connection request 123 and to receive a connection response 124 , and to transmit and receive network transmissions.
- FIG. 2A provides an example of a client process flow in accordance with one or more embodiments of the present disclosure.
- the client 167 executes in the background to detect a network interface connection, determine whether the network interface connection can be used to log the user into a wireless network.
- the client 167 can start automatically and run in the background on device 108 at the end of the signup process, so as to be invisible to the user. The client 167 can remain in this state until a network interface connection to a hot spot is made by an instance of network interface 152 .
- the client 167 can start automatically after it is installed on a device 108 .
- the client 167 can also be invoked whenever the device 108 is restarted as part of loading the operating system (“O/S”), for example.
- O/S operating system
- the client 167 upon startup and until the client 167 exits, the client 167 operates to detect a network interface connection and to use a detected network interface connection to log onto a wireless network 102 .
- client 167 can receive event/state information via notifications/messages from O/S 158 .
- the client 167 can implicitly generate a message for its own consumption reflecting the connected state of a given interface.
- the client 167 listens for events generated by one or more instances of network driver 152 via O/S 158 .
- the client 167 can register with O/S 158 to receive events associated with network driver 152 . Such events can signal a change in a state of a network interface connection, for example.
- the client 167 can check the content of these messages to see whether a successful network interface connection has been established.
- a network interface connection can be considered to be established based on a number of criteria, such as the physical or logical connection to a network, or the assignment of an Internet Protocol (IP) address by the network to the computer on which the client is running, for example.
- IP Internet Protocol
- the client 167 determines whether the detected event signals that a network driver 152 has established a network interface connection with an AP 112 instance, at step 203 .
- client 167 determines that a network interface connection is established on a relevant interface (e.g., via a network driver 152 instance)
- the client 167 determines a network name corresponding to the network interface connection.
- a network name can be provided by the Service Set Identifier, or SSID, as defined in the 802.11 standard.
- SSID Service Set Identifier
- a different identifier may be used.
- the client 167 accesses, and maintains, a database of known SSIDs, AP database 168 . If the SSID corresponding to the network interface connection identified by the client 167 matches a known SSID (e.g., corresponds to an entry in the database maintained by the client), the client 167 can initiate a login process to log the user into the wireless network via the detected network interface connection. Thus, at step 204 , client 167 queries AP database 168 to identify the wireless network 102 associated with the AP 112 instance, and whether there is a logon procedure available for the identified wireless network 102 to connect the user.
- the client 167 will stop listening for notifications/messages from O/S 158 related to network interface changes at step 206 .
- the client 167 need not conduct an active scan for broadcast beacons to identify an available network in order to make a network connection for the user. Instead, the client 167 can rely on the O/S 158 or other software on the user's device 108 to locate a suitable AP 112 of a wireless network 102 . Once a suitable AP 112 is identified, client 167 can be configured as is described in U.S. patent application Ser. No. 10/325,450 and/or U.S. patent application Ser. No. 11/435,019, the contents of both of which are incorporated herein, to interact with the gateway (e.g., AP 112 and access controller 114 ) using a scripting mechanism and configuration information, for example, as described therein.
- the gateway e.g., AP 112 and access controller 114
- embodiments of the present disclosure recognize that many users initiate a network connection by opening a web browser window, which action results in O/S 158 and network driver 152 responding and establishing a network interface connection.
- the client 167 can take advantage of this capability provided by the O/S 158 and network driver 152 , and need not include such functionality. Once an appropriate network interface connection is located, the client 167 can use the detected network interface connection to log the user into a wireless network 102 .
- the login procedure used by the client can depend on the wireless network provider on a predetermined configuration or based on a selection made by the user in an interaction between the user and a user interface caused to be displayed by client 167 as part of a logon procedure.
- client 167 can utilize functionality external to the client 167 (e.g., functionality provided by O/S 158 ) to establish a network interface connection, but still retain control of the logon process and/or interact with the user during the logon process.
- the client 167 can interact with the user to offer alternatives to the user, such as which wireless network account/provider to use to connect to a wireless network 102 .
- the client 167 can alternatively perform probing in certain circumstances, as will be described with reference to the client process flow illustrated in FIG. 2B .
- the client process flow associated with probing illustrated in FIG. 2B is performed between steps 204 and 205 of FIG. 2A .
- the client 167 determines whether the network 102 requires probing in step 210 .
- the client 167 could determine that probing is required from a field in the AP database 168 . If the network 102 does not require probing, the client process flow would continue on to the login process in step 205 as described previously with reference to FIG. 2A .
- the client 167 will determine whether there exists a reliable cache or history of probing data in step 211 .
- the cache would store the BSSIDs of networks that have been previously probed successfully and, additionally, could also store the BSSIDs for networks that have failed previous probes. If a probe result was found in the AP database 168 by the client 167 , the client process flow would continue without further probing. If no probe result was found for the network, the client 167 would perform a probe for the network in step 212 .
- a probe determines whether the client 167 would be able to login to the network 102 by interacting with the access gateway.
- One example of a probe would be inspecting the contents of the webpage served up by the gateway and determining whether it contains certain identifiable parameters, such as a location idea parameter.
- Another example of a probe would be performing a mock login procedure against the gateway and, in the situation where pre-defined login responses are detected, concluding that a network is usable.
- probing is performed dynamically based on configuration data, such as is performed in the login portion of client process flow described herein or described in U.S. patent application Ser. No. 10/325,450 and/or U.S. patent application Ser. No. 11/435,019.
- probing described in such applications involves: detecting a beacon message from at least one access point of the wireless network, the beacon message including information identifying the access point; attempting, using at least one predefined operation, to communicate with the access point; determining a usability status based on a response received from the access point to the at least one predefined operation; and storing the determined usability status in a cache, the usability status being associated with a unique identifier of the access point.
- the foregoing probing examples are merely presented for illustrative purposes and are not intended to encompass all possible manners of performing the probe. The probing results are then stored in cache.
- the probe result either the current from step 212 or a cached one identified from step 211 related to the connected AP, is evaluated in step 213 . If the probe failed, there will be no attempt to login and the client process flow will return to step 201 . If the probe is successful success, the client 167 will attempt to perform the login process in step 205 as previously described in connection with FIG. 2A .
- the probing capability makes it possible for the client 167 to work correctly on networks that use one SSID to cover more than one behavior model.
- a large scale network may have a plurality of sub-networks (e.g., an airport network, a hotel network, a coffee shop network, etc.) that all use the same SSID, but depending on particular contract, companies may only be entitled to use certain ones of the sub-networks.
- the probing makes it possible for the client 167 to recognize the large scale network and then determine, based on configuration, which of the sub-networks is identified and only try to login to locations where it knows it will have a chance of success (i.e., an authorized sub-network).
- the client 167 can further include a signup process, as will be described with reference to the client process flow illustrated in FIG. 2C .
- the client process flow associated with the signup process illustrated in FIG. 2C is performed between steps 204 and 205 of FIG. 2A .
- the client 167 determines whether the user has signed up or subscribed for service and has already provisioned their client 167 in step 220 . If the user is already subscribed, the client process flow continues to step 205 to perform the login process as described in connection with FIG. 2A . If the user has not yet signed up for service, the client 167 determines in step 221 whether the user has already been given an opportunity to sign up this connection attempt.
- the user will not again be offered the opportunity to sign up until the next time the user connects to the network and the client process flow will return to step 201 .
- the client 167 may provide the user with an option of not being asked again about signup.
- the client 167 determines in step 222 whether the network allows for a connection to the signup server. Some networks will allow a user to signup for service while others will not, thus the determination of step 222 will prevent a user from being prompted to sign up for service when the client 167 cannot connect to the server to complete the signup process. If the network does not allow connection to the signup server, then the client process flow will return to step 201 . If the signup server can be reached, the user is provided with the opportunity to signup in step 223 . In one or more embodiments, an interface is provided that allows the user to signup for an account.
- the client 167 is provisioned with the new signup information (e.g., username and password) provided to the user. In one or more embodiments, this information is communicated between the signup server and the client without the user having to provide such information. Alternatively, the user can be prompted to provide such information.
- the client determines whether the signup has been completed. If the signup process was not completed, the client process flow will return to step 201 . If signup was completed, the client process flow will continue to the login step 205 as described previously.
- FIG. 3 which comprises FIGS. 3A and 3B , provide a detailed client process flow for use in accordance one or more embodiments of the present disclosure.
- client 167 identifies and enumerates the network components (e.g., network drivers 152 ) present on device 108 .
- client 167 can examine network drivers 152 visible through the Windows standard Network Driver Interface Specification (NDIS) system.
- NDIS Network Driver Interface Specification
- the client 167 determines whether the network component is of interest to client 167 . In a case of a Windows system, this can be done by looking at NDIS Object Identifiers (OIDs) corresponding to the network component found at step 301 , in order to determine whether an OID corresponds to a Wi-Fi interface, e.g., those OIDs that describe 802.11 properties of an interface, such as OID — 8021 — 11 OIDs, and in particular OID — 802 — 11_NETWORK_TYPE and OID — 802 — 11_SSID. This process is performed by steps 302 to 305 , which examine each of the network components identified in step 301 , to find “wireless network components and create a list of applicable network components, e.g., network drivers 152 .
- OIDs NDIS Object Identifiers
- Client 167 monitors the identified network components, instances of network driver 152 , to determine whether or not a connection state associated with any of the identified network components changes, e.g., to detect whether a state of a network interface connection changes. For example and in a case of Microsoft Windows, client 167 can examine NDIS OIDs signaling connection state changes on the interfaces, at step 306 . In a case of Windows, for example, this can be done by monitoring NDIS OIDs for layer 2 connectivity.
- O/S 158 comprises a Microsoft Windows O/S
- client 167 can monitor NDIS OIDs to identify connection status changes at the MAC layer, and identify IP Address changes.
- client 167 can look for a network identifier in the NDIS OID information for the given network driver 152 to retrieve an SSID.
- client 167 can attempt to log the user onto the wireless network 102 , using any one of a number of login procedures, including those described in U.S. patent application Ser. No. 10/325,450 and/or U.S. patent application Ser. No. 11/435,019.
- step 309 determines whether the change reflects a establishment of a layer 2 network connection, e.g., a network driver 152 has connected to a network at a low level and is able to perform basic network connectivity. If such a change in status is detected, processing continues at step 310 to determine whether the network with which a connection has been made is a known network. For example, client 167 can query AP database 168 using the SSID associated with AP 112 to which the network driver 152 is in communication to determine whether the SSID is a known SSID.
- SSID Service Set Identifier
- the SSID can be retrieved by examining an NDIS OIDs that contains the 802.11 network name, e.g., OID — 802 — 11_SSID.
- client 167 e.g., the network is a known commercial network
- processing continues at client 167 to identify the known network for monitoring, e.g., to determine whether or not a layer 3 connection is established. Thereafter, and if the network is determined not to be known (i.e., client 167 need not monitor a connection to an unknown network), processing continues at step 306 to monitor the network interface components.
- the client 167 monitors the networking subsystem of O/S 158 to determine whether a layer 3 IP connection becomes available on the relevant network driver 152 , at step 312 . If a layer 3 connection is detected at step 312 , processing continues at step 313 to log onto the wireless network 102 using the user's authentication information, e.g., authentication information provided by the user at the time that client 167 was transferred to device 108 .
- client 167 can either prompt the user with a dialog containing their username and password, allowing the user to click a Login button to start the login process, or client 167 can automatically start the login process, e.g., without user interaction.
- an icon can be presented in a status area of a user interface displayable by device 108 to indicate that a connection is active and a login is required (e.g., the icon shown in FIG. 5B ).
- client 167 simultaneously monitors for changes in a network interface component, and for changes in a network connection in which the user is logged into a wireless network 102 .
- a standard Windows Messaging Interface subsystem can be used to monitor IP changes on the interface (e.g., the connection on which the user is connected to wireless network 102 ), while at the same time continuously checking the applicable interfaces to identify whether there are any functional IP addresses (e.g., a layer 2 or layer 3 connection).
- the client 167 can alternatively perform probing in certain circumstances, as will be described with reference to the client process flow illustrated in FIG. 3C that is performed between steps 312 and 313 of FIG. 3B .
- the client 167 determines whether the network 102 requires probing in step 312 .
- the client 167 could determine that probing is required from a field in the AP database 168 . If the network 102 does not require probing, the client process flow would continue on to the login process in step 313 as described herein with reference to FIG. 3B .
- the client 167 will determine whether there exists a reliable cache or history or probing data in step 321 .
- the cache would store the BSSIDs of networks that have been previously probed successfully and, additionally, could also store the BSSIDs for networks that have failed previous probes. If a probe result was found in the AP database 168 by the client 167 , the client process flow would continue without further probing. If no probe result was found for the network, the client 167 would perform a probe for the network in step 322 , such as but not limited to the probing techniques described above in reference to step 212 of FIG. 2B .
- the probe result either the current from step 322 or a cached one identified from step 321 related to the connected AP, is evaluated in step 323 . If the probe failed, there will be no attempt to login and the client process flow will return to step 302 . If the probe is successful success, the client 167 will attempt to perform the login process in step 313 .
- client 167 retrieves a login script associated with the SSID of the AP 112 instance identified by client 167 from the store of scripts (e.g., the script store provided by AP database 168 ), and executes the script.
- the store of scripts e.g., the script store provided by AP database 168
- the script store e.g., the script store provided by AP database 168
- the script store e.g., the script store provided by AP database 168
- the script store e.g., the script store provided by AP database 168
- the script store e.g., the script store provided by AP database 168
- a dialog can be presented to the user to indicate successful network login.
- FIG. 5D provides an example of a dialog that can be presented to the user to notify the user that the logon procedure was successful.
- a dialog can be presented to the user can be presented to the user during the logon process, an example of which is shown in FIG. 5C .
- the icon shown in FIGS. 5B and 5E can be used by the user to display the window shown in FIG. 5D , to allow the user to log off of the network.
- any applicable script e.g., a logout script stored in AP database 168 corresponding to the network, can be used to control client 167 to logout of the network.
- Use of a script to control client 167 to log onto or off of a network is discussed in more detail in U.S. patent application Ser. No. 10/325,450 and/or U.S. patent application Ser. No. 11/435,019, the contents of both of which are incorporated herein by reference.
- a dialog e.g., the dialog shown in FIG. 5F
- another dialog can be presented, which contains relevant technical information helpful in troubleshooting, such as the dialog shown in FIG. 5G .
- FIG. 5G can be displayed in response to the user selecting the “See Support Page” link provided in the dialog shown in FIG. 5F .
- the dialog shown in FIG. 5G can be used to display information regarding the network the user is connecting to and the client software in use.
- the information can include software version information, database version information, network SSID, network addresses on both the IP and MAC layer, and an identifier of the script used in attempting to connect the user to the network, as well as a support contact number.
- the client 167 can continue to monitor the applicable interfaces. If a disconnect is detected on a network interface connection at step 314 , the client 167 can notify the user of a change in the connection status at step 315 . For example, client 167 can cause the icon shown in FIG. 5E to change in appearance, e.g., the icon's appearance changes to that shown in FIG. 5B . For example, an appearance of the icon can change by changing the color of a portion of the icon. It should be apparent that any type of notification can be used with embodiments presently disclosed. Processing continues at step 306 to monitor the applicable interfaces.
- client 167 can be used to prompt the user to select an account associated with a certain wireless provider, in a case that multiple wireless providers might be available, for example.
- FIG. 5A provides an example of a dialog used to alert the user that a given wireless provider account is available for use in accordance with embodiments of the present disclosure.
- such a dialog window is displayed on a screen of device 108 , and sits on top of other application windows.
- the given wireless network provider identified by client 167 corresponds to the wireless network provider from which client 167 was provided during a sign up process.
- the network provider comprises an aggregate network provider which acts to aggregate multiple network providers to the user, such that the aggregate network provider provides an interface between the user and the multiple network providers.
- the username and password provided by the user as part of the signup process can be used to “pre-populate” the login window.
- the user can simply select the “Login” button in order to start the authentication process, to log onto a hot spot.
- client 167 can use a network connection, to automatically check for updates to its configuration 166 , which can include updates to AP database 168 , scripts referenced by AP database 168 , and/or software updates, for example.
- updates to AP database 168 can include updates to AP database 168 , scripts referenced by AP database 168 , and/or software updates, for example.
- a process to update such information is further described in U.S. patent application Ser. No. 10/325,450, for example.
- FIG. 4 which comprises FIGS. 4A to 4F , provides examples of dialogs presented to a user during a sign up process for use with one or more embodiments disclosed herein.
- FIGS. 4A and 4B provide examples of a window displaying sign-up forms.
- FIG. 4A can be displayed after the user has picked a usage plan of the wireless provider and provided personal information (e.g., full name, address, etc.), to allow the user to select a username and password. As discussed, this input can be saved and used to automatically configure client 167 on device 108 such that the user need not re-enter this information.
- personal information e.g., full name, address, etc.
- FIG. 4B can be used to display a confirmation dialog, which includes a checkbox to allow the user to confirm the download of the program code in which functionality of client 167 software is embodied, and to confirm corresponding terms and conditions.
- the checkbox is selected, which can cause an automatic download of the software when the user presses the “Submit” button on the form. If the user does not wish to download the software, the user can remove the check in the checkbox (e.g., “un-check” the checkbox).
- the username and password provided by the user can be are included as part of the file's filename downloaded to the device 108 .
- a simple encoding scheme can be used, resulting in a unique filename for each user that signs up.
- FIG. 4C provides an example of a download dialog which includes a filename comprising an encoded username and password.
- a dialog can be displayed by O/S 158 , such as that shown in FIG. 4D , which prompts the user to execute program code contained in the file downloaded to device 108 .
- the installation process can be invoked by O/S 158 , and a dialog such as that shown in FIG. 4E can be displayed. Since authentication information, e.g., username and password, were provided as part of the information downloaded to device 108 , the user need not provide any input during the setup process, i.e. the user need not provide a username, password or any other installation information.
- Client 167 is installed and automatically configured with a username and password, e.g., the same one the user provided during the signup process. In accordance with one or more embodiments, downloading of a client 167 onto the user's device, and the provisioning of the client with the user's authentication information is integrated with the user's signing up for Wi-Fi service.
- client 167 need not be involved in the initial stages of Wi-Fi connectivity on a device 108 , and can become involved at a time that a viable/usable network connection is detected.
- an installation process which includes an installation of client 167 , can be performed as part of user signup process.
- Username and password information, or any other authentication information, supplied by the user during the signup process is downloaded to device 108 , such that the user need not manually enter a username and password in order to log onto a wireless network using the account corresponding to the authentication information.
- An installed client 167 can assume that another mechanism available on device 108 , such as O/S 158 and/or network drivers 152 (which can be a part of O/S 158 ), can be used to provide core functionality to connect to the Wi-Fi Network.
- embodiments disclosed in U.S. patent application Ser. Nos. 10/325,450 and 11/435,019 can be modified such that a client component, e.g., access client 100 of device 102 described in U.S. patent application Ser. No. 10/325,450 and a configured client 108 described in U.S. patent application Ser. No. 11/435,019, can make use of functionality internal to an operating system (e.g., O/S 158 ) or other software or program code, which can establish a network connection at a level that the client component can log a user onto wireless network 102 , and establish a session for the user.
- an operating system e.g., O/S 158
- other software or program code can establish a network connection at a level that the client component can log a user onto wireless network 102 , and establish a session for the user.
- client 167 can be used to augment, supplement or to modify, functionality provided by access client 100, such that access client 100 need not detect carrier network signals. Rather, access client 100 can monitor network driver 152 and/or O/S 158 network detection and association activity (e.g., or other functionality provided by other software/hardware of the device 102), at which point access client 100 can complete the process to log a user onto a network, as described in connection with one or more embodiments of the present disclosure.
- network driver 152 and/or O/S 158 network detection and association activity e.g., or other functionality provided by other software/hardware of the device 102
- O/S 158 establishes a connection
- disclosed embodiments provide the ability to obtain information corresponding to the network interface connection established by the network driver/interface 152 , such as the SSID (for Wi-Fi) of the network.
- the obtained information can then be used to retrieve information about the network from AP database 168 (also referred to as AP database 116) in U.S. patent application Ser. No. 10/325,450.
- O/S 158 can be used to select a network (e.g., using Wireless Zero Configuration Service (WZC) provided by Windows XP). Since O/S 158 is used to select a network, in accordance with one or more embodiments, user preference, profile or network list storing need not be used.
- WZC Wireless Zero Configuration Service
- client 167 can select an account for the user to connect to wireless network 102 , and then log the user onto the wireless network 102 using authentication information associated with the selected account.
- sniffer logic 200 and association logic 204 need not be used, since client 167 functions to monitor network interface connections to determine whether a network interface connection becomes available and is connected, and to initiate a login process such as that described in U.S. patent application Ser. No. 10/325,450.
- client 167 can use the updater logic 212 , login logic 206 and databases (e.g., databases 116 to 118 and 120 on the client of U.S. patent application Ser. No. 10/325,450.
- One or more embodiments disclosed herein can use an authentication sequence, such as that shown in FIG. 12 (e.g., elements 1308, 1310, 1312, 1314, 1316, 1318 and 1320) of U.S. patent application Ser. No. 10/325,450 to authenticate a user, for example.
- behavior/appearance of an access point icon such as that described U.S. patent application Ser. No. 10/325,450, can be modified to reflect three states of client 167 .
- Such an access point icon can appear white when client 167 detects a connection to a known AP 112 but the login process has not yet been completed, and no access point icon in a case that there is no connection to a known AP 112 is detected or there is a detected connection to an unknown AP 112 . Transition from the white state to green occurs by operation of a login process, and a transition from green to white can occur by operation of a logout process.
- Transition from no icon to a white state can occur by way of establishing a connection to a known network (e.g., via O/S 158 ), and transition from a white or green icon to no icon can occur by way of a disconnection from the network (e.g., by something other than client 167 ).
- client 167 can be used to collect quality of service data and can be updated, such as that described in U.S. patent application Ser. No. 10/325,450 (e.g., including that depicted in FIGS. 9 to 11 and related discussion).
- client 167 can be configured to use method scripts described in U.S. patent application Ser. No. 10/325,450 (e.g., including the description relating to FIGS. 16 to 18 of U.S. patent application Ser. No. 10/325,450).
- embodiments of the present disclosure can be used to augment, supplement, or modify, functionality provided by client 108 of U.S. patent application Ser. No. 11/435,019.
- client 167 can be used to passively detect an available network connection, which available network connection can then be used to log a user onto a wireless network 102 .
- Embodiments disclosed herein can use the scripting capabilities described in U.S. patent application Ser. No. 11/435,019.
- client 167 can use such configuration format such as that shown and described in either of U.S. patent application Ser. Nos. 10/325,450 and 11/435,019.
Abstract
A system and method for monitoring wireless network access, and use of a detected wireless network connection are described. A client component (e.g., software component), or client, can be downloaded to a computing device, which leverages off of the computing device's ability to locate and establish a network connection. The client component listens for network connection activity, and determines whether the device has established a network connection with a network known to the client. If the client determines that a network connection has been established to a known network, the client uses the network connection to log the user onto the network.
Description
- This application is a continuation of and claims priority to U.S. Utility patent application Ser. No. 11/769,268, entitled “Method and Apparatus For Monitoring Wireless Network Access,” filed on Jun. 27, 2007, which claims priority to U.S. Provisional Patent Application Ser. No. 60/833,529, entitled “Method and Apparatus For Monitoring Wireless Network Access,” filed on Jul. 25, 2006, the contents of both of which are incorporated herein by reference in their entireties.
- This application is related to U.S. patent application Ser. No. 10/325,450, entitled “Method and Apparatus For Accessing Networks by a Mobile Device,” filed on Dec. 19, 2002, the contents of which are incorporated herein by reference, and related to U.S. patent application Ser. No. 11/435,019, entitled “Network Access Point Detection and Use,” filed on May 15, 2006, the contents of which are incorporated herein by reference.
- A portion of the disclosure of this patent document contains material which may be subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.
- 1. Field of the Invention
- A method and apparatus for monitoring wireless network access is disclosed.
- 2. Background Discussion
- Wireless networks have become more prevalent and provide a mechanism for connecting to other networks, including the Internet. Wireless fidelity “WiFi” networks (e.g., 802.11 networks) have recently emerged as the dominant standard for wireless networks. This is largely due to the ease with which a WiFi network can be installed, and the minimal cost involved. For example, an operator, can setup a “hot spot” with one or more digital subscriber lines (DSLs) and/or T1 lines and equipment that controls access to the wireless network, and then sell high speed wireless Internet access for a fee. A “hot spot” typically has one or more wireless access points (APs) that serve as the connection point between a customer's device and the WiFi network. The customer's device can be any device (e.g., desktop or laptop computer, personal digital assistant, digital camera, mobile phone, automobile, gaming devices, consumer electronic equipment, etc.) which has a WiFi chip capable of communicating with the wireless network.
- As more and more hot spots are installed, there will be more of an opportunity for users to gain access to the Internet via a wireless network connection. Due to the number of different hot spot, or wireless network, operators and different mechanisms for gaining wireless network access, however, wireless access to the Internet is not as seamless as a user would prefer it to be.
- In order to gain access to a wireless network, a user must first have authorization from the wireless network operator, which typically requires that the user have an agreement with the hot spot operator, or another entity that has an agreement with the wireless network operator, which identifies the access terms and fees. Based on such an agreement, the wireless network operator provides the user with connection/login procedures, which the user must use to gain access to the operator's wireless network.
- A user's WiFi-enabled device, or wireless device, typically has the ability to sniff, or scan for, beacon frames, or signals, broadcast by access points which are a part of existing wireless networks. More particularly, the wireless device will tune to one or more available channels and listen for all beacon frames, or signals, broadcast by the wireless networks on that channel. The beacons received by the device can be from one or more wireless networks, and one or more wireless network providers, each of which have different connection/login procedures.
- The wireless device uses the beacon frames received to identify a wireless network and corresponding wireless network provider. Thereafter, an attempt is made to connect to the wireless network using the appropriate login procedures for the network provider. Obtaining and maintaining access to a wireless network is not simple due in large part to the number of wireless networks, and corresponding network providers, available and the fact that the user is “mobile” and attempting to enjoy a seamless network access despite being mobile. A typical wireless device periodically receives beacon frames broadcast by various access points, which can be used to change to a different access point and/or wireless network. The latter change might require the wireless device to establish a connection with a different wireless network and different wireless network connection procedures than that used with a previous connection. To be truly mobile, the user's device might need to interact with multiple wireless networks and wireless network providers, and the diverse connection (e.g., login) procedures required by each of the wireless network providers.
- In accordance with one or more embodiments, a utility is provided to facilitate a user's wireless network access, such that interaction with various connection procedures required by different wireless network providers is transparent to the user. Such a utility can take advantage of capabilities of modern operating systems' ability to establish a low-level connection (e.g.,
layer 2 connectivity) to a wireless network, by detecting such a low-level connection and establishing a high-level connection, which can be used by the user to access the wireless network. In addition, such a utility can be used in connection with aspects described in U.S. patent application Ser. No. 10/325,450, entitled “Method and Apparatus For Accessing Networks by a Mobile Device”, and U.S. patent application Ser. No. 11/435,019, entitled “Network Access Point Detection and Use” to be able to determine whether the low-level connection can be used to establish a wireless network connection. Furthermore and in a case that multiple wireless networks from different network providers are available, a utility is provided to select a preferred provider, either automatically or by alerting the user and allowing the user to make the selection. - In accordance with one or more embodiments, a client utility, also referred to herein as a client, need not scan for, or associate to, a network. In accordance with such an embodiment, the client detects that a low-level network connection has been established, and performs an automated login process for the user. A type of detection used by such a client is passive in that it does not perform active scanning for a wireless network (e.g., detecting beacon frames broadcast by wireless networks). Rather, the client is installed on a client device and allows capabilities provided by the client device's operating system to perform the active scanning
- In accordance with embodiments disclosed herein, the client can be installed on a client device as a part of the user's signup process with a network provider. In accordance with disclosed embodiment, installation of the client can include an automatic configuration of the client to include the user's username and password, which can be used to connect to a wireless network, thereby avoiding the need for the user to provide this information (e.g., at a time when the client is installed and/or connection to a wireless network is attempted).
- In accordance with one or more embodiments, a client component (e.g., software component), or client, can be downloaded to a computing device, which leverages off of the computing device's ability to locate and establish a network connection. The client component listens for network connection activity, and determines whether the device has established a network connection with a network known to the client. If the client determines that a network connection has been established to a known network, the client uses the network connection to log the user onto the network.
- Advantages of this approach include a client that can have a lighter footprint (size, resource needs, etc.) than might otherwise be needed, since the client can rely on other components to perform establish a connection with a network. In addition, the client can rely on device components to establish the network connection, but the client can control (or at least direct) the manner in which the user is logged onto the network. For example, the client can prompt the user to choose a particular account to log onto the network, rather than another account, if the client determines that the network connection is such that the user can use the first account. The client can then either select the account for the user, or prompt the user to select the account, in a case that the account is available to the user.
- Other aspects include a download process used to download the client software component as well as configuration information, including user authentication information, as a downloadable file. Advantageously, the download process integrates the steps of transferring the client component to the computing device, installing the client on the computing device, and configuring the client to use the user's authentication information. This process is more automatic and more convenient to the user than multiple discrete manual steps. The process can be used, for example, to eliminate a need for the user to manually start an installation process or to re-input the user's authentication information (e.g., at a time when the user is attempting to log onto the wireless network).
- The above-mentioned features and objects of the present disclosure will become more apparent with reference to the following description taken in conjunction with the accompanying drawings wherein like reference numerals denote like elements and in which:
-
FIG. 1 , which comprisesFIGS. 1A and 1B , provides an architectural overview example of components used in accordance with one or more embodiments of the present disclosure. -
FIG. 2 , which comprisesFIGS. 2A , 2B and 2C, provides an example of a client process flow in accordance with one or more embodiments of the present disclosure. -
FIG. 3 , which comprisesFIGS. 3A , 3B and 3C, provides a detailed client process flow for use in accordance one or more embodiments of the present disclosure. -
FIG. 4 , which comprisesFIGS. 4A to 4F , provides examples of dialogs presented to a user during a sign up process for use with one or more embodiments disclosed herein. -
FIG. 5 , which comprisesFIGS. 5A to 5G , provides examples of user interface widgets which provide feedback to a user during a network logon process in accordance with disclosed embodiments. - In general, the present disclosure includes a network access point detection and use system and method.
- Certain embodiments of the present disclosure will now be discussed with reference to the aforementioned figures, wherein like reference numerals refer to like components. Although embodiments of the present disclosure are described with reference to the 802.11 wireless network environment, it should be apparent that the disclosed embodiments have application to other network environments, including other wireless networking environments, examples of which include, without limitation, IEEE Standards 802.15, 802.16 and 802.20, Wireless Local Area Networks (Wireless LANs), Wireless Personal Area Networks (Wireless PANs), and Wireless Metropolitan Area Networks (Wireless MANs), etc.
- In accordance with one or more disclosed embodiments, client software, or client, executing on a user's client device, or device, is used to detect a low-level wireless network connection and to use the low-level network connection to connect the user to a wireless network. The client can be downloaded as part of a process in which a user signs up with a given wireless network provider. For example, during the sign up process, the user provides certain information about the user (e.g., name, address, payment details such as credit card information, and authentication information such as username and password). As part of the sign up process, the user can be presented with a choice of downloading the client. If the user elects to download the client, the program code for the client is downloaded to the user's device, together with the authentication information needed to authenticate the user to connect to a wireless network.
-
FIG. 1 , which comprisesFIGS. 1A and 1B , provides an architectural overview example of components used in accordance with one or more embodiments of the present disclosure.Device 108 is a wireless-enabled device. A wireless-enabled device can be any device that includes network interface function, which can be provided by an operating system or some other software, e.g., software provided by a wireless network provider or WiFi chip hardware manufacturer, for example. Examples of such a device include, but are not limited to, desktop or laptop computer, personal digital assistant, digital camera, mobile phone, automobile, gaming device, consumer electronic equipment, and the like. - In accordance with one or more embodiments, device, 108 comprises one or more network drivers (or interfaces) 152, operating system (or O/S) 158,
AP database 168 andclient 167. Eachnetwork driver 152, which can be a driver such as an operating system-level driver for example, can be used to connect to anAP 112 instance of awireless network 102, and then to send and receive network transmissions. In accordance with embodiments of the present disclosure,client 167 is configured to detect a network interface connection using information provided by O/S 158, identify an appropriate network connection (and AP 112) usingAP database 168, and log into a wireless network using account information for the user retrievedform AP database 168. In accordance with embodiments disclosed herein and in the patent applications reference herein,AP database 168 can contain a list of SSIDs and references to login scripts, e.g., for use in logging onto a wireless network.AP database 168 can be stored locally ondevice 108, and can be updated on a periodic basis. U.S. patent application Ser. No. 10/325,450, which is incorporated herein by reference, provides examples of its contents and mechanisms for updating and maintainingAP database 168. In accordance with one or more embodiments presently disclosed,AP database 168 can include all or some portion of the information identified in U.S. patent application Ser. No. 10/325,450. For example and in accordance with one or more embodiments disclosed herein, anAP database 168 entry comprises an SSID and corresponding script information. - The example architecture shown in
FIG. 1A includes instances ofwireless network 102. Each instance ofwireless network 102 can include one or more instances of access point (AP) 112.AP 112 is a networking device that serves as a communication or connection point for adevice 108 andwireless network 102. Usingwireless network 102,device 108 can gain access to theInternet 106, wirednetwork 104, and/or other instances ofwireless network 102, for example. - A
wireless network 102 instance can include, but need not include, one or more instances ofaccess controller 114.Access controller 114 comprises a device used to control access towireless network 102.Access controller 114 can be used to enforce a wireless network operator's rules for accessingwireless network 102, and/orInternet 106. Access control can be accomplished by, for example, allowing a network component ofdevice 108 to associate withnetwork 102 without requiring authentication, and then blocking the device's 108 traffic until valid authentication information is provided.Access controller 114 is typically used with commercial instances ofwireless network 102, such as one provided by a hot spot operator. Another instance ofwireless network 102, such as one used in a home environment, need not include anaccess controller 114. Each instance ofwireless network 102 can have specific procedures, or methodologies, for associating, authenticating, and/or connecting to the network, which can (and likely do) vary from one instance to another ofwireless network 102. - One example of a scenario that might be used involves a process of receiving the device's 108 initial Web page request, and redirecting the request to access
controller 114, which requests the authentication information from thedevice 108. If thedevice 108 provides valid authentication information,access controller 114 permits unrestricted use ofwireless network 102 by thedevice 108. - In accordance with one or more embodiments presently disclosed,
client 167 can detect such an association and then provide the required authentication so as to establish a network connection, or session, for a user ofdevice 108. - In accordance with at least one embodiment,
server 130 can be used to downloadclient 167. In addition,server 130 can be used to transmit other data, including configuration information forclient 167, incremental updates to such configuration information, and/or updates toclient 167. - In the example architecture shown in
FIG. 1A , asingle device 108 andserver 130 are shown for the sake of simplicity. It should be apparent that there can be multiple instances ofdevice 108 and/or multiple instances ofserver 130. -
FIG. 1B provides an example of an internal architecture ofdevice 108 in accordance with one or more embodiments of the present disclosure. It should be apparent thatdevice 108 can include additional components. Such additional components can, for example, depend on the type of device.Device 108 comprises a central processing unit (CPU) 151, one or more instances ofnetwork driver 152, one or more instances of Input/Output (I/O)device interface 153, andmemory 154, all of which can interface viabus 150.Network driver 152 can comprise a wireless network driver, which can control a WiFi circuitry, for example. At least one instance ofnetwork driver 152 has the capability to detect instances ofAP 112, and to send and receive network communications using a network communications protocol such as that defined by the Transmission Control Protocol/Internet Protocol, or TCP/IP, protocol suite.Memory 154 can comprise a combination of temporary and persistent storage, and can include random access memory (RAM). Contents ofmemory 154 comprise cache 155, configuration 156,client 167,operating software platform 158, andAP database 168. In addition,memory 154 can include permanent storage in addition to RAM. Examples of such persistent storage include, but are not limited to, flash memory and disk storage (e.g., fixed or removable), CD, etc. - O/
S 158 includes program code executable byCPU 151 to control the operations ofdevice 108. In accordance with one or more embodiments, O/S 158 includes a facility to allowclient 167 to monitor activity ofnetwork driver 152, so as to identify an appropriate network connection, for example. Examples of configuration 156 include, without limitation, parameters used to controlclient 167, updates toAP database 168, login procedures and/or scripts, etc. - Referring again to
FIG. 1A ,AP 112 instances broadcast beacon frames 119.Network driver 152 “scans” 120, also referred to herein as “sniffs” or detects, abeacon frame 119 broadcast by an instance ofAP 112. That is, for example,network driver 152 ofdevice 108 listens for beacon frames 119 broadcast on a given channel by instances ofAP 112. Abeacon frame 119 typically includes information such as an SSID, BSSID, as well as security settings.Network driver 152 is further configured to transmit aconnection request 123 and to receive aconnection response 124, and to transmit and receive network transmissions. -
FIG. 2A provides an example of a client process flow in accordance with one or more embodiments of the present disclosure. Generally and in accordance with one or more embodiments, once installed on a client device, theclient 167 executes in the background to detect a network interface connection, determine whether the network interface connection can be used to log the user into a wireless network. In accordance with one or more embodiments, theclient 167 can start automatically and run in the background ondevice 108 at the end of the signup process, so as to be invisible to the user. Theclient 167 can remain in this state until a network interface connection to a hot spot is made by an instance ofnetwork interface 152. - In addition and in accordance with one or more embodiments, the
client 167 can start automatically after it is installed on adevice 108. Theclient 167 can also be invoked whenever thedevice 108 is restarted as part of loading the operating system (“O/S”), for example. - At
step 201, upon startup and until theclient 167 exits, theclient 167 operates to detect a network interface connection and to use a detected network interface connection to log onto awireless network 102. In accordance with one or more embodiments, there is no user interface visible forclient 167 during startup/initialization ofclient 167, or while theclient 167 operates to detect a network interface connection. In accordance with one or more embodiments,client 167 can receive event/state information via notifications/messages from O/S 158. At startup, in accordance with one or more embodiments, theclient 167 can implicitly generate a message for its own consumption reflecting the connected state of a given interface. - At
step 202, theclient 167 listens for events generated by one or more instances ofnetwork driver 152 via O/S 158. In accordance with one or more embodiments, theclient 167 can register with O/S 158 to receive events associated withnetwork driver 152. Such events can signal a change in a state of a network interface connection, for example. When messages related to the interface are received from the O/S 158, theclient 167 can check the content of these messages to see whether a successful network interface connection has been established. A network interface connection can be considered to be established based on a number of criteria, such as the physical or logical connection to a network, or the assignment of an Internet Protocol (IP) address by the network to the computer on which the client is running, for example. - For each network interface connection event, or state change, the
client 167 determines whether the detected event signals that anetwork driver 152 has established a network interface connection with anAP 112 instance, atstep 203. Whenclient 167 determines that a network interface connection is established on a relevant interface (e.g., via anetwork driver 152 instance), theclient 167 determines a network name corresponding to the network interface connection. For example, in a case of a Wi-Fi network, a network name can be provided by the Service Set Identifier, or SSID, as defined in the 802.11 standard. On other networks, a different identifier may be used. - In accordance with one or more embodiments, the
client 167 accesses, and maintains, a database of known SSIDs,AP database 168. If the SSID corresponding to the network interface connection identified by theclient 167 matches a known SSID (e.g., corresponds to an entry in the database maintained by the client), theclient 167 can initiate a login process to log the user into the wireless network via the detected network interface connection. Thus, atstep 204,client 167queries AP database 168 to identify thewireless network 102 associated with theAP 112 instance, and whether there is a logon procedure available for the identifiedwireless network 102 to connect the user. In addition and atstep 204, a determination is made whether or not the user is currently logged on and/or whether a new connection should be established for the user. If a new/replacement connection is to be made and theAP 112 instance can be used to establish the connection, processing continues atstep 205 to perform the login process. As is discussed herein, in a case that there are multiple login procedures (e.g., for multiple different providers) available, the user can be prompted to select one of the login procedures/providers. - In accordance with one or more embodiments, once the client exits at
step 201, theclient 167 will stop listening for notifications/messages from O/S 158 related to network interface changes atstep 206. - As such, the
client 167 need not conduct an active scan for broadcast beacons to identify an available network in order to make a network connection for the user. Instead, theclient 167 can rely on the O/S 158 or other software on the user'sdevice 108 to locate asuitable AP 112 of awireless network 102. Once asuitable AP 112 is identified,client 167 can be configured as is described in U.S. patent application Ser. No. 10/325,450 and/or U.S. patent application Ser. No. 11/435,019, the contents of both of which are incorporated herein, to interact with the gateway (e.g.,AP 112 and access controller 114) using a scripting mechanism and configuration information, for example, as described therein. - Advantageously, embodiments of the present disclosure recognize that many users initiate a network connection by opening a web browser window, which action results in O/
S 158 andnetwork driver 152 responding and establishing a network interface connection. In accordance with embodiments disclosed herein, theclient 167 can take advantage of this capability provided by the O/S 158 andnetwork driver 152, and need not include such functionality. Once an appropriate network interface connection is located, theclient 167 can use the detected network interface connection to log the user into awireless network 102. - The login procedure used by the client can depend on the wireless network provider on a predetermined configuration or based on a selection made by the user in an interaction between the user and a user interface caused to be displayed by
client 167 as part of a logon procedure. In accordance with embodiments disclosed herein,client 167 can utilize functionality external to the client 167 (e.g., functionality provided by O/S 158) to establish a network interface connection, but still retain control of the logon process and/or interact with the user during the logon process. As is discussed herein, theclient 167 can interact with the user to offer alternatives to the user, such as which wireless network account/provider to use to connect to awireless network 102. - In accordance with one or more embodiments, the
client 167 can alternatively perform probing in certain circumstances, as will be described with reference to the client process flow illustrated inFIG. 2B . The client process flow associated with probing illustrated inFIG. 2B is performed betweensteps FIG. 2A . Afterstep 204, theclient 167 determines whether thenetwork 102 requires probing instep 210. In some embodiments, theclient 167 could determine that probing is required from a field in theAP database 168. If thenetwork 102 does not require probing, the client process flow would continue on to the login process instep 205 as described previously with reference toFIG. 2A . - If the
network 102 does require probing, theclient 167 will determine whether there exists a reliable cache or history of probing data instep 211. In accordance with embodiments disclosed herein, the cache would store the BSSIDs of networks that have been previously probed successfully and, additionally, could also store the BSSIDs for networks that have failed previous probes. If a probe result was found in theAP database 168 by theclient 167, the client process flow would continue without further probing. If no probe result was found for the network, theclient 167 would perform a probe for the network instep 212. - A probe determines whether the
client 167 would be able to login to thenetwork 102 by interacting with the access gateway. One example of a probe would be inspecting the contents of the webpage served up by the gateway and determining whether it contains certain identifiable parameters, such as a location idea parameter. Another example of a probe would be performing a mock login procedure against the gateway and, in the situation where pre-defined login responses are detected, concluding that a network is usable. In some embodiments described herein, probing is performed dynamically based on configuration data, such as is performed in the login portion of client process flow described herein or described in U.S. patent application Ser. No. 10/325,450 and/or U.S. patent application Ser. No. 11/435,019. One example of probing described in such applications involves: detecting a beacon message from at least one access point of the wireless network, the beacon message including information identifying the access point; attempting, using at least one predefined operation, to communicate with the access point; determining a usability status based on a response received from the access point to the at least one predefined operation; and storing the determined usability status in a cache, the usability status being associated with a unique identifier of the access point. The foregoing probing examples are merely presented for illustrative purposes and are not intended to encompass all possible manners of performing the probe. The probing results are then stored in cache. - Next, the probe result, either the current from
step 212 or a cached one identified fromstep 211 related to the connected AP, is evaluated instep 213. If the probe failed, there will be no attempt to login and the client process flow will return to step 201. If the probe is successful success, theclient 167 will attempt to perform the login process instep 205 as previously described in connection withFIG. 2A . - In one or more embodiments described herein, the probing capability makes it possible for the
client 167 to work correctly on networks that use one SSID to cover more than one behavior model. For example, a large scale network may have a plurality of sub-networks (e.g., an airport network, a hotel network, a coffee shop network, etc.) that all use the same SSID, but depending on particular contract, companies may only be entitled to use certain ones of the sub-networks. The probing makes it possible for theclient 167 to recognize the large scale network and then determine, based on configuration, which of the sub-networks is identified and only try to login to locations where it knows it will have a chance of success (i.e., an authorized sub-network). - In accordance with one or more embodiments, the
client 167 can further include a signup process, as will be described with reference to the client process flow illustrated inFIG. 2C . The client process flow associated with the signup process illustrated inFIG. 2C is performed betweensteps FIG. 2A . Afterstep 204, theclient 167 determines whether the user has signed up or subscribed for service and has already provisioned theirclient 167 instep 220. If the user is already subscribed, the client process flow continues to step 205 to perform the login process as described in connection withFIG. 2A . If the user has not yet signed up for service, theclient 167 determines instep 221 whether the user has already been given an opportunity to sign up this connection attempt. If such an opportunity has been provided to the user, the user will not again be offered the opportunity to sign up until the next time the user connects to the network and the client process flow will return to step 201. In one embodiment, theclient 167 may provide the user with an option of not being asked again about signup. - If the user has not yet been provided with an opportunity to signup for service, the
client 167 determines instep 222 whether the network allows for a connection to the signup server. Some networks will allow a user to signup for service while others will not, thus the determination ofstep 222 will prevent a user from being prompted to sign up for service when theclient 167 cannot connect to the server to complete the signup process. If the network does not allow connection to the signup server, then the client process flow will return to step 201. If the signup server can be reached, the user is provided with the opportunity to signup instep 223. In one or more embodiments, an interface is provided that allows the user to signup for an account. At the conclusion of signup, if the user has successfully completed the signup process, theclient 167 is provisioned with the new signup information (e.g., username and password) provided to the user. In one or more embodiments, this information is communicated between the signup server and the client without the user having to provide such information. Alternatively, the user can be prompted to provide such information. Instep 224, the client determines whether the signup has been completed. If the signup process was not completed, the client process flow will return to step 201. If signup was completed, the client process flow will continue to thelogin step 205 as described previously. -
FIG. 3 , which comprisesFIGS. 3A and 3B , provide a detailed client process flow for use in accordance one or more embodiments of the present disclosure. - At
step 301, which can be performed byclient 167 at startup,client 167 identifies and enumerates the network components (e.g., network drivers 152) present ondevice 108. In a case of Microsoft Windows,client 167 can examinenetwork drivers 152 visible through the Windows standard Network Driver Interface Specification (NDIS) system. - For each
candidate driver 152 found, theclient 167 determines whether the network component is of interest toclient 167. In a case of a Windows system, this can be done by looking at NDIS Object Identifiers (OIDs) corresponding to the network component found atstep 301, in order to determine whether an OID corresponds to a Wi-Fi interface, e.g., those OIDs that describe 802.11 properties of an interface, such as OID—8021—11 OIDs, and in particular OID—802—11_NETWORK_TYPE and OID—802—11_SSID. This process is performed bysteps 302 to 305, which examine each of the network components identified instep 301, to find “wireless network components and create a list of applicable network components, e.g.,network drivers 152. -
Client 167 monitors the identified network components, instances ofnetwork driver 152, to determine whether or not a connection state associated with any of the identified network components changes, e.g., to detect whether a state of a network interface connection changes. For example and in a case of Microsoft Windows,client 167 can examine NDIS OIDs signaling connection state changes on the interfaces, atstep 306. In a case of Windows, for example, this can be done by monitoring NDIS OIDs forlayer 2 connectivity. - To further illustrate by way of an example if O/
S 158 comprises a Microsoft Windows O/S,client 167 can monitor NDIS OIDs to identify connection status changes at the MAC layer, and identify IP Address changes. In a case thatclient 167 detects an IP Address change,client 167 can look for a network identifier in the NDIS OID information for the givennetwork driver 152 to retrieve an SSID. In a case that the SSID corresponding to a known network (e.g., the SSID exists in the AP database 168),client 167 can attempt to log the user onto thewireless network 102, using any one of a number of login procedures, including those described in U.S. patent application Ser. No. 10/325,450 and/or U.S. patent application Ser. No. 11/435,019. - If
client 167 determines, atstep 307, that there is a change in an applicable network interface connection, processing continues atstep 309 to determine whether the change reflects a establishment of alayer 2 network connection, e.g., anetwork driver 152 has connected to a network at a low level and is able to perform basic network connectivity. If such a change in status is detected, processing continues atstep 310 to determine whether the network with which a connection has been made is a known network. For example,client 167 can queryAP database 168 using the SSID associated withAP 112 to which thenetwork driver 152 is in communication to determine whether the SSID is a known SSID. In the case of an 802.11 network, this is done by checking the Service Set Identifier (SSID) of the network; in other networks another unique identifier may be used. On Windows, the SSID can be retrieved by examining an NDIS OIDs that contains the 802.11 network name, e.g., OID—802—11_SSID. If the network is known (e.g., the network is a known commercial network), processing continues atclient 167 to identify the known network for monitoring, e.g., to determine whether or not alayer 3 connection is established. Thereafter, and if the network is determined not to be known (i.e.,client 167 need not monitor a connection to an unknown network), processing continues atstep 306 to monitor the network interface components. - If a known network is identified at
step 311, theclient 167 monitors the networking subsystem of O/S 158 to determine whether alayer 3 IP connection becomes available on therelevant network driver 152, atstep 312. If alayer 3 connection is detected atstep 312, processing continues atstep 313 to log onto thewireless network 102 using the user's authentication information, e.g., authentication information provided by the user at the time thatclient 167 was transferred todevice 108. In accordance with one or more embodiments,client 167 can either prompt the user with a dialog containing their username and password, allowing the user to click a Login button to start the login process, orclient 167 can automatically start the login process, e.g., without user interaction. In accordance with one or more embodiments, an icon can be presented in a status area of a user interface displayable bydevice 108 to indicate that a connection is active and a login is required (e.g., the icon shown inFIG. 5B ). - In accordance with one or more disclosed embodiments,
client 167 simultaneously monitors for changes in a network interface component, and for changes in a network connection in which the user is logged into awireless network 102. In a case of Windows, for example, a standard Windows Messaging Interface subsystem can be used to monitor IP changes on the interface (e.g., the connection on which the user is connected to wireless network 102), while at the same time continuously checking the applicable interfaces to identify whether there are any functional IP addresses (e.g., alayer 2 orlayer 3 connection). - In accordance with one or more embodiments, the
client 167 can alternatively perform probing in certain circumstances, as will be described with reference to the client process flow illustrated inFIG. 3C that is performed betweensteps FIG. 3B . Afterstep 312, theclient 167 determines whether thenetwork 102 requires probing instep 312. In some embodiments, theclient 167 could determine that probing is required from a field in theAP database 168. If thenetwork 102 does not require probing, the client process flow would continue on to the login process instep 313 as described herein with reference toFIG. 3B . - If the
network 102 does require probing, theclient 167 will determine whether there exists a reliable cache or history or probing data instep 321. In accordance with embodiments disclosed herein, the cache would store the BSSIDs of networks that have been previously probed successfully and, additionally, could also store the BSSIDs for networks that have failed previous probes. If a probe result was found in theAP database 168 by theclient 167, the client process flow would continue without further probing. If no probe result was found for the network, theclient 167 would perform a probe for the network instep 322, such as but not limited to the probing techniques described above in reference to step 212 ofFIG. 2B . - Next, the probe result, either the current from
step 322 or a cached one identified fromstep 321 related to the connected AP, is evaluated instep 323. If the probe failed, there will be no attempt to login and the client process flow will return to step 302. If the probe is successful success, theclient 167 will attempt to perform the login process instep 313. - Referring again to step 313 of
FIG. 3B , in accordance with one or more embodiments,client 167 retrieves a login script associated with the SSID of theAP 112 instance identified byclient 167 from the store of scripts (e.g., the script store provided by AP database 168), and executes the script. By way of non-limiting example, use of a script in a log in process is described in U.S. patent application Ser. No. 10/325,450. In accordance with one or more embodiments, if the login succeeds, an appearance of an icon, such as that shown inFIG. 5B can be changed to reflect that the user was successfully logged onto the network. For example, the appearance of the icon shown inFIG. 5B can be altered as shown inFIG. 5E , when the user is successfully logged onto the network. In addition or alternatively, in accordance with embodiments, a dialog can be presented to the user to indicate successful network login. For example,FIG. 5D provides an example of a dialog that can be presented to the user to notify the user that the logon procedure was successful. In accordance with one or more embodiments, a dialog can be presented to the user can be presented to the user during the logon process, an example of which is shown inFIG. 5C . - In accordance with one or more embodiments, the icon shown in
FIGS. 5B and 5E can be used by the user to display the window shown inFIG. 5D , to allow the user to log off of the network. In such a case, any applicable script, e.g., a logout script stored inAP database 168 corresponding to the network, can be used to controlclient 167 to logout of the network. Use of a script to controlclient 167 to log onto or off of a network is discussed in more detail in U.S. patent application Ser. No. 10/325,450 and/or U.S. patent application Ser. No. 11/435,019, the contents of both of which are incorporated herein by reference. - In a case that the login procedure fails, a dialog, e.g., the dialog shown in
FIG. 5F , can be displayed to the user, which allows the user to attempt another login. In a case that the login procedure fails, another dialog can be presented, which contains relevant technical information helpful in troubleshooting, such as the dialog shown inFIG. 5G .FIG. 5G can be displayed in response to the user selecting the “See Support Page” link provided in the dialog shown inFIG. 5F . The dialog shown inFIG. 5G can be used to display information regarding the network the user is connecting to and the client software in use. For example and as shown in the example ofFIG. 5G , the information can include software version information, database version information, network SSID, network addresses on both the IP and MAC layer, and an identifier of the script used in attempting to connect the user to the network, as well as a support contact number. - Once a user is logged in, the
client 167 can continue to monitor the applicable interfaces. If a disconnect is detected on a network interface connection atstep 314, theclient 167 can notify the user of a change in the connection status atstep 315. For example,client 167 can cause the icon shown inFIG. 5E to change in appearance, e.g., the icon's appearance changes to that shown inFIG. 5B . For example, an appearance of the icon can change by changing the color of a portion of the icon. It should be apparent that any type of notification can be used with embodiments presently disclosed. Processing continues atstep 306 to monitor the applicable interfaces. - In accordance with one or more embodiments,
client 167 can be used to prompt the user to select an account associated with a certain wireless provider, in a case that multiple wireless providers might be available, for example.FIG. 5A provides an example of a dialog used to alert the user that a given wireless provider account is available for use in accordance with embodiments of the present disclosure. In accordance with at least one embodiment, such a dialog window is displayed on a screen ofdevice 108, and sits on top of other application windows. In accordance with one or more embodiments, the given wireless network provider identified byclient 167 corresponds to the wireless network provider from whichclient 167 was provided during a sign up process. In accordance with one or more embodiments, the network provider comprises an aggregate network provider which acts to aggregate multiple network providers to the user, such that the aggregate network provider provides an interface between the user and the multiple network providers. The username and password provided by the user as part of the signup process can be used to “pre-populate” the login window. Thus, the user can simply select the “Login” button in order to start the authentication process, to log onto a hot spot. - In accordance with one or more embodiments,
client 167 can use a network connection, to automatically check for updates to itsconfiguration 166, which can include updates toAP database 168, scripts referenced byAP database 168, and/or software updates, for example. A process to update such information is further described in U.S. patent application Ser. No. 10/325,450, for example. -
FIG. 4 , which comprisesFIGS. 4A to 4F , provides examples of dialogs presented to a user during a sign up process for use with one or more embodiments disclosed herein. -
FIGS. 4A and 4B provide examples of a window displaying sign-up forms.FIG. 4A can be displayed after the user has picked a usage plan of the wireless provider and provided personal information (e.g., full name, address, etc.), to allow the user to select a username and password. As discussed, this input can be saved and used to automatically configureclient 167 ondevice 108 such that the user need not re-enter this information. -
FIG. 4B can be used to display a confirmation dialog, which includes a checkbox to allow the user to confirm the download of the program code in which functionality ofclient 167 software is embodied, and to confirm corresponding terms and conditions. In accordance with one or more embodiments, by default, the checkbox is selected, which can cause an automatic download of the software when the user presses the “Submit” button on the form. If the user does not wish to download the software, the user can remove the check in the checkbox (e.g., “un-check” the checkbox). - In accordance with one or more embodiments, when the file containing the program code is downloaded, the username and password provided by the user can be are included as part of the file's filename downloaded to the
device 108. A simple encoding scheme can be used, resulting in a unique filename for each user that signs up.FIG. 4C provides an example of a download dialog which includes a filename comprising an encoded username and password. Subsequently, a dialog can be displayed by O/S 158, such as that shown inFIG. 4D , which prompts the user to execute program code contained in the file downloaded todevice 108. - When the user selects the “Run”, the installation process can be invoked by O/
S 158, and a dialog such as that shown inFIG. 4E can be displayed. Since authentication information, e.g., username and password, were provided as part of the information downloaded todevice 108, the user need not provide any input during the setup process, i.e. the user need not provide a username, password or any other installation information.Client 167 is installed and automatically configured with a username and password, e.g., the same one the user provided during the signup process. In accordance with one or more embodiments, downloading of aclient 167 onto the user's device, and the provisioning of the client with the user's authentication information is integrated with the user's signing up for Wi-Fi service. - In accordance with one or more embodiments,
client 167 need not be involved in the initial stages of Wi-Fi connectivity on adevice 108, and can become involved at a time that a viable/usable network connection is detected. In addition and in accordance with one or more embodiments, an installation process, which includes an installation ofclient 167, can be performed as part of user signup process. Username and password information, or any other authentication information, supplied by the user during the signup process is downloaded todevice 108, such that the user need not manually enter a username and password in order to log onto a wireless network using the account corresponding to the authentication information. An installedclient 167 can assume that another mechanism available ondevice 108, such as O/S 158 and/or network drivers 152 (which can be a part of O/S 158), can be used to provide core functionality to connect to the Wi-Fi Network. - Thus, embodiments disclosed in U.S. patent application Ser. Nos. 10/325,450 and 11/435,019 can be modified such that a client component, e.g., access client 100 of
device 102 described in U.S. patent application Ser. No. 10/325,450 and a configuredclient 108 described in U.S. patent application Ser. No. 11/435,019, can make use of functionality internal to an operating system (e.g., O/S 158) or other software or program code, which can establish a network connection at a level that the client component can log a user ontowireless network 102, and establish a session for the user. - With reference to U.S. patent application Ser. No. 10/325,450, for example,
client 167 can be used to augment, supplement or to modify, functionality provided by access client 100, such that access client 100 need not detect carrier network signals. Rather, access client 100 can monitornetwork driver 152 and/or O/S 158 network detection and association activity (e.g., or other functionality provided by other software/hardware of the device 102), at which point access client 100 can complete the process to log a user onto a network, as described in connection with one or more embodiments of the present disclosure. For example, once O/S 158 establishes a connection, disclosed embodiments provide the ability to obtain information corresponding to the network interface connection established by the network driver/interface 152, such as the SSID (for Wi-Fi) of the network. The obtained information can then be used to retrieve information about the network from AP database 168 (also referred to as AP database 116) in U.S. patent application Ser. No. 10/325,450. - In accordance with one or more embodiments, rather than displaying a list of networks/signals detected such that the user can select one, O/
S 158 can be used to select a network (e.g., using Wireless Zero Configuration Service (WZC) provided by Windows XP). Since O/S 158 is used to select a network, in accordance with one or more embodiments, user preference, profile or network list storing need not be used. Once O/S 158 (or other component(s)) select the network,client 167 can select an account for the user to connect towireless network 102, and then log the user onto thewireless network 102 using authentication information associated with the selected account. - In accordance with embodiments disclosed, sniffer logic 200 and
association logic 204 need not be used, sinceclient 167 functions to monitor network interface connections to determine whether a network interface connection becomes available and is connected, and to initiate a login process such as that described in U.S. patent application Ser. No. 10/325,450. In accordance with one or more embodiments disclosed herein, however,client 167 can use theupdater logic 212,login logic 206 and databases (e.g., databases 116 to 118 and 120 on the client of U.S. patent application Ser. No. 10/325,450. - One or more embodiments disclosed herein can use an authentication sequence, such as that shown in FIG. 12 (e.g., elements 1308, 1310, 1312, 1314, 1316, 1318 and 1320) of U.S. patent application Ser. No. 10/325,450 to authenticate a user, for example.
- In accordance with one or more embodiments, behavior/appearance of an access point icon such as that described U.S. patent application Ser. No. 10/325,450, can be modified to reflect three states of
client 167. Such an access point icon can appear white whenclient 167 detects a connection to a knownAP 112 but the login process has not yet been completed, and no access point icon in a case that there is no connection to a knownAP 112 is detected or there is a detected connection to anunknown AP 112. Transition from the white state to green occurs by operation of a login process, and a transition from green to white can occur by operation of a logout process. Transition from no icon to a white state can occur by way of establishing a connection to a known network (e.g., via O/S 158), and transition from a white or green icon to no icon can occur by way of a disconnection from the network (e.g., by something other than client 167). - In accordance with one or more embodiments,
client 167 can be used to collect quality of service data and can be updated, such as that described in U.S. patent application Ser. No. 10/325,450 (e.g., including that depicted in FIGS. 9 to 11 and related discussion). In addition and in accordance with embodiments disclosed,client 167 can be configured to use method scripts described in U.S. patent application Ser. No. 10/325,450 (e.g., including the description relating to FIGS. 16 to 18 of U.S. patent application Ser. No. 10/325,450). - Similarly, embodiments of the present disclosure can be used to augment, supplement, or modify, functionality provided by
client 108 of U.S. patent application Ser. No. 11/435,019. As described hereinclient 167 can be used to passively detect an available network connection, which available network connection can then be used to log a user onto awireless network 102. Embodiments disclosed herein can use the scripting capabilities described in U.S. patent application Ser. No. 11/435,019. - In accordance with one or more embodiments,
client 167 can use such configuration format such as that shown and described in either of U.S. patent application Ser. Nos. 10/325,450 and 11/435,019. - The above are not intended to be examples a manner in which features described in one or both of U.S. patent application Ser. Nos. 10/325,450 and 11/435,019 can be used in accordance with one or more embodiments of disclosed herein. It should be apparent that this is not an exhaustive set. For example, and with limitation, various other aspects of the scripting and configuration file format described in U.S. patent application Ser. No. 11/435,019 can be used with one or more embodiments of the present disclosure.
- While the apparatus and method have been described in terms of what are presently considered to be the most practical and preferred embodiments, it is to be understood that the disclosure need not be limited to the disclosed embodiments. It is intended to cover various modifications and similar arrangements included within the spirit and scope of the claims, the scope of which should be accorded the broadest interpretation so as to encompass all such modifications and similar structures. The present disclosure includes any and all embodiments of the following claims.
Claims (33)
1. A method for execution on a client device of achieving login to a wireless network, the method comprising:
employing a first software component stored on the client device to establish a first connection with a wireless network;
employing a client utility on the client device to identify that the first software component on the client device has established the first connection with the wireless network; and
performing in the client utility on the client device, in response to the identified first connection, a login procedure for authenticating the client device, the login procedure enabling the client device to use the wireless network, wherein the login procedure is performed by the client utility after the first software component has established the first connection with the wireless network, wherein the login procedure includes establishing a high-level connection with the wireless network.
2. The method of claim 1 , wherein the first connection is an initial low-level connection to the wireless network.
3. The method of claim 1 , wherein the first software component is an operating system running on the client device.
4. The method of claim 1 , wherein the first software component includes one or more network interface components operating on the client device, the method further comprising:
identifying one or more network interface components operating on the client device;
monitoring activity of said identified network interface components, and
performing the following in response to the identified network connection:
obtaining a network identifier associated with the detected network connection;
determining, using the obtained network identifier, whether the detected network connection corresponds to a known network; and
performing the login procedure to authenticate the client device for the wireless network in a case that the obtained network identifier corresponds to a known network.
5. The method of claim 4 , further comprising:
determining whether multiple accounts are available for use in establishing a network session for a user;
identifying a selected one of the multiple accounts in a case that multiple accounts are determined to be available; and
retrieving a login procedure corresponding to the selected account for use in establishing a network session for the user.
6. The method of claim 5 , wherein identifying a selected one of the multiple accounts further comprises:
notifying the user that the selected one of the multiple accounts is available to the user, so as to allow the user to identify the selected one of the multiple accounts.
7. The method of claim 5 , wherein the selected one of the multiple accounts is provided by a wireless provider which acts as an interface between the user and one or more other wireless providers.
8. The method of claim 4 , wherein the network identifier comprises a SSID.
9. The method of claim 4 , further comprising determining, using the obtained network identifier, whether the detected network connection corresponds to a known network by querying a database to determine whether the obtained network identifier is contained in the database.
10. The method of claim 9 , wherein the database further comprises the login procedure and said step of retrieving the login procedure further comprises retrieving the login procedure from the database.
11. The method of claim 4 , wherein said monitoring step is performed periodically and even in a case that a network connection is detected.
12. The method of claim 4 , further comprising:
notifying the user of the network session.
13. The method of claim 12 , wherein said step of notifying uses a displayed icon, the displayed icon changing appearance in response to said network session being established.
14. The method of claim 12 , wherein said step of notifying uses a dialog window displaying a notification in response to said network session being established.
15. The method of claim 12 , wherein said step of notifying uses a displayed icon and a dialog window, the displayed icon changing appearance and the dialog window displaying a notification in response to said network session being established.
16. The method of claim 1 , further comprising:
determining whether the wireless network requires probing;
performing the login procedure if no probing is required; and
if probing is required, performing the following:
probing the network, and
determining whether the probing of the network was successful, and
if successful, performing the login procedure.
17. The method of claim 16 , further comprising:
determining whether results from a prior probing of the network exist; and
utilizing the prior probing results instead of performing the probing of the network.
18. The method of claim 16 , wherein the probing step comprises:
detecting a beacon message from at least one access point of the wireless network, the beacon message including information identifying the access point;
attempting, using at least one predefined operation, to communicate with the access point;
determining a usability status based on a response received from the access point to the at least one predefined operation; and
storing the determined usability status in a cache, the usability status being associated with a unique identifier of the access point.
19. The method of claim 1 , in response to the identified network connection, further comprising:
determining whether a user of the client device is already subscribed for service of the wireless network;
performing the login procedure if the user of the client device is already subscribed to the wireless network; and
if not already subscribed, prompting the user of the client device with the opportunity to become subscribed to the wireless network.
20. A non-transitory machine-readable storage medium having persistent program instructions tangibly stored thereon executable by a processing unit on a client device for achieving login to a wireless network by performing the steps of:
employing a first component on the client device to establish an initial connection with a wireless network;
employing a client utility on the client device to identify that the first software component on the client device has established a connection with a wireless network;
performing in the client utility on the client device, in response to the identified network connection, a login procedure for authenticating the client device for enabling use of the wireless network, wherein the login procedure is performed by the client utility after the first software component has established the initial connection to the wireless network and wherein the login procedure performed by the client utility is wholly separate from the connection established by the first software component to the wireless network.
21. A device capable of achieving login to a wireless network, comprising:
an operating system capable of establishing a low-level connection with a wireless network; and
a client utility, which, in response to detecting an established low level connection, is capable of performing a login procedure for authenticating the device, the login procedure enabling the device to use the wireless network, wherein the login procedure is performed by the client utility after the low level connection to the wireless network is established by the operating system.
22. The method of claim 1 , further comprising:
identifying that a Layer 2 or Layer 3 connection has been established by the first software component on the client device; and
in response to and independent from the identified Layer 2 or Layer 3 connection, authenticating the client device for use of the wireless network by performing the login procedure in the client utility at a higher level than the identified Layer 2 or Layer 3 connection.
23. A method for execution on a client device of achieving login to a wireless network, the method comprising:
conducting active scanning for a wireless network under control of a first software component on the client device and establishing a connection with the wireless network using that software component;
detecting that the first software component on the client device has established a connection with the wireless network; and
responding to detection of the establishment of a connection with the wireless network by the software component by employing a client utility to perform a login procedure for authenticating the client device, said authenticating of the client device being required to enable a user to use the wireless network, wherein the login procedure includes establishing a high-level connection to the wireless network.
24. The method of claim 23 , wherein the client utility does not perform active scanning or participate in establishment of the connection with the wireless network.
25. The method of claim 23 , wherein the client utility is inactive until detection of establishment of a connection with the wireless network.
26. The method of claim 23 , wherein the client utility is stored on the client device.
27. The method of claim 23 , wherein the connection with the wireless network comprises a low-level connection.
28. The method of claim 23 , wherein the first software component comprises an operating system running on the client device.
29. A method for execution on a client device of achieving login to a wireless network, the method comprising:
identifying that a first software component on the client device has established a connection with a wireless network; and
performing in a client utility on the client device, in response to the identified network connection, a login procedure for authenticating the client device to thereby enable the client device and its user to use the wireless network, wherein the login procedure performed by the client utility is performed wholly separately and apart from a procedure implemented previously by the first component to establish the connection to the wireless network, wherein the login procedure includes establishing a high-level connection to the wireless network.
30. The method of claim 29 , wherein the first software component comprises an operating system running on the client device.
31. A method for execution on a client device of achieving login to a wireless network, the method comprising:
employing a first software component stored on the client device to establish an initial connection with a wireless network;
employing a client utility on the client device to identify that the first software component on the client device has established a connection with the wireless network;
performing in the client utility on the client device, in response to the identified network connection, a login procedure for authenticating the client device, the login procedure enabling the client device to use the wireless network, wherein the login procedure is performed by the client utility after the first software component has established the initial connection to the wireless network
32. A device capable of achieving login to a wireless network, comprising:
means for employing a first software component stored on the device to establish an initial connection with a wireless network;
means for identifying that the first software component on the device has established a connection with a wireless network; and
means for performing in response to the identified network connection, a login procedure for authenticating the device, the login procedure enabling the device to use the wireless network, wherein the login procedure is performed by a client utility after the first software component has established the initial connection to the wireless network.
33. The method of claim 1 wherein the first software component is an operating system which initially establishes a low level connection with the wireless network and wherein the client utility monitors the status of one or more network drivers to detect that the operating system has established the initial low level connection with the wireless network and responds to such detection by executing the login procedure.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/189,217 US20140181923A1 (en) | 2006-07-25 | 2014-02-25 | Method and Apparatus For Monitoring Wireless Network Access |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US83352906P | 2006-07-25 | 2006-07-25 | |
US11/769,268 US8767686B2 (en) | 2006-07-25 | 2007-06-27 | Method and apparatus for monitoring wireless network access |
US14/189,217 US20140181923A1 (en) | 2006-07-25 | 2014-02-25 | Method and Apparatus For Monitoring Wireless Network Access |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/769,268 Continuation US8767686B2 (en) | 2006-07-25 | 2007-06-27 | Method and apparatus for monitoring wireless network access |
Publications (1)
Publication Number | Publication Date |
---|---|
US20140181923A1 true US20140181923A1 (en) | 2014-06-26 |
Family
ID=38982269
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/769,268 Expired - Fee Related US8767686B2 (en) | 2006-07-25 | 2007-06-27 | Method and apparatus for monitoring wireless network access |
US13/871,287 Expired - Fee Related US9301137B2 (en) | 2006-07-25 | 2013-04-26 | Method and apparatus for monitoring wireless network access |
US14/189,217 Abandoned US20140181923A1 (en) | 2006-07-25 | 2014-02-25 | Method and Apparatus For Monitoring Wireless Network Access |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/769,268 Expired - Fee Related US8767686B2 (en) | 2006-07-25 | 2007-06-27 | Method and apparatus for monitoring wireless network access |
US13/871,287 Expired - Fee Related US9301137B2 (en) | 2006-07-25 | 2013-04-26 | Method and apparatus for monitoring wireless network access |
Country Status (7)
Country | Link |
---|---|
US (3) | US8767686B2 (en) |
EP (1) | EP2044521A2 (en) |
JP (1) | JP5247694B2 (en) |
KR (1) | KR20090043495A (en) |
CN (1) | CN101484888B (en) |
CA (1) | CA2657004A1 (en) |
WO (1) | WO2008014272A2 (en) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8990366B2 (en) * | 2003-12-23 | 2015-03-24 | Intel Corporation | Method and apparatus for remote modification of system configuration |
US8924522B2 (en) | 2003-12-23 | 2014-12-30 | Intel Corporation | Method and apparatus for remote modification of system configuration setting |
US20080170562A1 (en) * | 2007-01-12 | 2008-07-17 | Accton Technology Corporation | Method and communication device for improving the performance of a VoIP call |
US9538299B2 (en) | 2009-08-31 | 2017-01-03 | Hewlett-Packard Development Company, L.P. | Acoustic echo cancellation (AEC) with conferencing environment templates (CETs) |
US20110099227A1 (en) * | 2009-10-27 | 2011-04-28 | Walls Jeffrey J | Communication application with steady-state conferencing |
US9197420B2 (en) * | 2010-01-06 | 2015-11-24 | International Business Machines Corporation | Using information in a digital certificate to authenticate a network of a wireless access point |
US9420055B2 (en) | 2010-05-13 | 2016-08-16 | Futurewei Technologies, Inc. | System, apparatus for content delivery for internet traffic and methods thereof |
US8621071B1 (en) * | 2010-06-23 | 2013-12-31 | Marvell International Ltd. | Method and apparatus for automatically selecting an access point |
US9319880B2 (en) | 2010-09-15 | 2016-04-19 | Intel Corporation | Reformatting data to decrease bandwidth between a video encoder and a buffer |
WO2012036992A2 (en) | 2010-09-15 | 2012-03-22 | Intel Corporation | Mobile device and method for secure on-line sign-up and provisioning for wi-fi hotspots using soap-xml techniques |
US20130250780A1 (en) * | 2011-09-16 | 2013-09-26 | Qualcomm Incorporated | Systems and methods for network quality estimation, connectivity detection, and load management |
US9736045B2 (en) | 2011-09-16 | 2017-08-15 | Qualcomm Incorporated | Systems and methods for network quality estimation, connectivity detection, and load management |
US9642169B2 (en) * | 2012-01-11 | 2017-05-02 | Saguna Networks Ltd. | Methods, circuits, devices, systems and associated computer executable code for facilitating access to a content source through a wireless mobile network |
US9363754B2 (en) | 2012-08-17 | 2016-06-07 | Apple Inc. | Managing power consumption in mobile devices |
CN103002031B (en) * | 2012-12-03 | 2016-07-13 | 惠州Tcl移动通信有限公司 | A kind of method and system controlling to access wireless routing device |
US9603086B2 (en) * | 2013-06-07 | 2017-03-21 | Apple Inc. | Smart management of background network connections based on historical data |
US10187430B2 (en) | 2013-06-07 | 2019-01-22 | Apple Inc. | Smart management of background network connections |
US9608859B2 (en) * | 2013-10-25 | 2017-03-28 | Aruba Networks, Inc. | System, apparatus and method for reducing failover time through redundancy using virtual access points |
CN103617381B (en) * | 2013-11-21 | 2018-03-16 | 北京奇安信科技有限公司 | The authority configuring method and authority configuration system of equipment |
CN105335112B (en) * | 2014-05-30 | 2020-08-18 | 阿里巴巴集团控股有限公司 | Multi-screen display information processing and main control end content sending method and device |
CN105592009A (en) * | 2014-10-23 | 2016-05-18 | 阿里巴巴集团控股有限公司 | Method and device for retrieving or modifying login password |
JP6498419B2 (en) * | 2014-11-21 | 2019-04-10 | ローム株式会社 | Power line communication device |
US10542569B2 (en) * | 2015-08-06 | 2020-01-21 | Tmrw Foundation Ip S. À R.L. | Community-based communication network services |
US10574559B2 (en) * | 2016-11-10 | 2020-02-25 | Bank Of America Corporation | System for defining and implementing performance monitoring requirements for applications and hosted computing environment infrastructure |
CN107197462B (en) | 2017-06-28 | 2020-04-07 | 阿里巴巴集团控股有限公司 | Wireless network type detection method and device and electronic equipment |
WO2020037013A2 (en) * | 2018-08-14 | 2020-02-20 | Traitware, Inc. | System and method for automatically registering a verified identity in an on-line environment |
JP6732068B1 (en) * | 2019-02-26 | 2020-07-29 | レノボ・シンガポール・プライベート・リミテッド | Information processing device, information processing method, and program |
US11432143B2 (en) * | 2019-08-21 | 2022-08-30 | Lenovo (Singapore) Pte. Ltd. | Authentication based on network connection history |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6269395B1 (en) * | 1998-12-21 | 2001-07-31 | Nortel Networks Limited | Method and system in a computer-based system for providing access to services associated with different access points |
US20040114553A1 (en) * | 2002-05-28 | 2004-06-17 | James Jiang | Interworking mechanism between CDMA2000 and WLAN |
US20040127208A1 (en) * | 2002-08-02 | 2004-07-01 | Biju Nair | Systems and methods for seamless roaming between wireless networks |
US20050144237A1 (en) * | 2003-12-24 | 2005-06-30 | Rafael Heredia | Instant messaging terminal adapted for Wi-Fi access points |
US20050163319A1 (en) * | 2003-11-07 | 2005-07-28 | Siemens Aktiengesellschaft | Method of authentication via a secure wireless communication system |
US20060026289A1 (en) * | 2004-08-02 | 2006-02-02 | Microsoft Corporation | System, method and user interface for network status reporting |
US20060215621A1 (en) * | 2005-03-24 | 2006-09-28 | Research In Motion Limited | Scanning for wireless local area networks |
US20060223564A1 (en) * | 2005-03-31 | 2006-10-05 | Rosen Eric C | System and method for efficiently providing high-performance dispatch services in a wireless system |
US20070223408A1 (en) * | 2003-10-06 | 2007-09-27 | Broadbeam Corporation | Method and Apparatus for Intelligent Seamless Network Switching |
US20090300722A1 (en) * | 2005-12-16 | 2009-12-03 | Nokia Corporation | Support for integrated wlan hotspot clients |
US8019082B1 (en) * | 2003-06-05 | 2011-09-13 | Mcafee, Inc. | Methods and systems for automated configuration of 802.1x clients |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5919247A (en) * | 1996-07-24 | 1999-07-06 | Marimba, Inc. | Method for the distribution of code and data updates |
ID24678A (en) | 1997-06-06 | 2000-07-27 | Salbu Res & Dev Pty Ltd | OPERATION METHOD OF A MULTI STATION NETWORK |
US6625135B1 (en) | 1998-05-11 | 2003-09-23 | Cargenie Mellon University | Method and apparatus for incorporating environmental information for mobile communications |
US6119160A (en) * | 1998-10-13 | 2000-09-12 | Cisco Technology, Inc. | Multiple-level internet protocol accounting |
US6522880B1 (en) * | 2000-02-28 | 2003-02-18 | 3Com Corporation | Method and apparatus for handoff of a connection between network devices |
US6871215B2 (en) * | 2000-04-11 | 2005-03-22 | Telecommunication Systems Inc. | Universal mail wireless e-mail reader |
US7020687B2 (en) * | 2001-05-18 | 2006-03-28 | Nortel Networks Limited | Providing access to a plurality of e-mail and voice message accounts from a single web-based interface |
US20030031150A1 (en) * | 2001-08-10 | 2003-02-13 | Satoru Yukie | Dual network modem |
US7769838B2 (en) * | 2001-08-23 | 2010-08-03 | The Directv Group, Inc. | Single-modem multi-user virtual private network |
WO2003030433A2 (en) | 2001-10-02 | 2003-04-10 | Cyneta Networks, Inc. | System, method and apparatus for seamless interaction between wireless local area network and wireless packet data network |
EP1472826A1 (en) * | 2002-01-29 | 2004-11-03 | Koninklijke Philips Electronics N.V. | Internet protocol based wireless communication arrangements |
US20030174681A1 (en) * | 2002-03-18 | 2003-09-18 | Philippe Gilberton | Method and apparatus for indicating the presence of a wireless local area network by detecting energy fluctuations |
US7110783B2 (en) * | 2002-04-17 | 2006-09-19 | Microsoft Corporation | Power efficient channel scheduling in a wireless network |
JP4075524B2 (en) * | 2002-08-22 | 2008-04-16 | 富士通株式会社 | Wireless service system |
US7257105B2 (en) * | 2002-10-03 | 2007-08-14 | Cisco Technology, Inc. | L2 method for a wireless station to locate and associate with a wireless network in communication with a Mobile IP agent |
US7607015B2 (en) * | 2002-10-08 | 2009-10-20 | Koolspan, Inc. | Shared network access using different access keys |
US20040203752A1 (en) * | 2002-11-18 | 2004-10-14 | Toshiba America Information Systems, Inc. | Mobility communications system |
US7171203B2 (en) * | 2004-01-07 | 2007-01-30 | Research In Motion Limited | Apparatus, and associated method, for facilitating selection by a mobile node of a network through which to communicate |
US20050198319A1 (en) * | 2004-01-15 | 2005-09-08 | Yahoo! Inc. | Techniques for parental control of internet access including a guest mode |
US7496360B2 (en) | 2004-02-27 | 2009-02-24 | Texas Instruments Incorporated | Multi-function telephone |
US20050243758A1 (en) * | 2004-05-03 | 2005-11-03 | Torarp Carl-Johan Y | Systems and methods for managing and controlling broadband wireless network |
US7660871B2 (en) * | 2004-05-28 | 2010-02-09 | Microsoft Corporation | System and method for automatically generating networked service installation based on subscription status |
JP2006020088A (en) | 2004-07-01 | 2006-01-19 | Japan Communication Inc | Automatic connection method of network, apparatus for automatically connecting to network, and program |
US20060068799A1 (en) * | 2004-09-27 | 2006-03-30 | T-Mobile, Usa, Inc. | Open-host wireless access system |
JP2006113877A (en) * | 2004-10-15 | 2006-04-27 | Willcom Inc | Connection device authentication system |
US8369262B2 (en) * | 2004-11-30 | 2013-02-05 | Apple Inc. | Automated logon for diverse network access |
US7339915B2 (en) * | 2005-10-11 | 2008-03-04 | Cisco Technology, Inc. | Virtual LAN override in a multiple BSSID mode of operation |
-
2007
- 2007-06-27 US US11/769,268 patent/US8767686B2/en not_active Expired - Fee Related
- 2007-07-24 EP EP07799783A patent/EP2044521A2/en not_active Withdrawn
- 2007-07-24 CA CA002657004A patent/CA2657004A1/en not_active Abandoned
- 2007-07-24 KR KR1020097001299A patent/KR20090043495A/en not_active Application Discontinuation
- 2007-07-24 CN CN2007800253179A patent/CN101484888B/en not_active Expired - Fee Related
- 2007-07-24 JP JP2009521955A patent/JP5247694B2/en not_active Expired - Fee Related
- 2007-07-24 WO PCT/US2007/074241 patent/WO2008014272A2/en active Application Filing
-
2013
- 2013-04-26 US US13/871,287 patent/US9301137B2/en not_active Expired - Fee Related
-
2014
- 2014-02-25 US US14/189,217 patent/US20140181923A1/en not_active Abandoned
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6269395B1 (en) * | 1998-12-21 | 2001-07-31 | Nortel Networks Limited | Method and system in a computer-based system for providing access to services associated with different access points |
US20040114553A1 (en) * | 2002-05-28 | 2004-06-17 | James Jiang | Interworking mechanism between CDMA2000 and WLAN |
US20040127208A1 (en) * | 2002-08-02 | 2004-07-01 | Biju Nair | Systems and methods for seamless roaming between wireless networks |
US8019082B1 (en) * | 2003-06-05 | 2011-09-13 | Mcafee, Inc. | Methods and systems for automated configuration of 802.1x clients |
US20070223408A1 (en) * | 2003-10-06 | 2007-09-27 | Broadbeam Corporation | Method and Apparatus for Intelligent Seamless Network Switching |
US20050163319A1 (en) * | 2003-11-07 | 2005-07-28 | Siemens Aktiengesellschaft | Method of authentication via a secure wireless communication system |
US20050144237A1 (en) * | 2003-12-24 | 2005-06-30 | Rafael Heredia | Instant messaging terminal adapted for Wi-Fi access points |
US20060026289A1 (en) * | 2004-08-02 | 2006-02-02 | Microsoft Corporation | System, method and user interface for network status reporting |
US20060215621A1 (en) * | 2005-03-24 | 2006-09-28 | Research In Motion Limited | Scanning for wireless local area networks |
US20060223564A1 (en) * | 2005-03-31 | 2006-10-05 | Rosen Eric C | System and method for efficiently providing high-performance dispatch services in a wireless system |
US20090300722A1 (en) * | 2005-12-16 | 2009-12-03 | Nokia Corporation | Support for integrated wlan hotspot clients |
Also Published As
Publication number | Publication date |
---|---|
CN101484888A (en) | 2009-07-15 |
CA2657004A1 (en) | 2008-01-31 |
WO2008014272A2 (en) | 2008-01-31 |
EP2044521A2 (en) | 2009-04-08 |
JP5247694B2 (en) | 2013-07-24 |
US8767686B2 (en) | 2014-07-01 |
JP2009545251A (en) | 2009-12-17 |
US20130235751A1 (en) | 2013-09-12 |
US9301137B2 (en) | 2016-03-29 |
KR20090043495A (en) | 2009-05-06 |
US20080025278A1 (en) | 2008-01-31 |
WO2008014272A3 (en) | 2008-04-03 |
CN101484888B (en) | 2013-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8767686B2 (en) | Method and apparatus for monitoring wireless network access | |
US11019512B2 (en) | Providing easy access to radio networks | |
KR101005212B1 (en) | Support for integrated wlan hotspot clients | |
EP2030429B1 (en) | Network access point detection and use | |
KR20210032133A (en) | Method for iot terminal to autonomically accessing wireless lan network and system there of | |
KR101099270B1 (en) | Interface between mobile connectivity service and wwan device | |
US20080009266A1 (en) | Communication Device, Wireless Network, Program, And Storage Medium | |
EP4195627A1 (en) | Link indication referring to content for presenting at a mobile device | |
US10356707B2 (en) | Wireless local area network connection method, mobile terminal, and storage medium | |
US8332495B2 (en) | System and method for securing a wireless network | |
WO2018010425A1 (en) | Method and apparatus for pushing and receiving wi-fi hotspot information, and storage medium | |
US10050823B2 (en) | System and method for providing device management service to electronic device having no broadband communication module | |
KR101729661B1 (en) | Network access system and network access method | |
US20140099951A1 (en) | Handling of Operator Connection Offers in a Communication Network | |
US20090010184A1 (en) | Device and method for bidirectional communication | |
WO2023130821A1 (en) | Network access method and apparatus | |
KR20120027671A (en) | Ip connection support method and apparatus for each of wireless modem communication protocol of integrated cm client based on 3w |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |