The present invention relates to management of network connectivity for devices.
Existing connectivity management solutions for managing connectivity of devices to networks are very dependent on the actual devices and/or specific operating systems being used by the devices. As a result, custom development and integrated testing for each new device is required, even if there are only slight differences between a new device and an existing device. Custom development and testing of each new device increases costs significantly and also increases the time to market for new devices. Thus, mobile operators are not able to efficiently market new products in a timely fashion and consumers experience the increase in costs due to custom development procedures and testing. Additionally, as network resources and bandwidth are not infinite, the demand for these resources from devices may far exceed supply in the future. Connected devices and network operators will need to manage the state of these devices in order to assist in management of the usage of all available resources.
Furthermore, existing solutions place a large burden on mobile network operators where changes to back office systems of the mobile network operator triggers changes in the corresponding devices that connect through the mobile network operators. These solutions are not easily sustainable and do not scale in an environment where mobile network operators anticipate connected devices of all varieties to coexist on their networks.
The present invention provides a method for establishing network connectivity with a device. A connectivity platform detects a plurality of networks. A network policy of each of the plurality of networks is determined. A signal quality of each of the plurality of networks is determined. The network policy and the signal quality of each of the plurality of networks is analyzed. A connection is established between the device and the first network of the plurality of networks based on the analysis of the network policy and the signal quality of each of the plurality of networks.
In a further embodiment, detecting a plurality of networks comprises detecting a plurality of networks capable of establishing a connection with the device using at least one transceiver of the device.
In a further embodiment, determining a network policy of each of the plurality of networks comprises receiving the network policy of each of the plurality of networks from a policy server via a push policy based on the device being active.
In a further embodiment, determining a signal quality of each of the plurality of networks comprises receiving signal quality data associated with each of the plurality of networks in response to a pull policy of the device.
In a further embodiment, analyzing the network policy and the signal quality of each of the plurality of networks comprises comparing the network policies of each of the plurality of networks to determine at least one network policy compatible with the device and comparing the signal quality of each of the at least one network policy to determine an optimal network for establishing a connection with the device. The optimal network may be the first network.
In a further embodiment, a connection is established between the device and a second network of the plurality of networks in response to the device losing the connection to the first network.
In a further embodiment, a second network of the plurality of networks to establish a connection with the device is determined in response to determining that the connection with the first network is insufficient to support continued data transfer. The connection of the device is then transferred from the first network to the second network.
In a further embodiment, a transceiver of a plurality of transceivers of the device is selected to establish the connection between the device and the first network. An instruction is transmitted to the device to power down transceivers not associated with the connection between the device and the first network.
In a further embodiment, the connectivity platform is accessed by a device via an HTTP accessible user interface.
In a further embodiment, the device is associated with a device policy, and an instruction may be transmitted to the device to override the device policy and the network policy of the first network.
In a further embodiment, analyzing the network policy and the signal quality of each of the plurality of networks comprises determining at least one policy implementation factor of the device, and selecting an optimal network for connection with the device based on the at least one policy implementation factor.
In a further embodiment, analyzing the network policy and the signal quality of each of the plurality of networks comprises determining a device state of the device, and selecting an optimal network for connection with the device based on the device state.
In a further embodiment, analyzing the network policy and the signal quality of each of the plurality of networks comprises analyzing content being transmitted to or being requested by the device and selecting an optimal network for the content based on the network policy and the signal quality of each of the plurality of networks.
In an embodiment, a system for establishing network connectivity with a device is disclosed. A policy server stores network policies associated with a plurality of networks and a device policy associated with the device. A connectivity platform is configured to detect the plurality of networks, determine the network policies associated with each of the plurality of networks from the policy server, determine a signal quality of each of the networks, analyze the network policies associated with each of the plurality of networks and the signal quality of each of the plurality of networks, and establish a connection between the devices and a first network of the plurality of networks.
In a further embodiment, the connectivity platform is configured to detect the plurality of networks which are capable of establishing a connection with the device using at least one transceiver of the device.
In a further embodiment, the connectivity platform is further configured to receive the network policies associated with each of the plurality of networks from the policy server via a push policy based on the device being active.
In a further embodiment, the connectivity platform is further configured to receive the signal quality of each of the plurality of networks in response to a pull policy of the device.
In a further embodiment, the connectivity platform is further configured to compare the network policies associated with each of the plurality of networks to determine at least one network policy compatible with the device, and compare the signal quality of each of the at least one network policy to determine an optimal network for establishing a connection with the device. The optimal network may be the first network.
In a further embodiment, the connectivity platform is further configured to establish a connection between the device and a second network of the plurality of networks in response to the device losing the connection to the first network.
In a further embodiment, the connectivity platform is further configured to determine a second network of the plurality of networks to establish a connection with the device in response to determining that the connection with the first network is insufficient to support continued data transfer, and transfer the connection of the device from the first network to the second network.
In a further embodiment, the connectivity platform is further configured to select a transceiver of a plurality of transceivers of the device to establish the connection between the device and the first network, and transmit an instruction to the device to power down transceivers not associated with the connection between the device and the first network.
In a further embodiment, the connectivity platform is accessed by the device via an HTTP accessible user interface.
In a further embodiment, the device is associated with a device policy and the connectivity platform is further configured to transmit an instruction to the device to override the device policy and use the network policy of the first network.
In a further embodiment, the connectivity platform is further configured to determine at least one policy implementation factor of the device, and select an optimal network for connection with the device based on the at least one policy implementation factor.
In a further embodiment, the connectivity platform is further configured to determine a device state of the device, and select an optimal network for connection with the device based on the device state.
In a further embodiment, the connectivity platform is further configured to analyze the content being transmitted to or being requested by the device, and select an optimal network for the content based on the network policy and the signal quality of each of the plurality of networks.
In an embodiment, a computer readable medium encoded with computer program instructions establishing network connectivity of a device is disclosed. The computer program instructions when executed by a processor, causes the processor to perform the steps comprising: detecting a plurality of networks, determining a network policy of each of the plurality of networks, determining a signal quality of each of the plurality of networks, analyzing the network policy and the signal quality of each of the plurality of networks, and establishing a connection between the device and a first network of the plurality of networks based on the analyzing.
In a further embodiment, the computer program instructions causing the processor to perform the step of detecting a plurality of networks, further causes the processor to perform the step comprising detecting a plurality of networks capable of establishing a connection with the device using at least one transceiver of the device.
In a further embodiment, the computer program instructions causing the processor to perform the step of determining a network policy of each of the plurality of networks, further causes the processor to perform the step comprising receiving the network policy of each of the plurality of networks from a policy server via a push policy based on the device being active.
In a further embodiment, the computer program instructions causing the processor to perform the step of determining a signal quality of each of the plurality of networks, further causes the processor to perform the step comprising receiving signal quality data associated with each of the plurality of networks in response to a pull policy of the device.
In a further embodiment, the computer program instructions causing the processor to perform the step of analyzing the network policy and the signal quality of each of the plurality of networks, further causes the processor to perform the steps comprising comparing the network policies of each of the plurality of networks to determine at least one network policy compatible with the device, and comparing the signal quality of each of the at least one network policy to determine an optimal network for establishing a connection with the device. The optimal network may be the first network.
In a further embodiment, the computer program instructions when executed by the processor, cause the processor to perform the step comprising establishing a connection between the device and a second network of the plurality of networks in response to the device losing the connection to the first network.
In a further embodiment, the computer program instructions when executed by the processor, cause the processor to perform the step comprising determining a second network of the plurality of networks to establish a connection with the device in response to determining that the connection with the first network is insufficient to support continued data transfer, and transferring the connection of the device from the first network to the second network.
In a further embodiment, the computer program instructions when executed by the processor, cause the processor to perform the step comprising selecting a transceiver of a plurality of transceivers of the device to establish the connection between the device and the first network, and transmitting an instruction to the device to power down transceivers not associated with the connection between the device and the first network.
In a further embodiment, the connectivity platform is accessed by a device via an HTTP accessible user interface.
In a further embodiment, the computer program instructions when executed by the processor, cause the processor to perform the step comprising transmitting an instruction to the device to override a device policy associated with the device and use the network policy of the first network.
In a further embodiment, the computer program instructions causing the processor to perform the step of analyzing the network policy and the signal quality of each of the plurality of networks, further causes the processor to perform the steps comprising determining at least one policy implementation factor of the device, and selecting an optimal network for connection with the device based on the at least one policy implementation factor.
In a further embodiment, the computer program instructions causing the processor to perform the step of analyzing the network policy and the signal quality of each of the plurality of networks, further causes the processor to perform the steps comprising determining a device state of the device, and selecting an optimal network for connection with the device based on the device state.
In a further embodiment, the computer program instructions causing the processor to perform the step of analyzing the network policy and the signal quality of each of the plurality of networks, further causes the processor to perform the steps comprising analyzing content being transmitted to or being requested by the device, and selecting an optimal network for the content based on the network policy and the signal quality of each of the plurality of networks.
In a further embodiment, a method and system for establishing network connectivity with a device comprises a connectivity platform that detects a plurality of networks. A network policy of each of the plurality of networks is determined. A signal quality of each of the plurality of networks is determined. A plurality of connections is established between the device and the plurality of connections. All except one of the plurality of connections between the device and the plurality of networks is terminated. Termination is based on determining which network is most capable for data to be transmitted or requested from the device, or which one of the networks offers a highest data throughput rate. Signal degradation may be detected in the one unterminated connection. A wake-up signal may be transmitted to a plurality of transceivers to wake and determine signal quality with respective networks capable of connecting with the plurality of receivers. Based on the determined signal quality, a new network is selected for connection. The new network may be selected based on signal quality of which network is best suited for data transmission of specific data content or highest data throughput signal. Each of the transceivers may be set to wake-up at a predetermined time to check signal quality with at least one of the plurality of networks.
With the advent of ubiquitous mobile broadband availability and the increasing number of devices supporting network connectivity, systems for managing all aspects of connectivity must be more flexible and device agnostic—independent of device type and device operating system.
The present invention is directed to a method and system for management of network connectivity for devices. More specifically, embodiments of the present invention described herein facilitate efficient management of network connectivity for devices by leveraging the state of the device and managing the network connectivity of devices through a user interface that is device and platform agnostic. Mobile operators will be able to speed time to market and launch specific services with devices in mind. Consumers will experience an improved out of box experience. Consumers, for example, will be able to purchase a consumer electronic device or computing device in any retail or internet electronic store without requiring any special knowledge or need to purchase equipment to be able to connect and authenticate their device with a mobile broadband network. The embodiments described herein along with supporting figures are meant to provide an understanding of a network connectivity platform, and it is understood that embodiments of the present invention may be performed within a computing system using data stored within the computing system.
Connectivity platform 112 leverages information from various sources, including devices such as devices 102A, 102B, and 102C, and networks 106, 108 and 110, along with associated back office systems in order to ensure more efficient connectivity of devices to networks and more efficient use of network resources. Connectivity platform 112 is accessible by devices 102A, 102B, and 102C thru any HTTP enabled web browser. This allows connectivity platform 112 to be device and platform agnostic. More specifically, connectivity platform provides an HTTP accessible user interface, accessible and viewable thru a web browser residing at any of devices 102A, 102B, and 102C. Accessing connectivity platform 112 through an HTTP accessible user interface eliminates any requirement of specialized code between mobile network operator (such as networks 106, 108, and 110) back office systems, such as activation servers, update management, pricing plan management, and billing systems. This also promotes flexibility at a mobile network operator's back office systems to change those systems as needed without the need to worry about connectivity issues with devices.
A device, for example, 102A, may access connectivity platform 112 to assist in establishing connectivity to one of networks 106, 108, or 110. Connectivity platform 112 is responsible for selecting an optimal network for connection with device 102A based on a variety of factors including network policies associated with each of the networks, signal quality provided by each of the networks, and in some instances, policies of the device itself, and a state of the device. A state of the device may refer to for example, a geographic location of the device and power consumption of various radio transceivers integrated with the device.
For purposes of illustration only,
At step 204, connectivity platform 112 detects device 102A in response to device 102A powering on, and establishes a connection with device 102A.
Once connectivity platform 112 has established a connection with a device, such as device 102A, the method proceeds to step 206. At step 206, connectivity platform 112 detects a plurality of networks. For example, connectivity platform detects networks 106, 108, and 110 which are available for connection with device 102A. When detecting a plurality of networks, connectivity platform 112 initiates an instruction to device 102A to turn on all radio transceivers. Once radio transceivers of device 102A are on, connectivity platform 112 detects all networks capable of establishing a connection with device 102A via any of the radio transceivers of device 102A.
At step 208, connectivity platform 112 determines a network policy of each of the plurality of networks (networks 106, 108, and 110). Once connectivity platform 112 is connected with a device, any available networks of the plurality of networks will transmit their network policies to the device via connectivity platform 112 using a push policy. The push policy is based on the device being active. Thus, if device 102A is active and in communication with connectivity platform 112, networks 106, 108, and 110 may automatically transmit their network policies to device 102A via connectivity platform 112.
In an alternative embodiment, policies of networks may be stored in a policy server 114 associated with connectivity platform 112. In this situation, once a connection is established between connectivity platform, and a device, for example, device 102A, connectivity platform 112 will receive network policies of each of the available networks from the policy server 114, also via a push policy dictating that the policy server 114 will transmit the network policies based on the device being active.
Each network policy includes information such as choice of networks to connect to and circumstances meriting a network switch. For example, a network policy associated with network 106 may dictate that if a signal quality of network 106 is insufficient for the type of data requested by device 102A, the connection between device 102A and network 106 should be transferred to network 108.
At step 210, connectivity platform 112 determines a signal quality of each of the plurality of networks (networks 106, 108, and 110). After receiving network policies of the plurality of networks, connectivity platform 112 must determine the signal quality of data transmission from each of the networks to the device to assist in determining which network is optimal to establish a connection with the device. Signal quality data associated with the networks is received in response to a push policy of the device.
At step 212, connectivity platform 112 analyzes the network policy and the signal quality of each of the plurality of networks. In analyzing the network policy and signal quality of each of the plurality of networks, connectivity platform 112 compares each of the network policies and determines at least one network policy that is compatible with the device. The at least one network policy represents a subset of the network policies of the plurality of networks that is suitable for connection with the device. Certain network policies may not be compatible with device policies and may also not be compatible with particular types of data requested by the device.
For example, a device policy of device 102A may be stored at the aforementioned policy server 114 associated with connectivity platform 112. The plurality of network policies may be compared to determine which is compatible with device 102A.
After comparing the network policies to determine the at least one network policy compatible with the device, the signal quality of each of the at least one network policy or subset of the network policies is compared to determine an optimal network for establishing a connection with the device. Typically, the optimal network is the network with a network policy compatible with the device and with the highest signal quality to facilitate data transfer between the device and the network.
For example, device 102A may wish to receive multimedia data via a 4G network. Network 106 may be a 3G network, and networks 108 and 110 may be 4G networks. In comparing network policies, connectivity platform 112 will determine that network 106 does not have a network policy consistent with the needs of device 102A. The at least one network policy in this example will be networks 108 and 110 which offer 4G connectivity. Connectivity platform 112 then determines a signal quality associated with each of networks 108 and 110. If, for example, network 108 has a higher signal quality then network 110, then connectivity platform 112 will select network 108 as the optimal network for establishing a connection with the device.
At step 214, connectivity platform 112 establishes a connection between the device and a network based on the analysis of the network policy and signal quality of each of the plurality of networks. Connectivity platform establishes a connection between device 102A and an optimal network of the plurality of networks. Selection of the optimal network is discussed above with respect to analysis of the network policy and the signal quality of each of the plurality of networks. With respect to the example discussed above, connectivity platform 112 would establish a connection between device 102A and network 108.
While connectivity platform 112 facilitates establishing connectivity between a network and a device, connectivity platform 112 maintains an active role even after connectivity is established. Since connectivity platform 112 has access to network policies stored in the policy server 114, in the event that a device loses connection with a first network, connectivity platform 112 may automatically determine a second network to establish a connection with. For example, if device 102A were to lose connection to network 108, connectivity platform 112 would establish a connection with a different network in response to detecting that device 102A and network 108 have lost their connection. In doing so, connectivity platform 112 may once again detect available networks, determine network policies and signal qualities of the networks, and select a new optimal network on the basis of analyzing the network policies and signal qualities. Connectivity platform 112 may also establish a connection with the second network on the basis of the network policy of the first network. For example, the network policy of network 108 specifies that if a connection were lost with a device, the device should then attempt to connect with network 110. Thus, if device 102A loses connection to network 108, connectivity platform 112 automatically initiates the establishment of a connection between the device and network 110.
Connectivity platform 112 may also facilitate connection transfers from a first network to a second network on a proactive basis. For example, connectivity platform 112 may continuously monitor the signal quality between a device and the network it is connected to. Based on the monitoring of the signal quality, connectivity platform 112 may determine that the signal quality is insufficient for the data needs of the device or that the signal quality has degraded to a level that no longer supports continued data transfer. At this point, connectivity platform 112 may determine a new optimal network or second network of the plurality of networks to establish a connection with the device. Once the second network is determined, the connection of the device with the first network is transferred to the second network.
In a further embodiment, either connectivity platform 112 or the device may monitor continuously for signal degradation of a connected network. When a signal has been significantly degraded, connectivity platform 112 or the device itself may send a wake-up signal to other transceivers of the device to determine a different network to establish connection with. The various transceivers may be set to wake at predetermined periods of time or set to have predetermined wake-up times to check for signal quality of other accessible networks to assist connectivity platform 112 and the device. This gives the device and connectivity platform 112 the ability to continuously monitor for networks providing better signal quality and automatic network switching whenever degraded signal quality is detected on a connected network.
In a further embodiment, connectivity platform 112 may use an algorithm to analyze the network policies and signal qualities of the networks which also takes into account various device related factors. These factors may include, but are not limited to: device type, specific radio transceiver availability of the device, geographic location of the device, motion information associated with the device, subscription plan of the device, and device specific policies set by a user of the device. For example, if device 102A is a smartphone that is only 3G enabled and not 4G enabled, in analyzing the network policies and signal qualities of the networks to select an optimal network, connectivity platform 112 will exclude from consideration any network policies that require 4G connectivity. In another example, connectivity manager 112 may use the geographic location of the device to determine the location of the device. If the smartphone device 102A is Wi-Fi enabled, and the geographic location of device 102A is determined to be in a Wi-Fi zone, connectivity manager 112 may automatically select a wi-fi network as the optimal network as opposed to a traditional cellular network to facilitate cost savings for the user of device 102A. In yet another example, when selecting an optimal network, connectivity platform 112 may use a device policy associated with the device. The device policy may, for example, dictate that a 3G connection should be used for telephone calls, and a 4G connection used for receiving or transferring multimedia, such as video or audio files. Connectivity platform 112, in analyzing the network policies and signal qualities to determine an optimal network, will take the device policy into account and attempt to find a network with 3G connectivity if the device us being used for a telephone call, or a network with 4G connectivity if the device is used for transfer of multimedia. These examples illustrate situations where connectivity platform 112 establishes a connection between networks and a device not only on the basis of network policies and signal quality, but also on the basis of a device state taking into account device related factors.
In a further embodiment, connectivity platform 112 may select a transceiver of a plurality of transceivers of the device to establish the connection between the device and the first network. For example, device 102A may be connected with network 108, which provides 4G connectivity. In order to fully take advantage of the 4G connectivity, connectivity platform 112 ensures that the appropriate radio transceiver of device 102A for communicating via 4G is selected.
As most devices on the market currently have multiple wireless transceiver radios for communicating with networks, as will future devices, multiple radio transceivers that are continuously searching for a signal is a burden on the battery life of the device. Connectivity platform 112 may also handle power management of devices, specifically by handling the power drawn from the radio transceivers. Returning to the aforementioned example, after an appropriate transceiver is selected, connectivity platform 112 may transmit an instruction to the device to power down all other radio transceivers that are not associated with the connection between device 102A and network 108. The powered down radio transceivers maintain a reduced power consumption state with the ability to wake and draw full power if connectivity platform 112 determines that a different radio transceiver is needed for transmission of data.
In a further embodiment, connectivity platform 112 facilitates for intelligent management of content being uploaded and downloaded. Connectivity platform 112 can analyze a request for certain content or content types made by a device and select an optimal network to serve the content to the device.
In a further embodiment, connectivity platform 112 facilitates intelligent management of access to connectivity. Connectivity platform 112 may ensure that devices are used by authorized users only. Providing access to broadband services by way of “tethering” one device to another device which is already connected to a broadband network is becoming increasingly common. Tethering may be accomplished using Bluetooth, USB, Wi-Fi, Ethernet, Infrared, or any other pairing mechanism for interfacing devices with each other. Connectivity platform 112 is adapted to intercept any attempted use of a device for tethering, and verify with a service provider billing system first, before establishing connection to a network, to ensure that usage is authorized and used by subscribers paying for the “tethering” service.
In an embodiment, device 102A may be a newly purchased smartphone that needs device and service activation. Upon a user powering on device 102A, device 102A automatically establishes a connection with connectivity platform 112. Connectivity platform upon detecting the device state of device 102A (new device requiring activation), will select the appropriate network to establish a connection with device 102A. After the connection between device 102A, and, for example, network 106, is established, connectivity platform 112 facilitates all device and service activation steps required so that device 102A is ready for use with an appropriate service plan selected by the user. Connectivity platform 112 can determine the necessary information to complete the device and service activation by accessing back office systems 304 and billing systems 306 of the appropriate network.
In yet another embodiment, device 102A may be a smartphone in need of device maintenance or a software upgrade. Connectivity platform 112, by leveraging access to back office systems 304 and billing systems 306 may automatically deliver the device maintenance payload or software upgrade to device 102A from an appropriate network. Connectivity platform 112 will determine the appropriate network based on the capabilities of the device and facilitate the upgrade or maintenance of the device.
Additionally, having core connection control logic within device CM 404 allows device 402 to leverage capabilities available through Personal Area Networking (PAN) built into the devices. PAN support allows multiple devices with device CMs similar to that of device 402 to discover and combine networking resources when in proximity with each other. By way of example, if device 402 is a laptop, and two other devices, a tablet and handset from the same manufacturer are in proximity, each of the aforementioned devices would be able to discover one another over any shared network, such as 4G, 3G, or Wi-Fi. Once the devices are discovered, they may share any available bandwidth based on a subscriber plan in order to optimize plan usage.
For example, device 402 establishes a Wi-Fi network connection with a PC, such as host device 406. Device 402 may then share the Ethernet backhaul of the PC based on information exchanged between device 402 and any other devices in proximity having a device CM. As a result, all devices may make more intelligent decisions regarding connectivity and network bandwidth usage.
Host device 406 includes a limited operating system environment of an embedded operating system to increase the effective security of an operating system operating at host device 406. Host device 406 can manage connectivity of device 402 with various networks, such as network 412, through a browser 414 and connectivity management user interface 416 accessible through browser 414. Host device 406 essentially serves as a WWAN (wireless wide access network) to transfer data between network 412 and device 402.
Connectivity management user interface 416 operates similarly to connectivity platform 112 discussed above. For example, connectivity management user interface 416 establishes a connection between device 402 and network 412 based upon device and network policies stored at update and policy server 418. This may facilitate a situation where device 402 may have “instant” access to network 412 after purchasing a single session pass because connectivity management user interface 416 of host device 406 will automatically determine the network to connect with device 402. Certain content may also be easily restricted by host device 406 without any installation of specialized software and without transmission of any data to network 412. Host device 406 also facilitates switching between multiple radio transceiver technologies supported by device 402.
For example, device 402 may be a WWAN card that is inserted or interfaced with host device 406 to facilitate connectivity to a network. Traditionally, when external devices such as WWAN cards are inserted into a host device, a virtual CD-ROM is provided to a user of host device 406. The virtual CD-ROM includes an executable that may be run to perform installation and configuration of device 402, drives associated with device 402, and a corresponding host specific connection manager. In accordance with the embodiments described herein, device 402 may be manufactured to include all components necessary within a web services interface associated with device CM 404. A UPNP (universal plug-and-play) 2.0 compatible client may also be included within deice CM 404 to register all available web based services with host device 406.
Device 402 may also include connectivity management logic stored within device CM 404 to self manage the power state of the device. Device 402 obtains the ability to enact decisions about its own power status. For example, if device 402 is not currently connected to any network, device 402 may enter a reduced power consumption state while providing a consistent “low power” state to host device 406. this allows host pc 406 to continue making decisions regarding connectivity through content management user interface 416 via browser 414 as if device 402 were still drawing full power. This is particularly useful if there is more than one device connected with host device 406. Thus, devices may control their own power based on their own data transmission needs. Multiple devices may be connected simultaneously, but only one device need be drawing full power at any given moment.
A host based packet routing scheme facilitates the use of multiple connections to maintain a power advantage. Traditional packet routing schemes depend on one or more network connections to be connected and active throughout the entire routing session. The connectivity management logic stored within device CM 404 allows that to be a logical requirement only and not a physical requirement. Since device 402 can maximize its own power consumption, when no packets are actively being delivered to a specific device for transmission, that device can reduce its power consumption (or proactively disconnect from the network in certain situations), while continuing to present an active connection to the host device 406. This is possible because the TCP/IP stack 408 which is disconnected is not the same stack that transmits the packets originally. Because the packets are transmitted by the host device 406 and routed through device 402, the packets may be cached while device 402 awakens and restores a network connection.
Furthermore, web based connection manager user interface instructs may use information from a network cloud 420 including an update and policy server 418 as well as local device data to instruct device 402 on potential network availability and establish connections with a network such as network 412, all without the need to implement a complex driver based 802.2 logical link control system. A component may reside in either a host operating system of host device 406 or within connection manager user interface 416, to instruct the devices, when they are in a powered down state, about possible network availability using information from update and policy server 418 as well as any other devices connected to host device 406.
The above described methods for device connectivity management may be implemented on a computing device using well-known processors, memory units, storage devices, software, and other components. A high level block diagram of such a computing device is illustrated in
The foregoing Detailed Description is to be understood as being in every respect illustrative and exemplary, but not restrictive, and the scope of the invention disclosed herein is not to be determined from the Detailed Description, but rather from the claims as interpreted according to the full breadth permitted by patent law. It is to be understood that the embodiments show and described herein are only illustrative of the principles of the present invention and that various modifications may be implemented by those skilled in the art without departing from the scope and spirit of the invention. Those skilled in the art could implement various other feature combinations without departing from the scope and spirit of the invention.
The present application claims the benefit of U.S. Provisional Application Ser. No. 61/437,907 filed 31 Jan. 2011, which is incorporated herein by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
4989230 | Gillig et al. | Jan 1991 | A |
5133080 | Borras | Jul 1992 | A |
5260988 | Schellinger et al. | Nov 1993 | A |
5367558 | Gillig et al. | Nov 1994 | A |
5539744 | Chu et al. | Jul 1996 | A |
5592491 | Dinkins | Jan 1997 | A |
5666399 | Bales et al. | Sep 1997 | A |
5774461 | Hyden et al. | Jun 1998 | A |
6252884 | Hunter | Jun 2001 | B1 |
6510219 | Wellard et al. | Jan 2003 | B1 |
6539237 | Sayers et al. | Mar 2003 | B1 |
6580916 | Weisshaar et al. | Jun 2003 | B1 |
6757262 | Weisshaar et al. | Jun 2004 | B1 |
6807423 | Armstrong et al. | Oct 2004 | B1 |
6895444 | Weisshaar et al. | May 2005 | B1 |
6901255 | Shostak | May 2005 | B2 |
6937877 | Davenport | Aug 2005 | B2 |
6947760 | Weisshaar et al. | Sep 2005 | B2 |
6973324 | Weisshaar et al. | Dec 2005 | B2 |
6982949 | Guo et al. | Jan 2006 | B2 |
7062274 | Shell et al. | Jun 2006 | B2 |
7068610 | Unruh | Jun 2006 | B2 |
7092405 | Guo et al. | Aug 2006 | B2 |
7114010 | Karaoguz et al. | Sep 2006 | B2 |
7133669 | Nair et al. | Nov 2006 | B2 |
7154869 | Guo et al. | Dec 2006 | B2 |
7215928 | Gage et al. | May 2007 | B2 |
7221658 | Armstrong et al. | May 2007 | B1 |
7263086 | Viikari et al. | Aug 2007 | B2 |
7280810 | Feher | Oct 2007 | B2 |
7362716 | Unruh | Apr 2008 | B2 |
7373428 | Armstrong et al. | May 2008 | B1 |
7382771 | Leblanc et al. | Jun 2008 | B2 |
7426178 | Guo et al. | Sep 2008 | B2 |
7499432 | Guo et al. | Mar 2009 | B2 |
7515538 | Gefflaut et al. | Apr 2009 | B2 |
7515568 | Bonta | Apr 2009 | B2 |
7519364 | Nair et al. | Apr 2009 | B2 |
7532571 | Price et al. | May 2009 | B1 |
7620065 | Falardeau | Nov 2009 | B2 |
7631270 | Cunningham et al. | Dec 2009 | B2 |
7633909 | Jones et al. | Dec 2009 | B1 |
7653392 | Ovadia et al. | Jan 2010 | B2 |
7668508 | Zheng et al. | Feb 2010 | B2 |
7676594 | Fukasawa et al. | Mar 2010 | B2 |
7711368 | Feher | May 2010 | B2 |
7715843 | Gao et al. | May 2010 | B2 |
7720488 | Feher | May 2010 | B2 |
7725114 | Feher | May 2010 | B2 |
7734293 | Zilliacus et al. | Jun 2010 | B2 |
7739402 | Roese et al. | Jun 2010 | B2 |
7769386 | Feher | Aug 2010 | B2 |
7783291 | Feher | Aug 2010 | B2 |
7787863 | van de Groenendaal | Aug 2010 | B2 |
7787882 | Feher | Aug 2010 | B2 |
7805143 | Feher | Sep 2010 | B2 |
7809374 | Feher | Oct 2010 | B2 |
7849150 | Loeebbert et al. | Dec 2010 | B2 |
7853242 | Lewis et al. | Dec 2010 | B2 |
7860071 | Hinrikus et al. | Dec 2010 | B2 |
7860516 | Hodges et al. | Dec 2010 | B2 |
7877110 | Feher | Jan 2011 | B2 |
20020059434 | Karaoguz et al. | May 2002 | A1 |
20020082044 | Davenport | Jun 2002 | A1 |
20030108016 | Bonta | Jun 2003 | A1 |
20030161288 | Unruh | Aug 2003 | A1 |
20040107274 | Mastrianni et al. | Jun 2004 | A1 |
20040131078 | Gupta et al. | Jul 2004 | A1 |
20040170122 | Guo et al. | Sep 2004 | A1 |
20040170191 | Guo et al. | Sep 2004 | A1 |
20040179512 | Leblanc et al. | Sep 2004 | A1 |
20040187133 | Weisshaar et al. | Sep 2004 | A1 |
20040203863 | Huomo | Oct 2004 | A1 |
20040205153 | Weisshaar et al. | Oct 2004 | A1 |
20040219922 | Gage et al. | Nov 2004 | A1 |
20040224668 | Shell et al. | Nov 2004 | A1 |
20040233930 | Colby, Jr. | Nov 2004 | A1 |
20040260760 | Curnyn | Dec 2004 | A1 |
20050058112 | Lahey et al. | Mar 2005 | A1 |
20050068982 | Guo et al. | Mar 2005 | A1 |
20050083874 | Guo et al. | Apr 2005 | A1 |
20050097356 | Zilliacus et al. | May 2005 | A1 |
20050144262 | Kang | Jun 2005 | A1 |
20050213542 | Guo et al. | Sep 2005 | A1 |
20050250508 | Guo et al. | Nov 2005 | A1 |
20050255856 | Griffin et al. | Nov 2005 | A1 |
20050260989 | Pourtier et al. | Nov 2005 | A1 |
20050276240 | Gupta et al. | Dec 2005 | A1 |
20060023738 | Sanda | Feb 2006 | A1 |
20060072735 | Shell et al. | Apr 2006 | A1 |
20060073788 | Halkka et al. | Apr 2006 | A1 |
20060105713 | Zheng et al. | May 2006 | A1 |
20060133307 | Fukasawa et al. | Jun 2006 | A1 |
20070008927 | Herz et al. | Jan 2007 | A1 |
20070014270 | Unruh | Jan 2007 | A1 |
20070019670 | Falardeau | Jan 2007 | A1 |
20070030116 | Feher | Feb 2007 | A1 |
20070032220 | Feher | Feb 2007 | A1 |
20070032246 | Feher | Feb 2007 | A1 |
20070032250 | Feher | Feb 2007 | A1 |
20070032832 | Feher | Feb 2007 | A1 |
20070232310 | Schiff et al. | Oct 2007 | A1 |
20070249372 | Gao et al. | Oct 2007 | A1 |
20070253339 | Ovadia et al. | Nov 2007 | A1 |
20070265018 | Feher | Nov 2007 | A1 |
20080043868 | Feher | Feb 2008 | A1 |
20080057886 | Feher | Mar 2008 | A1 |
20080062856 | Feher | Mar 2008 | A1 |
20080113614 | Rosenblatt | May 2008 | A1 |
20080137555 | Mahesh et al. | Jun 2008 | A1 |
20080146270 | Rofougaran | Jun 2008 | A1 |
20080167050 | Songer et al. | Jul 2008 | A1 |
20080181151 | Feher | Jul 2008 | A1 |
20080188206 | Pirzada et al. | Aug 2008 | A1 |
20080188240 | Feher | Aug 2008 | A1 |
20080205535 | Feher | Aug 2008 | A1 |
20080209046 | Karkanias et al. | Aug 2008 | A1 |
20080240070 | Feher | Oct 2008 | A1 |
20080253275 | Feher | Oct 2008 | A1 |
20080253353 | Feher | Oct 2008 | A1 |
20080281585 | Feher | Nov 2008 | A1 |
20090005071 | Forstall et al. | Jan 2009 | A1 |
20090005076 | Forstall et al. | Jan 2009 | A1 |
20090010205 | Pratt et al. | Jan 2009 | A1 |
20090054068 | Halkka et al. | Feb 2009 | A1 |
20090061852 | Feher | Mar 2009 | A1 |
20090061870 | Finkelstein et al. | Mar 2009 | A1 |
20090066667 | Feher | Mar 2009 | A1 |
20090076803 | Feher | Mar 2009 | A1 |
20090092114 | Feher | Apr 2009 | A1 |
20090098852 | Feher | Apr 2009 | A1 |
20090147771 | Seal et al. | Jun 2009 | A1 |
20090170431 | Pering et al. | Jul 2009 | A1 |
20090175239 | Grinshpun et al. | Jul 2009 | A1 |
20090207817 | Montemurro et al. | Aug 2009 | A1 |
20090215404 | Kesavan et al. | Aug 2009 | A1 |
20090247187 | Feher | Oct 2009 | A1 |
20090270113 | Feher | Oct 2009 | A1 |
20090286531 | Bhatt et al. | Nov 2009 | A1 |
20090296703 | Peng | Dec 2009 | A1 |
20090310562 | Medapalli | Dec 2009 | A1 |
20090310591 | Feher | Dec 2009 | A1 |
20100014507 | Linkola et al. | Jan 2010 | A1 |
20100029284 | Feher | Feb 2010 | A1 |
20100035594 | Vendrow et al. | Feb 2010 | A1 |
20100056200 | Tolonen | Mar 2010 | A1 |
20100067595 | Feher | Mar 2010 | A1 |
20100097956 | Tauil et al. | Apr 2010 | A1 |
20100100642 | Zheng et al. | Apr 2010 | A1 |
20100110921 | Famolari et al. | May 2010 | A1 |
20100124920 | Feher | May 2010 | A1 |
20100128664 | Denny et al. | May 2010 | A1 |
20100128862 | Vendrow | May 2010 | A1 |
20100130238 | Kupsh et al. | May 2010 | A1 |
20100144371 | Savoor | Jun 2010 | A1 |
20100159945 | Brisebois | Jun 2010 | A1 |
20100173657 | Gao et al. | Jul 2010 | A1 |
20100180016 | Bugwadia | Jul 2010 | A1 |
20100184377 | Zilliacus et al. | Jul 2010 | A1 |
20100192075 | Black et al. | Jul 2010 | A1 |
20100208852 | Feher | Aug 2010 | A1 |
20100223287 | Lim | Sep 2010 | A1 |
20100235285 | Hoffberg | Sep 2010 | A1 |
20100255858 | Juhasz | Oct 2010 | A1 |
20100291898 | Sanding et al. | Nov 2010 | A1 |
20100291910 | Sanding et al. | Nov 2010 | A1 |
20100302958 | Wietfeldt et al. | Dec 2010 | A1 |
20100303008 | Wietfeldt et al. | Dec 2010 | A1 |
20100304737 | Jain et al. | Dec 2010 | A1 |
20110026506 | Macnaughtan et al. | Feb 2011 | A1 |
20110034179 | David et al. | Feb 2011 | A1 |
20110119329 | Gullin | May 2011 | A1 |
20110320588 | Raleigh | Dec 2011 | A1 |
20120039262 | Walsh | Feb 2012 | A1 |
Entry |
---|
International Search Report and Written Opinion dated May 16, 2012 in related International Application PCT/US2012/023312, filed Jan. 31, 2012, 7 pages. |
Number | Date | Country | |
---|---|---|---|
20120303823 A1 | Nov 2012 | US |
Number | Date | Country | |
---|---|---|---|
61437907 | Jan 2011 | US |